4 require_once
'Modules/Test/classes/class.ilTestSettingsGUI.php';
94 $this->testOBJ = $testGUI->object;
96 require_once
'Modules/Test/classes/class.ilTestQuestionSetConfigFactory.php';
99 $templateId = $this->testOBJ->getTemplate();
102 include_once
"Services/Administration/classes/class.ilSettingsTemplate.php";
114 if (!$this->access->checkAccess(
'write',
'', $this->testGUI->ref_id)) {
116 $this->ctrl->redirect($this->testGUI,
'infoScreen');
121 $nextClass = $this->ctrl->getNextClass();
123 switch ($nextClass) {
125 $cmd = $this->ctrl->getCmd(self::CMD_SHOW_FORM) .
'Cmd';
134 if (
$form === null) {
138 $this->tpl->setContent($this->ctrl->getHTML(
$form));
153 $form->setValuesByPost();
173 $this->testOBJ->recalculateScores(
true);
179 $this->ctrl->redirect($this, self::CMD_SHOW_FORM);
190 $this->testOBJ->saveToDb(
true);
195 require_once
'Services/Utilities/classes/class.ilConfirmationGUI.php';
198 $confirmation->setHeaderText($this->lng->txt(
'tst_trigger_result_refreshing'));
200 $confirmation->setFormAction($this->ctrl->getFormAction($this));
201 $confirmation->setCancel($this->lng->txt(
'cancel'), self::CMD_SHOW_FORM);
202 $confirmation->setConfirm($this->lng->txt(
'confirm'), self::CMD_CONFIRMED_SAVE_FORM);
207 switch ($item->getType()) {
208 case 'section_header':
214 $datetime = $item->getDate();
217 if (!($date instanceof
ilDate)) {
218 $confirmation->addHiddenItem($item->getPostVar(), $date .
' ' .
$time);
220 $confirmation->addHiddenItem($item->getPostVar(), $date);
223 $confirmation->addHiddenItem($item->getPostVar(),
'');
230 $confirmation->addHiddenItem(
"{$item->getPostVar()}[MM]", (
int) $item->getMonths());
231 $confirmation->addHiddenItem(
"{$item->getPostVar()}[dd]", (
int) $item->getDays());
232 $confirmation->addHiddenItem(
"{$item->getPostVar()}[hh]", (
int) $item->getHours());
233 $confirmation->addHiddenItem(
"{$item->getPostVar()}[mm]", (
int) $item->getMinutes());
234 $confirmation->addHiddenItem(
"{$item->getPostVar()}[ss]", (
int) $item->getSeconds());
238 case 'checkboxgroup':
240 if (is_array($item->getValue())) {
241 foreach ($item->getValue() as $option) {
242 $confirmation->addHiddenItem(
"{$item->getPostVar()}[]", $option);
250 if ($item->getChecked()) {
251 $confirmation->addHiddenItem($item->getPostVar(), 1);
258 $confirmation->addHiddenItem($item->getPostVar(), $item->getValue());
262 $this->tpl->setContent($this->ctrl->getHTML($confirmation));
267 include_once
'Services/Form/classes/class.ilPropertyFormGUI.php';
269 $form->setFormAction($this->ctrl->getFormAction($this));
270 $form->setTableWidth(
'100%');
271 $form->setId(
'test_scoring_results');
279 if ($this->settingsTemplate) {
280 foreach ($this->settingsTemplate->getSettings() as
$id => $item) {
282 $form->removeItemByPostVar($id);
287 $form->addCommandButton(self::CMD_SAVE_FORM, $this->lng->txt(
'save'));
295 'count_system',
'mc_scoring',
'score_cutting',
'pass_scoring',
'pass_deletion_allowed' 301 $header->setTitle($this->lng->txt(
'test_scoring'));
306 $count_system =
new ilRadioGroupInputGUI($this->lng->txt(
'tst_text_count_system'),
'count_system');
307 $count_system->
addOption($opt =
new ilRadioOption($this->lng->txt(
'tst_count_partial_solutions'), 0,
''));
308 $opt->setInfo($this->lng->txt(
'tst_count_partial_solutions_desc'));
309 $count_system->addOption($opt =
new ilRadioOption($this->lng->txt(
'tst_count_correct_solutions'), 1,
''));
310 $opt->setInfo($this->lng->txt(
'tst_count_correct_solutions_desc'));
311 $count_system->setValue($this->testOBJ->getCountSystem());
315 $mc_scoring =
new ilRadioGroupInputGUI($this->lng->txt(
'tst_score_mcmr_questions'),
'mc_scoring');
316 $mc_scoring->
addOption($opt =
new ilRadioOption($this->lng->txt(
'tst_score_mcmr_zero_points_when_unanswered'), 0,
''));
317 $opt->setInfo($this->lng->txt(
'tst_score_mcmr_zero_points_when_unanswered_desc'));
318 $mc_scoring->addOption($opt =
new ilRadioOption($this->lng->txt(
'tst_score_mcmr_use_scoring_system'), 1,
''));
319 $opt->setInfo($this->lng->txt(
'tst_score_mcmr_use_scoring_system_desc'));
320 $mc_scoring->setValue($this->testOBJ->getMCScoring());
322 $mc_scoring->setDisabled(
true);
327 $score_cutting =
new ilRadioGroupInputGUI($this->lng->txt(
'tst_score_cutting'),
'score_cutting');
329 $opt->setInfo($this->lng->txt(
'tst_score_cut_question_desc'));
330 $score_cutting->addOption($opt =
new ilRadioOption($this->lng->txt(
'tst_score_cut_test'), 1,
''));
331 $opt->setInfo($this->lng->txt(
'tst_score_cut_test_desc'));
332 $score_cutting->setValue($this->testOBJ->getScoreCutting());
333 $form->
addItem($score_cutting);
338 $opt->setInfo($this->lng->txt(
'tst_pass_last_pass_desc'));
339 $pass_scoring->addOption($opt =
new ilRadioOption($this->lng->txt(
'tst_pass_best_pass'), 1,
''));
340 $opt->setInfo($this->lng->txt(
'tst_pass_best_pass_desc'));
341 $pass_scoring->setValue($this->testOBJ->getPassScoring());
345 $passDeletion =
new ilRadioGroupInputGUI($this->lng->txt(
'tst_pass_deletion'),
'pass_deletion_allowed');
347 $passDeletion->addOption(
new ilRadioOption($this->lng->txt(
'tst_pass_deletion_allowed'), 1,
''));
348 $passDeletion->setValue($this->testOBJ->isPassDeletionAllowed());
353 $count_system->setDisabled(
true);
354 $mc_scoring->setDisabled(
true);
355 $score_cutting->setDisabled(
true);
356 $pass_scoring->setDisabled(
true);
367 $this->testOBJ->setCountSystem($form->
getItemByPostVar(
'count_system')->getValue());
371 $this->testOBJ->setMCScoring($form->
getItemByPostVar(
'mc_scoring')->getValue());
375 $this->testOBJ->setScoreCutting($form->
getItemByPostVar(
'score_cutting')->getValue());
379 $this->testOBJ->setPassScoring($form->
getItemByPostVar(
'pass_scoring')->getValue());
384 $this->testOBJ->setPassDeletionAllowed((
bool) $form->
getItemByPostVar(
'pass_deletion_allowed')->getValue());
392 $header_tr->setTitle($this->lng->txt(
'test_results'));
396 $resultsAccessEnabled =
new ilCheckboxInputGUI($this->lng->txt(
'tst_results_access_enabled'),
'results_access_enabled');
397 $resultsAccessEnabled->
setInfo($this->lng->txt(
'tst_results_access_enabled_desc'));
398 $resultsAccessEnabled->setChecked($this->testOBJ->isScoreReportingEnabled());
399 $resultsAccessSetting =
new ilRadioGroupInputGUI($this->lng->txt(
'tst_results_access_setting'),
'results_access_setting');
401 $optAlways =
new ilRadioOption($this->lng->txt(
'tst_results_access_always'), 2,
'');
402 $optAlways->
setInfo($this->lng->txt(
'tst_results_access_always_desc'));
403 $resultsAccessSetting->addOption($optAlways);
404 $optFinished = $opt =
new ilRadioOption($this->lng->txt(
'tst_results_access_finished'), 1,
'');
405 $optFinished->
setInfo($this->lng->txt(
'tst_results_access_finished_desc'));
406 $resultsAccessSetting->addOption($optFinished);
407 $optionDate =
new ilRadioOption($this->lng->txt(
'tst_results_access_date'), 3,
'');
408 $optionDate->
setInfo($this->lng->txt(
'tst_results_access_date_desc'));
410 $reportingDate =
new ilDateTimeInputGUI($this->lng->txt(
'tst_reporting_date'),
'reporting_date');
412 $reportingDate->setShowTime(
true);
413 if (strlen($this->testOBJ->getReportingDate())) {
418 $optionDate->addSubItem($reportingDate);
419 $resultsAccessSetting->addOption($optionDate);
420 $resultsAccessValue = $this->testOBJ->getScoreReporting();
421 $resultsAccessSetting->setValue(
422 $resultsAccessValue > 0 && $resultsAccessValue < 4 ? $resultsAccessValue : 2
424 $resultsAccessEnabled->addSubItem($resultsAccessSetting);
426 $showPassDetails =
new ilCheckboxInputGUI($this->lng->txt(
'tst_show_pass_details'),
'pass_details');
427 $showPassDetails->
setInfo($this->lng->txt(
'tst_show_pass_details_desc'));
428 $showPassDetails->setChecked($this->testOBJ->getShowPassDetails());
429 $resultsAccessEnabled->addSubItem($showPassDetails);
430 $form->
addItem($resultsAccessEnabled);
433 $chb_only_passed_failed =
new ilCheckboxInputGUI($this->lng->txt(
'tst_results_grading_opt_show_status'),
'grading_status');
434 $chb_only_passed_failed->
setInfo($this->lng->txt(
'tst_results_grading_opt_show_status_desc'));
435 $chb_only_passed_failed->setValue(1);
436 $chb_only_passed_failed->setChecked($this->testOBJ->isShowGradingStatusEnabled());
437 $resultsAccessEnabled->addSubItem($chb_only_passed_failed);
439 $chb_resulting_mark_only =
new ilCheckboxInputGUI($this->lng->txt(
'tst_results_grading_opt_show_mark'),
'grading_mark');
440 $chb_resulting_mark_only->
setInfo($this->lng->txt(
'tst_results_grading_opt_show_mark_desc'));
441 $chb_resulting_mark_only->setValue(1);
442 $chb_resulting_mark_only->setChecked($this->testOBJ->isShowGradingMarkEnabled());
443 $resultsAccessEnabled->addSubItem($chb_resulting_mark_only);
453 $this->testOBJ->setScoreReporting($form->
getItemByPostVar(
'results_access_setting')->getValue());
458 $this->testOBJ->setReportingDate($reporting_date->get(
IL_CAL_FKT_DATE,
'YmdHis'));
460 $this->testOBJ->setReportingDate(
'');
463 $this->testOBJ->setReportingDate(
'');
466 $this->testOBJ->setShowPassDetails($form->
getItemByPostVar(
'pass_details')->getChecked());
468 $this->testOBJ->setScoreReporting(4);
469 $this->testOBJ->setShowPassDetails(
false);
470 $this->testOBJ->setReportingDate(
'');
475 $this->testOBJ->setShowGradingStatusEnabled(
481 $this->testOBJ->setShowGradingMarkEnabled(
491 $header_tr->setTitle($this->lng->txt(
'tst_results_details_options'));
495 $showSolutionDetails =
new ilCheckboxInputGUI($this->lng->txt(
'tst_show_solution_details'),
'solution_details');
496 $showSolutionDetails->
setInfo($this->lng->txt(
'tst_show_solution_details_desc'));
497 $showSolutionDetails->setChecked($this->testOBJ->getShowSolutionDetails());
498 $form->
addItem($showSolutionDetails);
501 $results_print_best_solution =
new ilCheckboxInputGUI($this->lng->txt(
'tst_results_print_best_solution'),
'print_bs_with_res');
502 $results_print_best_solution->
setInfo($this->lng->txt(
'tst_results_print_best_solution_info'));
503 $results_print_best_solution->setChecked((
bool) $this->testOBJ->isBestSolutionPrintedWithResult());
504 $showSolutionDetails->addSubItem($results_print_best_solution);
507 $showSolutionFeedbackOption =
new ilCheckboxInputGUI($this->lng->txt(
'tst_show_solution_feedback'),
'solution_feedback');
508 $showSolutionFeedbackOption->
setInfo($this->lng->txt(
'tst_show_solution_feedback_desc'));
509 $showSolutionFeedbackOption->setChecked($this->testOBJ->getShowSolutionFeedback());
510 $form->
addItem($showSolutionFeedbackOption);
513 $showSuggestedSolutionOption =
new ilCheckboxInputGUI($this->lng->txt(
'tst_show_solution_suggested'),
'solution_suggested');
514 $showSuggestedSolutionOption->
setInfo($this->lng->txt(
'tst_show_solution_suggested_desc'));
515 $showSuggestedSolutionOption->setChecked($this->testOBJ->getShowSolutionSuggested());
516 $form->
addItem($showSuggestedSolutionOption);
519 $showSolutionPrintview =
new ilCheckboxInputGUI($this->lng->txt(
'tst_show_solution_printview'),
'solution_printview');
520 $showSolutionPrintview->
setInfo($this->lng->txt(
'tst_show_solution_printview_desc'));
521 $showSolutionPrintview->setChecked($this->testOBJ->getShowSolutionPrintview());
522 $form->
addItem($showSolutionPrintview);
525 $solutionCompareInput =
new ilCheckboxInputGUI($this->lng->txt(
'tst_show_solution_compare'),
'solution_compare');
526 $solutionCompareInput->
setInfo($this->lng->txt(
'tst_show_solution_compare_desc'));
527 $solutionCompareInput->setChecked($this->testOBJ->getShowSolutionListComparison());
528 $showSolutionPrintview->addSubItem($solutionCompareInput);
531 $solutionAnswersOnly =
new ilCheckboxInputGUI($this->lng->txt(
'tst_show_solution_answers_only'),
'solution_answers_only');
532 $solutionAnswersOnly->
setInfo($this->lng->txt(
'tst_show_solution_answers_only_desc'));
533 $solutionAnswersOnly->setChecked($this->testOBJ->getShowSolutionAnswersOnly());
534 $showSolutionPrintview->addSubItem($solutionAnswersOnly);
537 $highscore =
new ilCheckboxInputGUI($this->lng->txt(
"tst_highscore_enabled"),
"highscore_enabled");
539 $highscore->setChecked($this->testOBJ->getHighscoreEnabled());
540 $highscore->setInfo($this->lng->txt(
"tst_highscore_description"));
542 $highscore_tables =
new ilRadioGroupInputGUI($this->lng->txt(
'tst_highscore_mode'),
'highscore_mode');
544 $highscore_tables->setValue($this->testOBJ->getHighscoreMode());
546 $highscore_table_own->
setInfo($this->lng->txt(
'tst_highscore_own_table_description'));
547 $highscore_tables->addOption($highscore_table_own);
549 $highscore_table_other->
setInfo($this->lng->txt(
'tst_highscore_top_table_description'));
550 $highscore_tables->addOption($highscore_table_other);
552 $highscore_table_other->
setInfo($this->lng->txt(
'tst_highscore_all_tables_description'));
553 $highscore_tables->addOption($highscore_table_other);
554 $highscore->addSubItem($highscore_tables);
555 $highscore_top_num =
new ilNumberInputGUI($this->lng->txt(
"tst_highscore_top_num"),
"highscore_top_num");
556 $highscore_top_num->
setSize(4);
557 $highscore_top_num->setRequired(
true);
558 $highscore_top_num->setMinValue(1);
559 $highscore_top_num->setSuffix($this->lng->txt(
"tst_highscore_top_num_unit"));
560 $highscore_top_num->setValue($this->testOBJ->getHighscoreTopNum(null));
561 $highscore_top_num->setInfo($this->lng->txt(
"tst_highscore_top_num_description"));
562 $highscore->addSubItem($highscore_top_num);
563 $highscore_anon =
new ilCheckboxInputGUI($this->lng->txt(
"tst_highscore_anon"),
"highscore_anon");
565 $highscore_anon->setChecked($this->testOBJ->getHighscoreAnon());
566 $highscore_anon->setInfo($this->lng->txt(
"tst_highscore_anon_description"));
567 $highscore->addSubItem($highscore_anon);
568 $highscore_achieved_ts =
new ilCheckboxInputGUI($this->lng->txt(
"tst_highscore_achieved_ts"),
"highscore_achieved_ts");
569 $highscore_achieved_ts->
setValue(1);
570 $highscore_achieved_ts->setChecked($this->testOBJ->getHighscoreAchievedTS());
571 $highscore_achieved_ts->setInfo($this->lng->txt(
"tst_highscore_achieved_ts_description"));
572 $highscore->addSubItem($highscore_achieved_ts);
573 $highscore_score =
new ilCheckboxInputGUI($this->lng->txt(
"tst_highscore_score"),
"highscore_score");
575 $highscore_score->setChecked($this->testOBJ->getHighscoreScore());
576 $highscore_score->setInfo($this->lng->txt(
"tst_highscore_score_description"));
577 $highscore->addSubItem($highscore_score);
578 $highscore_percentage =
new ilCheckboxInputGUI($this->lng->txt(
"tst_highscore_percentage"),
"highscore_percentage");
580 $highscore_percentage->setChecked($this->testOBJ->getHighscorePercentage());
581 $highscore_percentage->setInfo($this->lng->txt(
"tst_highscore_percentage_description"));
582 $highscore->addSubItem($highscore_percentage);
583 $highscore_hints =
new ilCheckboxInputGUI($this->lng->txt(
"tst_highscore_hints"),
"highscore_hints");
585 $highscore_hints->setChecked($this->testOBJ->getHighscoreHints());
586 $highscore_hints->setInfo($this->lng->txt(
"tst_highscore_hints_description"));
587 $highscore->addSubItem($highscore_hints);
588 $highscore_wtime =
new ilCheckboxInputGUI($this->lng->txt(
"tst_highscore_wtime"),
"highscore_wtime");
590 $highscore_wtime->setChecked($this->testOBJ->getHighscoreWTime());
591 $highscore_wtime->setInfo($this->lng->txt(
"tst_highscore_wtime_description"));
592 $highscore->addSubItem($highscore_wtime);
595 $showSignaturePlaceholder =
new ilCheckboxInputGUI($this->lng->txt(
'tst_show_solution_signature'),
'solution_signature');
596 $showSignaturePlaceholder->
setInfo($this->lng->txt(
'tst_show_solution_signature_desc'));
597 $showSignaturePlaceholder->setChecked($this->testOBJ->getShowSolutionSignature());
598 if ($this->testOBJ->getAnonymity()) {
599 $showSignaturePlaceholder->setDisabled(
true);
601 $form->
addItem($showSignaturePlaceholder);
604 $showExamId =
new ilCheckboxInputGUI($this->lng->txt(
'examid_in_test_res'),
'examid_in_test_res');
605 $showExamId->
setInfo($this->lng->txt(
'examid_in_test_res_desc'));
606 $showExamId->setChecked($this->testOBJ->isShowExamIdInTestResultsEnabled());
610 $export_settings =
new ilCheckboxInputGUI($this->lng->txt(
'tst_exp_sc_short'),
'exp_sc_short');
611 $export_settings->
setInfo($this->lng->txt(
'tst_exp_sc_short_desc'));
612 $export_settings->setChecked($this->testOBJ->getExportSettingsSingleChoiceShort());
613 $form->
addItem($export_settings);
623 $this->testOBJ->setShowSolutionDetails(1);
624 $this->testOBJ->setPrintBestSolutionWithResult(
628 $this->testOBJ->setShowSolutionDetails(0);
629 $this->testOBJ->setPrintBestSolutionWithResult(0);
634 $this->testOBJ->setShowSolutionFeedback($form->
getItemByPostVar(
'solution_feedback')->getChecked());
638 $this->testOBJ->setShowSolutionSuggested($form->
getItemByPostVar(
'solution_suggested')->getChecked());
643 $this->testOBJ->setShowSolutionPrintview(1);
644 $this->testOBJ->setShowSolutionListComparison(
647 $this->testOBJ->setShowSolutionAnswersOnly(
651 $this->testOBJ->setShowSolutionPrintview(0);
652 $this->testOBJ->setShowSolutionListComparison(
false);
653 $this->testOBJ->setShowSolutionAnswersOnly(0);
659 $this->testOBJ->setHighscoreEnabled((
bool) $form->
getItemByPostVar(
'highscore_enabled')->getChecked());
660 $this->testOBJ->setHighscoreAnon((
bool) $form->
getItemByPostVar(
'highscore_anon')->getChecked());
661 $this->testOBJ->setHighscoreAchievedTS((
bool) $form->
getItemByPostVar(
'highscore_achieved_ts')->getChecked());
662 $this->testOBJ->setHighscoreScore((
bool) $form->
getItemByPostVar(
'highscore_score')->getChecked());
663 $this->testOBJ->setHighscorePercentage((
bool) $form->
getItemByPostVar(
'highscore_percentage')->getChecked());
664 $this->testOBJ->setHighscoreHints((
bool) $form->
getItemByPostVar(
'highscore_hints')->getChecked());
665 $this->testOBJ->setHighscoreWTime((
bool) $form->
getItemByPostVar(
'highscore_wtime')->getChecked());
666 $this->testOBJ->setHighscoreMode((
int) $form->
getItemByPostVar(
'highscore_mode')->getValue());
667 $this->testOBJ->setHighscoreTopNum((
int) $form->
getItemByPostVar(
'highscore_top_num')->getValue());
671 $this->testOBJ->setShowSolutionSignature($form->
getItemByPostVar(
'solution_signature')->getChecked());
675 $this->testOBJ->setShowExamIdInTestResultsEnabled($form->
getItemByPostVar(
'examid_in_test_res')->getChecked());
679 $this->testOBJ->setExportSettingsSingleChoiceShort((
int) $form->
getItemByPostVar(
'exp_sc_short')->getChecked());
685 if ($this->testQuestionSetConfigFactory->getQuestionSetConfig()->isResultTaxonomyFilterSupported()) {
688 $header_misc->setTitle($this->lng->txt(
'misc'));
693 if ($this->testQuestionSetConfigFactory->getQuestionSetConfig()->isResultTaxonomyFilterSupported()) {
697 require_once
'Modules/Test/classes/class.ilTestTaxonomyFilterLabelTranslater.php';
701 $results_presentation =
new ilCheckboxGroupInputGUI($this->lng->txt(
'tst_results_tax_filters'),
'results_tax_filters');
705 $labelTranslater->getTaxonomyTreeLabel($taxonomyId),
711 $results_presentation->setValue($this->testOBJ->getResultFilterTaxIds());
713 $form->
addItem($results_presentation);
724 if ($this->testQuestionSetConfigFactory->getQuestionSetConfig()->isResultTaxonomyFilterSupported()) {
726 $taxFilters =
array();
729 $taxFilters = array_intersect(
735 $this->testOBJ->setResultFilterTaxIds($taxFilters);
742 if (!$this->testOBJ->participantDataExist()) {
746 if (!$this->testOBJ->isScoreReportingAvailable()) {
755 if (!$this->testOBJ->participantDataExist()) {
773 if (is_object($countSystem) && $countSystem->getValue() != $this->testOBJ->getCountSystem()) {
778 if (is_object($mcScoring) && $mcScoring->getValue() != $this->testOBJ->getMCScoring()) {
783 if (is_object($scoreCutting) && $scoreCutting->getValue() != $this->testOBJ->getScoreCutting()) {
788 if (is_object($passScoring) && $passScoring->getValue() != $this->testOBJ->getPassScoring()) {
800 require_once
'Services/Taxonomy/classes/class.ilObjTaxonomy.php';
getAvailableTaxonomyIds()
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
static getSettingsTemplateConfig()
This class represents an option in a radio group.
This class provides processing control methods.
showFormCmd(ilPropertyFormGUI $form=null)
This class represents an option in a checkbox group.
static getUsageOfObject($a_obj_id, $a_include_titles=false)
Get usage of object.
performSaveForm(ilPropertyFormGUI $form)
const CMD_SHOW_FORM
command constants
saveScoringSettingsFormSection(ilPropertyFormGUI $form)
hasScoringSettingsChanged(ilPropertyFormGUI $form)
if(!array_key_exists('StateId', $_REQUEST)) $id
isScoreRecalculationRequired(ilPropertyFormGUI $form)
setInfo($a_info)
Set Info.
showConfirmation(ilPropertyFormGUI $form)
Interface ilAccessHandler.
Administration class for plugins.
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
executeCommand()
Command Execution.
if(isset($_POST['submit'])) $form
isSectionHeaderRequired($fields)
const CMD_CONFIRMED_SAVE_FORM
saveResultSummarySettings(ilPropertyFormGUI $form)
saveResultMiscOptionsSettings(ilPropertyFormGUI $form)
special template class to simplify handling of ITX/PEAR
saveResultDetailsSettings(ilPropertyFormGUI $form)
areScoringSettingsWritable()
__construct(ilCtrl $ctrl, ilAccessHandler $access, ilLanguage $lng, ilTemplate $tpl, ilTree $tree, ilDBInterface $db, ilPluginAdmin $pluginAdmin, ilObjTestGUI $testGUI)
Constructor.
saveFormCmd($isConfirmedSave=false)
Tree class data representation in hierachical trees using the Nested Set Model with Gaps by Joe Celco...
Create styles array
The data for the language used.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
$testQuestionSetConfigFactory
isHiddenFormItem($formFieldId)
const HIGHSCORE_SHOW_TOP_TABLE
const HIGHSCORE_SHOW_OWN_TABLE
formPropertyExists(ilPropertyFormGUI $form, $propertyId)
Add data(end) time
Method that wraps PHPs time in order to allow simulations with the workflow.
addResultSummarySettingsFormSection(ilPropertyFormGUI $form)
addScoringSettingsFormSection(ilPropertyFormGUI $form)
const HIGHSCORE_SHOW_ALL_TABLES
addResultDetailsSettingsFormSection(ilPropertyFormGUI $form)
Settings template application class.
addMiscSettingsFormSection(ilPropertyFormGUI $form)
Confirmation screen class.