ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
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: saml.php:7

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

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

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

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

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

+ Here is the call graph for this function:

◆ getDashboardTabTarget()

ilTestTabsManager::getDashboardTabTarget ( )
protected
Returns
string

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

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

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 if (!$this->getTestOBJ()->isRandomTest()) {
770 $this->tabs->addSubTab(
771 self::SUBTAB_ID_QST_PAGE_VIEW,
772 $DIC->language()->txt('questions_per_page_view'),
773 $DIC->ctrl()->getLinkTargetByClass('iltestexpresspageobjectgui', 'showPage')
774 );
775 }
776 include_once "Services/Administration/classes/class.ilSettingsTemplate.php";
778
779 if (!$this->isHiddenTab('questions')) {
780 $this->tabs->addSubTab(
781 self::SUBTAB_ID_QST_LIST_VIEW,
782 $DIC->language()->txt('edit_test_questions'),
783 $DIC->ctrl()->getLinkTargetByClass('ilObjTestGUI', 'questions')
784 );
785 }
786
787 // print view subtab
788 if (!$this->getTestOBJ()->isRandomTest()) {
789 $this->tabs->addSubTabTarget(
790 "print_view",
791 $DIC->ctrl()->getLinkTargetByClass('ilObjTestGUI', 'print'),
792 "print",
793 "",
794 "",
795 $DIC->ctrl()->getCmd() == 'print'
796 );
797 $this->tabs->addSubTabTarget(
798 'review_view',
799 $DIC->ctrl()->getLinkTargetByClass('ilObjTestGUI', 'review'),
800 'review',
801 '',
802 '',
803 $DIC->ctrl()->getCmd() == 'review'
804 );
805 }
806 }
Settings template application class.
$template

References $DIC, $template, 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 1081 of file class.ilTestTabsManager.php.

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

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

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

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

+ Here is the call graph for this function:

◆ getSettingsSubTabs()

ilTestTabsManager::getSettingsSubTabs ( )

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

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

References $DIC, ilCertificate\isActive(), 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 808 of file class.ilTestTabsManager.php.

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

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
278 $this->getTestOBJ()->getTemplate(),
280 );
281
282 $this->setHiddenTabs($template->getHiddenTabs());
283 }
284 }

References $template, 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'
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 905 of file class.ilTestTabsManager.php.

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

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

1056 {
1057 if (!$this->needsMyResultsSubTab()) {
1058 return false;
1059 }
1060
1061 return $this->getTestOBJ()->getHighscoreEnabled();
1062 }

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

1028 {
1029 if (!$this->needsMyResultsSubTab()) {
1030 return false;
1031 }
1032
1033 return $this->objectiveParent->isObjectiveOrientedPresentationRequired();
1034 }

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

1020 {
1021 return $this->getTestSession()->reportableResultsAvailable($this->getTestOBJ());
1022 }

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

1077 {
1078 return $this->getTestOBJ()->canShowSolutionPrintview($this->getTestSession()->getUserId());
1079 }

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

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

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

+ Here is the caller graph for this function:

◆ needsResultsTab()

ilTestTabsManager::needsResultsTab ( )
protected
Returns
bool

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

986 {
987 return $this->needsParticipantsResultsSubTab() || $this->testOBJ->isScoreReportingEnabled() || $this->needsMySolutionsSubTab();
988 }

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

1068 {
1069 if (!$this->needsMyResultsSubTab()) {
1070 return false;
1071 }
1072
1073 return $this->getTestOBJ()->isSkillServiceToBeConsidered();
1074 }

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

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

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 'ilTestExpresspageObjectGUI',
512 'showPage'
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.
$target
Definition: test.php:19

References $_GET, $DIC, $name, $target, 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'

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

Referenced by ilTestScoringGUI\executeCommand().

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