19declare(strict_types=1);
56 private readonly HTTP
$http,
59 private readonly
Factory $ui_factory,
60 private readonly
Renderer $ui_renderer,
69 $this->tpl->setOnScreenMessage(
'failure', $this->
lng->txt(
"no_permission"),
true);
70 $this->
ctrl->setParameterByClass(ilObjTestGUI::class,
'ref_id', $this->ref_id);
71 $this->
ctrl->redirectByClass(ilObjTestGUI::class);
74 $nextClass = $this->
ctrl->getNextClass();
77 case 'ilassquestionskillassignmentsgui':
78 $this->tabs_manager->getQuestionsSubTabs();
79 $this->tabs_manager->activateTab(TabsManager::TAB_ID_QUESTIONS);
80 $this->tabs_manager->activateSubTab(TabsManager::SETTINGS_SUBTAB_ID_ASSIGN_SKILLS_TO_QUESTIONS);
82 $questionContainerId = $this->test_obj->getId();
85 $questionList->setParentObjId($questionContainerId);
87 $questionList->load();
95 $this->request_data_collector,
96 $this->skill_usage_service,
106 $gui->setQuestionContainerId($questionContainerId);
107 $gui->setQuestionList($questionList);
109 if ($this->test_obj->isFixedTest()) {
110 $gui->setQuestionOrderSequence($this->test_obj->getQuestions());
115 $this->
ctrl->forwardCommand($gui);
119 case 'iltestskilllevelthresholdsgui':
120 $this->tabs_manager->getSettingsSubTabs();
121 $this->tabs_manager->activateTab(TabsManager::TAB_ID_SETTINGS);
122 $this->tabs_manager->activateSubTab(TabsManager::SETTINGS_SUBTAB_ID_ASSIGN_SKILL_TRESHOLDS);
129 $this->request_data_collector,
130 $this->test_obj->getTestId()
132 $gui->setQuestionAssignmentColumnsEnabled(!$this->test_obj->isRandomTest());
133 $gui->setQuestionContainerId($this->test_obj->getId());
134 $this->
ctrl->forwardCommand($gui);
141 if (!$this->test_obj->isFixedTest()) {
145 if ($this->test_obj->participantDataExist()) {
154 if (!$this->test_obj->isSkillServiceEnabled()) {
162 if (!$this->
access->checkAccess(
'write',
'', $this->ref_id)) {
171 if ($this->test_obj->isRandomTest()) {
185 $this->component_repository,
187 $this->questionrepository
190 $question_set_config = $question_set_config_factory->getQuestionSetConfig();
192 if ($this->test_obj->isRandomTest()) {
193 $testMode = $this->
lng->txt(
'tst_question_set_type_random');
194 $poolLinks = $question_set_config->getCommaSeparatedSourceQuestionPoolLinks();
196 return sprintf($this->
lng->txt(
'tst_qst_skl_cfg_in_pool_hint_rndquestset'), $testMode, $poolLinks);
Builds a Color from either hex- or rgb values.
const QUESTION_INSTANCE_TYPE_DUPLICATES
static isSkillManagementGloballyActivated()
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
__construct(private ilCtrlInterface $ctrl, private ilAccessHandler $access, private TabsManager $tabs_manager, private ilGlobalTemplateInterface $tpl, private ilLanguage $lng, private Refinery $refinery, private ilDBInterface $db, private TestLogger $logger, private ilTree $tree, private ilComponentRepository $component_repository, private ilObjTest $test_obj, private GeneralQuestionPropertiesRepository $questionrepository, private RequestDataCollector $request_data_collector, private readonly HTTP $http, private readonly ilToolbarGUI $toolbar, private readonly SkillUsageService $skill_usage_service, private readonly Factory $ui_factory, private readonly Renderer $ui_renderer, private readonly ilTabsGUI $tabs, private int $ref_id)
buildAssignmentConfigurationInPoolHintMessage()
getRequiredQuestionInstanceTypeFilter()
isAssignmentEditingRequired()
Tree class data representation in hierachical trees using the Nested Set Model with Gaps by Joe Celco...
This is how the factory for UI elements looks.
An entity that renders components to a string output.
Interface ilAccessHandler This interface combines all available interfaces which can be called via gl...
Readable part of repository interface to ilComponentDataDB.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static http()
Fetches the global http state from ILIAS.