41 $this->
object =& $a_object;
42 if ($this->object->get360Mode())
53 include_once(
"./Services/Skill/classes/class.ilSkillManagementSettings.php");
55 if ($this->object->get360SkillService() && $skmg_set->isActivated())
57 $cmd = $this->ctrl->getCmd(
"competenceEval");
61 $cmd = $this->ctrl->getCmd(
"evaluation");
64 $next_class = $this->ctrl->getNextClass($this);
70 $this->setEvalSubTabs();
92 include_once(
"./Services/Skill/classes/class.ilSkillManagementSettings.php");
94 if ($this->object->get360SkillService() && $skmg_set->isActivated())
96 $ilTabs->addSubTabTarget(
97 "svy_eval_competences",
98 $this->ctrl->getLinkTarget($this,
"competenceEval"),
99 array(
"competenceEval")
103 $ilTabs->addSubTabTarget(
104 "svy_eval_cumulated",
105 $this->ctrl->getLinkTarget($this,
"evaluation"),
106 array(
"evaluation",
"checkEvaluationAccess")
109 $ilTabs->addSubTabTarget(
111 $this->ctrl->getLinkTarget($this,
"evaluationdetails"),
112 array(
"evaluationdetails")
115 if ($ilAccess->checkAccess(
"write",
"", $this->object->getRefId()))
117 $ilTabs->addSubTabTarget(
119 $this->ctrl->getLinkTarget($this,
"evaluationuser"),
120 array(
"evaluationuser")
133 $this->appr_id = $a_val;
158 $req_appr_id = $ilUser->getId();
162 $req_appr_id = (int)
$_REQUEST[
"appr_id"];
166 if ($req_appr_id > 0)
171 foreach($this->object->getAppraiseesData() as $item)
173 if ($item[
"closed"] &&
174 ($item[
"user_id"] == $ilUser->getId() ||
175 $rbacsystem->checkAccess(
"write", $this->object->getRefId()) ||
178 $valid[] = $item[
"user_id"];
181 if(in_array($req_appr_id,
$valid))
183 $appr_id = $req_appr_id;
188 $appr_id = array_shift(
$valid);
192 $this->ctrl->setParameter($this,
"appr_id", $appr_id);
208 if($this->object->getAnonymize() == 1 &&
214 include_once
"Modules/Survey/classes/class.ilObjSurveyAccess.php";
217 if($this->object->getAnonymize() == 1)
224 if($this->object->getAnonymize() == 1)
227 $surveycode = $this->
object->getUserAccessCode($ilUser->getId());
228 if ($this->object->isAnonymizedParticipant($surveycode))
243 $this->tpl->setVariable(
"TABS",
"");
244 $this->tpl->addBlockFile(
"ADM_CONTENT",
"adm_content",
"tpl.il_svy_svy_evaluation_checkaccess.html",
"Modules/Survey");
245 $this->tpl->setCurrentBlock(
"adm_content");
246 $this->tpl->setVariable(
"AUTHENTICATION_NEEDED", $this->lng->txt(
"svy_check_evaluation_authentication_needed"));
247 $this->tpl->setVariable(
"FORM_ACTION", $this->ctrl->getFormAction($this,
"checkEvaluationAccess"));
248 $this->tpl->setVariable(
"EVALUATION_CHECKACCESS_INTRODUCTION", $this->lng->txt(
"svy_check_evaluation_access_introduction"));
249 $this->tpl->setVariable(
"VALUE_CHECK", $this->lng->txt(
"ok"));
250 $this->tpl->setVariable(
"VALUE_CANCEL", $this->lng->txt(
"cancel"));
251 $this->tpl->setVariable(
"TEXT_SURVEY_CODE", $this->lng->txt(
"survey_code"));
252 $this->tpl->parseCurrentBlock();
255 $_SESSION[
"anon_evaluation_access"] = null;
268 $surveycode =
$_POST[
"surveycode"];
269 if ($this->object->isAnonymizedParticipant($surveycode))
292 include_once
"./Services/Utilities/classes/class.ilUtil.php";
294 $path = $tree->getPathFull($this->object->getRefID());
295 $ilCtrl->setParameterByClass(
"ilrepositorygui",
"ref_id",
297 $ilCtrl->redirectByClass(
"ilrepositorygui",
"frameset");
315 $format_percent =
"";
316 $format_datetime =
"";
319 switch (
$_POST[
"export_format"])
322 include_once
"./Services/Excel/classes/class.ilExcelWriterAdapter.php";
325 $workbook = $adapter->getWorkbook();
326 $workbook->setVersion(8);
328 $format_bold =& $workbook->addFormat();
329 $format_bold->setBold();
330 $format_percent =& $workbook->addFormat();
331 $format_percent->setNumFormat(
"0.00%");
332 $format_datetime =& $workbook->addFormat();
333 $format_datetime->setNumFormat(
"DD/MM/YYYY hh:mm:ss");
334 $format_title =& $workbook->addFormat();
335 $format_title->setBold();
336 $format_title->setColor(
'black');
337 $format_title->setPattern(1);
338 $format_title->setFgColor(
'silver');
339 $format_title->setAlign(
'center');
341 include_once (
"./Services/Excel/classes/class.ilExcelUtils.php");
342 $mainworksheet =& $workbook->addWorksheet();
344 switch (
$_POST[
'export_label'])
381 switch (
$_POST[
'export_label'])
384 array_push($csvrow, $this->lng->txt(
"label"));
387 array_push($csvrow, $this->lng->txt(
"title"));
390 array_push($csvrow, $this->lng->txt(
"title"));
391 array_push($csvrow, $this->lng->txt(
"label"));
394 array_push($csvrow, $this->lng->txt(
"question"));
395 array_push($csvrow, $this->lng->txt(
"question_type"));
396 array_push($csvrow, $this->lng->txt(
"users_answered"));
397 array_push($csvrow, $this->lng->txt(
"users_skipped"));
398 array_push($csvrow, $this->lng->txt(
"mode"));
403 array_push($csvrow, $this->lng->txt(
"mode_nr_of_selections"));
404 array_push($csvrow, $this->lng->txt(
"median"));
405 array_push($csvrow, $this->lng->txt(
"arithmetic_mean"));
406 array_push($csvfile, $csvrow);
410 $finished_ids = null;
411 if($this->object->get360Mode())
416 $this->ctrl->redirect($this, $details ?
"evaluationdetails" :
"evaluation");
418 $finished_ids = $this->
object->getFinishedIdsForAppraiseeId($appr_id);
419 if(!
sizeof($finished_ids))
421 $finished_ids = array(-1);
425 $questions =& $this->
object->getSurveyQuestions();
427 foreach ($questions as
$data)
429 include_once
"./Modules/SurveyQuestionPool/classes/class.SurveyQuestion.php";
431 $eval = $this->
object->getCumulatedResults($question, $finished_ids);
432 switch (
$_POST[
"export_format"])
435 $counter = $question->setExportCumulatedXLS($mainworksheet, $format_title, $format_bold, $eval, $counter,
$_POST[
'export_label']);
439 $csvrows =& $question->setExportCumulatedCVS($eval,
$_POST[
'export_label']);
440 foreach ($csvrows as $csvrow)
442 array_push($csvfile, $csvrow);
448 switch (
$_POST[
"export_format"])
451 $question->setExportDetailsXLS($workbook, $format_title, $format_bold, $eval,
$_POST[
'export_label']);
460 $type = $this->lng->txt(
"svy_eval_cumulated");
464 $type = $this->lng->txt(
"svy_eval_detail");
466 $surveyname = $this->
object->getTitle().
" ".$type.
" ".date(
"Y-m-d");
467 $surveyname = preg_replace(
"/\s/",
"_", trim($surveyname));
470 switch (
$_POST[
"export_format"])
482 foreach ($csvfile as $csvrow)
484 $csvrow =& $this->
object->processCSVRow($csvrow, TRUE,
$separator);
487 include_once
"./Services/Utilities/classes/class.ilUtil.php";
496 if (strlen(
$_POST[
"export_format"]))
503 $this->ctrl->redirect($this,
'evaluation');
509 if (strlen(
$_POST[
"export_format"]))
516 $this->ctrl->redirect($this,
'evaluation');
523 $this->ctrl->redirect($this,
'evaluation');
528 global $rbacsystem, $ilToolbar;
531 if (!$rbacsystem->checkAccess(
"write",
$_GET[
"ref_id"]))
533 if (!$rbacsystem->checkAccess(
"read",
$_GET[
"ref_id"]))
539 switch ($this->object->getEvaluationAccess())
556 $ilToolbar->setFormAction($this->ctrl->getFormAction($this));
557 include_once
"Services/Form/classes/class.ilPropertyFormGUI.php";
559 $this->tpl->addBlockFile(
"ADM_CONTENT",
"adm_content",
"tpl.il_svy_svy_evaluation.html",
"Modules/Survey");
563 if($this->object->get360Mode())
569 if(!$this->object->get360Mode() ||
$appr_id)
571 $format =
new ilSelectInputGUI($this->lng->txt(
"svy_export_format"),
"export_format");
573 self::TYPE_XLS => $this->lng->txt(
'exp_type_excel'),
576 $ilToolbar->addInputItem($format,
true);
579 $label->setOptions(array(
580 'label_only' => $this->lng->txt(
'export_label_only'),
581 'title_only' => $this->lng->txt(
'export_title_only'),
582 'title_label'=> $this->lng->txt(
'export_title_label')
584 $ilToolbar->addInputItem($label);
586 include_once
"Services/UIComponent/Button/classes/class.ilSubmitButton.php";
588 $button->setCaption(
"export");
591 $button->setCommand(
'exportDetailData');
595 $button->setCommand(
'exportData');
597 $button->setOmitPreventDoubleSubmission(
true);
598 $ilToolbar->addButtonInstance($button);
600 $ilToolbar->addSeparator();
602 include_once
"Services/UIComponent/Button/classes/class.ilLinkButton.php";
604 $button->setCaption(
"print");
605 $button->setOnClick(
"window.print(); return false;");
606 $button->setOmitPreventDoubleSubmission(
true);
607 $ilToolbar->addButtonInstance($button);
609 $finished_ids = null;
612 $finished_ids = $this->
object->getFinishedIdsForAppraiseeId($appr_id);
613 if(!
sizeof($finished_ids))
615 $finished_ids = array(-1);
619 $questions =& $this->
object->getSurveyQuestions();
622 $last_questionblock_id = null;
623 foreach ($questions as $qdata)
625 include_once
"./Modules/SurveyQuestionPool/classes/class.SurveyQuestion.php";
627 $question = $question_gui->object;
628 $c = $question->getCumulatedResultData($this->object->getSurveyId(), $counter, $finished_ids);
633 $main = array_shift($c);
634 $main[
"subitems"] = $c;
635 array_push(
$data, $main);
639 array_push(
$data, $c);
645 if($qdata[
"questionblock_id"] && $qdata[
"questionblock_id"] != $last_questionblock_id)
647 $qblock = $this->
object->getQuestionblock($qdata[
"questionblock_id"]);
648 if($qblock[
"show_blocktitle"])
650 $this->tpl->setCurrentBlock(
"detail_qblock");
651 $this->tpl->setVariable(
"BLOCKTITLE", $qdata[
"questionblock_title"]);
652 $this->tpl->parseCurrentBlock();
655 $last_questionblock_id = $qdata[
"questionblock_id"];
658 $detail = $question_gui->getCumulatedResultsDetails($this->object->getSurveyId(), $counter-1, $finished_ids);
659 $this->tpl->setCurrentBlock(
"detail");
660 $this->tpl->setVariable(
"DETAIL", $detail);
661 $this->tpl->parseCurrentBlock();
666 include_once
"./Modules/Survey/classes/tables/class.ilSurveyResultsCumulatedTableGUI.php";
668 $table_gui->setData(
$data);
669 $this->tpl->setVariable(
'CUMULATED', $table_gui->getHTML());
670 $this->tpl->addCss(
"./Modules/Survey/templates/default/survey_print.css",
"print");
671 $this->tpl->setVariable(
'FORMACTION', $this->ctrl->getFormAction($this,
'evaluation'));
682 global $ilToolbar, $rbacsystem;
684 if($this->object->get360Mode())
691 $options[
""] = $this->lng->txt(
"please_select");
694 foreach($this->object->getAppraiseesData() as $item)
698 $options[$item[
"user_id"]] = $item[
"login"];
705 if ($rbacsystem->checkAccess(
"write", $this->object->getRefId()) ||
708 include_once(
"./Services/Form/classes/class.ilSelectInputGUI.php");
709 $appr =
new ilSelectInputGUI($this->lng->txt(
"survey_360_appraisee"),
"appr_id");
712 $ilToolbar->addInputItem($appr,
true);
714 include_once
"Services/UIComponent/Button/classes/class.ilSubmitButton.php";
716 $button->setCaption(
"survey_360_select_appraisee");
717 $button->setCommand($this->ctrl->getCmd());
718 $ilToolbar->addButtonInstance($button);
722 $ilToolbar->addSeparator();
752 $questions = array();
753 $questions =& $this->
object->getSurveyQuestions(
true);
754 array_push($csvrow, $this->lng->txt(
"lastname"));
755 array_push($csvrow, $this->lng->txt(
"firstname"));
756 array_push($csvrow, $this->lng->txt(
"login"));
757 array_push($csvrow, $this->lng->txt(
'workingtime'));
758 array_push($csvrow, $this->lng->txt(
'survey_results_finished'));
759 array_push($csvrow2,
"");
760 array_push($csvrow2,
"");
761 array_push($csvrow2,
"");
762 array_push($csvrow2,
"");
763 array_push($csvrow2,
"");
764 if ($this->object->canExportSurveyCode())
766 array_push($csvrow, $this->lng->txt(
"codes"));
767 array_push($csvrow2,
"");
777 foreach ($questions as $question_id => $question_data)
779 include_once
"./Modules/SurveyQuestionPool/classes/class.SurveyQuestion.php";
781 switch ($export_label)
784 $question->addUserSpecificResultsExportTitles($csvrow,
true);
788 $question->addUserSpecificResultsExportTitles($csvrow,
false);
792 $question->addUserSpecificResultsExportTitles($csvrow,
false);
793 $question->addUserSpecificResultsExportTitles($csvrow2,
true,
false);
797 $questions[$question_data[
"question_id"]] = $question;
799 array_push($csvfile, $csvrow);
800 if(
sizeof($csvrow2) && implode(
"", $csvrow2))
802 array_push($csvfile, $csvrow2);
806 $participants =& $this->
object->getSurveyFinishedIds();
810 $participants = $finished_ids;
812 $finished_data = array();
813 foreach($this->object->getSurveyParticipants($participants) as $item)
815 $finished_data[$item[
"active_id"]] = $item;
817 foreach ($participants as $user_id)
824 $resultset =& $this->
object->getEvaluationByUser($questions, $user_id);
828 array_push($csvrow, (trim($resultset[
"lastname"]))
829 ? $resultset[
"lastname"]
830 : $resultset[
"name"]);
831 array_push($csvrow, $resultset[
"firstname"]);
833 array_push($csvrow, $resultset[
"login"]);
834 if ($this->object->canExportSurveyCode())
836 array_push($csvrow, $user_id);
844 $wt = $this->
object->getWorkingtimeForParticipant($user_id);
845 array_push($csvrow, $wt);
847 $finished = $finished_data[$user_id];
848 if((
bool)$finished[
"finished"])
850 if($export_format == self::TYPE_XLS)
853 $date = strftime(
"%Y-%m-%d %H:%M:%S", $finished[
"finished_tstamp"]);
854 if(preg_match(
"/(\d{4})-(\d{2})-(\d{2}) (\d{2}):(\d{2}):(\d{2})/", $date, $matches))
856 array_push($csvrow, array(
"excelTime",
ilUtil::excelTime($matches[1],$matches[2],$matches[3],$matches[4],$matches[5],$matches[6])));
866 array_push($csvrow,
"-");
869 foreach ($questions as $question_id => $question)
871 $question->addUserSpecificResultsData($csvrow, $resultset);
874 array_push($csvfile, $csvrow);
878 $surveyname = $this->
object->getTitle().
" ".$this->lng->txt(
"svy_eval_user").
" ".date(
"Y-m-d");
879 $surveyname = preg_replace(
"/\s/",
"_", trim($surveyname));
882 switch ($export_format)
885 include_once
"./Services/Excel/classes/class.ilExcelWriterAdapter.php";
888 $workbook = $adapter->getWorkbook();
889 $workbook->setVersion(8);
891 $format_bold =& $workbook->addFormat();
892 $format_bold->setBold();
893 $format_percent =& $workbook->addFormat();
894 $format_percent->setNumFormat(
"0.00%");
895 $format_datetime =& $workbook->addFormat();
896 $format_datetime->setNumFormat(
"DD/MM/YYYY hh:mm:ss");
897 $format_title =& $workbook->addFormat();
898 $format_title->setBold();
899 $format_title->setColor(
'black');
900 $format_title->setPattern(1);
901 $format_title->setFgColor(
'silver');
902 $format_title_plain =& $workbook->addFormat();
903 $format_title_plain->setColor(
'black');
904 $format_title_plain->setPattern(1);
905 $format_title_plain->setFgColor(
'silver');
907 $pages = floor((count($csvfile[0])) / 250) + 1;
908 $worksheets = array();
909 for ($i = 0; $i < $pages; $i++)
911 $worksheets[$i] =& $workbook->addWorksheet();
914 include_once
"./Services/Excel/classes/class.ilExcelUtils.php";
915 $contentstartrow = 0;
916 foreach ($csvfile as $csvrow)
922 $mainworksheet =& $worksheets[$worksheet];
923 foreach ($csvrow as
$text)
928 foreach ($text as $string)
932 $contentstartrow = max($contentstartrow, $textcount);
944 $mainworksheet =& $worksheets[$worksheet];
948 $row = $contentstartrow;
953 $mainworksheet =& $worksheets[$worksheet];
954 foreach ($csvrow as
$text)
956 if (is_array($text) && $text[0] ==
"excelTime")
958 $mainworksheet->write(
$row, $col++, $text[1], $format_datetime);
960 else if (is_numeric($text))
962 $mainworksheet->writeNumber(
$row, $col++, $text);
972 $mainworksheet =& $worksheets[$worksheet];
987 foreach ($csvfile as $idx => $csvrow)
989 $csvrow =& str_replace(
"\n",
" ", $this->object->processCSVRow($csvrow, TRUE,
$separator));
992 include_once
"./Services/Utilities/classes/class.ilUtil.php";
1001 $finished_ids = null;
1002 if($this->object->get360Mode())
1007 $this->ctrl->redirect($this,
"evaluationuser");
1009 $finished_ids = $this->
object->getFinishedIdsForAppraiseeId($appr_id);
1010 if(!
sizeof($finished_ids))
1012 $finished_ids = array(-1);
1028 global $ilAccess, $ilToolbar;
1030 if (!$ilAccess->checkAccess(
"write",
"", $this->object->getRefId()))
1033 $this->ctrl->redirectByClass(
"ilObjSurveyGUI",
"infoScreen");
1036 include_once
"Services/Form/classes/class.ilPropertyFormGUI.php";
1037 $ilToolbar->setFormAction($this->ctrl->getFormAction($this,
"evaluationuser"));
1039 if($this->object->get360Mode())
1046 if(!$this->object->get360Mode() ||
$appr_id)
1048 $format =
new ilSelectInputGUI($this->lng->txt(
"svy_export_format"),
"export_format");
1050 self::TYPE_XLS => $this->lng->txt(
'exp_type_excel'),
1053 $ilToolbar->addInputItem($format,
true);
1056 $label->setOptions(array(
1057 'label_only' => $this->lng->txt(
'export_label_only'),
1058 'title_only' => $this->lng->txt(
'export_title_only'),
1059 'title_label'=> $this->lng->txt(
'export_title_label')
1061 $ilToolbar->addInputItem($label);
1063 include_once
"Services/UIComponent/Button/classes/class.ilSubmitButton.php";
1065 $button->setCaption(
"export");
1066 $button->setCommand(
'exportevaluationuser');
1067 $button->setOmitPreventDoubleSubmission(
true);
1068 $ilToolbar->addButtonInstance($button);
1070 $ilToolbar->addSeparator();
1072 include_once
"Services/UIComponent/Button/classes/class.ilLinkButton.php";
1074 $button->setCaption(
"print");
1075 $button->setOnClick(
"window.print(); return false;");
1076 $button->setOmitPreventDoubleSubmission(
true);
1077 $ilToolbar->addButtonInstance($button);
1079 $finished_ids = null;
1082 $finished_ids = $this->
object->getFinishedIdsForAppraiseeId($appr_id);
1083 if(!
sizeof($finished_ids))
1085 $finished_ids = array(-1);
1089 $userResults =& $this->
object->getUserSpecificResults($finished_ids);
1090 $questions =& $this->
object->getSurveyQuestions(
true);
1091 $participants =& $this->
object->getSurveyParticipants($finished_ids);
1092 $tabledata = array();
1094 foreach ($participants as
$data)
1096 $questioncounter = 1;
1100 foreach ($questions as $question_id => $question_data)
1102 $found = $userResults[$question_id][$data[
"active_id"]];
1104 if (is_array($found))
1106 $text = implode(
"<br />", $found);
1113 $wt = $this->
object->getWorkingtimeForParticipant($data[
'active_id']);
1116 if($data[
"finished"])
1118 $finished = $data[
"finished_tstamp"];
1124 $tabledata[++$counter] = array(
1125 'username' => $data[
"sortname"],
1127 'question' => $questioncounter++ .
". " . $question_data[
"title"],
1129 'workingtime' => $wt,
1130 'finished' => $finished
1136 $tabledata[$counter][
"subitems"][] = array(
1139 'question' => $questioncounter++ .
". " . $question_data[
"title"],
1141 'workingtime' => null,
1149 $this->tpl->addCss(
"./Modules/Survey/templates/default/survey_print.css",
"print");
1150 $this->tpl->setCurrentBlock(
"generic_css");
1151 $this->tpl->setVariable(
"LOCATION_GENERIC_STYLESHEET",
"./Modules/Survey/templates/default/evaluation_print.css");
1152 $this->tpl->setVariable(
"MEDIA_GENERIC_STYLESHEET",
"print");
1153 $this->tpl->parseCurrentBlock();
1155 include_once
"./Modules/Survey/classes/tables/class.ilSurveyResultsUserTableGUI.php";
1157 $table_gui->
setData($tabledata);
1158 $this->tpl->setContent($table_gui->getHTML());
1173 $ilTabs->activateSubtab(
"svy_eval_competences");
1174 $ilTabs->activateTab(
"svy_results");
1176 $ilToolbar->setFormAction($this->ctrl->getFormAction($this,
"competenceEval"));
1178 if($this->object->get360Mode())
1190 $eval_modes = array();
1193 include_once(
"./Modules/Survey/classes/class.ilSurveySkill.php");
1195 $opts = $sskill->getAllAssignedSkillsAsOptions();
1197 foreach ($opts as $id => $o)
1199 $idarr = explode(
":", $id);
1200 $skills[$id] = array(
"id" => $id,
"title" => $o,
"profiles" => array(),
1201 "base_skill" => $idarr[0],
"tref_id" => $idarr[1]);
1207 include_once(
"./Services/Skill/classes/class.ilSkillProfile.php");
1209 foreach ($profiles as $p)
1212 $prof_levels = $prof->getSkillLevels();
1213 foreach ($prof_levels as $pl)
1215 if (isset($skills[$pl[
"base_skill_id"].
":".$pl[
"tref_id"]]))
1217 $skills[$pl[
"base_skill_id"].
":".$pl[
"tref_id"]][
"profiles"][] =
1220 $eval_modes[
"gap_".$p[
"id"]] =
1221 $lng->txt(
"svy_gap_analysis").
": ".$prof->getTitle();
1231 foreach ($skills as $sk)
1233 if (count($sk[
"profiles"]) == 0)
1235 $eval_modes[
"skills_of_survey"] = $lng->txt(
"svy_all_survey_competences");
1240 $comp_eval_mode =
$_GET[
"comp_eval_mode"];
1241 if (
$_POST[
"comp_eval_mode"] !=
"")
1243 $comp_eval_mode =
$_POST[
"comp_eval_mode"];
1246 if (!isset($eval_modes[$comp_eval_mode]))
1249 $comp_eval_mode = key($eval_modes);
1250 $ilCtrl->setParameter($this,
"comp_eval_mode", $comp_eval_mode);
1253 $ilCtrl->saveParameter($this,
"comp_eval_mode");
1255 include_once(
"./Services/Form/classes/class.ilSelectInputGUI.php");
1256 $mode_sel =
new ilSelectInputGUI($lng->txt(
"svy_analysis"),
"comp_eval_mode");
1258 $mode_sel->setValue($comp_eval_mode);
1259 $ilToolbar->addInputItem($mode_sel,
true);
1261 $ilToolbar->addFormButton($lng->txt(
"select"),
"competenceEval");
1263 if (substr($comp_eval_mode, 0, 4) ==
"gap_")
1266 $profile_id = (int) substr($comp_eval_mode, 4);
1268 include_once(
"./Services/Skill/classes/class.ilPersonalSkillsGUI.php");
1270 $pskills_gui->setProfileId($profile_id);
1271 $pskills_gui->setGapAnalysisActualStatusModePerObject($survey->getId(), $lng->txt(
"survey_360_raters"));
1272 if ($survey->getFinishedIdForAppraiseeIdAndRaterId($appr_id, $appr_id) > 0)
1275 $self_levels = array();
1276 foreach ($sskill->determineSkillLevelsForAppraisee($appr_id,
true) as $sl)
1278 $self_levels[$sl[
"base_skill_id"]][$sl[
"tref_id"]] = $sl[
"new_level_id"];
1280 $pskills_gui->setGapAnalysisSelfEvalLevels($self_levels);
1282 $html = $pskills_gui->getGapAnalysisHTML($appr_id);
1284 $tpl->setContent(
$html);
1288 include_once(
"./Services/Skill/classes/class.ilPersonalSkillsGUI.php");
1290 $pskills_gui->setGapAnalysisActualStatusModePerObject($survey->getId(), $lng->txt(
"survey_360_raters"));
1291 if ($survey->getFinishedIdForAppraiseeIdAndRaterId($appr_id, $appr_id) > 0)
1294 $self_levels = array();
1295 foreach ($sskill->determineSkillLevelsForAppraisee($appr_id,
true) as $sl)
1297 $self_levels[$sl[
"base_skill_id"]][$sl[
"tref_id"]] = $sl[
"new_level_id"];
1299 $pskills_gui->setGapAnalysisSelfEvalLevels($self_levels);
1302 foreach ($skills as $skill)
1305 "base_skill_id" => (
int) $skill[
"base_skill"],
1306 "tref_id" => (
int) $skill[
"tref_id"]
1309 $html = $pskills_gui->getGapAnalysisHTML($appr_id, $sk);
1311 $tpl->setContent(
$html);
static deliverData($a_data, $a_filename, $mime="application/octet-stream", $charset="")
deliver data for download via browser.
setEvalSubtabs()
Set the tabs for the evaluation output.
evaluationuser()
Print the survey evaluation for a selected user.
const EVALUATION_ACCESS_OFF
Skill management settings.
const EVALUATION_ACCESS_PARTICIPANTS
static getSurveySkippedValue()
_convert_text($a_text, $a_target="has been removed")
cancelEvaluationAccess()
Cancels the input of the survey access code for evaluation access.
ilSurveyEvaluationGUI($a_object)
ilSurveyEvaluationGUI constructor
setAppraiseeId($a_val)
Set appraisee id.
static setUseRelativeDates($a_status)
set use relative dates
addApprSelectionToToolbar()
Add appraisee selection to toolbar.
exportCumulatedResults($details=0)
static getASCIIFilename($a_filename)
convert utf8 to ascii filename
getAppraiseeId()
Get appraisee id.
checkEvaluationAccess()
Checks the evaluation access after entering the survey access code.
exportUserSpecificResults($export_format, $export_label, $finished_ids)
Export the user specific results for the survey.
Class ilExcelWriterAdapter.
Skill/Competence handling in surveys.
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
Personal skills GUI class.
& _instanciateQuestionGUI($question_id)
Creates an instance of a question GUI with a given question id.
static getProfilesOfUser($a_user_id)
Get profiles of a user.
if(!is_array($argv)) $options
static _lookupObjId($a_id)
competenceEval()
Competence Evaluation.
static formatDate(ilDateTime $date)
Format a date public.
& executeCommand()
execute command
checkAnonymizedEvaluationAccess()
Show the detailed evaluation.
static deliverFile($a_file, $a_filename, $a_mime='', $isInline=false, $removeAfterDelivery=false, $a_exit_after=true)
deliver file for download via browser.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
const EVALUATION_ACCESS_ALL
static ilTempnam($a_temp_path=null)
Create a temporary file in an ILIAS writable directory.
_hasEvaluationAccess($a_obj_id, $user_id)
if($_REQUEST['ilias_path']) define('ILIAS_HTTP_PATH' $_REQUEST['ilias_path']
Survey evaluation graphical output.
evaluationdetails()
Show the detailed evaluation.
& _instanciateQuestion($question_id)
Creates an instance of a question with a given question id.
static excelTime($year="", $month="", $day="", $hour="", $minute="", $second="")
Calculates a Microsoft Excel date/time value.
determineAppraiseeId()
Determine appraisee id.