ILIAS  release_7 Revision v7.30-3-g800a261c036
ilTestTabsManager Class Reference
+ Collaboration diagram for ilTestTabsManager:

Public Member Functions

 __construct (ilTestAccess $testAccess, ilTestObjectiveOrientedContainer $objectiveParent)
 ilTestTabsManager constructor. More...
 
 activateTab ($tabId)
 
 activateSubTab ($subTabId)
 
 getTestOBJ ()
 
 setTestOBJ (ilObjTest $testOBJ)
 
 getTestSession ()
 
 setTestSession ($testSession)
 
 getTestQuestionSetConfig ()
 
 setTestQuestionSetConfig (ilTestQuestionSetConfig $testQuestionSetConfig)
 
 getHiddenTabs ()
 
 setHiddenTabs ($hiddenTabs)
 
 resetHiddenTabs ()
 
 getParentBackLabel ()
 
 setParentBackLabel ($parentBackLabel)
 
 getParentBackHref ()
 
 setParentBackHref ($parentBackHref)
 
 hasParentBackLink ()
 
 initSettingsTemplate ()
 
 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_INFOSCREEN = 'info_short'
 
const TAB_ID_SETTINGS = 'settings'
 
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'
 

Protected Member Functions

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

Protected Attributes

 $tabs
 
 $access
 
 $testAccess
 
 $objectiveParent
 
 $lng
 
 $testOBJ
 
 $testSession
 
 $testQuestionSetConfig
 
 $parentBackHref
 
 $parentBackLabel
 
 $hiddenTabs
 

Detailed Description

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

Constructor & Destructor Documentation

◆ __construct()

ilTestTabsManager::__construct ( ilTestAccess  $testAccess,
ilTestObjectiveOrientedContainer  $objectiveParent 
)

ilTestTabsManager constructor.

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

102 {
103 $this->testAccess = $testAccess;
104 $this->objectiveParent = $objectiveParent;
105
106 global $DIC; /* @var ILIAS\DI\Container $DIC */
107 $this->tabs = $DIC['ilTabs'];
108 $this->access = $DIC['ilAccess'];
109 $this->lng = $DIC['lng'];
110 }
global $DIC
Definition: goto.php:24

References $DIC, $objectiveParent, and $testAccess.

Member Function Documentation

◆ activateSubTab()

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

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

129 {
130 switch ($subTabId) {
133
140
143
144 $this->tabs->activateSubTab($subTabId);
145 }
146 }

References SUBTAB_ID_FIXED_PARTICIPANTS, SUBTAB_ID_HIGHSCORE, SUBTAB_ID_LO_RESULTS, SUBTAB_ID_MY_RESULTS, SUBTAB_ID_MY_SOLUTIONS, SUBTAB_ID_PARTICIPANTS_RESULTS, SUBTAB_ID_QST_LIST_VIEW, SUBTAB_ID_QST_PAGE_VIEW, SUBTAB_ID_SKILL_RESULTS, and SUBTAB_ID_TIME_EXTENSION.

◆ activateTab()

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

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

116 {
117 switch ($tabId) {
120
121 $this->tabs->activateTab($tabId);
122 }
123 }

References TAB_ID_EXAM_DASHBOARD, and TAB_ID_RESULTS.

◆ checkDashboardTabAccess()

ilTestTabsManager::checkDashboardTabAccess ( )
protected
Returns
bool

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

340 {
341 if ($this->testAccess->checkManageParticipantsAccess()) {
342 return true;
343 }
344
345 return false;
346 }

Referenced by needsDashboardTab().

+ Here is the caller graph for this function:

◆ checkScoreParticipantsTabAccess()

ilTestTabsManager::checkScoreParticipantsTabAccess ( )
protected
Returns
bool

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

352 {
353 return $this->testAccess->checkScoreParticipantsAccess();
354 }

Referenced by setupTabsGuiConfig().

+ Here is the caller graph for this function:

◆ checkStatisticsTabAccess()

ilTestTabsManager::checkStatisticsTabAccess ( )
protected
Returns
bool

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

360 {
361 return $this->testAccess->checkStatisticsAccess();
362 }

Referenced by setupTabsGuiConfig().

+ Here is the caller graph for this function:

◆ getBrowseForQuestionsTab()

ilTestTabsManager::getBrowseForQuestionsTab ( )
protected

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

728 {
729 global $DIC; /* @var ILIAS\DI\Container $DIC */
730
731 if ($this->isWriteAccessGranted()) {
732 $DIC->ctrl()->saveParameterByClass($DIC->ctrl()->getCmdClass(), 'q_id');
733 // edit page
734 $this->tabs->setBackTarget($this->lng->txt("backtocallingtest"), $DIC->ctrl()->getLinkTargetByClass($DIC->ctrl()->getCmdClass(), "questions"));
735 $this->tabs->addTarget(
736 "tst_browse_for_questions",
737 $DIC->ctrl()->getLinkTargetByClass('ilObjTestGUI', "browseForQuestions"),
738 array("browseForQuestions", "filter", "resetFilter", "resetTextFilter", "insertQuestions"),
739 "",
740 "",
741 true
742 );
743 }
744 }

References $DIC, and isWriteAccessGranted().

Referenced by setupTabsGuiConfig().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getDashbardParticipantsSubTabLabel()

ilTestTabsManager::getDashbardParticipantsSubTabLabel ( )
protected

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

975 {
976 global $DIC; /* @var \ILIAS\DI\Container $DIC */
977
978 if ($this->getTestOBJ()->getFixedParticipants()) {
979 return $DIC->language()->txt('fixedparticipants_subtab');
980 }
981
982 return $DIC->language()->txt('autoparticipants_subtab');
983 }

References $DIC, and getTestOBJ().

Referenced by getDashboardSubTabs().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getDashboardSubTabs()

ilTestTabsManager::getDashboardSubTabs ( )

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

952 {
953 global $DIC; /* @var ILIAS\DI\Container $DIC */
954
955 if (!$this->testAccess->checkManageParticipantsAccess()) {
956 return;
957 }
958
959 $this->tabs->addSubTab(
960 self::SUBTAB_ID_FIXED_PARTICIPANTS,
962 $DIC->ctrl()->getLinkTargetByClass('ilTestParticipantsGUI')
963 );
964
965 if ($this->needsTimeExtensionSubTab()) {
966 $this->tabs->addSubTab(
967 self::SUBTAB_ID_TIME_EXTENSION,
968 $DIC->language()->txt('timing'),
969 $DIC->ctrl()->getLinkTargetByClass('ilTestParticipantsTimeExtensionGUI')
970 );
971 }
972 }

References $DIC, getDashbardParticipantsSubTabLabel(), and needsTimeExtensionSubTab().

+ Here is the call graph for this function:

◆ getDashboardTabTarget()

ilTestTabsManager::getDashboardTabTarget ( )
protected
Returns
string

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

945 {
946 global $DIC; /* @var ILIAS\DI\Container $DIC */
947
948 return $DIC->ctrl()->getLinkTargetByClass(array('ilTestDashboardGUI', 'ilTestParticipantsGUI'));
949 }

References $DIC.

◆ getHiddenTabs()

ilTestTabsManager::getHiddenTabs ( )
Returns
array

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

References $hiddenTabs.

Referenced by isHiddenTab().

+ Here is the caller graph for this function:

◆ getParentBackHref()

ilTestTabsManager::getParentBackHref ( )
Returns
null|string

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

References $parentBackHref.

Referenced by hasParentBackLink(), and setupTabsGuiConfig().

+ Here is the caller graph for this function:

◆ getParentBackLabel()

ilTestTabsManager::getParentBackLabel ( )
Returns
null|string

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

References $parentBackLabel.

Referenced by hasParentBackLink(), and setupTabsGuiConfig().

+ Here is the caller graph for this function:

◆ getQuestionsSubTabs()

ilTestTabsManager::getQuestionsSubTabs ( )

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

764 {
765 global $DIC; /* @var ILIAS\DI\Container $DIC */
766
767 $this->tabs->activateTab(self::TAB_ID_QUESTIONS);
768
769 /*
770 if (!$this->getTestOBJ()->isRandomTest()) {
771 $this->tabs->addSubTab(
772 self::SUBTAB_ID_QST_PAGE_VIEW,
773 $DIC->language()->txt('questions_per_page_view'),
774 $DIC->ctrl()->getLinkTargetByClass('iltestexpresspageobjectgui', 'showPage')
775 );
776 }
777 */
778
779 include_once "Services/Administration/classes/class.ilSettingsTemplate.php";
781
782 if (!$this->isHiddenTab('questions')) {
783 $this->tabs->addSubTab(
784 self::SUBTAB_ID_QST_LIST_VIEW,
785 $DIC->language()->txt('edit_test_questions'),
786 $DIC->ctrl()->getLinkTargetByClass('ilObjTestGUI', 'questions')
787 );
788 }
789
790 // print view subtab
791 if (!$this->getTestOBJ()->isRandomTest()) {
792 $this->tabs->addSubTabTarget(
793 "print_view",
794 $DIC->ctrl()->getLinkTargetByClass('ilObjTestGUI', 'print'),
795 "print",
796 "",
797 "",
798 $DIC->ctrl()->getCmd() == 'print'
799 );
800 $this->tabs->addSubTabTarget(
801 'review_view',
802 $DIC->ctrl()->getLinkTargetByClass('ilObjTestGUI', 'review'),
803 'review',
804 '',
805 '',
806 $DIC->ctrl()->getCmd() == 'review'
807 );
808 }
809 }
Settings template application class.

References $DIC, ilObjAssessmentFolderGUI\getSettingsTemplateConfig(), getTestOBJ(), and isHiddenTab().

+ Here is the call graph for this function:

◆ getRandomQuestionsTab()

ilTestTabsManager::getRandomQuestionsTab ( )
protected

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

747 {
748 global $DIC; /* @var ILIAS\DI\Container $DIC */
749
750 if ($this->isWriteAccessGranted()) {
751 // edit page
752 $this->tabs->setBackTarget($this->lng->txt("backtocallingtest"), $DIC->ctrl()->getLinkTargetByClass('ilObjTestGUI', "questions"));
753 $this->tabs->addTarget(
754 "random_selection",
755 $DIC->ctrl()->getLinkTargetByClass('ilObjTestGUI', "randomQuestions"),
756 array("randomQuestions"),
757 "",
758 ""
759 );
760 }
761 }

References $DIC, and isWriteAccessGranted().

+ Here is the call graph for this function:

◆ getResultsSubTabs()

ilTestTabsManager::getResultsSubTabs ( )

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

1085 {
1086 global $DIC; /* @var ILIAS\DI\Container $DIC */
1087
1088 if ($this->needsParticipantsResultsSubTab()) {
1089 $this->tabs->addSubTab(
1090 self::SUBTAB_ID_PARTICIPANTS_RESULTS,
1091 $DIC->language()->txt('participants_results_subtab'),
1092 $DIC->ctrl()->getLinkTargetByClass(array('ilTestResultsGUI', 'ilParticipantsTestResultsGUI'))
1093 );
1094 }
1095
1096 if ($this->needsLoResultsSubTab()) {
1097 $this->tabs->addSubTab(
1098 self::SUBTAB_ID_LO_RESULTS,
1099 $DIC->language()->txt('tst_tab_results_objective_oriented'),
1100 $DIC->ctrl()->getLinkTargetByClass(array('ilTestResultsGUI', 'ilTestEvalObjectiveOrientedGUI'))
1101 );
1102 }
1103
1104 if ($this->needsMyResultsSubTab()) {
1105 $myResultsLabel = $DIC->language()->txt('tst_show_results');
1106
1107 if ($this->needsLoResultsSubTab()) {
1108 $myResultsLabel = $DIC->language()->txt('tst_tab_results_pass_oriented');
1109 }
1110
1111 $this->tabs->addSubTab(
1112 self::SUBTAB_ID_MY_RESULTS,
1113 $myResultsLabel,
1114 $DIC->ctrl()->getLinkTargetByClass(array('ilTestResultsGUI', 'ilMyTestResultsGUI', 'ilTestEvaluationGUI'))
1115 // 'ilTestEvaluationGUI' => 'outUserResultsOverview'
1116 );
1117 }
1118
1119 if ($this->needsSkillResultsSubTab()) {
1120 $this->tabs->addSubTab(
1121 self::SUBTAB_ID_SKILL_RESULTS,
1122 $DIC->language()->txt('tst_show_comp_results'),
1123 $DIC->ctrl()->getLinkTargetByClass(array('ilTestResultsGUI', 'ilTestSkillEvaluationGUI'))
1124 );
1125 }
1126
1127 if ($this->needsHighSoreSubTab()) {
1128 $this->tabs->addSubTab(
1129 self::SUBTAB_ID_HIGHSCORE,
1130 $DIC->language()->txt('tst_show_toplist'),
1131 $DIC->ctrl()->getLinkTargetByClass(array('ilTestResultsGUI', 'ilTestToplistGUI'), 'outResultsToplist')
1132 );
1133 }
1134
1135 if ($this->needsMySolutionsSubTab()) {
1136 $this->tabs->addSubTab(
1137 self::SUBTAB_ID_MY_SOLUTIONS,
1138 $DIC->language()->txt('tst_list_of_answers_show'),
1139 $DIC->ctrl()->getLinkTargetByClass(array('ilTestResultsGUI', 'ilMyTestSolutionsGUI', 'ilTestEvaluationGUI'))
1140 );
1141 }
1142 }

References $DIC, needsHighSoreSubTab(), needsLoResultsSubTab(), needsMyResultsSubTab(), needsMySolutionsSubTab(), needsParticipantsResultsSubTab(), and needsSkillResultsSubTab().

+ Here is the call graph for this function:

◆ getResultsTabTarget()

ilTestTabsManager::getResultsTabTarget ( )
protected
Returns
string

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

997 {
998 global $DIC; /* @var ILIAS\DI\Container $DIC */
999
1000 if ($this->needsParticipantsResultsSubTab()) {
1001 return $DIC->ctrl()->getLinkTargetByClass(array('ilTestResultsGUI', 'ilParticipantsTestResultsGUI'));
1002 }
1003
1004 if ($this->needsLoResultsSubTab()) {
1005 return $DIC->ctrl()->getLinkTargetByClass(array('ilTestResultsGUI', 'ilTestEvalObjectiveOrientedGUI'));
1006 }
1007
1008 if ($this->needsMyResultsSubTab()) {
1009 return $DIC->ctrl()->getLinkTargetByClass(array('ilTestResultsGUI', 'ilMyTestResultsGUI', 'ilTestEvaluationGUI'));
1010 }
1011
1012 if ($this->needsMySolutionsSubTab()) {
1013 return $DIC->ctrl()->getLinkTargetByClass(array('ilTestResultsGUI', 'ilMyTestSolutionsGUI', 'ilTestEvaluationGUI'));
1014 }
1015
1016 return $DIC->ctrl()->getLinkTargetByClass('ilTestResultsGUI');
1017 }

References $DIC, needsLoResultsSubTab(), needsMyResultsSubTab(), needsMySolutionsSubTab(), and needsParticipantsResultsSubTab().

+ Here is the call graph for this function:

◆ getSettingsSubTabs()

ilTestTabsManager::getSettingsSubTabs ( )

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

844 {
845 global $DIC; /* @var ILIAS\DI\Container $DIC */
846
847 // general subtab
848 $this->tabs->addSubTabTarget(
849 'general',
850 $DIC->ctrl()->getLinkTargetByClass('ilObjTestSettingsGeneralGUI'),
851 '', // auto activation regardless from cmd
852 array('ilobjtestsettingsgeneralgui') // auto activation for ilObjTestSettingsGeneralGUI
853 );
854
855 if (!$this->isHiddenTab('mark_schema')) {
856 $this->tabs->addSubTabTarget(
857 'mark_schema',
858 $DIC->ctrl()->getLinkTargetByClass('ilmarkschemagui', 'showMarkSchema'),
859 '',
860 array('ilmarkschemagui')
861 );
862 }
863
864 // scoring subtab
865 $this->tabs->addSubTabTarget(
866 'scoring',
867 $DIC->ctrl()->getLinkTargetByClass('ilObjTestSettingsScoringResultsGUI'),
868 '', // auto activation regardless from cmd
869 array('ilobjtestsettingsscoringresultsgui') // auto activation for ilObjTestSettingsScoringResultsGUI
870 );
871
872 // certificate subtab
873 $validator = new ilCertificateActiveValidator();
874 if (!$this->isHiddenTab('certificate') && true === $validator->validate()) {
875 $this->tabs->addSubTabTarget(
876 "certificate",
877 $DIC->ctrl()->getLinkTargetByClass('ilObjTestGUI', 'certificate'),
878 array("certificate", "certificateEditor", "certificateRemoveBackground", "certificateSave",
879 "certificatePreview", "certificateDelete", "certificateUpload", "certificateImport"),
880 array("", "ilobjtestgui", "ilcertificategui")
881 );
882 }
883
884 if (!$this->isHiddenTab('defaults')) {
885 // defaults subtab
886 $this->tabs->addSubTabTarget(
887 "tst_default_settings",
888 $DIC->ctrl()->getLinkTargetByClass('ilObjTestGUI', "defaults"),
889 array("defaults", "deleteDefaults", "addDefaults", "applyDefaults"),
890 array("", "ilobjtestgui", "ilcertificategui")
891 );
892 }
893
894 $lti_settings = new ilLTIProviderObjectSettingGUI($this->testOBJ->getRefId());
895 if ($lti_settings->hasSettingsAccess()) {
896 $this->tabs->addSubTabTarget(
897 'lti_provider',
898 $DIC->ctrl()->getLinkTargetByClass(ilLTIProviderObjectSettingGUI::class),
899 '',
900 [ilLTIProviderObjectSettingGUI::class]
901 );
902 }
903 }
GUI class for LTI provider object settings.

References $DIC, and isHiddenTab().

Referenced by setupTabsGuiConfig().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getStatisticsSubTabs()

ilTestTabsManager::getStatisticsSubTabs ( )
protected

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

812 {
813 global $DIC; /* @var ILIAS\DI\Container $DIC */
814
815 // user results subtab
816 $this->tabs->addSubTabTarget(
817 "eval_all_users",
818 $DIC->ctrl()->getLinkTargetByClass("iltestevaluationgui", "outEvaluation"),
819 array("outEvaluation", "detailedEvaluation", "exportEvaluation", "evalUserDetail", "passDetails",
820 "outStatisticsResultsOverview", "statisticsPassDetails"),
821 ""
822 );
823
824 // aggregated results subtab
825 $this->tabs->addSubTabTarget(
826 "tst_results_aggregated",
827 $DIC->ctrl()->getLinkTargetByClass("iltestevaluationgui", "eval_a"),
828 array("eval_a"),
829 "",
830 ""
831 );
832
833 // question export
834 $this->tabs->addSubTabTarget(
835 "tst_single_results",
836 $DIC->ctrl()->getLinkTargetByClass("iltestevaluationgui", "singleResults"),
837 array("singleResults"),
838 "",
839 ""
840 );
841 }

References $DIC.

Referenced by setupTabsGuiConfig().

+ Here is the caller graph for this function:

◆ getTestOBJ()

◆ getTestQuestionSetConfig()

ilTestTabsManager::getTestQuestionSetConfig ( )
Returns
ilTestQuestionSetConfig

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

References $testQuestionSetConfig.

Referenced by needsTimeExtensionSubTab(), and setupTabsGuiConfig().

+ Here is the caller graph for this function:

◆ getTestSession()

ilTestTabsManager::getTestSession ( )
Returns
ilTestSession

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

References $testSession.

Referenced by needsMyResultsSubTab(), and needsMySolutionsSubTab().

+ Here is the caller graph for this function:

◆ hasParentBackLink()

ilTestTabsManager::hasParentBackLink ( )
Returns
null|string

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

256 {
257 if (!is_string($this->getParentBackHref()) || !strlen($this->getParentBackHref())) {
258 return false;
259 }
260
261 if (!is_string($this->getParentBackLabel()) || !strlen($this->getParentBackLabel())) {
262 return false;
263 }
264
265 return true;
266 }

References getParentBackHref(), and getParentBackLabel().

Referenced by setupTabsGuiConfig().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initSettingsTemplate()

ilTestTabsManager::initSettingsTemplate ( )

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

271 {
272 $this->resetHiddenTabs();
273
274 if ($this->getTestOBJ()->getTemplate()) {
275 require_once 'Services/Administration/classes/class.ilSettingsTemplate.php';
276
277 $template = new ilSettingsTemplate(
278 $this->getTestOBJ()->getTemplate(),
280 );
281
282 $this->setHiddenTabs($template->getHiddenTabs());
283 }
284 }

References ilObjAssessmentFolderGUI\getSettingsTemplateConfig(), getTestOBJ(), resetHiddenTabs(), and setHiddenTabs().

+ Here is the call graph for this function:

◆ isHiddenTab()

ilTestTabsManager::isHiddenTab (   $tabId)
protected
Parameters
string$tabId
Returns
bool

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

291 {
292 return in_array($tabId, $this->getHiddenTabs());
293 }

References getHiddenTabs().

Referenced by getQuestionsSubTabs(), getSettingsSubTabs(), needsDashboardTab(), and setupTabsGuiConfig().

+ 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 330 of file class.ilTestTabsManager.php.

331 {
332 include_once 'Services/Tracking/classes/class.ilLearningProgressAccess.php';
333 return ilLearningProgressAccess::checkAccess($this->getTestOBJ()->getRefId());
334 }
static checkAccess($a_ref_id, $a_allow_only_read=true)
check access to learning progress

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

Referenced by setupTabsGuiConfig().

+ 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 322 of file class.ilTestTabsManager.php.

323 {
324 return $this->access->checkAccess('edit_permission', '', $this->getTestOBJ()->getRefId());
325 }

References getTestOBJ().

Referenced by setupTabsGuiConfig().

+ 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 298 of file class.ilTestTabsManager.php.

299 {
300 return $this->access->checkAccess('read', '', $this->getTestOBJ()->getRefId());
301 }

References getTestOBJ().

Referenced by setupTabsGuiConfig().

+ 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 314 of file class.ilTestTabsManager.php.

315 {
316 return $this->access->checkAccess('tst_statistics', '', $this->getTestOBJ()->getRefId());
317 }

References getTestOBJ().

+ Here is the call graph for this function:

◆ isTabsConfigSetupRequired()

ilTestTabsManager::isTabsConfigSetupRequired ( )
protected

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

374 {
375 global $DIC; /* @var ILIAS\DI\Container $DIC */
376
377 if (preg_match('/^ass(.*?)gui$/i', $DIC->ctrl()->getNextClass($this))) {
378 return false;
379 }
380
381 if ($DIC->ctrl()->getNextClass($this) == 'ilassquestionpagegui') {
382 return false;
383 }
384
385 if ($DIC->ctrl()->getCmdClass() == 'iltestoutputgui') {
386 return false;
387 }
388
389 if ($DIC->ctrl()->getCmdClass() == 'iltestevaluationgui') {
390 return in_array($DIC->ctrl()->getCmd(), array(
391 '', 'outUserResultsPassOverview', 'outUserListOfAnswerPasses', 'outEvaluation', 'eval_a', 'singleResults', 'detailedEvaluation', 'outUserResultsOverview', 'confirmDeletePass'
392 ));
393 }
394
395 return true;
396 }

References $DIC.

Referenced by perform().

+ Here is the caller graph for this function:

◆ isWriteAccessGranted()

ilTestTabsManager::isWriteAccessGranted ( )
protected
Returns
bool

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

307 {
308 return $this->access->checkAccess('write', '', $this->getTestOBJ()->getRefId());
309 }

References getTestOBJ().

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

+ 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 908 of file class.ilTestTabsManager.php.

909 {
910 if ($this->isHiddenTab(self::TAB_ID_EXAM_DASHBOARD)) {
911 return false;
912 }
913
914 if (!$this->checkDashboardTabAccess()) {
915 return false;
916 }
917
918 return true;
919 }

References checkDashboardTabAccess(), and isHiddenTab().

Referenced by setupTabsGuiConfig().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ needsHighSoreSubTab()

ilTestTabsManager::needsHighSoreSubTab ( )
Returns
bool

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

1059 {
1060 if (!$this->needsMyResultsSubTab()) {
1061 return false;
1062 }
1063
1064 return $this->getTestOBJ()->getHighscoreEnabled();
1065 }

References getTestOBJ(), and needsMyResultsSubTab().

Referenced by getResultsSubTabs().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ needsLoResultsSubTab()

ilTestTabsManager::needsLoResultsSubTab ( )
Returns
bool

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

1031 {
1032 if (!$this->needsMyResultsSubTab()) {
1033 return false;
1034 }
1035
1036 return $this->objectiveParent->isObjectiveOrientedPresentationRequired();
1037 }

References needsMyResultsSubTab().

Referenced by getResultsSubTabs(), and getResultsTabTarget().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ needsMyResultsSubTab()

ilTestTabsManager::needsMyResultsSubTab ( )
Returns
bool

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

1023 {
1024 return $this->getTestSession()->reportableResultsAvailable($this->getTestOBJ());
1025 }

References getTestOBJ(), and getTestSession().

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

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ needsMySolutionsSubTab()

ilTestTabsManager::needsMySolutionsSubTab ( )

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

1080 {
1081 return $this->getTestOBJ()->canShowSolutionPrintview($this->getTestSession()->getUserId());
1082 }

References getTestOBJ(), and getTestSession().

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

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ needsParticipantsResultsSubTab()

ilTestTabsManager::needsParticipantsResultsSubTab ( )
Returns
bool

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

1043 {
1044 if ($this->testAccess->checkManageParticipantsAccess()) {
1045 return true;
1046 }
1047
1048 if ($this->testAccess->checkParticipantsResultsAccess()) {
1049 return true;
1050 }
1051
1052 return false;
1053 }

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

+ Here is the caller graph for this function:

◆ needsResultsTab()

ilTestTabsManager::needsResultsTab ( )
protected
Returns
bool

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

989 {
990 return $this->needsParticipantsResultsSubTab() || $this->testOBJ->isScoreReportingEnabled() || $this->needsMySolutionsSubTab();
991 }

References needsMySolutionsSubTab(), and needsParticipantsResultsSubTab().

Referenced by setupTabsGuiConfig().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ needsSkillResultsSubTab()

ilTestTabsManager::needsSkillResultsSubTab ( )
Returns
bool

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

1071 {
1072 if (!$this->needsMyResultsSubTab()) {
1073 return false;
1074 }
1075
1076 return $this->getTestOBJ()->isSkillServiceToBeConsidered();
1077 }

References getTestOBJ(), and needsMyResultsSubTab().

Referenced by getResultsSubTabs().

+ 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 924 of file class.ilTestTabsManager.php.

925 {
926 if (!($this->getTestOBJ()->getProcessingTimeInSeconds() > 0)) {
927 return false;
928 }
929
930 if ($this->getTestOBJ()->getNrOfTries() != 1) {
931 return false;
932 }
933
934 if ($this->getTestQuestionSetConfig()->areDepenciesBroken()) {
935 return false;
936 }
937
938 return true;
939 }

References getTestOBJ(), and getTestQuestionSetConfig().

Referenced by getDashboardSubTabs().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ perform()

ilTestTabsManager::perform ( )

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

367 {
368 if ($this->isTabsConfigSetupRequired()) {
369 $this->setupTabsGuiConfig();
370 }
371 }

References isTabsConfigSetupRequired(), and setupTabsGuiConfig().

+ Here is the call graph for this function:

◆ resetHiddenTabs()

ilTestTabsManager::resetHiddenTabs ( )
Parameters
array$hiddenTabs

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

216 {
217 $this->hiddenTabs = array();
218 }

Referenced by initSettingsTemplate().

+ Here is the caller graph for this function:

◆ setHiddenTabs()

ilTestTabsManager::setHiddenTabs (   $hiddenTabs)
Parameters
array$hiddenTabs

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

208 {
209 $this->hiddenTabs = $hiddenTabs;
210 }

References $hiddenTabs.

Referenced by initSettingsTemplate().

+ Here is the caller graph for this function:

◆ setParentBackHref()

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

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

248 {
249 $this->parentBackHref = $parentBackHref;
250 }

References $parentBackHref.

◆ setParentBackLabel()

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

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

232 {
233 $this->parentBackLabel = $parentBackLabel;
234 }

References $parentBackLabel.

◆ setTestOBJ()

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

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

160 {
161 $this->testOBJ = $testOBJ;
162 }

References $testOBJ.

◆ setTestQuestionSetConfig()

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

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

192 {
193 $this->testQuestionSetConfig = $testQuestionSetConfig;
194 }

References $testQuestionSetConfig.

◆ setTestSession()

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

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

176 {
177 $this->testSession = $testSession;
178 }

References $testSession.

◆ setupTabsGuiConfig()

ilTestTabsManager::setupTabsGuiConfig ( )
protected

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

399 {
400 global $DIC; /* @var ILIAS\DI\Container $DIC */
401
402 if ($this->hasParentBackLink()) {
403 $this->tabs->setBack2Target($this->getParentBackLabel(), $this->getParentBackHref());
404 }
405
406 switch ($DIC->ctrl()->getCmdClass()) {
407 case 'ilmarkschemagui':
408 case 'ilobjtestsettingsgeneralgui':
409 case 'ilobjtestsettingsscoringresultsgui':
410
411 if ($this->isWriteAccessGranted()) {
412 $this->getSettingsSubTabs();
413 }
414
415 break;
416 }
417
418 switch ($DIC->ctrl()->getCmd()) {
419 case "resume":
420 case "previous":
421 case "next":
422 case "summary":
423 case "directfeedback":
424 case "finishTest":
425 case "outCorrectSolution":
426 case "passDetails":
427 case "showAnswersOfUser":
428 case "backFromSummary":
429 case "show_answers":
430 case "setsolved":
431 case "resetsolved":
432 case "confirmFinish":
433 case "outTestSummary":
434 case "outQuestionSummary":
435 case "gotoQuestion":
436 case "selectImagemapRegion":
437 case "confirmSubmitAnswers":
438 case "finalSubmission":
439 case "postpone":
440 case "outUserPassDetails":
441 case "checkPassword":
442 case "exportCertificate":
443 case "finishListOfAnswers":
444 case "backConfirmFinish":
445 case "showFinalStatement":
446 return;
447 break;
448 case "browseForQuestions":
449 case "filter":
450 case "resetFilter":
451 case "resetTextFilter":
452 case "insertQuestions":
453 $classes = array(
454 'iltestdashboardgui',
455 'iltestresultsgui',
456 "illearningprogressgui" // #8497: resetfilter is also used in lp
457 );
458 if (!in_array($DIC->ctrl()->getNextClass($this), $classes)) {
460 return;
461 }
462 break;
463 case "scoring":
464 case "certificate":
465 case "certificateservice":
466 case "certificateImport":
467 case "certificateUpload":
468 case "certificateEditor":
469 case "certificateDelete":
470 case "certificateSave":
471 case "defaults":
472 case "deleteDefaults":
473 case "addDefaults":
474 case "applyDefaults":
475 case "inviteParticipants":
476 case "searchParticipants":
477 if ($this->isWriteAccessGranted() && in_array($DIC->ctrl()->getCmdClass(), array('ilobjtestgui', 'ilcertificategui'))) {
478 $this->getSettingsSubTabs();
479 }
480 break;
481 case "export":
482 case "print":
483 break;
484 case "statistics":
485 case "eval_a":
486 case "detailedEvaluation":
487 case "outEvaluation":
488 case "singleResults":
489 case "exportEvaluation":
490 case "evalUserDetail":
491 case "outStatisticsResultsOverview":
492 case "statisticsPassDetails":
493 $this->getStatisticsSubTabs();
494 break;
495 }
496
497 // questions tab
498 if ($this->isWriteAccessGranted() && !$this->isHiddenTab('assQuestions')) {
499 $force_active = ($_GET["up"] != "" || $_GET["down"] != "")
500 ? true
501 : false;
502 if (!$force_active) {
503 if ($_GET["browse"] == 1) {
504 $force_active = true;
505 }
506 }
507
508 switch ($this->getTestOBJ()->getQuestionSetType()) {
510 $target = $DIC->ctrl()->getLinkTargetByClass(
511 'ilObjTestGUI',
512 'questions'
513 );
514 break;
515
517 $target = $DIC->ctrl()->getLinkTargetByClass('ilTestRandomQuestionSetConfigGUI');
518 break;
519
521 $target = $DIC->ctrl()->getLinkTargetByClass('ilObjTestDynamicQuestionSetConfigGUI');
522 break;
523
524 default: $target = '';
525 }
526
527 $this->tabs->addTarget(
528 "assQuestions",
529 $target,
530 array("questions", "browseForQuestions", "questionBrowser", "createQuestion",
531 "randomselect", "filter", "resetFilter", "insertQuestions",
532 "back", "createRandomSelection", "cancelRandomSelect",
533 "insertRandomSelection", "removeQuestions", "moveQuestions",
534 "insertQuestionsBefore", "insertQuestionsAfter", "confirmRemoveQuestions",
535 "cancelRemoveQuestions", "executeCreateQuestion", "cancelCreateQuestion",
536 "addQuestionpool", "saveRandomQuestions", "saveQuestionSelectionMode", "print",
537 "addsource", "removesource", "randomQuestions"),
538 "",
539 "",
540 $force_active
541 );
542 }
543
544 // info tab
545 if ($this->isReadAccessGranted() && !$this->isHiddenTab('info_short')) {
546 $this->tabs->addTarget(
547 "info_short",
548 $DIC->ctrl()->getLinkTargetByClass('ilObjTestGUI', 'infoScreen'),
549 array("infoScreen", "outIntroductionPage", "showSummary",
550 "setAnonymousId", "redirectToInfoScreen")
551 );
552 }
553
554 // settings tab
555 if ($this->isWriteAccessGranted()) {
556 if (!$this->isHiddenTab('settings')) {
557 $settingsCommands = array(
558 "marks", "showMarkSchema","addMarkStep", "deleteMarkSteps", "addSimpleMarkSchema", "saveMarks",
559 "certificate", "certificateEditor", "certificateRemoveBackground", "certificateSave",
560 "certificatePreview", "certificateDelete", "certificateUpload", "certificateImport",
561 "scoring", "defaults", "addDefaults", "deleteDefaults", "applyDefaults",
562 "inviteParticipants", "saveFixedParticipantsStatus", "searchParticipants", "addParticipants" // ARE THEY RIGHT HERE
563 );
564
565 require_once 'Modules/Test/classes/class.ilObjTestSettingsGeneralGUI.php';
566 $reflection = new ReflectionClass('ilObjTestSettingsGeneralGUI');
567 foreach ($reflection->getConstants() as $name => $value) {
568 if (substr($name, 0, 4) == 'CMD_') {
569 $settingsCommands[] = $value;
570 }
571 }
572
573 require_once 'Modules/Test/classes/class.ilObjTestSettingsScoringResultsGUI.php';
574 $reflection = new ReflectionClass('ilObjTestSettingsScoringResultsGUI');
575 foreach ($reflection->getConstants() as $name => $value) {
576 if (substr($name, 0, 4) == 'CMD_') {
577 $settingsCommands[] = $value;
578 }
579 }
580
581 $settingsCommands[] = ""; // DO NOT KNOW WHAT THIS IS DOING, BUT IT'S REQUIRED
582
583 $this->tabs->addTarget(
584 "settings",
585 $DIC->ctrl()->getLinkTargetByClass('ilObjTestSettingsGeneralGUI'),
586 $settingsCommands,
587 array("ilmarkschemagui", "ilobjtestsettingsgeneralgui", "ilobjtestsettingsscoringresultsgui", "ilobjtestgui", "ilcertificategui")
588 );
589 }
590
591 // skill service
592 if ($this->getTestOBJ()->isSkillServiceEnabled() && ilObjTest::isSkillManagementGloballyActivated()) {
593 require_once 'Modules/TestQuestionPool/classes/class.ilAssQuestionSkillAssignmentsGUI.php';
594
595 $link = $DIC->ctrl()->getLinkTargetByClass(
596 array('ilTestSkillAdministrationGUI', 'ilAssQuestionSkillAssignmentsGUI'),
598 );
599
600 $this->tabs->addTarget('tst_tab_competences', $link, array(), array());
601 }
602 }
603
604 if ($this->needsDashboardTab()) {
605 $this->tabs->addTab(
606 self::TAB_ID_EXAM_DASHBOARD,
607 $DIC->language()->txt('dashboard_tab'),
608 $this->getDashboardTabTarget()
609 );
610 }
611
612 if ($this->needsResultsTab()) {
613 $this->tabs->addTab(
614 self::TAB_ID_RESULTS,
615 $DIC->language()->txt('results_tab'),
616 $this->getResultsTabTarget()
617 );
618 }
619
620 if ($this->isLpAccessGranted() && !$this->isHiddenTab(self::TAB_ID_LEARNING_PROGRESS)) {
621 $this->tabs->addTarget(
622 self::TAB_ID_LEARNING_PROGRESS,
623 $DIC->ctrl()->getLinkTargetByClass(array('illearningprogressgui'), ''),
624 '',
625 array('illplistofobjectsgui','illplistofsettingsgui','illearningprogressgui','illplistofprogressgui')
626 );
627 }
628
629 if ($this->checkScoreParticipantsTabAccess() && !$this->isHiddenTab(self::TAB_ID_MANUAL_SCORING)) {
630 include_once "./Modules/Test/classes/class.ilObjAssessmentFolder.php";
632 if (count($scoring)) {
633 // scoring tab
634 $this->tabs->addTarget(
635 self::TAB_ID_MANUAL_SCORING,
636 $DIC->ctrl()->getLinkTargetByClass('ilTestScoringByQuestionsGUI', 'showManScoringByQuestionParticipantsTable'),
637 array(
638 'showManScoringParticipantsTable', 'applyManScoringParticipantsFilter', 'resetManScoringParticipantsFilter', 'showManScoringParticipantScreen',
639 'showManScoringByQuestionParticipantsTable', 'applyManScoringByQuestionFilter', 'resetManScoringByQuestionFilter', 'saveManScoringByQuestion'
640
641 ),
642 ''
643 );
644 }
645 }
646
647 // NEW CORRECTIONS TAB
648 $setting = new ilSetting('assessment');
649 $scoring_adjust_active = (bool) $setting->get('assessment_adjustments_enabled', false);
650 if ($this->isWriteAccessGranted() && $scoring_adjust_active && !$this->isHiddenTab(self::TAB_ID_CORRECTION)) {
651 $this->tabs->addTab(
652 self::TAB_ID_CORRECTION,
653 $DIC->language()->txt(self::TAB_ID_CORRECTION),
654 $DIC->ctrl()->getLinkTargetByClass('ilTestCorrectionsGUI')
655 );
656 }
657
658 if ($this->checkStatisticsTabAccess() && !$this->isHiddenTab(self::TAB_ID_STATISTICS)) {
659 // statistics tab
660 $this->tabs->addTarget(
661 self::TAB_ID_STATISTICS,
662 $DIC->ctrl()->getLinkTargetByClass("iltestevaluationgui", "outEvaluation"),
663 array(
664 "statistics", "outEvaluation", "exportEvaluation", "detailedEvaluation", "eval_a", "evalUserDetail",
665 "passDetails", "outStatisticsResultsOverview", "statisticsPassDetails", "singleResults"
666 ),
667 ""
668 );
669 }
670
671 if ($this->isWriteAccessGranted()) {
672 if (!$this->isHiddenTab(self::TAB_ID_HISTORY)) {
673
674 // history
675 $this->tabs->addTarget(
676 self::TAB_ID_HISTORY,
677 $DIC->ctrl()->getLinkTargetByClass('ilObjTestGUI', 'history'),
678 "history",
679 ""
680 );
681 }
682
683 if (!$this->isHiddenTab(self::TAB_ID_META_DATA)) {
684 // meta data
685 include_once "Services/Object/classes/class.ilObjectMetaDataGUI.php";
686 $mdgui = new ilObjectMetaDataGUI($this->getTestOBJ());
687 $mdtab = $mdgui->getTab();
688 if ($mdtab) {
689 $this->tabs->addTarget(
690 self::TAB_ID_META_DATA,
691 $mdtab,
692 "",
693 "ilmdeditorgui"
694 );
695 }
696 }
697
698 if (!$this->isHiddenTab(self::TAB_ID_EXPORT)) {
699 // export tab
700 $this->tabs->addTarget(
701 self::TAB_ID_EXPORT,
702 $DIC->ctrl()->getLinkTargetByClass('iltestexportgui', ''),
703 '',
704 array('iltestexportgui')
705 );
706 }
707 }
708
709 if ($this->isPermissionsAccessGranted() && !$this->isHiddenTab(self::TAB_ID_PERMISSIONS)) {
710 $this->tabs->addTarget(
711 self::TAB_ID_PERMISSIONS,
712 $DIC->ctrl()->getLinkTargetByClass(array('ilObjTestGUI','ilpermissiongui'), "perm"),
713 array("perm","info","owner"),
714 'ilpermissiongui'
715 );
716 }
717
718 if ($this->getTestQuestionSetConfig()->areDepenciesBroken()) {
719 $hideTabs = $this->getTestQuestionSetConfig()->getHiddenTabsOnBrokenDepencies();
720
721 foreach ($hideTabs as $tabId) {
722 $this->tabs->removeTab($tabId);
723 }
724 }
725 }
$_GET["client_id"]
static _getManualScoring()
Retrieve the manual scoring settings.
const QUESTION_SET_TYPE_DYNAMIC
type setting value for dynamic question set (continues testing mode)
const QUESTION_SET_TYPE_RANDOM
type setting value for random question set
const QUESTION_SET_TYPE_FIXED
type setting value for fixed question set
static isSkillManagementGloballyActivated()
Class ilObjectMetaDataGUI.
ILIAS Setting Class.
if($format !==null) $name
Definition: metadata.php:230

References $_GET, $DIC, $name, ilObjAssessmentFolder\_getManualScoring(), checkScoreParticipantsTabAccess(), checkStatisticsTabAccess(), ilAssQuestionSkillAssignmentsGUI\CMD_SHOW_SKILL_QUEST_ASSIGNS, getBrowseForQuestionsTab(), getParentBackHref(), getParentBackLabel(), getSettingsSubTabs(), getStatisticsSubTabs(), getTestOBJ(), getTestQuestionSetConfig(), hasParentBackLink(), isHiddenTab(), isLpAccessGranted(), isPermissionsAccessGranted(), isReadAccessGranted(), ilObjTest\isSkillManagementGloballyActivated(), isWriteAccessGranted(), needsDashboardTab(), needsResultsTab(), ilObjTest\QUESTION_SET_TYPE_DYNAMIC, ilObjTest\QUESTION_SET_TYPE_FIXED, and ilObjTest\QUESTION_SET_TYPE_RANDOM.

Referenced by perform().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Field Documentation

◆ $access

ilTestTabsManager::$access
protected

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

◆ $hiddenTabs

ilTestTabsManager::$hiddenTabs
protected

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

Referenced by getHiddenTabs(), and setHiddenTabs().

◆ $lng

ilTestTabsManager::$lng
protected

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

◆ $objectiveParent

ilTestTabsManager::$objectiveParent
protected

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

Referenced by __construct().

◆ $parentBackHref

ilTestTabsManager::$parentBackHref
protected

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

Referenced by getParentBackHref(), and setParentBackHref().

◆ $parentBackLabel

ilTestTabsManager::$parentBackLabel
protected

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

Referenced by getParentBackLabel(), and setParentBackLabel().

◆ $tabs

ilTestTabsManager::$tabs
protected

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

◆ $testAccess

ilTestTabsManager::$testAccess
protected

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

Referenced by __construct().

◆ $testOBJ

ilTestTabsManager::$testOBJ
protected

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

Referenced by getTestOBJ(), and setTestOBJ().

◆ $testQuestionSetConfig

ilTestTabsManager::$testQuestionSetConfig
protected

◆ $testSession

ilTestTabsManager::$testSession
protected

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

Referenced by getTestSession(), and setTestSession().

◆ SUBTAB_ID_FIXED_PARTICIPANTS

const ilTestTabsManager::SUBTAB_ID_FIXED_PARTICIPANTS = 'fixedparticipants'

◆ SUBTAB_ID_HIGHSCORE

const ilTestTabsManager::SUBTAB_ID_HIGHSCORE = 'highscore'

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

Referenced by activateSubTab(), and ilTestResultsGUI\executeCommand().

◆ SUBTAB_ID_LO_RESULTS

const ilTestTabsManager::SUBTAB_ID_LO_RESULTS = 'loresults'

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

Referenced by activateSubTab(), and ilTestResultsGUI\executeCommand().

◆ SUBTAB_ID_MY_RESULTS

const ilTestTabsManager::SUBTAB_ID_MY_RESULTS = 'myresults'

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

Referenced by activateSubTab(), and ilTestResultsGUI\executeCommand().

◆ SUBTAB_ID_MY_SOLUTIONS

const ilTestTabsManager::SUBTAB_ID_MY_SOLUTIONS = 'mysolutions'

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

Referenced by activateSubTab(), and ilTestResultsGUI\executeCommand().

◆ SUBTAB_ID_PARTICIPANTS_RESULTS

const ilTestTabsManager::SUBTAB_ID_PARTICIPANTS_RESULTS = 'participantsresults'

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

Referenced by activateSubTab(), and ilTestResultsGUI\executeCommand().

◆ SUBTAB_ID_QST_LIST_VIEW

◆ SUBTAB_ID_QST_PAGE_VIEW

const ilTestTabsManager::SUBTAB_ID_QST_PAGE_VIEW = 'qst_page_view'

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

Referenced by activateSubTab(), and ilObjTestGUI\executeCommand().

◆ SUBTAB_ID_SKILL_RESULTS

const ilTestTabsManager::SUBTAB_ID_SKILL_RESULTS = 'skillresults'

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

Referenced by activateSubTab(), and ilTestResultsGUI\executeCommand().

◆ 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'

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

Referenced by activateTab(), and ilTestDashboardGUI\executeCommand().

◆ TAB_ID_EXPORT

const ilTestTabsManager::TAB_ID_EXPORT = 'export'

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

Referenced by ilObjTestGUI\executeCommand().

◆ TAB_ID_HISTORY

const ilTestTabsManager::TAB_ID_HISTORY = 'history'

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

Referenced by ilObjTestGUI\historyObject().

◆ TAB_ID_INFOSCREEN

const ilTestTabsManager::TAB_ID_INFOSCREEN = 'info_short'

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

◆ TAB_ID_LEARNING_PROGRESS

const ilTestTabsManager::TAB_ID_LEARNING_PROGRESS = 'learning_progress'

Definition at line 22 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 27 of file class.ilTestTabsManager.php.

Referenced by ilObjTestGUI\executeCommand().

◆ TAB_ID_PERMISSIONS

const ilTestTabsManager::TAB_ID_PERMISSIONS = 'perm_settings'

Definition at line 29 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 16 of file class.ilTestTabsManager.php.

◆ TAB_ID_RESULTS

const ilTestTabsManager::TAB_ID_RESULTS = 'results'

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

Referenced by activateTab(), and ilTestResultsGUI\executeCommand().

◆ TAB_ID_SETTINGS

◆ TAB_ID_STATISTICS

const ilTestTabsManager::TAB_ID_STATISTICS = 'statistics'

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