4 include_once
"./Services/Object/classes/class.ilObjectGUI.php";
29 $lng->loadLanguageModule(
"survey");
31 $this->ctrl->saveParameter($this,
"ref_id");
33 parent::__construct(
"", (
int)
$_GET[
"ref_id"],
true,
false);
38 global $ilAccess, $ilNavigationHistory,
$ilErr, $ilTabs;
40 $this->external_rater_360 =
false;
41 if(!$this->creation_mode &&
42 $this->object->get360Mode() &&
43 $_SESSION[
"anonymous_id"][$this->
object->getId()] &&
45 $_SESSION[
"anonymous_id"][$this->
object->getId()]))
47 $this->external_rater_360 =
true;
50 if(!$this->external_rater_360)
52 if (!$ilAccess->checkAccess(
"read",
"", $this->ref_id) &&
53 !$ilAccess->checkAccess(
"visible",
"", $this->ref_id))
55 $ilErr->raiseError($this->lng->txt(
"permission_denied"), $ilErr->MESSAGE);
60 $ilAccess->checkAccess(
"read",
"", $this->ref_id))
62 $this->ctrl->setParameterByClass(
"ilobjsurveygui",
"ref_id", $this->ref_id);
63 $link = $this->ctrl->getLinkTargetByClass(
"ilobjsurveygui",
"");
64 $ilNavigationHistory->addItem($this->ref_id, $link,
"svy");
68 $cmd = $this->ctrl->getCmd(
"properties");
71 if (
$cmd ==
"saveTags")
73 $this->ctrl->setCmdClass(
"ilinfoscreengui");
77 if(!$this->ctrl->getCmdClass() &&
$cmd ==
"questionsrepo")
80 $this->ctrl->setCmd(
"questions");
81 $this->ctrl->setCmdClass(
"ilsurveyeditorgui");
84 $next_class = $this->ctrl->getNextClass($this);
85 $this->ctrl->setReturn($this,
"properties");
91 case "ilinfoscreengui":
98 $ilTabs->activateTab(
"meta_data");
100 include_once
'Services/MetaData/classes/class.ilMDEditorGUI.php';
101 $md_gui =&
new ilMDEditorGUI($this->object->getId(), 0, $this->
object->getType());
102 $md_gui->
addObserver($this->
object,
'MDUpdateListener',
'General');
104 $this->ctrl->forwardCommand($md_gui);
107 case "ilsurveyevaluationgui":
108 $ilTabs->activateTab(
"svy_results");
110 include_once(
"./Modules/Survey/classes/class.ilSurveyEvaluationGUI.php");
112 $this->ctrl->forwardCommand($eval_gui);
115 case "ilsurveyexecutiongui":
116 $ilTabs->clearTargets();
117 include_once(
"./Modules/Survey/classes/class.ilSurveyExecutionGUI.php");
119 $this->ctrl->forwardCommand($exec_gui);
122 case 'ilpermissiongui':
123 $ilTabs->activateTab(
"perm_settings");
125 include_once(
"Services/AccessControl/classes/class.ilPermissionGUI.php");
127 $this->ctrl->forwardCommand($perm_gui);
130 case 'ilobjectcopygui':
131 include_once
'./Services/Object/classes/class.ilObjectCopyGUI.php';
134 $this->ctrl->forwardCommand($cp);
137 case "ilcommonactiondispatchergui":
138 include_once(
"Services/Object/classes/class.ilCommonActionDispatcherGUI.php");
140 $this->ctrl->forwardCommand($gui);
144 case 'ilsurveyskillgui':
145 $ilTabs->activateTab(
"survey_competences");
146 include_once(
"./Modules/Survey/classes/class.ilSurveySkillGUI.php");
148 $this->ctrl->forwardCommand($gui);
151 case 'ilsurveyskilldeterminationgui':
152 $ilTabs->activateTab(
"maintenance");
153 include_once(
"./Modules/Survey/classes/class.ilSurveySkillDeterminationGUI.php");
155 $this->ctrl->forwardCommand($gui);
158 case 'ilsurveyeditorgui':
160 $ilTabs->activateTab(
"survey_questions");
161 include_once(
"./Modules/Survey/classes/class.ilSurveyEditorGUI.php");
163 $this->ctrl->forwardCommand($gui);
166 case 'ilsurveyconstraintsgui':
168 $ilTabs->activateTab(
"constraints");
169 include_once(
"./Modules/Survey/classes/class.ilSurveyConstraintsGUI.php");
171 $this->ctrl->forwardCommand($gui);
174 case 'ilsurveyparticipantsgui':
175 if(!$this->object->get360Mode())
177 $ilTabs->activateTab(
"maintenance");
181 $ilTabs->activateTab(
"survey_360_appraisees");
183 include_once(
"./Modules/Survey/classes/class.ilSurveyParticipantsGUI.php");
185 $this->ctrl->forwardCommand($gui);
195 if (strtolower(
$_GET[
"baseClass"]) !=
"iladministrationgui" &&
211 include_once(
"./Modules/Survey/classes/class.ilSurveyEvaluationGUI.php");
213 $this->ctrl->setCmdClass(get_class($eval_gui));
214 $this->ctrl->redirect($eval_gui,
"evaluation");
219 include_once
"Services/Administration/classes/class.ilSettingsTemplate.php";
223 foreach($templates as $item)
225 $a_options[
"svytpl_".$item[
"id"]] = array($item[
"title"],
226 nl2br(trim($item[
"description"])));
231 $a_options[
"svy360_1"] = array($this->lng->txt(
"survey_360_mode"),
232 $this->lng->txt(
"survey_360_mode_info"));
242 $a_new_object->loadFromDb();
247 $a_new_object->applySettingsTemplate(
$tpl);
251 if($a_new_object->get360Mode())
256 $a_new_object->saveToDB();
261 $a_new_object->
getRefId().
"&cmd=properties");
271 global $ilAccess,
$ilUser, $ilHelp;
278 $ilHelp->setScreenIdComponent(
"svy");
280 $hidden_tabs = array();
281 $template = $this->
object->getTemplate();
284 include_once
"Services/Administration/classes/class.ilSettingsTemplate.php";
286 $hidden_tabs = $template->getHiddenTabs();
289 if ($ilAccess->checkAccess(
"write",
"", $this->ref_id))
291 $tabs_gui->addTab(
"survey_questions",
292 $this->lng->txt(
"survey_questions"),
293 $this->ctrl->getLinkTargetByClass(array(
"ilsurveyeditorgui",
"ilsurveypagegui"),
"renderPage"));
296 if ($ilAccess->checkAccess(
"visible",
"", $this->ref_id))
298 $tabs_gui->addTab(
"info_short",
299 $this->lng->txt(
"info_short"),
300 $this->ctrl->getLinkTarget($this,
'infoScreen'));
304 if ($ilAccess->checkAccess(
"write",
"", $this->ref_id))
306 $tabs_gui->addTab(
"settings",
307 $this->lng->txt(
"settings"),
308 $this->ctrl->getLinkTarget($this,
'properties'));
310 else if ($ilAccess->checkAccess(
"read",
"", $this->ref_id))
312 if($this->object->get360Mode() &&
313 $this->
object->get360SelfRaters() &&
314 $this->
object->isAppraisee($ilUser->getId()) &&
315 !$this->object->isAppraiseeClosed($ilUser->getId()))
317 $tabs_gui->addTab(
"survey_360_edit_raters",
318 $this->lng->txt(
"survey_360_edit_raters"),
319 $this->ctrl->getLinkTargetByClass(
'ilsurveyparticipantsgui',
'editRaters'));
326 if ($ilAccess->checkAccess(
"write",
"", $this->ref_id) &&
327 !in_array(
"constraints", $hidden_tabs) &&
328 !$this->
object->get360Mode())
331 $tabs_gui->addTab(
"constraints",
332 $this->lng->txt(
"constraints"),
333 $this->ctrl->getLinkTargetByClass(
"ilsurveyconstraintsgui",
"constraints"));
336 if ($ilAccess->checkAccess(
"write",
"", $this->ref_id))
339 if($this->object->get360Mode())
342 include_once(
"./Services/Skill/classes/class.ilSkillManagementSettings.php");
344 if ($this->object->get360SkillService() && $skmg_set->isActivated())
346 $tabs_gui->addTab(
"survey_competences",
347 $this->lng->txt(
"survey_competences"),
348 $this->ctrl->getLinkTargetByClass(
"ilsurveyskillgui",
"listQuestionAssignment"));
351 $tabs_gui->addTab(
"survey_360_appraisees",
352 $this->lng->txt(
"survey_360_appraisees"),
353 $this->ctrl->getLinkTargetByClass(
'ilsurveyparticipantsgui',
'listAppraisees'));
358 $tabs_gui->addTab(
"maintenance",
359 $this->lng->txt(
"maintenance"),
360 $this->ctrl->getLinkTargetByClass(
'ilsurveyparticipantsgui',
'maintenance'));
364 include_once
"./Modules/Survey/classes/class.ilObjSurveyAccess.php";
365 if ($ilAccess->checkAccess(
"write",
"", $this->ref_id) ||
369 $tabs_gui->addTab(
"svy_results",
370 $this->lng->txt(
"svy_results"),
371 $this->ctrl->getLinkTargetByClass(
"ilsurveyevaluationgui",
""));
374 if ($ilAccess->checkAccess(
"write",
"", $this->ref_id))
376 if(!in_array(
"meta_data", $hidden_tabs))
379 $tabs_gui->addTab(
"meta_data",
380 $this->lng->txt(
"meta_data"),
381 $this->ctrl->getLinkTargetByClass(
'ilmdeditorgui',
'listSection'));
384 if(!in_array(
"export", $hidden_tabs))
387 $tabs_gui->addTab(
"export",
388 $this->lng->txt(
"export"),
389 $this->ctrl->getLinkTarget($this,
'export'));
393 if ($ilAccess->checkAccess(
"edit_permission",
"", $this->ref_id))
396 $tabs_gui->addTab(
"perm_settings",
397 $this->lng->txt(
"perm_settings"),
398 $this->ctrl->getLinkTargetByClass(array(get_class($this),
'ilpermissiongui'),
"perm"));
412 if (!$ilAccess->checkAccess(
"write",
"", $this->ref_id))
416 $this->ctrl->redirect($this,
"infoScreen");
437 if ($form->checkInput())
441 if(!$this->object->get360Mode())
443 if($form->getInput(
"tut"))
447 $tut_logins = $form->getInput(
"tut_ids");
448 foreach($tut_logins as $tut_login)
451 if($tut_id && $rbacsystem->checkAccessOfUser($tut_id,
"write", $this->object->getRefId()))
453 $tut_ids[] = $tut_id;
458 $tut_ids = $form->getItemByPostVar(
"tut_ids");
459 $tut_ids->setAlert($this->lng->txt(
"survey_notification_tutor_recipients_invalid"));
467 if(!$this->object->get360Mode())
469 if($form->getInput(
"rmd"))
471 $rmd_start = $form->getInput(
"rmd_start");
472 $rmd_start = $rmd_start[
"date"];
474 if($form->getInput(
"rmd_end_tgl"))
476 $rmd_end = $form->getInput(
"rmd_end");
477 $rmd_end = $rmd_end[
"date"];
478 if($rmd_start > $rmd_end)
481 $rmd_start = $rmd_end;
488 $this->
object->setReminderStatus(
true);
489 $this->
object->setReminderStart($rmd_start);
490 $this->
object->setReminderEnd($rmd_end);
491 $this->
object->setReminderFrequency($form->getInput(
"rmd_freq"));
492 $this->
object->setReminderTarget($form->getInput(
"rmd_grp"));
496 $this->
object->setReminderStatus(
false);
499 if($form->getInput(
"tut"))
501 $this->
object->setTutorNotificationStatus(
true);
502 $this->
object->setTutorNotificationRecipients($tut_ids);
503 $this->
object->setTutorNotificationTarget($form->getInput(
"tut_grp"));
507 $this->
object->setTutorNotificationStatus(
false);
512 if (
$_POST[
'online'] && count($this->object->questions) == 0)
518 $template_settings = null;
519 $template = $this->
object->getTemplate();
522 include_once
"Services/Administration/classes/class.ilSettingsTemplate.php";
524 $template_settings = $template->getSettings();
527 include_once
'Services/MetaData/classes/class.ilMD.php';
528 $md_obj =&
new ilMD($this->object->getId(), 0,
"svy");
536 $md_desc_ids = $md_section->getDescriptionIds();
539 $md_desc = $md_section->getDescription(array_pop($md_desc_ids));
547 $this->
object->update();
549 $this->
object->setStatus(
$_POST[
'online']);
554 $this->
object->setActivationLimited(
true);
555 $this->
object->setActivationVisibility(
$_POST[
"access_visiblity"]);
557 $period = $form->getItemByPostVar(
"access_period");
558 $this->
object->setActivationStartDate($period->getStart()->get(
IL_CAL_UNIX));
559 $this->
object->setActivationEndDate($period->getEnd()->get(
IL_CAL_UNIX));
563 $this->
object->setActivationLimited(
false);
567 if(!$template_settings[
"enabled_start_date"][
"hide"])
569 if (
$_POST[
"enabled_start_date"])
571 $this->
object->setStartDateAndTime(
$_POST[
"start_date"][
'date'],
$_POST[
"start_date"][
'time']);
575 $this->
object->setStartDate(null);
579 if(!$template_settings[
"enabled_end_date"][
"hide"])
581 if (
$_POST[
"enabled_end_date"])
583 $this->
object->setEndDateAndTime(
$_POST[
"end_date"][
'date'],
$_POST[
"end_date"][
'time']);
587 $this->
object->setEndDate(null);
592 include_once
"./Services/AdvancedEditing/classes/class.ilObjAdvancedEditing.php";
593 $introduction =
$_POST[
"introduction"];
594 $this->
object->setIntroduction($introduction);
596 $this->
object->setOutro($outro);
598 if(!$template_settings[
"show_question_titles"][
"hide"])
600 $this->
object->setShowQuestionTitles(
$_POST[
"show_question_titles"]);
603 if(!$template_settings[
"use_pool"][
"hide"])
605 $this->
object->setPoolUsage(
$_POST[
"use_pool"]);
608 $this->
object->setMailNotification(
$_POST[
'mailnotification']);
609 $this->
object->setMailAddresses(
$_POST[
'mailaddresses']);
610 $this->
object->setMailParticipantData(
$_POST[
'mailparticipantdata']);
613 if($this->object->get360Mode())
615 $this->
object->set360SelfEvaluation((
bool)
$_POST[
"self_eval"]);
616 $this->
object->set360SelfAppraisee((
bool)$_POST[
"self_appr"]);
617 $this->
object->set360SelfRaters((
bool)$_POST[
"self_rate"]);
618 $this->
object->set360Results((
int)$_POST[
"ts_res"]);;
619 $this->
object->set360SkillService((
int)$_POST[
"skill_service"]);
623 $this->
object->setEvaluationAccess(
$_POST[
"evaluation_access"]);
625 $hasDatasets = $this->
object->_hasDatasets($this->object->getSurveyId());
631 if(array_key_exists(
$_POST[
"anonymization_options"], $anon_map))
633 $this->
object->setAnonymize($anon_map[
$_POST[
"anonymization_options"]]);
640 $this->
object->saveToDb();
650 $this->ctrl->redirect($this,
"properties");
654 $form->setValuesByPost();
665 $template_settings = $hide_rte_switch = null;
666 $template = $this->
object->getTemplate();
669 include_once
"Services/Administration/classes/class.ilSettingsTemplate.php";
672 $template_settings = $template->getSettings();
673 $hide_rte_switch = $template_settings[
"rte_switch"][
"hide"];
676 include_once(
"./Services/Form/classes/class.ilPropertyFormGUI.php");
678 $form->setFormAction($this->ctrl->getFormAction($this));
679 $form->setTableWidth(
"100%");
680 $form->setId(
"survey_properties");
684 $header->setTitle($this->lng->txt(
"settings"));
685 $form->addItem($header);
689 include_once
'Services/MetaData/classes/class.ilMD.php';
690 $md_obj =
new ilMD($this->object->getId(), 0,
"svy");
695 $title->setValue($md_section->getTitle());
696 $form->addItem($title);
698 $ids = $md_section->getDescriptionIds();
701 $desc_obj = $md_section->getDescription(array_pop($ids));
706 $desc->setValue($desc_obj->getDescription());
707 $form->addItem($desc);
711 if(!$this->object->get360Mode())
713 $anonymization_options =
new ilRadioGroupInputGUI($this->lng->txt(
"survey_auth_mode"),
"anonymization_options");
714 $hasDatasets = $this->
object->_hasDatasets($this->object->getSurveyId());
719 $anonymization_options->addOption(
new ilCheckboxOption($this->lng->txt(
"anonymize_personalized"),
720 'personalized',
''));
722 $this->lng->txt(
"anonymize_without_code"),
'anonymize_without_code',
''));
724 $this->lng->txt(
"anonymize_with_code"),
'anonymize_with_code',
''));
725 if(!$this->object->getAnonymize())
727 $anonymization_options->setValue(
'personalized');
731 $anonymization_options->setValue(($this->object->isAccessibleWithoutCode()) ?
732 'anonymize_without_code' :
'anonymize_with_code');
734 $anonymization_options->setInfo($this->lng->txt(
"anonymize_survey_description"));
735 $form->addItem($anonymization_options);
740 $self_eval =
new ilCheckboxInputGUI($this->lng->txt(
"survey_360_self_evaluation"),
"self_eval");
741 $self_eval->
setChecked($this->object->get360SelfEvaluation());
742 $form->addItem($self_eval);
744 $self_rate =
new ilCheckboxInputGUI($this->lng->txt(
"survey_360_self_raters"),
"self_rate");
745 $self_rate->
setChecked($this->object->get360SelfRaters());
746 $form->addItem($self_rate);
748 $self_appr =
new ilCheckboxInputGUI($this->lng->txt(
"survey_360_self_appraisee"),
"self_appr");
749 $self_appr->
setChecked($this->object->get360SelfAppraisee());
750 $form->addItem($self_appr);
754 $pool_usage =
new ilRadioGroupInputGUI($this->lng->txt(
"survey_question_pool_usage"),
"use_pool");
755 $opt =
new ilRadioOption($this->lng->txt(
"survey_question_pool_usage_active"), 1);
756 $opt->
setInfo($this->lng->txt(
"survey_question_pool_usage_active_info"));
757 $pool_usage->addOption($opt);
758 $opt =
new ilRadioOption($this->lng->txt(
"survey_question_pool_usage_inactive"), 0);
759 $opt->
setInfo($this->lng->txt(
"survey_question_pool_usage_inactive_info"));
760 $pool_usage->addOption($opt);
761 $pool_usage->setValue($this->object->getPoolUsage());
762 $form->addItem($pool_usage);
767 include_once
"Services/Object/classes/class.ilObjectActivation.php";
768 $this->lng->loadLanguageModule(
'rep');
771 $section->setTitle($this->lng->txt(
'rep_activation_availability'));
775 $act_obj_info = $act_ref_info =
"";
778 $act_obj_info =
' '.$this->lng->txt(
'rep_activation_online_object_info');
779 $act_ref_info = $this->lng->txt(
'rep_activation_access_ref_info');
783 $online->
setInfo($this->lng->txt(
'svy_activation_online_info').$act_obj_info);
784 $online->setChecked($this->object->isOnline());
785 $form->addItem($online);
787 $act_type =
new ilCheckboxInputGUI($this->lng->txt(
'rep_visibility_until'),
'access_type');
789 $act_type->
setChecked($this->object->isActivationLimited());
791 $this->tpl->addJavaScript(
'./Services/Form/js/date_duration.js');
792 include_once
"Services/Form/classes/class.ilDateDurationInputGUI.php";
795 $date = $this->
object->getActivationStartDate();
797 $dur->setStartText($this->lng->txt(
'rep_activation_limited_start'));
798 $date = $this->
object->getActivationEndDate();
800 $dur->setEndText($this->lng->txt(
'rep_activation_limited_end'));
801 $act_type->addSubItem($dur);
803 $visible =
new ilCheckboxInputGUI($this->lng->txt(
'rep_activation_limited_visibility'),
'access_visiblity');
804 $visible->
setInfo($this->lng->txt(
'svy_activation_limited_visibility_info'));
805 $visible->setChecked($this->object->getActivationVisibility());
806 $act_type->addSubItem($visible);
808 $form->addItem($act_type);
812 $start = $this->
object->getStartDate();
813 $enablestartingtime =
new ilCheckboxInputGUI($this->lng->txt(
"start_date"),
"enabled_start_date");
816 $enablestartingtime->setChecked($start);
819 $startingtime->setShowDate(
true);
820 $startingtime->setShowTime(
true);
825 $enablestartingtime->addSubItem($startingtime);
826 $form->addItem($enablestartingtime);
829 $end = $this->
object->getEndDate();
830 $enableendingtime =
new ilCheckboxInputGUI($this->lng->txt(
"end_date"),
"enabled_end_date");
833 $enableendingtime->setChecked($end);
836 $endingtime->setShowDate(
true);
837 $endingtime->setShowTime(
true);
842 $enableendingtime->addSubItem($endingtime);
843 $form->addItem($enableendingtime);
848 $info->setTitle($this->lng->txt(
"svy_presentation_properties"));
849 $form->addItem($info);
852 $show_question_titles =
new ilCheckboxInputGUI($this->lng->txt(
"svy_show_questiontitles"),
"show_question_titles");
854 $show_question_titles->setChecked($this->object->getShowQuestionTitles());
855 $form->addItem($show_question_titles);
859 $intro->
setValue($this->object->prepareTextareaOutput($this->object->getIntroduction()));
862 $intro->setUseRte(TRUE);
863 $intro->setInfo($this->lng->txt(
"survey_introduction_info"));
864 include_once
"./Services/AdvancedEditing/classes/class.ilObjAdvancedEditing.php";
866 $intro->addPlugin(
"latex");
867 $intro->addButton(
"latex");
868 $intro->addButton(
"pastelatex");
869 $intro->setRTESupport($this->object->getId(),
"svy",
"survey", null, $hide_rte_switch);
870 $form->addItem($intro);
874 $finalstatement->
setValue($this->object->prepareTextareaOutput($this->object->getOutro()));
875 $finalstatement->setRows(10);
876 $finalstatement->setCols(80);
877 $finalstatement->setUseRte(TRUE);
879 $finalstatement->addPlugin(
"latex");
880 $finalstatement->addButton(
"latex");
881 $finalstatement->addButton(
"pastelatex");
882 $finalstatement->setRTESupport($this->object->getId(),
"svy",
"survey", null, $hide_rte_switch);
883 $form->addItem($finalstatement);
888 $results->setTitle($this->lng->txt(
"results"));
892 if(!$this->object->get360Mode())
894 $evaluation_access =
new ilRadioGroupInputGUI($this->lng->txt(
'evaluation_access'),
"evaluation_access");
895 $evaluation_access->
setInfo($this->lng->txt(
'evaluation_access_description'));
899 $evaluation_access->setValue($this->object->getEvaluationAccess());
900 $form->addItem($evaluation_access);
906 $ts_results->
setValue($this->object->get360Results());
910 $form->addItem($ts_results);
914 $mailnotification =
new ilCheckboxInputGUI($this->lng->txt(
"mailnotification"),
"mailnotification");
916 $mailnotification->
setInfo($this->lng->txt(
"svy_result_mail_notification_info"));
917 $mailnotification->setValue(1);
918 $mailnotification->setChecked($this->object->getMailNotification());
921 $mailaddresses =
new ilTextInputGUI($this->lng->txt(
"mailaddresses"),
"mailaddresses");
922 $mailaddresses->
setValue($this->object->getMailAddresses());
923 $mailaddresses->setSize(80);
924 $mailaddresses->setInfo($this->lng->txt(
'mailaddresses_info'));
925 $mailaddresses->setRequired(
true);
928 $participantdata =
new ilTextAreaInputGUI($this->lng->txt(
"mailparticipantdata"),
"mailparticipantdata");
929 $participantdata->
setValue($this->object->getMailParticipantData());
930 $participantdata->setRows(6);
931 $participantdata->setCols(80);
932 $participantdata->setUseRte(
false);
933 $participantdata->setInfo($this->lng->txt(
'mailparticipantdata_info'));
936 $placeholders = array(
937 "FIRST_NAME" =>
"firstname",
938 "LAST_NAME" =>
"lastname",
942 foreach($placeholders as $placeholder => $caption)
944 $txt[] =
"[".strtoupper($placeholder).
"]: ".$this->lng->txt($caption);
946 $txt = implode(
"<br />", $txt);
947 $participantdatainfo =
new ilNonEditableValueGUI($this->lng->txt(
"mailparticipantdata_placeholder"),
"",
true);
948 $participantdatainfo->
setValue($txt);
950 $mailnotification->addSubItem($mailaddresses);
951 $mailnotification->addSubItem($participantdata);
952 $mailnotification->addSubItem($participantdatainfo);
953 $form->addItem($mailnotification);
956 if(!$this->object->get360Mode())
960 $has_parent = $tree->checkForParentType($this->object->getRefId(),
"grp");
963 $has_parent = $tree->checkForParentType($this->object->getRefId(),
"crs");
965 $num_inv =
sizeof($this->
object->getInvitedUsers());
968 $ntf->setTitle($this->lng->txt(
"survey_notification_settings"));
969 $form->addItem($ntf);
973 $rmd->
setChecked($this->object->getReminderStatus());
974 $form->addItem($rmd);
976 $rmd_start =
new ilDateTimeInputGUI($this->lng->txt(
"survey_reminder_start"),
"rmd_start");
978 $start = $this->
object->getReminderStart();
981 $rmd_start->setDate($start);
983 $rmd->addSubItem($rmd_start);
985 $end = $this->
object->getReminderEnd();
990 $rmd_end->setDate($end);
992 $rmd->addSubItem($rmd_end);
994 $rmd_freq =
new ilNumberInputGUI($this->lng->txt(
"survey_reminder_frequency"),
"rmd_freq");
996 $rmd_freq->setSize(3);
997 $rmd_freq->setSuffix($this->lng->txt(
"survey_reminder_frequency_days"));
998 $rmd_freq->setValue($this->object->getReminderFrequency());
999 $rmd_freq->setMinValue(1);
1000 $rmd->addSubItem($rmd_freq);
1002 $rmd_grp =
new ilRadioGroupInputGUI($this->lng->txt(
"survey_notification_target_group"),
"rmd_grp");
1004 $rmd_grp->setValue($this->object->getReminderTarget());
1005 $rmd->addSubItem($rmd_grp);
1007 $rmd_grp_crs =
new ilRadioOption($this->lng->txt(
"survey_notification_target_group_parent_course"),
1011 $rmd_grp_crs->
setInfo($this->lng->txt(
"survey_notification_target_group_parent_course_inactive"));
1013 $rmd_grp->addOption($rmd_grp_crs);
1015 $rmd_grp_inv =
new ilRadioOption($this->lng->txt(
"survey_notification_target_group_invited"),
1017 $rmd_grp_inv->
setInfo(sprintf($this->lng->txt(
"survey_notification_target_group_invited_info"), $num_inv));
1018 $rmd_grp->addOption($rmd_grp_inv);
1022 $tut =
new ilCheckboxInputGUI($this->lng->txt(
"survey_notification_tutor_setting"),
"tut");
1023 $tut->
setChecked($this->object->getTutorNotificationStatus());
1024 $form->addItem($tut);
1026 $tut_logins = array();
1027 $tuts = $this->
object->getTutorNotificationRecipients();
1030 foreach($tuts as $tut_id)
1035 $tut_logins[] = $tmp[
"login"];
1039 $tut_ids =
new ilTextInputGUI($this->lng->txt(
"survey_notification_tutor_recipients"),
"tut_ids");
1040 $tut_ids->
setDataSource($this->ctrl->getLinkTarget($this,
"doAutoComplete",
"",
true));
1041 $tut_ids->setRequired(
true);
1042 $tut_ids->setMulti(
true);
1043 $tut_ids->setMultiValues($tut_logins);
1044 $tut_ids->setValue(array_shift($tut_logins));
1045 $tut->addSubItem($tut_ids);
1047 $tut_grp =
new ilRadioGroupInputGUI($this->lng->txt(
"survey_notification_target_group"),
"tut_grp");
1049 $tut_grp->setValue($this->object->getTutorNotificationTarget());
1050 $tut->addSubItem($tut_grp);
1052 $tut_grp_crs =
new ilRadioOption($this->lng->txt(
"survey_notification_target_group_parent_course"),
1056 $tut_grp_crs->
setInfo($this->lng->txt(
"survey_notification_target_group_parent_course_inactive"));
1058 $tut_grp->addOption($tut_grp_crs);
1060 $tut_grp_inv =
new ilRadioOption($this->lng->txt(
"survey_notification_target_group_invited"),
1062 $tut_grp_inv->
setInfo(sprintf($this->lng->txt(
"survey_notification_target_group_invited_info"), $num_inv));
1063 $tut_grp->addOption($tut_grp_inv);
1067 include_once(
"./Services/Skill/classes/class.ilSkillManagementSettings.php");
1069 if($this->object->get360Mode() && $skmg_set->isActivated())
1072 $other->setTitle($this->lng->txt(
"other"));
1073 $form->addItem($other);
1075 $skill_service =
new ilCheckboxInputGUI($this->lng->txt(
"survey_activate_skill_service"),
"skill_service");
1076 $skill_service->
setChecked($this->object->get360SkillService());
1077 $form->addItem($skill_service);
1080 $form->addCommandButton(
"saveProperties", $this->lng->txt(
"save"));
1083 if($template_settings)
1085 foreach($template_settings as $id => $item)
1089 $form->removeItemByPostVar($id);
1104 global $ilAccess, $ilTabs, $ilHelp;
1108 $ilTabs->activateTab(
"settings");
1111 if ($this->object->get360Mode())
1113 $ilHelp->setScreenId(
"settings_360");
1123 if($this->object->getTemplate())
1125 $link = $this->ctrl->getLinkTarget($this,
"confirmResetTemplate");
1126 $link =
"<a href=\"".$link.
"\">".$this->lng->txt(
"survey_using_template_link").
"</a>";
1127 $message =
"<div style=\"margin-top:10px\">".
1128 $this->tpl->getMessageHTML(sprintf($this->lng->txt(
"survey_using_template"),
1133 $this->tpl->setContent($a_form->getHTML().$message);
1138 $fields = array(
'login',
'firstname',
'lastname',
'email');
1140 include_once
'./Services/User/classes/class.ilUserAutoComplete.php';
1142 $auto->setSearchFields($fields);
1143 $auto->setResultField(
'login');
1144 $auto->enableFieldSearchableCheck(
true);
1155 $this->tpl->addBlockFile(
"ADM_CONTENT",
"adm_content",
"tpl.il_svy_svy_confirm_resettemplate.html",
"Modules/Survey");
1156 $this->tpl->setCurrentBlock(
"adm_content");
1157 $this->tpl->setVariable(
"BTN_CONFIRM_REMOVE", $this->lng->txt(
"confirm"));
1158 $this->tpl->setVariable(
"BTN_CANCEL_REMOVE", $this->lng->txt(
"cancel"));
1159 $this->tpl->setVariable(
"FORM_ACTION", $this->ctrl->getFormAction($this,
"resetTemplateObject"));
1160 $this->tpl->parseCurrentBlock();
1168 $this->
object->setTemplate(null);
1169 $this->
object->saveToDB();
1172 $this->ctrl->redirect($this,
"properties");
1183 include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
1185 $form->setTarget(
"_top");
1186 $form->setFormAction($this->ctrl->getFormAction($this));
1187 $form->setTitle($this->lng->txt(
"import_svy"));
1189 include_once(
"./Services/Form/classes/class.ilFileInputGUI.php");
1190 $fi =
new ilFileInputGUI($this->lng->txt(
"import_file"),
"importfile");
1192 $fi->setRequired(
true);
1193 $form->addItem($fi);
1195 include_once(
"./Modules/Survey/classes/class.ilObjSurvey.php");
1197 $questionspools = $svy->getAvailableQuestionpools(
true,
true,
true);
1199 $pools =
new ilSelectInputGUI($this->lng->txt(
"select_questionpool_short"),
"spl");
1200 $pools->
setOptions(array(
""=>$this->lng->txt(
"dont_use_questionpool")) + $questionspools);
1201 $pools->setRequired(
false);
1202 $form->addItem($pools);
1204 $form->addCommandButton(
"importFile", $this->lng->txt(
"import"));
1205 $form->addCommandButton(
"cancel", $this->lng->txt(
"cancel"));
1217 $parent_id =
$_GET[
"ref_id"];
1223 $ilErr->raiseError($this->lng->txt(
"no_create_permission"));
1226 $this->lng->loadLanguageModule($new_type);
1227 $this->ctrl->setParameter($this,
"new_type", $new_type);
1230 if ($form->checkInput())
1232 include_once(
"./Modules/Survey/classes/class.ilObjSurvey.php");
1234 $newObj->setType($new_type);
1235 $newObj->setTitle(
"dummy");
1236 $newObj->setDescription(
"dummy");
1237 $newObj->create(
true);
1241 $error = $newObj->importObject($_FILES[
"importfile"], $form->getInput(
"spl"));
1245 $this->
ilias->raiseError($error, $this->
ilias->error_obj->MESSAGE);
1251 "&baseClass=ilObjSurveyGUI");
1254 include_once
"Services/Administration/classes/class.ilSettingsTemplate.php";
1259 $tpl->addJavaScript(
"./Modules/Scorm2004/scripts/questions/jquery.js");
1262 $this->tpl->setCurrentBlock(
"template_option");
1263 $this->tpl->setVariable(
"VAL_TEMPLATE_OPTION",
"");
1264 $this->tpl->setVariable(
"TXT_TEMPLATE_OPTION", $this->lng->txt(
"none"));
1265 $this->tpl->parseCurrentBlock();
1267 foreach($templates as $item)
1269 $this->tpl->setCurrentBlock(
"template_option");
1270 $this->tpl->setVariable(
"VAL_TEMPLATE_OPTION", $item[
"id"]);
1271 $this->tpl->setVariable(
"TXT_TEMPLATE_OPTION", $item[
"title"]);
1272 $this->tpl->parseCurrentBlock();
1274 $desc = str_replace(
"\n",
"", nl2br($item[
"description"]));
1275 $desc = str_replace(
"\r",
"", $desc);
1277 $this->tpl->setCurrentBlock(
"js_data");
1278 $this->tpl->setVariable(
"JS_DATA_ID", $item[
"id"]);
1279 $this->tpl->setVariable(
"JS_DATA_TEXT", $desc);
1280 $this->tpl->parseCurrentBlock();
1283 $this->tpl->setCurrentBlock(
"templates");
1284 $this->tpl->setVariable(
"TXT_TEMPLATE", $this->lng->txt(
"svy_settings_template"));
1285 $this->tpl->parseCurrentBlock();
1290 $form->setValuesByPost();
1291 $tpl->setContent($form->getHtml());
1302 $ilTabs->activateTab(
"export");
1304 $export_dir = $this->
object->getExportDirectory();
1305 $export_files = $this->
object->getExportFiles($export_dir);
1307 if(count($export_files) > 0)
1309 foreach($export_files as $exp_file)
1311 $file_arr = explode(
"__", $exp_file);
1313 array_push(
$data, array(
1314 'file' => $exp_file,
1315 'size' => filesize($export_dir.
"/".$exp_file),
1321 include_once
"./Modules/Survey/classes/tables/class.ilSurveyExportTableGUI.php";
1323 $table_gui->setData(
$data);
1324 $this->tpl->setVariable(
'ADM_CONTENT', $table_gui->getHTML());
1333 include_once(
"./Modules/Survey/classes/class.ilSurveyExport.php");
1335 $survey_exp->buildExportFile();
1336 $this->ctrl->redirect($this,
"export");
1344 if(!isset(
$_POST[
"file"]))
1347 $this->ctrl->redirect($this,
"export");
1350 if (count(
$_POST[
"file"]) > 1)
1353 $this->ctrl->redirect($this,
"export");
1358 $export_dir = $this->
object->getExportDirectory();
1359 include_once
"./Services/Utilities/classes/class.ilUtil.php";
1371 $ilTabs->activateTab(
"export");
1373 if (!isset(
$_POST[
"file"]))
1376 $this->ctrl->redirect($this,
"export");
1381 $export_dir = $this->
object->getExportDirectory();
1382 $export_files = $this->
object->getExportFiles($export_dir);
1384 if (count(
$_POST[
"file"]) > 0)
1386 foreach (
$_POST[
"file"] as $exp_file)
1388 $file_arr = explode(
"__", $exp_file);
1390 array_push(
$data, array(
1391 'file' => $exp_file,
1392 'size' => filesize($export_dir.
"/".$exp_file),
1398 include_once
"./Modules/Survey/classes/tables/class.ilSurveyExportTableGUI.php";
1400 $table_gui->setData(
$data);
1401 $this->tpl->setVariable(
'ADM_CONTENT', $table_gui->getHTML());
1411 $this->ctrl->redirect($this,
"export");
1420 $export_dir = $this->
object->getExportDirectory();
1423 $file = basename($file);
1425 $exp_file = $export_dir.
"/".
$file;
1426 $exp_dir = $export_dir.
"/".substr($file, 0, strlen($file) - 4);
1427 if (@is_file($exp_file))
1431 if (@is_dir($exp_dir))
1433 include_once
"./Services/Utilities/classes/class.ilUtil.php";
1438 $this->ctrl->redirect($this,
"export");
1453 $this->ctrl->setCmd(
"showSummary");
1454 $this->ctrl->setCmdClass(
"ilinfoscreengui");
1463 global $ilAccess, $ilTabs,
$ilUser, $ilToolbar;
1465 if (!$this->external_rater_360 &&
1466 !$ilAccess->checkAccess(
"visible",
"", $this->ref_id))
1468 $this->
ilias->raiseError($this->lng->txt(
"msg_no_perm_read"),$this->
ilias->error_obj->MESSAGE);
1471 $ilTabs->activateTab(
"info_short");
1473 include_once
"./Modules/Survey/classes/class.ilSurveyExecutionGUI.php";
1476 include_once(
"./Services/InfoScreen/classes/class.ilInfoScreenGUI.php");
1478 $info->enablePrivateNotes();
1481 $canStart = $this->
object->canStartSurvey(null, $this->external_rater_360);
1483 $showButtons = $canStart[
"result"];
1486 if($canStart[
"edit_settings"] &&
1487 $ilAccess->checkAccess(
"write",
"", $this->ref_id))
1489 $canStart[
"messages"][] =
"<a href=\"".$this->ctrl->getLinkTarget($this,
"properties").
"\">» ".
1490 $this->lng->txt(
"survey_edit_settings").
"</a>";
1495 $big_button =
false;
1499 $is_appraisee =
false;
1500 if($this->object->get360Mode() &&
1501 $this->
object->isAppraisee($ilUser->getId()))
1503 $info->addSection($this->lng->txt(
"survey_360_appraisee_info"));
1505 $appr_data = $this->
object->getAppraiseesData();
1506 $appr_data = $appr_data[$ilUser->getId()];
1507 $info->addProperty($this->lng->txt(
"survey_360_raters_status_info"), $appr_data[
"finished"]);
1509 if(!$appr_data[
"closed"])
1511 $close_button_360 =
'<div>'.
1512 '<a class="submit" href="'.$this->ctrl->getLinkTargetByClass(
"ilsurveyparticipantsgui",
"confirmappraiseeclose").
'">'.
1513 $this->lng->txt(
"survey_360_appraisee_close_action").
'</a></div>';
1515 $txt =
"survey_360_appraisee_close_action_info";
1516 if($this->object->get360SkillService())
1520 $info->addProperty($this->lng->txt(
"status"),
1521 $close_button_360.$this->lng->txt($txt));
1528 $info->addProperty($this->lng->txt(
"status"),
1529 sprintf($this->lng->txt(
"survey_360_appraisee_close_action_status"),
1533 $is_appraisee =
true;
1540 $code_input =
false;
1541 $anonymous_code =
$_POST[
"anonymous_id"];
1542 if ($anonymous_code)
1546 if(!$this->object->checkSurveyCode($anonymous_code))
1548 $anonymous_code = null;
1553 $this->
object->bindSurveyCodeToUser($ilUser->getId(), $anonymous_code);
1556 if ($anonymous_code)
1558 $_SESSION[
"anonymous_id"][$this->
object->getId()] = $anonymous_code;
1562 $anonymous_code =
$_SESSION[
"anonymous_id"][$this->
object->getId()];
1570 if($this->object->getAnonymize() && !$anonymous_code)
1572 $anonymous_code = $this->
object->findCodeForUser($ilUser->getId());
1576 $participant_status = $this->
object->getUserSurveyExecutionStatus($anonymous_code);
1577 if($participant_status)
1579 $anonymous_code = $participant_status[
"code"];
1580 $participant_status = $participant_status[
"runs"];
1584 if(!$this->object->isAccessibleWithoutCode() &&
1587 (!$anonymous_code || !$this->
object->isAnonymousKey($anonymous_code)))
1589 $anonymous_code = null;
1594 $_SESSION[
"anonymous_id"][$this->
object->getId()] = $anonymous_code;
1597 if(!$is_appraisee &&
1599 !$this->object->isAccessibleWithoutCode())
1601 $info->setFormAction($this->ctrl->getFormAction($this,
"infoScreen"));
1602 $info->addSection($this->lng->txt(
"anonymization"));
1603 $info->addProperty(
"", $this->lng->txt(
"anonymize_anonymous_introduction"));
1604 $info->addPropertyTextinput($this->lng->txt(
"enter_anonymous_id"),
"anonymous_id",
"", 8,
"infoScreen", $this->lng->txt(
"submit"),
true);
1609 if(!$this->object->get360Mode())
1613 $info->addHiddenElement(
"anonymous_id", $anonymous_code);
1616 $survey_started = $this->
object->isSurveyStarted($ilUser->getId(), $anonymous_code);
1617 if ($survey_started === 1)
1621 elseif ($survey_started === 0)
1623 $big_button = array(
"resume", $this->lng->txt(
"resume_survey"));
1625 elseif ($survey_started === FALSE)
1627 $big_button = array(
"start", $this->lng->txt(
"start_survey"));
1633 $appr_ids = array();
1638 $anonymous_id = $this->
object->getAnonymousIdByCode($anonymous_code);
1641 $appr_ids = $this->
object->getAppraiseesToRate(0, $anonymous_id);
1647 if(!$appr_ids && $ilUser->getId() != ANONYMOUS_USER_ID)
1649 $appr_ids = $this->
object->getAppraiseesToRate($ilUser->getId());
1652 if(
sizeof($appr_ids))
1655 $active_appraisees = array();
1656 if($participant_status)
1658 foreach($participant_status as $item)
1660 $active_appraisees[$item[
"appr_id"]] = $item[
"finished"];
1666 foreach($appr_ids as $appr_id)
1668 if($this->object->isAppraiseeClosed($appr_id))
1671 $list[$appr_id] = $this->lng->txt(
"survey_360_appraisee_is_closed");
1673 else if(array_key_exists($appr_id, $active_appraisees))
1676 if($active_appraisees[$appr_id])
1678 $list[$appr_id] = $this->lng->txt(
"already_completed_survey");
1683 $list[$appr_id] = array(
"resume", $this->lng->txt(
"resume_survey"));
1689 $list[$appr_id] = array(
"start", $this->lng->txt(
"start_survey"));
1693 $info->addSection($this->lng->txt(
"survey_360_rate_other_appraisees"));
1695 include_once
"Services/User/classes/class.ilUserUtil.php";
1696 foreach($list as $appr_id => $item)
1700 if(!is_array($item))
1702 $info->addProperty($appr_name, $item);
1706 $this->ctrl->setParameter($output_gui,
"appr_id", $appr_id);
1707 $href = $this->ctrl->getLinkTarget($output_gui, $item[0]);
1708 $this->ctrl->setParameter($output_gui,
"appr_id",
"");
1710 $big_button_360 =
'<div>'.
1711 '<a class="submit" href="'.$href.
'">'.$item[1].
'</a></div>';
1713 $info->addProperty($appr_name, $big_button_360);
1717 else if(!$is_appraisee)
1724 if($this->object->get360Mode() &&
1725 $this->
object->get360SelfAppraisee() &&
1726 !$this->
object->isAppraisee($ilUser->getId()) &&
1727 $ilUser->getId() != ANONYMOUS_USER_ID)
1729 $link = $this->ctrl->getLinkTargetByClass(
"ilsurveyparticipantsgui",
"addSelfAppraisee");
1730 $link =
'<a href="'.$link.
'">'.$this->lng->txt(
"survey_360_add_self_appraisee").
'</a>';
1731 $info->addProperty(
" ", $link);
1737 $ilToolbar->setFormAction($this->ctrl->getFormAction($output_gui,
"infoScreen"));
1738 $ilToolbar->addFormButton($big_button[1], $big_button[0],
"",
true);
1739 $ilToolbar->setCloseFormTag(
false);
1740 $info->setOpenFormTag(
false);
1749 if (strlen($this->object->getIntroduction()))
1751 $introduction = $this->
object->getIntroduction();
1752 $info->addSection($this->lng->txt(
"introduction"));
1753 $info->addProperty(
"", $this->object->prepareTextareaOutput($introduction).
1754 "<br />".$info->getHiddenToggleButton());
1758 $info->addSection(
"");
1759 $info->addProperty(
"", $info->getHiddenToggleButton());
1762 $info->hideFurtherSections(
false);
1764 $info->addSection($this->lng->txt(
"svy_general_properties"));
1765 if (strlen($this->object->getAuthor()))
1767 $info->addProperty($this->lng->txt(
"author"), $this->
object->getAuthor());
1769 $info->addProperty($this->lng->txt(
"title"), $this->
object->getTitle());
1770 switch ($this->object->getAnonymize())
1773 $info->addProperty($this->lng->txt(
"anonymization"), $this->lng->txt(
"anonymize_personalized"));
1776 if (
$_SESSION[
"AccountId"] == ANONYMOUS_USER_ID)
1778 $info->addProperty($this->lng->txt(
"anonymization"), $this->lng->txt(
"info_anonymize_with_code"));
1782 $info->addProperty($this->lng->txt(
"anonymization"), $this->lng->txt(
"info_anonymize_registered_user"));
1786 $info->addProperty($this->lng->txt(
"anonymization"), $this->lng->txt(
"info_anonymize_without_code"));
1789 include_once
"./Modules/Survey/classes/class.ilObjSurveyAccess.php";
1792 $info->addProperty($this->lng->txt(
"evaluation_access"), $this->lng->txt(
"evaluation_access_info"));
1794 $info->addMetaDataSections($this->object->getId(),0, $this->
object->getType());
1795 $this->ctrl->forwardCommand($info);
1801 switch ($this->ctrl->getCmd())
1807 case "redirectQuestion":
1808 $ilLocator->addItem($this->object->getTitle(), $this->ctrl->getLinkTarget($this,
"infoScreen"),
"",
$_GET[
"ref_id"]);
1811 case "checkEvaluationAccess":
1812 case "evaluationdetails":
1813 case "evaluationuser":
1814 $ilLocator->addItem($this->object->getTitle(), $this->ctrl->getLinkTargetByClass(
"ilsurveyevaluationgui",
"evaluation"),
"",
$_GET[
"ref_id"]);
1823 $ilLocator->addItem($this->object->getTitle(), $this->ctrl->getLinkTarget($this,
"infoScreen"),
"",
$_GET[
"ref_id"]);
1826 $ilLocator->addItem($this->object->getTitle(), $this->ctrl->getLinkTarget($this,
""),
"",
$_GET[
"ref_id"]);
1833 $q_id = (int)
$_GET[
"q_id"];
1834 include_once
"./Modules/SurveyQuestionPool/classes/class.SurveyQuestion.php";
1836 $this->ctrl->setParameterByClass($q_type,
"q_id", $q_id);
1838 $this->ctrl->getLinkTargetByClass(array(
"ilSurveyEditorGUI", $q_type),
"editQuestion"));
1851 function _goto($a_target, $a_access_code =
"")
1856 include_once
"./Services/Utilities/classes/class.ilUtil.php";
1857 if (strlen($a_access_code))
1860 $_GET[
"baseClass"] =
"ilObjSurveyGUI";
1861 $_GET[
"cmd"] =
"infoScreen";
1862 $_GET[
"ref_id"] = $a_target;
1863 include(
"ilias.php");
1867 if ($ilAccess->checkAccess(
"read",
"", $a_target))
1869 $_GET[
"baseClass"] =
"ilObjSurveyGUI";
1870 $_GET[
"cmd"] =
"infoScreen";
1871 $_GET[
"ref_id"] = $a_target;
1872 include(
"ilias.php");
1875 else if ($ilAccess->checkAccess(
"read",
"", ROOT_FOLDER_ID))
1882 $ilErr->raiseError($lng->txt(
"msg_no_perm_read_lm"), $ilErr->FATAL);
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
Class ilSurveyParticipantsGUI.
static _lookupName($a_user_id)
lookup user name
This class represents an option in a radio group.
Survey skill service GUI class.
setDataSource($href, $a_delimiter=null)
set datasource link for js autocomplete
confirmDeleteExportFileObject()
confirmation screen for export file deletion
importFileObject()
form for new survey object import
setValue($a_value)
Set Value.
This class represents an option in a checkbox group.
resetTemplateObject()
Enable all settings - remove template.
const EVALUATION_ACCESS_OFF
GUI class for the workflow of copying objects.
static validateExternalRaterCode($a_ref_id, $a_code)
_getTitle($question_id)
Returns the question title of a question with a given id.
Skill management settings.
const EVALUATION_ACCESS_PARTICIPANTS
static getStyleSheetLocation($mode="output", $a_css_name="", $a_css_location="")
get full style sheet file name (path inclusive) of current user
Class ilSurveyConstraintsGUI.
handleWriteAccess()
Checks for write access and returns to the parent object.
Class ilObject Basic functions for all objects.
addObserver(&$a_class, $a_method, $a_element)
setValue($a_value)
Set Value.
static _gotoRepositoryRoot($a_raise_error=false)
Goto repository root.
static getAllSettingsTemplates($a_type)
Get all settings templates of type.
static _lookupId($a_user_str)
lookup id by login
static setUseRelativeDates($a_status)
set use relative dates
static _lookupTitle($a_id)
lookup object title
setInfo($a_info)
Set Info.
initImportForm($a_new_type)
savePropertiesObject()
Save the survey properties.
static _getAllReferences($a_id)
get all reference ids of object
static getNamePresentation($a_user_id, $a_user_image=false, $a_profile_link=false, $a_profile_back_link="", $a_force_first_lastname=false, $a_omit_login=false, $a_sortable=true)
Default behaviour is:
Auto completion class for user lists.
_goto($a_target, $a_access_code="")
redirect script
getTabs(&$tabs_gui)
adds tabs to tab gui object
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
addDidacticTemplateOptions(array &$a_options)
afterSave(ilObject $a_new_object)
save object public
const ANONYMIZE_FREEACCESS
Export class for surveys.
const NOTIFICATION_PARENT_COURSE
Survey execution graphical output.
Class ilObjectGUI Basic methods of all Output classes.
static _lookupObjId($a_id)
This class represents a text property in a property form.
infoScreenObject()
this one is called from the info button in the repository not very nice to set cmdClass/Cmd manually...
static formatDate(ilDateTime $date)
Format a date public.
setCols($a_cols)
Set Cols.
redirection script todo: (a better solution should control the processing via a xml file) ...
deleteExportFileObject()
delete export files
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
static lookupTitle($a_id)
Lookup title.
static sendQuestion($a_info="", $a_keep=false)
Send Question to Screen.
const NOTIFICATION_INVITED_USERS
static deliverFile($a_file, $a_filename, $a_mime='', $isInline=false, $removeAfterDelivery=false, $a_exit_after=true)
deliver file for download via browser.
infoScreen()
show information screen
prepareOutput()
prepare output
evaluationObject()
Redirects the evaluation object call to the ilSurveyEvaluationGUI class.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
const EVALUATION_ACCESS_ALL
propertiesObject(ilPropertyFormGUI $a_form=null)
Display and fill the properties form of the test.
confirmResetTemplateObject()
Enable all settings - Confirmation.
This class represents a non editable value in a property form.
_getQuestionType($question_id)
Returns the question type of a question with a given id.
& _getUsedHTMLTags($a_module="")
Returns an array of all allowed HTML tags for text editing.
_hasEvaluationAccess($a_obj_id, $user_id)
This class represents a text area property in a property form.
getCreationMode()
get creation mode
getRefId()
get reference id public
putObjectInTree(ilObject $a_obj, $a_parent_node_id=null)
Add object to tree at given position.
getDidacticTemplateVar($a_type)
Get didactic template setting from creation screen.
New PermissionGUI (extends from old ilPermission2GUI) RBAC related output.
if($_REQUEST['ilias_path']) define('ILIAS_HTTP_PATH' $_REQUEST['ilias_path']
Survey skill determination GUI class.
cancelDeleteExportFileObject()
cancel deletion of export files
Survey evaluation graphical output.
createExportFileObject()
create export file
setValue($a_value)
Set Value.
static redirect($a_script)
http redirect to other script
addHeaderAction()
Add header action menu.
static delDir($a_dir, $a_clean_only=false)
removes a dir and all its content (subdirs and files) recursively
checkPermissionBool($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
Check permission.
Settings template application class.
static getInstanceFromAjaxCall()
(Re-)Build instance from ajax call
downloadExportFileObject()
download export file
initPropertiesForm()
Init survey settings form.