.
*/
require_once 'Widget.class.php';
//require_once('common/survey/SurveySingleton.class.php');
require_once 'common/survey/SurveyFactory.class.php';
/**
* Widget_MySurveys
*
* DEVELOPER SURVEYS
*
* This needs to be updated manually to display any given survey
* Default behavior: get first survey from group #1
*/
class Widget_MySurveys extends Widget {
var $content;
var $can_be_displayed;
function __construct() {
$this->Widget('mysurveys');
$no_survey = true;
$user = session_get_user () ;
$projects = $user->getGroups() ;
sortProjectList ($projects) ;
$tmp = array () ;
foreach ($projects as $p) {
$sf = new SurveyFactory($p);
foreach ($sf->getSurveys() as $s) {
$tmp[] = $p ;
break ;
}
}
$projects = $tmp ;
$html_my_surveys = '';
if (count ($projects) < 1) {
$html_my_surveys .= '
'. _("There are no surveys in your projects.") ."
\n";
} else {
global $HTML;
$request =& HTTPRequest::instance();
$html_my_surveys .= '';
foreach ($projects as $project) {
$group_id = $project->getID() ;
$surveyfacto = new SurveyFactory($project);
$surveys = $surveyfacto->getSurveys();
$vItemId = new Valid_UInt('hide_item_id');
$vItemId->required();
if($request->valid($vItemId)) {
$hide_item_id = $request->get('hide_item_id');
} else {
$hide_item_id = null;
}
$vForum = new Valid_WhiteList('hide_survey', array(0, 1));
$vForum->required();
if($request->valid($vForum)) {
$hide_survey = $request->get('hide_survey');
} else {
$hide_survey = null;
}
list($hide_now,$count_diff,$hide_url) = my_hide_url('survey',$group_id,$hide_item_id,count($surveys),$hide_survey);
$html_hdr = ''.
$hide_url.''.
$project->getPublicName().' ';
$html = '';
$count_new = max(0, $count_diff);
$i = 0 ;
foreach ($surveys as $survey) {
$i++ ;
if (!$hide_now) {
$group_survey_id= $survey->getId();
$survey_title = $survey->getTitle();
$devsurvey_is_active = $survey->isActive();
if($devsurvey_is_active == 1 ) {
$html .= '
|
boxGetAltRowStyle($i) .'>'.
' - '.
$survey_title.' |
';
}
}
}
$html_hdr .= '['.count($surveys).($count_new ? ", ".sprintf(_('%d new'), $count_new)."]" : ']').'';
$html_my_surveys .= $html_hdr.$html;
}
$html_my_surveys .= '
';
}
$this->content = $html_my_surveys;
}
function getTitle() {
return _("Quick Survey");
}
function getContent() {
return $this->content;
}
function getDescription() {
return _("List the surveys you have not answered.");
}
}