ILIAS  release_9 Revision v9.13-25-g2c18ec4c24f
ilTestTabsManager Class Reference
+ Collaboration diagram for ilTestTabsManager:

Public Member Functions

 __construct (private ilTabsGUI $tabs, private ilLanguage $lng, private ilCtrl $ctrl, private RequestWrapper $wrapper, private Refinery $refinery, private ilAccess $access, private ilTestAccess $test_access, private ilTestObjectiveOrientedContainer $objective_parent)
 
 activateTab ($tabId)
 
 activateSubTab ($subTabId)
 
 getTestOBJ ()
 
 setTestOBJ (ilObjTest $test_object)
 
 getTestSession ()
 
 setTestSession ($test_session)
 
 getTestQuestionSetConfig ()
 
 setTestQuestionSetConfig (ilTestQuestionSetConfig $test_question_set_config)
 
 getParentBackLabel ()
 
 setParentBackLabel ($parent_back_label)
 
 getParentBackHref ()
 
 setParentBackHref ($parent_back_href)
 
 hasParentBackLink ()
 
 perform ()
 
 getQuestionsSubTabs ()
 
 getSettingsSubTabs ()
 
 getDashboardSubTabs ()
 
 needsMyResultsSubTab ()
 
 needsLoResultsSubTab ()
 
 needsParticipantsResultsSubTab ()
 
 needsHighSoreSubTab ()
 
 needsSkillResultsSubTab ()
 
 needsMySolutionsSubTab ()
 
 getResultsSubTabs ()
 

Data Fields

const TAB_ID_QUESTIONS = 'assQuestions'
 (Sub-)Tab ID constants More...
 
const SUBTAB_ID_QST_LIST_VIEW = 'qst_list_view'
 
const SUBTAB_ID_QST_PAGE_VIEW = 'qst_page_view'
 
const TAB_ID_TEST = 'test'
 
const TAB_ID_INFOSCREEN = 'info_short'
 
const TAB_ID_SETTINGS = 'settings'
 
const SUBTAB_ID_GENERAL_SETTINGS = 'general'
 
const TAB_ID_LEARNING_PROGRESS = 'learning_progress'
 
const TAB_ID_MANUAL_SCORING = 'manscoring'
 
const TAB_ID_CORRECTION = 'scoringadjust'
 
const TAB_ID_STATISTICS = 'statistics'
 
const TAB_ID_HISTORY = 'history'
 
const TAB_ID_META_DATA = 'meta_data'
 
const TAB_ID_EXPORT = 'export'
 
const TAB_ID_PERMISSIONS = 'perm_settings'
 
const TAB_ID_EXAM_DASHBOARD = 'dashboard_tab'
 
const SUBTAB_ID_FIXED_PARTICIPANTS = 'fixedparticipants'
 
const SUBTAB_ID_TIME_EXTENSION = 'timeextension'
 
const TAB_ID_RESULTS = 'results'
 
const SUBTAB_ID_PARTICIPANTS_RESULTS = 'participantsresults'
 
const SUBTAB_ID_MY_RESULTS = 'myresults'
 
const SUBTAB_ID_LO_RESULTS = 'loresults'
 
const SUBTAB_ID_HIGHSCORE = 'highscore'
 
const SUBTAB_ID_SKILL_RESULTS = 'skillresults'
 
const SUBTAB_ID_MY_SOLUTIONS = 'mysolutions'
 
const SETTINGS_SUBTAB_ID_EDIT_INTRODUCTION_PAGE = 'edit_introduction'
 
const SETTINGS_SUBTAB_ID_EDIT_CONCLUSION_PAGE = 'edit_concluding_remarks'
 

Protected Member Functions

 isReadAccessGranted ()
 
 isWriteAccessGranted ()
 
 isStatisticsAccessGranted ()
 
 isPermissionsAccessGranted ()
 
 isLpAccessGranted ()
 
 checkDashboardTabAccess ()
 
 checkScoreParticipantsTabAccess ()
 
 checkStatisticsTabAccess ()
 
 isTabsConfigSetupRequired ()
 
 setupTabsGuiConfig ()
 
 getBrowseForQuestionsTab ()
 
 getRandomQuestionsTab ()
 
 getStatisticsSubTabs ()
 
 needsDashboardTab ()
 
 needsTimeExtensionSubTab ()
 
 getDashboardTabTarget ()
 
 getDashbardParticipantsSubTabLabel ()
 
 needsResultsTab ()
 
 getResultsTabTarget ()
 

Protected Attributes

 $test_object
 
 $test_session
 
 $test_question_set_config
 
 $parent_back_href
 
 $parent_back_label
 

Private Attributes

const SETTINGS_SUBTAB_ID_GENERAL = 'general'
 
const SETTINGS_SUBTAB_ID_MARK_SCHEMA = 'mark_schema'
 
const SETTINGS_SUBTAB_ID_SCORING = 'scoring'
 
const SETTINGS_SUBTAB_ID_CERTIFICATE = 'certificate'
 
const SETTINGS_SUBTAB_ID_PERSONAL_DEFAULT_SETTINGS = 'tst_default_settings'
 

Detailed Description

Definition at line 30 of file class.ilTestTabsManager.php.

Constructor & Destructor Documentation

◆ __construct()

ilTestTabsManager::__construct ( private ilTabsGUI  $tabs,
private ilLanguage  $lng,
private ilCtrl  $ctrl,
private RequestWrapper  $wrapper,
private Refinery  $refinery,
private ilAccess  $access,
private ilTestAccess  $test_access,
private ilTestObjectiveOrientedContainer  $objective_parent 
)

Definition at line 98 of file class.ilTestTabsManager.php.

107  {
108  }

Member Function Documentation

◆ activateSubTab()

ilTestTabsManager::activateSubTab (   $subTabId)
Parameters
string$subTabId

Definition at line 127 of file class.ilTestTabsManager.php.

References ILIAS\Repository\tabs().

128  {
129  switch ($subTabId) {
130  case self::SUBTAB_ID_FIXED_PARTICIPANTS:
131  case self::SUBTAB_ID_TIME_EXTENSION:
132 
133  case self::SUBTAB_ID_PARTICIPANTS_RESULTS:
134  case self::SUBTAB_ID_MY_RESULTS:
135  case self::SUBTAB_ID_LO_RESULTS:
136  case self::SUBTAB_ID_HIGHSCORE:
137  case self::SUBTAB_ID_SKILL_RESULTS:
138  case self::SUBTAB_ID_MY_SOLUTIONS:
139 
140  case self::SUBTAB_ID_QST_LIST_VIEW:
141  case self::SUBTAB_ID_QST_PAGE_VIEW:
142 
143  case self::SETTINGS_SUBTAB_ID_GENERAL:
144  case self::SETTINGS_SUBTAB_ID_MARK_SCHEMA:
145  case self::SETTINGS_SUBTAB_ID_SCORING:
146  case self::SETTINGS_SUBTAB_ID_EDIT_INTRODUCTION_PAGE:
147  case self::SETTINGS_SUBTAB_ID_EDIT_CONCLUSION_PAGE:
148  case self::SETTINGS_SUBTAB_ID_CERTIFICATE:
149  case self::SETTINGS_SUBTAB_ID_PERSONAL_DEFAULT_SETTINGS:
150 
151  $this->tabs->activateSubTab($subTabId);
152  }
153  }
+ Here is the call graph for this function:

◆ activateTab()

ilTestTabsManager::activateTab (   $tabId)
Parameters
string$tabId

Definition at line 113 of file class.ilTestTabsManager.php.

References ILIAS\Repository\tabs().

114  {
115  switch ($tabId) {
116  case self::TAB_ID_EXAM_DASHBOARD:
117  case self::TAB_ID_RESULTS:
118  case self::TAB_ID_SETTINGS:
119 
120  $this->tabs->activateTab($tabId);
121  }
122  }
+ Here is the call graph for this function:

◆ checkDashboardTabAccess()

ilTestTabsManager::checkDashboardTabAccess ( )
protected
Returns
bool

Definition at line 294 of file class.ilTestTabsManager.php.

Referenced by needsDashboardTab().

294  : bool
295  {
296  if ($this->test_access->checkManageParticipantsAccess()) {
297  return true;
298  }
299 
300  return false;
301  }
+ Here is the caller graph for this function:

◆ checkScoreParticipantsTabAccess()

ilTestTabsManager::checkScoreParticipantsTabAccess ( )
protected
Returns
bool

Definition at line 306 of file class.ilTestTabsManager.php.

Referenced by setupTabsGuiConfig().

306  : bool
307  {
308  return $this->test_access->checkScoreParticipantsAccess();
309  }
+ Here is the caller graph for this function:

◆ checkStatisticsTabAccess()

ilTestTabsManager::checkStatisticsTabAccess ( )
protected
Returns
bool

Definition at line 314 of file class.ilTestTabsManager.php.

Referenced by setupTabsGuiConfig().

314  : bool
315  {
316  return $this->test_access->checkStatisticsAccess();
317  }
+ Here is the caller graph for this function:

◆ getBrowseForQuestionsTab()

ilTestTabsManager::getBrowseForQuestionsTab ( )
protected

Definition at line 692 of file class.ilTestTabsManager.php.

References ILIAS\Repository\ctrl(), isWriteAccessGranted(), ILIAS\Repository\lng(), and ILIAS\Repository\tabs().

Referenced by setupTabsGuiConfig().

693  {
694  if ($this->isWriteAccessGranted()) {
695  $this->ctrl->saveParameterByClass($this->ctrl->getCmdClass(), 'q_id');
696  // edit page
697  $this->tabs->setBackTarget(
698  $this->lng->txt('backtocallingtest'),
699  $this->ctrl->getLinkTargetByClass($this->ctrl->getCmdClass(), 'questions')
700  );
701  $this->tabs->addTarget(
702  'tst_browse_for_questions',
703  $this->ctrl->getLinkTargetByClass('ilObjTestGUI', 'browseForQuestions'),
704  ['browseForQuestions', 'filter', 'resetFilter', 'resetTextFilter', 'insertQuestions'],
705  '',
706  '',
707  true
708  );
709  }
710  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getDashbardParticipantsSubTabLabel()

ilTestTabsManager::getDashbardParticipantsSubTabLabel ( )
protected

Definition at line 915 of file class.ilTestTabsManager.php.

References getTestOBJ(), and ILIAS\Repository\lng().

Referenced by getDashboardSubTabs().

915  : string
916  {
917  if ($this->getTestOBJ()->getFixedParticipants()) {
918  return $this->lng->txt('fixedparticipants_subtab');
919  }
920 
921  return $this->lng->txt('autoparticipants_subtab');
922  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getDashboardSubTabs()

ilTestTabsManager::getDashboardSubTabs ( )

Definition at line 894 of file class.ilTestTabsManager.php.

References ILIAS\Repository\ctrl(), getDashbardParticipantsSubTabLabel(), ILIAS\Repository\lng(), needsTimeExtensionSubTab(), and ILIAS\Repository\tabs().

895  {
896  if (!$this->test_access->checkManageParticipantsAccess()) {
897  return;
898  }
899 
900  $this->tabs->addSubTab(
901  self::SUBTAB_ID_FIXED_PARTICIPANTS,
903  $this->ctrl->getLinkTargetByClass('ilTestParticipantsGUI')
904  );
905 
906  if ($this->needsTimeExtensionSubTab()) {
907  $this->tabs->addSubTab(
908  self::SUBTAB_ID_TIME_EXTENSION,
909  $this->lng->txt('timing'),
910  $this->ctrl->getLinkTargetByClass('ilTestParticipantsTimeExtensionGUI')
911  );
912  }
913  }
+ Here is the call graph for this function:

◆ getDashboardTabTarget()

ilTestTabsManager::getDashboardTabTarget ( )
protected
Returns
string

Definition at line 889 of file class.ilTestTabsManager.php.

References ILIAS\Repository\ctrl().

Referenced by setupTabsGuiConfig().

889  : string
890  {
891  return $this->ctrl->getLinkTargetByClass(['ilTestDashboardGUI', 'ilTestParticipantsGUI']);
892  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getParentBackHref()

ilTestTabsManager::getParentBackHref ( )
Returns
null|string

Definition at line 222 of file class.ilTestTabsManager.php.

References $parent_back_href.

Referenced by hasParentBackLink(), and setupTabsGuiConfig().

222  : ?string
223  {
225  }
+ Here is the caller graph for this function:

◆ getParentBackLabel()

ilTestTabsManager::getParentBackLabel ( )
Returns
null|string

Definition at line 206 of file class.ilTestTabsManager.php.

References $parent_back_label.

Referenced by hasParentBackLink(), and setupTabsGuiConfig().

206  : ?string
207  {
209  }
+ Here is the caller graph for this function:

◆ getQuestionsSubTabs()

ilTestTabsManager::getQuestionsSubTabs ( )

Definition at line 727 of file class.ilTestTabsManager.php.

References ILIAS\Repository\ctrl(), getTestOBJ(), ILIAS\Repository\lng(), and ILIAS\Repository\tabs().

728  {
729  $this->tabs->activateTab(self::TAB_ID_QUESTIONS);
730 
731  $this->tabs->addSubTab(
732  self::SUBTAB_ID_QST_LIST_VIEW,
733  $this->lng->txt('edit_test_questions'),
734  $this->ctrl->getLinkTargetByClass('ilObjTestGUI', 'questions')
735  );
736 
737  // print view subtab
738  if (!$this->getTestOBJ()->isRandomTest()) {
739  $this->tabs->addSubTabTarget(
740  'print_view',
741  $this->ctrl->getLinkTargetByClass('ilObjTestGUI', 'print'),
742  'print',
743  '',
744  '',
745  $this->ctrl->getCmd() == 'print'
746  );
747  $this->tabs->addSubTabTarget(
748  'review_view',
749  $this->ctrl->getLinkTargetByClass('ilObjTestGUI', 'review'),
750  'review',
751  '',
752  '',
753  $this->ctrl->getCmd() == 'review'
754  );
755  }
756  }
+ Here is the call graph for this function:

◆ getRandomQuestionsTab()

ilTestTabsManager::getRandomQuestionsTab ( )
protected

Definition at line 712 of file class.ilTestTabsManager.php.

References ILIAS\Repository\ctrl(), isWriteAccessGranted(), ILIAS\Repository\lng(), and ILIAS\Repository\tabs().

713  {
714  if ($this->isWriteAccessGranted()) {
715  // edit page
716  $this->tabs->setBackTarget($this->lng->txt('backtocallingtest'), $this->ctrl->getLinkTargetByClass('ilObjTestGUI', 'questions'));
717  $this->tabs->addTarget(
718  'random_selection',
719  $this->ctrl->getLinkTargetByClass('ilObjTestGUI', 'randomQuestions'),
720  ['randomQuestions'],
721  '',
722  ''
723  );
724  }
725  }
+ Here is the call graph for this function:

◆ getResultsSubTabs()

ilTestTabsManager::getResultsSubTabs ( )

Definition at line 1017 of file class.ilTestTabsManager.php.

References ILIAS\Repository\ctrl(), ILIAS\Repository\lng(), needsHighSoreSubTab(), needsLoResultsSubTab(), needsMyResultsSubTab(), needsMySolutionsSubTab(), needsParticipantsResultsSubTab(), needsSkillResultsSubTab(), and ILIAS\Repository\tabs().

1018  {
1019  if ($this->needsParticipantsResultsSubTab()) {
1020  $this->tabs->addSubTab(
1021  self::SUBTAB_ID_PARTICIPANTS_RESULTS,
1022  $this->lng->txt('participants_results_subtab'),
1023  $this->ctrl->getLinkTargetByClass(['ilTestResultsGUI', 'ilParticipantsTestResultsGUI'])
1024  );
1025  }
1026 
1027  if ($this->needsLoResultsSubTab()) {
1028  $this->tabs->addSubTab(
1029  self::SUBTAB_ID_LO_RESULTS,
1030  $this->lng->txt('tst_tab_results_objective_oriented'),
1031  $this->ctrl->getLinkTargetByClass(['ilTestResultsGUI', 'ilTestEvalObjectiveOrientedGUI'])
1032  );
1033  }
1034 
1035  if ($this->needsMyResultsSubTab()) {
1036  $myResultsLabel = $this->lng->txt('tst_show_results');
1037 
1038  if ($this->needsLoResultsSubTab()) {
1039  $myResultsLabel = $this->lng->txt('tst_tab_results_pass_oriented');
1040  }
1041 
1042  $this->tabs->addSubTab(
1043  self::SUBTAB_ID_MY_RESULTS,
1044  $myResultsLabel,
1045  $this->ctrl->getLinkTargetByClass(['ilTestResultsGUI', 'ilMyTestResultsGUI', 'ilTestEvaluationGUI'])
1046  );
1047  }
1048 
1049  if ($this->needsSkillResultsSubTab()) {
1050  $this->tabs->addSubTab(
1051  self::SUBTAB_ID_SKILL_RESULTS,
1052  $this->lng->txt('tst_show_comp_results'),
1053  $this->ctrl->getLinkTargetByClass(['ilTestResultsGUI', 'ilTestSkillEvaluationGUI'])
1054  );
1055  }
1056 
1057  if ($this->needsHighSoreSubTab()) {
1058  $this->tabs->addSubTab(
1059  self::SUBTAB_ID_HIGHSCORE,
1060  $this->lng->txt('tst_show_toplist'),
1061  $this->ctrl->getLinkTargetByClass(['ilTestResultsGUI', 'ilTestToplistGUI'], 'outResultsToplist')
1062  );
1063  }
1064 
1065  if ($this->needsMySolutionsSubTab()) {
1066  $this->tabs->addSubTab(
1067  self::SUBTAB_ID_MY_SOLUTIONS,
1068  $this->lng->txt('tst_list_of_answers_show'),
1069  $this->ctrl->getLinkTargetByClass(['ilTestResultsGUI', 'ilMyTestSolutionsGUI', 'ilTestEvaluationGUI'])
1070  );
1071  }
1072  }
+ Here is the call graph for this function:

◆ getResultsTabTarget()

ilTestTabsManager::getResultsTabTarget ( )
protected
Returns
string

Definition at line 935 of file class.ilTestTabsManager.php.

References ILIAS\Repository\ctrl(), needsLoResultsSubTab(), needsMyResultsSubTab(), needsMySolutionsSubTab(), and needsParticipantsResultsSubTab().

Referenced by setupTabsGuiConfig().

935  : string
936  {
937  if ($this->needsParticipantsResultsSubTab()) {
938  return $this->ctrl->getLinkTargetByClass(['ilTestResultsGUI', 'ilParticipantsTestResultsGUI']);
939  }
940 
941  if ($this->needsLoResultsSubTab()) {
942  return $this->ctrl->getLinkTargetByClass(['ilTestResultsGUI', 'ilTestEvalObjectiveOrientedGUI']);
943  }
944 
945  if ($this->needsMyResultsSubTab()) {
946  return $this->ctrl->getLinkTargetByClass(['ilTestResultsGUI', 'ilMyTestResultsGUI', 'ilTestEvaluationGUI']);
947  }
948 
949  if ($this->needsMySolutionsSubTab()) {
950  return $this->ctrl->getLinkTargetByClass(['ilTestResultsGUI', 'ilMyTestSolutionsGUI', 'ilTestEvaluationGUI']);
951  }
952 
953  return $this->ctrl->getLinkTargetByClass('ilTestResultsGUI');
954  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getSettingsSubTabs()

ilTestTabsManager::getSettingsSubTabs ( )

Definition at line 787 of file class.ilTestTabsManager.php.

References ILIAS\Repository\ctrl(), and ILIAS\Repository\tabs().

Referenced by setupTabsGuiConfig().

788  {
789  $this->tabs->addSubTabTarget(
790  self::SETTINGS_SUBTAB_ID_GENERAL,
791  $this->ctrl->getLinkTargetByClass('ilObjTestSettingsMainGUI'),
792  '', // auto activation regardless from cmd
793  ['ilobjtestsettingsmaingui'] // auto activation for ilObjTestSettingsGeneralGUI
794  );
795 
796  $this->tabs->addSubTabTarget(
797  self::SETTINGS_SUBTAB_ID_MARK_SCHEMA,
798  $this->ctrl->getLinkTargetByClass('ilmarkschemagui', 'showMarkSchema'),
799  '',
800  ['ilmarkschemagui']
801  );
802 
803  $this->tabs->addSubTabTarget(
804  self::SETTINGS_SUBTAB_ID_SCORING,
805  $this->ctrl->getLinkTargetByClass('ilObjTestSettingsScoringResultsGUI'),
806  '', // auto activation regardless from cmd
807  ['ilobjtestsettingsscoringresultsgui'] // auto activation for ilObjTestSettingsScoringResultsGUI
808  );
809 
810  $this->ctrl->setParameterByClass(ilTestPageGUI::class, 'page_type', 'introductionpage');
811  $this->tabs->addSubTabTarget(
812  self::SETTINGS_SUBTAB_ID_EDIT_INTRODUCTION_PAGE,
813  $this->ctrl->getLinkTargetByClass(ilTestPageGUI::class, 'preview'),
814  ['iltestpagegui']
815  );
816 
817  $this->ctrl->setParameterByClass(ilTestPageGUI::class, 'page_type', 'concludingremarkspage');
818  $this->tabs->addSubTabTarget(
819  self::SETTINGS_SUBTAB_ID_EDIT_CONCLUSION_PAGE,
820  $this->ctrl->getLinkTargetByClass(ilTestPageGUI::class, 'preview'),
821  ['iltestpagegui']
822  );
823  $this->ctrl->clearParameterByClass(ilTestPageGUI::class, 'page_type');
824 
825  $validator = new ilCertificateActiveValidator();
826  if ($validator->validate() === true) {
827  $this->tabs->addSubTabTarget(
828  self::SETTINGS_SUBTAB_ID_CERTIFICATE,
829  $this->ctrl->getLinkTargetByClass('ilObjTestGUI', 'certificate'),
830  ['certificate', 'certificateEditor', 'certificateRemoveBackground', 'ceateSave',
831  'certificatePreview', 'certificateDelete', 'certificateUpload', 'certificateImport'],
832  ['', 'ilobjtestgui', 'ilcertificategui']
833  );
834  }
835 
836  $this->tabs->addSubTabTarget(
837  self::SETTINGS_SUBTAB_ID_PERSONAL_DEFAULT_SETTINGS,
838  $this->ctrl->getLinkTargetByClass('ilObjTestGUI', 'defaults'),
839  ['defaults', 'deleteDefaults', 'addDefaults', 'applyDefaults'],
840  ['', 'ilobjtestgui', 'ilcertificategui']
841  );
842 
843  $lti_settings = new ilLTIProviderObjectSettingGUI($this->test_object->getRefId());
844  if ($lti_settings->hasSettingsAccess()) {
845  $this->tabs->addSubTabTarget(
846  'lti_provider',
847  $this->ctrl->getLinkTargetByClass(ilLTIProviderObjectSettingGUI::class),
848  '',
849  [ilLTIProviderObjectSettingGUI::class]
850  );
851  }
852  }
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getStatisticsSubTabs()

ilTestTabsManager::getStatisticsSubTabs ( )
protected

Definition at line 758 of file class.ilTestTabsManager.php.

References ILIAS\Repository\ctrl(), and ILIAS\Repository\tabs().

Referenced by setupTabsGuiConfig().

759  {
760  $this->tabs->addSubTabTarget(
761  'eval_all_users',
762  $this->ctrl->getLinkTargetByClass('iltestevaluationgui', 'outEvaluation'),
763  ['outEvaluation', 'detailedEvaluation', 'exportEvaluation', 'evalUserDetail', 'passDetails',
764  'outStatisticsResultsOverview', 'statisticsPassDetails', 'exportCertificateArchive'],
765  ''
766  );
767 
768  // aggregated results subtab
769  $this->tabs->addSubTabTarget(
770  'tst_results_aggregated',
771  $this->ctrl->getLinkTargetByClass('iltestevaluationgui', 'eval_a'),
772  ['eval_a'],
773  '',
774  ''
775  );
776 
777  // question export
778  $this->tabs->addSubTabTarget(
779  'tst_single_results',
780  $this->ctrl->getLinkTargetByClass('iltestevaluationgui', 'singleResults'),
781  ['singleResults'],
782  '',
783  ''
784  );
785  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getTestOBJ()

◆ getTestQuestionSetConfig()

ilTestTabsManager::getTestQuestionSetConfig ( )
Returns
ilTestQuestionSetConfig

Definition at line 190 of file class.ilTestTabsManager.php.

References $test_question_set_config.

Referenced by needsTimeExtensionSubTab(), and setupTabsGuiConfig().

+ Here is the caller graph for this function:

◆ getTestSession()

ilTestTabsManager::getTestSession ( )
Returns
ilTestSession

Definition at line 174 of file class.ilTestTabsManager.php.

References $test_session.

Referenced by needsMyResultsSubTab(), and needsMySolutionsSubTab().

+ Here is the caller graph for this function:

◆ hasParentBackLink()

ilTestTabsManager::hasParentBackLink ( )
Returns
null|string

Definition at line 238 of file class.ilTestTabsManager.php.

References getParentBackHref(), and getParentBackLabel().

Referenced by setupTabsGuiConfig().

239  {
240  if (!is_string($this->getParentBackHref()) || !strlen($this->getParentBackHref())) {
241  return false;
242  }
243 
244  if (!is_string($this->getParentBackLabel()) || !strlen($this->getParentBackLabel())) {
245  return false;
246  }
247 
248  return true;
249  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isLpAccessGranted()

ilTestTabsManager::isLpAccessGranted ( )
protected
Returns
bool

Definition at line 286 of file class.ilTestTabsManager.php.

References ilLearningProgressAccess\checkAccess(), and getTestOBJ().

Referenced by setupTabsGuiConfig().

286  : bool
287  {
288  return ilLearningProgressAccess::checkAccess($this->getTestOBJ()->getRefId());
289  }
static checkAccess(int $a_ref_id, bool $a_allow_only_read=true)
check access to learning progress
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isPermissionsAccessGranted()

ilTestTabsManager::isPermissionsAccessGranted ( )
protected
Returns
bool

Definition at line 278 of file class.ilTestTabsManager.php.

References ILIAS\Repository\access(), and getTestOBJ().

Referenced by setupTabsGuiConfig().

278  : bool
279  {
280  return $this->access->checkAccess('edit_permission', '', $this->getTestOBJ()->getRefId());
281  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isReadAccessGranted()

ilTestTabsManager::isReadAccessGranted ( )
protected
Returns
bool

Definition at line 254 of file class.ilTestTabsManager.php.

References ILIAS\Repository\access(), and getTestOBJ().

Referenced by setupTabsGuiConfig().

254  : bool
255  {
256  return $this->access->checkAccess('read', '', $this->getTestOBJ()->getRefId());
257  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isStatisticsAccessGranted()

ilTestTabsManager::isStatisticsAccessGranted ( )
protected
Returns
bool

Definition at line 270 of file class.ilTestTabsManager.php.

References ILIAS\Repository\access(), and getTestOBJ().

270  : bool
271  {
272  return $this->access->checkAccess('tst_statistics', '', $this->getTestOBJ()->getRefId());
273  }
+ Here is the call graph for this function:

◆ isTabsConfigSetupRequired()

ilTestTabsManager::isTabsConfigSetupRequired ( )
protected

Definition at line 328 of file class.ilTestTabsManager.php.

References ILIAS\Repository\ctrl().

Referenced by perform().

328  : bool
329  {
330  if (preg_match('/^ass(.*?)gui$/i', $this->ctrl->getNextClass($this))) {
331  return false;
332  }
333 
334  if ($this->ctrl->getNextClass($this) == 'ilassquestionpagegui') {
335  return false;
336  }
337 
338  if ($this->ctrl->getCmdClass() == 'iltestoutputgui') {
339  return false;
340  }
341 
342  if ($this->ctrl->getCmdClass() == 'iltestevaluationgui') {
343  return in_array($this->ctrl->getCmd(), [
344  '', 'outUserResultsPassOverview', 'outUserListOfAnswerPasses', 'outEvaluation', 'eval_a', 'singleResults', 'detailedEvaluation'
345  ]);
346  }
347 
348  return true;
349  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isWriteAccessGranted()

ilTestTabsManager::isWriteAccessGranted ( )
protected
Returns
bool

Definition at line 262 of file class.ilTestTabsManager.php.

References ILIAS\Repository\access(), and getTestOBJ().

Referenced by getBrowseForQuestionsTab(), getRandomQuestionsTab(), and setupTabsGuiConfig().

262  : bool
263  {
264  return $this->access->checkAccess('write', '', $this->getTestOBJ()->getRefId());
265  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ needsDashboardTab()

ilTestTabsManager::needsDashboardTab ( )
protected
Returns
bool

Definition at line 857 of file class.ilTestTabsManager.php.

References checkDashboardTabAccess().

Referenced by setupTabsGuiConfig().

857  : bool
858  {
859  if (!$this->checkDashboardTabAccess()) {
860  return false;
861  }
862 
863  return true;
864  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ needsHighSoreSubTab()

ilTestTabsManager::needsHighSoreSubTab ( )
Returns
bool

Definition at line 991 of file class.ilTestTabsManager.php.

References getTestOBJ(), and needsMyResultsSubTab().

Referenced by getResultsSubTabs().

991  : bool
992  {
993  if (!$this->needsMyResultsSubTab()) {
994  return false;
995  }
996 
997  return $this->getTestOBJ()->getHighscoreEnabled();
998  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ needsLoResultsSubTab()

ilTestTabsManager::needsLoResultsSubTab ( )
Returns
bool

Definition at line 967 of file class.ilTestTabsManager.php.

References needsMyResultsSubTab().

Referenced by getResultsSubTabs(), and getResultsTabTarget().

967  : bool
968  {
969  if (!$this->needsMyResultsSubTab()) {
970  return false;
971  }
972 
973  return $this->objective_parent->isObjectiveOrientedPresentationRequired();
974  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ needsMyResultsSubTab()

ilTestTabsManager::needsMyResultsSubTab ( )
Returns
bool

Definition at line 959 of file class.ilTestTabsManager.php.

References getTestOBJ(), and getTestSession().

Referenced by getResultsSubTabs(), getResultsTabTarget(), needsHighSoreSubTab(), needsLoResultsSubTab(), and needsSkillResultsSubTab().

959  : bool
960  {
961  return $this->getTestSession()->reportableResultsAvailable($this->getTestOBJ());
962  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ needsMySolutionsSubTab()

ilTestTabsManager::needsMySolutionsSubTab ( )

Definition at line 1012 of file class.ilTestTabsManager.php.

References getTestOBJ(), and getTestSession().

Referenced by getResultsSubTabs(), getResultsTabTarget(), and needsResultsTab().

1012  : bool
1013  {
1014  return $this->getTestOBJ()->canShowSolutionPrintview($this->getTestSession()->getUserId());
1015  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ needsParticipantsResultsSubTab()

ilTestTabsManager::needsParticipantsResultsSubTab ( )
Returns
bool

Definition at line 979 of file class.ilTestTabsManager.php.

Referenced by getResultsSubTabs(), getResultsTabTarget(), and needsResultsTab().

979  : bool
980  {
981  if ($this->test_access->checkParticipantsResultsAccess()) {
982  return true;
983  }
984 
985  return false;
986  }
+ Here is the caller graph for this function:

◆ needsResultsTab()

ilTestTabsManager::needsResultsTab ( )
protected
Returns
bool

Definition at line 927 of file class.ilTestTabsManager.php.

References needsMySolutionsSubTab(), and needsParticipantsResultsSubTab().

Referenced by setupTabsGuiConfig().

927  : bool
928  {
929  return $this->needsParticipantsResultsSubTab() || $this->test_object->isScoreReportingEnabled() || $this->needsMySolutionsSubTab();
930  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ needsSkillResultsSubTab()

ilTestTabsManager::needsSkillResultsSubTab ( )
Returns
bool

Definition at line 1003 of file class.ilTestTabsManager.php.

References getTestOBJ(), and needsMyResultsSubTab().

Referenced by getResultsSubTabs().

1003  : bool
1004  {
1005  if (!$this->needsMyResultsSubTab()) {
1006  return false;
1007  }
1008 
1009  return $this->getTestOBJ()->isSkillServiceToBeConsidered();
1010  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ needsTimeExtensionSubTab()

ilTestTabsManager::needsTimeExtensionSubTab ( )
protected
Returns
bool

Definition at line 869 of file class.ilTestTabsManager.php.

References getTestOBJ(), and getTestQuestionSetConfig().

Referenced by getDashboardSubTabs().

869  : bool
870  {
871  if (!($this->getTestOBJ()->getProcessingTimeInSeconds() > 0)) {
872  return false;
873  }
874 
875  if ($this->getTestOBJ()->getNrOfTries() != 1) {
876  return false;
877  }
878 
879  if ($this->getTestQuestionSetConfig()->areDepenciesBroken()) {
880  return false;
881  }
882 
883  return true;
884  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ perform()

ilTestTabsManager::perform ( )

Definition at line 321 of file class.ilTestTabsManager.php.

References isTabsConfigSetupRequired(), and setupTabsGuiConfig().

322  {
323  if ($this->isTabsConfigSetupRequired()) {
324  $this->setupTabsGuiConfig();
325  }
326  }
+ Here is the call graph for this function:

◆ setParentBackHref()

ilTestTabsManager::setParentBackHref (   $parent_back_href)
Parameters
null | string$parent_back_href

Definition at line 230 of file class.ilTestTabsManager.php.

References $parent_back_href.

231  {
232  $this->parent_back_href = $parent_back_href;
233  }

◆ setParentBackLabel()

ilTestTabsManager::setParentBackLabel (   $parent_back_label)
Parameters
null | string$parent_back_label

Definition at line 214 of file class.ilTestTabsManager.php.

References $parent_back_label.

215  {
216  $this->parent_back_label = $parent_back_label;
217  }

◆ setTestOBJ()

ilTestTabsManager::setTestOBJ ( ilObjTest  $test_object)
Parameters
ilObjTest$test_object

Definition at line 166 of file class.ilTestTabsManager.php.

References $test_object.

167  {
168  $this->test_object = $test_object;
169  }

◆ setTestQuestionSetConfig()

ilTestTabsManager::setTestQuestionSetConfig ( ilTestQuestionSetConfig  $test_question_set_config)
Parameters
ilTestQuestionSetConfig$test_question_set_config

Definition at line 198 of file class.ilTestTabsManager.php.

References $test_question_set_config.

199  {
200  $this->test_question_set_config = $test_question_set_config;
201  }

◆ setTestSession()

ilTestTabsManager::setTestSession (   $test_session)
Parameters
ilTestSession$test_session

Definition at line 182 of file class.ilTestTabsManager.php.

References $test_session.

183  {
184  $this->test_session = $test_session;
185  }

◆ setupTabsGuiConfig()

ilTestTabsManager::setupTabsGuiConfig ( )
protected

Definition at line 351 of file class.ilTestTabsManager.php.

References ilObjAssessmentFolder\_getManualScoring(), checkScoreParticipantsTabAccess(), checkStatisticsTabAccess(), ilAssQuestionSkillAssignmentsGUI\CMD_SHOW_SKILL_QUEST_ASSIGNS, ILIAS\Repository\ctrl(), ilTestScreenGUI\DEFAULT_CMD, getBrowseForQuestionsTab(), getDashboardTabTarget(), getParentBackHref(), getParentBackLabel(), getResultsTabTarget(), getSettingsSubTabs(), getStatisticsSubTabs(), getTestOBJ(), getTestQuestionSetConfig(), hasParentBackLink(), isLpAccessGranted(), isPermissionsAccessGranted(), isReadAccessGranted(), isWriteAccessGranted(), ILIAS\Repository\lng(), needsDashboardTab(), needsResultsTab(), ILIAS\Repository\refinery(), and ILIAS\Repository\tabs().

Referenced by perform().

352  {
353  if ($this->hasParentBackLink()) {
354  $this->tabs->setBack2Target($this->getParentBackLabel(), $this->getParentBackHref());
355  }
356 
357  switch (strtolower($this->ctrl->getCmdClass())) {
358  case 'ilmarkschemagui':
359  case 'ilobjtestsettingsmaingui':
360  case 'ilobjtestsettingsscoringresultsgui':
361 
362  if ($this->isWriteAccessGranted()) {
363  $this->getSettingsSubTabs();
364  }
365 
366  break;
367  }
368 
369  switch ($this->ctrl->getCmd()) {
370  case 'resume':
371  case 'previous':
372  case 'next':
373  case 'summary':
374  case 'directfeedback':
375  case 'finishTest':
376  case 'outCorrectSolution':
377  case 'passDetails':
378  case 'showAnswersOfUser':
379  case 'backFromSummary':
380  case 'show_answers':
381  case 'setsolved':
382  case 'resetsolved':
383  case 'confirmFinish':
384  case 'outTestSummary':
385  case 'outQuestionSummary':
386  case 'gotoQuestion':
387  case 'selectImagemapRegion':
388  case 'confirmSubmitAnswers':
389  case 'finalSubmission':
390  case 'postpone':
391  case 'outUserPassDetails':
392  case 'checkPassword':
393  case 'exportCertificate':
394  case 'finishListOfAnswers':
395  case 'backConfirmFinish':
396  case 'showFinalStatement':
397  return;
398  case 'browseForQuestions':
399  case 'filter':
400  case 'resetFilter':
401  case 'resetTextFilter':
402  case 'insertQuestions':
403  $classes = [
404  'iltestdashboardgui',
405  'iltestresultsgui',
406  'illearningprogressgui' // #8497: resetfilter is also used in lp
407  ];
408  if (!in_array($this->ctrl->getNextClass($this), $classes)) {
409  $this->getBrowseForQuestionsTab();
410  }
411  break;
412  case 'scoring':
413  case 'certificate':
414  case 'certificateservice':
415  case 'certificateImport':
416  case 'certificateUpload':
417  case 'certificateEditor':
418  case 'certificateDelete':
419  case 'certificateSave':
420  case 'defaults':
421  case 'deleteDefaults':
422  case 'addDefaults':
423  case 'applyDefaults':
424  case 'inviteParticipants':
425  case 'searchParticipants':
426  if ($this->isWriteAccessGranted() && in_array(strtolower($this->ctrl->getCmdClass()), ['ilobjtestgui', 'ilcertificategui'])) {
427  $this->getSettingsSubTabs();
428  }
429  break;
430  case 'export':
431  case 'print':
432  break;
433  case 'statistics':
434  case 'eval_a':
435  case 'detailedEvaluation':
436  case 'outEvaluation':
437  case 'singleResults':
438  case 'exportEvaluation':
439  case 'evalUserDetail':
440  case 'outStatisticsResultsOverview':
441  case 'statisticsPassDetails':
442  case 'exportCertificateArchive':
443  $this->getStatisticsSubTabs();
444  break;
445  }
446 
447  // test tab
448  if ($this->isReadAccessGranted()) {
449  $this->tabs->addTab(
450  self::TAB_ID_TEST,
451  $this->lng->txt('test'),
452  $this->ctrl->getLinkTargetByClass(ilTestScreenGUI::class, ilTestScreenGUI::DEFAULT_CMD)
453  );
454  }
455 
456  // questions tab
457  if ($this->isWriteAccessGranted()) {
458  $up = $this->wrapper->has('up')
459  && $this->wrapper->retrieve('up', $this->refinery->string()) !== '';
460  $down = $this->wrapper->has('down')
461  && $this->wrapper->retrieve('down', $this->refinery->string()) !== '';
462  $browse = $this->wrapper->has('browse')
463  && $this->wrapper->retrieve('browse', $this->refinery->int()) === 1;
464 
465  $force_active = ($up || $down || $browse) ? true : false;
466 
467  if ($this->getTestOBJ()->isFixedTest()) {
468  $target = $this->ctrl->getLinkTargetByClass(
469  'ilObjTestGUI',
470  'questions'
471  );
472  }
473 
474  if ($this->getTestOBJ()->isRandomTest()) {
475  $target = $this->ctrl->getLinkTargetByClass('ilTestRandomQuestionSetConfigGUI');
476  }
477 
478  $this->tabs->addTarget(
479  'assQuestions',
480  $target,
481  [
482  'questions', 'browseForQuestions', 'questionBrowser', 'createQuestion',
483  'filter', 'resetFilter', 'insertQuestions',
484  'back', 'removeQuestions', 'moveQuestions',
485  'insertQuestionsBefore', 'insertQuestionsAfter', 'confirmRemoveQuestions',
486  'cancelRemoveQuestions', 'executeCreateQuestion', 'cancelCreateQuestion',
487  'addQuestionpool', 'saveRandomQuestions', 'saveQuestionSelectionMode', 'print',
488  'addsource', 'removesource', 'randomQuestions'
489  ],
490  '',
491  '',
492  $force_active
493  );
494  }
495 
496  // info tab
497  if ($this->isReadAccessGranted() && !$this->getTestOBJ()->getMainSettings()->getAdditionalSettings()->getHideInfoTab()) {
498  $this->tabs->addTarget(
499  'info_short',
500  $this->ctrl->getLinkTargetByClass('ilObjTestGUI', 'infoScreen'),
501  ['infoScreen', 'outIntroductionPage', 'showSummary',
502  'setAnonymousId', 'redirectToInfoScreen']
503  );
504  }
505 
506  // settings tab
507  if ($this->isWriteAccessGranted()) {
508  $settingsCommands = [
509  'marks', 'showMarkSchema','addMarkStep', 'deleteMarkSteps',
510  'resetToSimpleMarkSchema', 'saveMarks', 'certificate',
511  'certificateEditor', 'certificateRemoveBackground', 'certificateSave',
512  'certificatePreview', 'certificateDelete', 'certificateUpload', 'certificateImport',
513  'scoring', 'defaults', 'addDefaults', 'deleteDefaults', 'applyDefaults',
514  'inviteParticipants', 'saveFixedParticipantsStatus', 'searchParticipants', 'addParticipants' // ARE THEY RIGHT HERE
515  ];
516 
517  $reflection = new ReflectionClass('ilObjTestSettingsMainGUI');
518  foreach ($reflection->getConstants() as $name => $value) {
519  if (substr($name, 0, 4) === 'CMD_') {
520  $settingsCommands[] = $value;
521  }
522  }
523 
524  $reflection = new ReflectionClass('ilObjTestSettingsScoringResultsGUI');
525  foreach ($reflection->getConstants() as $name => $value) {
526  if (substr($name, 0, 4) === 'CMD_') {
527  $settingsCommands[] = $value;
528  }
529  }
530 
531  $settingsCommands[] = ''; // DO NOT KNOW WHAT THIS IS DOING, BUT IT'S REQUIRED
532 
533  $this->tabs->addTarget(
534  'settings',
535  $this->ctrl->getLinkTargetByClass('ilObjTestSettingsMainGUI'),
536  $settingsCommands,
537  [
538  'ilmarkschemagui',
539  'ilobjtestsettingsmaingui',
540  'ilobjtestsettingsscoringresultsgui',
541  'ilobjtestgui',
542  'ilcertificategui'
543  ]
544  );
545 
546  // skill service
547  if ($this->getTestOBJ()->isSkillServiceToBeConsidered()) {
548  $link = $this->ctrl->getLinkTargetByClass(
549  ['ilTestSkillAdministrationGUI', 'ilAssQuestionSkillAssignmentsGUI'],
551  );
552 
553  $this->tabs->addTarget('tst_tab_competences', $link, [], []);
554  }
555  }
556 
557  if ($this->needsDashboardTab()) {
558  $this->tabs->addTab(
559  self::TAB_ID_EXAM_DASHBOARD,
560  $this->lng->txt('dashboard_tab'),
561  $this->getDashboardTabTarget()
562  );
563  }
564 
565  if ($this->needsResultsTab()) {
566  $this->tabs->addTab(
567  self::TAB_ID_RESULTS,
568  $this->lng->txt('results_tab'),
569  $this->getResultsTabTarget()
570  );
571  }
572 
573  if ($this->isLpAccessGranted()) {
574  $this->tabs->addTarget(
575  self::TAB_ID_LEARNING_PROGRESS,
576  $this->ctrl->getLinkTargetByClass(['illearningprogressgui'], ''),
577  '',
578  [
579  'illplistofobjectsgui',
580  'illplistofsettingsgui',
581  'illearningprogressgui',
582  'illplistofprogressgui'
583  ]
584  );
585  }
586 
587  if ($this->checkScoreParticipantsTabAccess()) {
589  if (count($scoring)) {
590  // scoring tab
591  $this->tabs->addTarget(
592  self::TAB_ID_MANUAL_SCORING,
593  $this->ctrl->getLinkTargetByClass(
594  'ilTestScoringByQuestionsGUI',
595  'showManScoringByQuestionParticipantsTable'
596  ),
597  [
598  'showManScoringParticipantsTable',
599  'applyManScoringParticipantsFilter',
600  'resetManScoringParticipantsFilter',
601  'showManScoringParticipantScreen',
602  'showManScoringByQuestionParticipantsTable',
603  'applyManScoringByQuestionFilter',
604  'resetManScoringByQuestionFilter',
605  'saveManScoringByQuestion'
606  ],
607  ''
608  );
609  }
610  }
611 
612  // NEW CORRECTIONS TAB
613  $setting = new ilSetting('assessment');
614  $scoring_adjust_active = (bool) $setting->get('assessment_adjustments_enabled', '0');
615  if ($this->isWriteAccessGranted() && $scoring_adjust_active) {
616  $this->tabs->addTab(
617  self::TAB_ID_CORRECTION,
618  $this->lng->txt(self::TAB_ID_CORRECTION),
619  $this->ctrl->getLinkTargetByClass('ilTestCorrectionsGUI')
620  );
621  }
622 
623  if ($this->checkStatisticsTabAccess()) {
624  // statistics tab
625  $this->tabs->addTarget(
626  self::TAB_ID_STATISTICS,
627  $this->ctrl->getLinkTargetByClass(
628  [ilRepositoryGUI::class, ilObjTestGUI::class, ilTestEvaluationGUI::class],
629  'outEvaluation'
630  ),
631  [
632  'statistics',
633  'outEvaluation',
634  'exportEvaluation',
635  'detailedEvaluation',
636  'eval_a',
637  'evalUserDetail',
638  'passDetails',
639  'outStatisticsResultsOverview',
640  'statisticsPassDetails',
641  'singleResults'
642  ],
643  ''
644  );
645  }
646 
647  if ($this->isWriteAccessGranted()) {
648  $this->tabs->addTarget(
649  self::TAB_ID_HISTORY,
650  $this->ctrl->getLinkTargetByClass('ilObjTestGUI', 'history'),
651  'history',
652  ''
653  );
654 
655  $mdgui = new ilObjectMetaDataGUI($this->getTestOBJ());
656  $mdtab = $mdgui->getTab();
657  if ($mdtab) {
658  $this->tabs->addTarget(
659  self::TAB_ID_META_DATA,
660  $mdtab,
661  '',
662  'ilmdeditorgui'
663  );
664  }
665 
666  $this->tabs->addTarget(
667  self::TAB_ID_EXPORT,
668  $this->ctrl->getLinkTargetByClass('iltestexportgui', ''),
669  '',
670  ['iltestexportgui']
671  );
672  }
673 
674  if ($this->isPermissionsAccessGranted()) {
675  $this->tabs->addTarget(
676  self::TAB_ID_PERMISSIONS,
677  $this->ctrl->getLinkTargetByClass(['ilObjTestGUI','ilpermissiongui'], 'perm'),
678  ['perm','info','owner'],
679  'ilpermissiongui'
680  );
681  }
682 
683  if ($this->getTestQuestionSetConfig()->areDepenciesBroken()) {
684  $hideTabs = $this->getTestQuestionSetConfig()->getHiddenTabsOnBrokenDepencies();
685 
686  foreach ($hideTabs as $tabId) {
687  $this->tabs->removeTab($tabId);
688  }
689  }
690  }
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static _getManualScoring()
Retrieve the manual scoring settings.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Field Documentation

◆ $parent_back_href

ilTestTabsManager::$parent_back_href
protected

Definition at line 91 of file class.ilTestTabsManager.php.

Referenced by getParentBackHref(), and setParentBackHref().

◆ $parent_back_label

ilTestTabsManager::$parent_back_label
protected

Definition at line 96 of file class.ilTestTabsManager.php.

Referenced by getParentBackLabel(), and setParentBackLabel().

◆ $test_object

ilTestTabsManager::$test_object
protected

Definition at line 76 of file class.ilTestTabsManager.php.

Referenced by getTestOBJ(), and setTestOBJ().

◆ $test_question_set_config

ilTestTabsManager::$test_question_set_config
protected

◆ $test_session

ilTestTabsManager::$test_session
protected

Definition at line 81 of file class.ilTestTabsManager.php.

Referenced by getTestSession(), and setTestSession().

◆ SETTINGS_SUBTAB_ID_CERTIFICATE

const ilTestTabsManager::SETTINGS_SUBTAB_ID_CERTIFICATE = 'certificate'
private

Definition at line 70 of file class.ilTestTabsManager.php.

◆ SETTINGS_SUBTAB_ID_EDIT_CONCLUSION_PAGE

const ilTestTabsManager::SETTINGS_SUBTAB_ID_EDIT_CONCLUSION_PAGE = 'edit_concluding_remarks'

Definition at line 69 of file class.ilTestTabsManager.php.

Referenced by ilObjTestGUI\showEditTestPageGUI().

◆ SETTINGS_SUBTAB_ID_EDIT_INTRODUCTION_PAGE

const ilTestTabsManager::SETTINGS_SUBTAB_ID_EDIT_INTRODUCTION_PAGE = 'edit_introduction'

Definition at line 68 of file class.ilTestTabsManager.php.

Referenced by ilObjTestGUI\showEditTestPageGUI().

◆ SETTINGS_SUBTAB_ID_GENERAL

const ilTestTabsManager::SETTINGS_SUBTAB_ID_GENERAL = 'general'
private

Definition at line 65 of file class.ilTestTabsManager.php.

◆ SETTINGS_SUBTAB_ID_MARK_SCHEMA

const ilTestTabsManager::SETTINGS_SUBTAB_ID_MARK_SCHEMA = 'mark_schema'
private

Definition at line 66 of file class.ilTestTabsManager.php.

◆ SETTINGS_SUBTAB_ID_PERSONAL_DEFAULT_SETTINGS

const ilTestTabsManager::SETTINGS_SUBTAB_ID_PERSONAL_DEFAULT_SETTINGS = 'tst_default_settings'
private

Definition at line 71 of file class.ilTestTabsManager.php.

◆ SETTINGS_SUBTAB_ID_SCORING

const ilTestTabsManager::SETTINGS_SUBTAB_ID_SCORING = 'scoring'
private

Definition at line 67 of file class.ilTestTabsManager.php.

◆ SUBTAB_ID_FIXED_PARTICIPANTS

const ilTestTabsManager::SUBTAB_ID_FIXED_PARTICIPANTS = 'fixedparticipants'

◆ SUBTAB_ID_GENERAL_SETTINGS

const ilTestTabsManager::SUBTAB_ID_GENERAL_SETTINGS = 'general'

Definition at line 43 of file class.ilTestTabsManager.php.

Referenced by ilObjTestSettingsMainGUI\executeCommand().

◆ SUBTAB_ID_HIGHSCORE

const ilTestTabsManager::SUBTAB_ID_HIGHSCORE = 'highscore'

◆ SUBTAB_ID_LO_RESULTS

const ilTestTabsManager::SUBTAB_ID_LO_RESULTS = 'loresults'

◆ SUBTAB_ID_MY_RESULTS

const ilTestTabsManager::SUBTAB_ID_MY_RESULTS = 'myresults'

◆ SUBTAB_ID_MY_SOLUTIONS

const ilTestTabsManager::SUBTAB_ID_MY_SOLUTIONS = 'mysolutions'

◆ SUBTAB_ID_PARTICIPANTS_RESULTS

const ilTestTabsManager::SUBTAB_ID_PARTICIPANTS_RESULTS = 'participantsresults'

◆ SUBTAB_ID_QST_LIST_VIEW

◆ SUBTAB_ID_QST_PAGE_VIEW

const ilTestTabsManager::SUBTAB_ID_QST_PAGE_VIEW = 'qst_page_view'

◆ SUBTAB_ID_SKILL_RESULTS

const ilTestTabsManager::SUBTAB_ID_SKILL_RESULTS = 'skillresults'

◆ SUBTAB_ID_TIME_EXTENSION

const ilTestTabsManager::SUBTAB_ID_TIME_EXTENSION = 'timeextension'

◆ TAB_ID_CORRECTION

const ilTestTabsManager::TAB_ID_CORRECTION = 'scoringadjust'

◆ TAB_ID_EXAM_DASHBOARD

const ilTestTabsManager::TAB_ID_EXAM_DASHBOARD = 'dashboard_tab'

◆ TAB_ID_EXPORT

const ilTestTabsManager::TAB_ID_EXPORT = 'export'

Definition at line 50 of file class.ilTestTabsManager.php.

Referenced by ilObjTestGUI\executeCommand().

◆ TAB_ID_HISTORY

const ilTestTabsManager::TAB_ID_HISTORY = 'history'

Definition at line 48 of file class.ilTestTabsManager.php.

Referenced by ilObjTestGUI\historyObject().

◆ TAB_ID_INFOSCREEN

const ilTestTabsManager::TAB_ID_INFOSCREEN = 'info_short'

Definition at line 41 of file class.ilTestTabsManager.php.

Referenced by ilObjTestGUI\infoScreen().

◆ TAB_ID_LEARNING_PROGRESS

const ilTestTabsManager::TAB_ID_LEARNING_PROGRESS = 'learning_progress'

Definition at line 44 of file class.ilTestTabsManager.php.

Referenced by ilObjTestGUI\executeCommand().

◆ TAB_ID_MANUAL_SCORING

const ilTestTabsManager::TAB_ID_MANUAL_SCORING = 'manscoring'

◆ TAB_ID_META_DATA

const ilTestTabsManager::TAB_ID_META_DATA = 'meta_data'

Definition at line 49 of file class.ilTestTabsManager.php.

Referenced by ilObjTestGUI\executeCommand().

◆ TAB_ID_PERMISSIONS

const ilTestTabsManager::TAB_ID_PERMISSIONS = 'perm_settings'

Definition at line 51 of file class.ilTestTabsManager.php.

Referenced by ilObjTestGUI\executeCommand().

◆ TAB_ID_QUESTIONS

const ilTestTabsManager::TAB_ID_QUESTIONS = 'assQuestions'

(Sub-)Tab ID constants

Definition at line 36 of file class.ilTestTabsManager.php.

◆ TAB_ID_RESULTS

const ilTestTabsManager::TAB_ID_RESULTS = 'results'

◆ TAB_ID_SETTINGS

◆ TAB_ID_STATISTICS

◆ TAB_ID_TEST

const ilTestTabsManager::TAB_ID_TEST = 'test'

Definition at line 40 of file class.ilTestTabsManager.php.

Referenced by ilTestScreenGUI\testScreen().


The documentation for this class was generated from the following file: