ILIAS  trunk Revision v12.0_alpha-1221-g4e438232683
ilTestCorrectionsGUI Class Reference
+ Collaboration diagram for ilTestCorrectionsGUI:

Public Member Functions

 __construct (private readonly ilDBInterface $database, private readonly ilCtrlInterface $ctrl, private readonly ilLanguage $language, private readonly ilTabsGUI $tabs, private readonly ilHelpGUI $help, private readonly UIFactory $ui_factory, private readonly ilGlobalTemplateInterface $main_tpl, private readonly RefineryFactory $refinery, private readonly TestLogger $logger, private readonly RequestDataCollector $testrequest, private readonly ilObjTest $test_obj, private readonly ilObjUser $scorer, private readonly TestResultRepository $test_result_repository,)
 
 executeCommand ()
 
 getRefId ()
 

Protected Member Functions

 showQuestion (?ilPropertyFormGUI $form=null)
 
 buildQuestionCorrectionForm (assQuestionGUI $question_gui)
 
 confirmManualScoringReset ()
 
 saveQuestion ()
 
 showSolution ()
 
 showAnswerStatistic (?array $participant_results=null)
 
 addAnswer ()
 
 addHiddenItemsFromArray (ilConfirmationGUI $gui, $array, $curPath=[])
 
 setCorrectionTabsContext (assQuestionGUI $question_gui, string $active_tab_id)
 
 populatePageTitleAndDescription (assQuestionGUI $question_gui)
 
 checkQuestion ()
 
 getQuestionGUI (int $question_id)
 
 getSolutions (assQuestion $question)
 
 getQuestions ()
 
 supportsAdjustment (\assQuestionGUI $question_object)
 Returns if the given question object support scoring adjustment. More...
 

Private Member Functions

 getSolutionsByParticipantResults (assQuestion $question, array $participant_results)
 

Private Attributes

assQuestionGUI $question_gui = null
 
ilTestAccess $test_access
 

Detailed Description

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

Constructor & Destructor Documentation

◆ __construct()

ilTestCorrectionsGUI::__construct ( private readonly ilDBInterface  $database,
private readonly ilCtrlInterface  $ctrl,
private readonly ilLanguage  $language,
private readonly ilTabsGUI  $tabs,
private readonly ilHelpGUI  $help,
private readonly UIFactory  $ui_factory,
private readonly ilGlobalTemplateInterface  $main_tpl,
private readonly RefineryFactory  $refinery,
private readonly TestLogger  $logger,
private readonly RequestDataCollector  $testrequest,
private readonly ilObjTest  $test_obj,
private readonly ilObjUser  $scorer,
private readonly TestResultRepository  $test_result_repository 
)

Definition at line 42 of file class.ilTestCorrectionsGUI.php.

56 {
57 $question_id = $this->testrequest->getQuestionId();
58 if ($question_id !== 0) {
59 $this->question_gui = $this->getQuestionGUI($question_id);
60 }
61 $this->test_access = new ilTestAccess($test_obj->getRefId());
62 }

References getQuestionGUI().

+ Here is the call graph for this function:

Member Function Documentation

◆ addAnswer()

ilTestCorrectionsGUI::addAnswer ( )
protected

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

271 {
272 $form = (new ilAddAnswerFormBuilder(
273 $this->ui_factory,
274 $this->refinery,
275 $this->language,
276 $this->ctrl
277 ))->buildAddAnswerModal('')
278 ->withRequest($this->testrequest->getRequest());
279
280 $data = $form->getData();
281
282 $question_index = $data['question_index'];
283 $answer_value = $data['answer_value'];
284 $points = $data['points'];
285
286 if (!$points) {
287 $this->main_tpl->setOnScreenMessage('failure', $this->language->txt('err_no_numeric_value'));
288 $this->showAnswerStatistic();
289 return;
290 }
291
292 $question = $this->question_gui->getObject();
293 if ($question->isAddableAnswerOptionValue($question_index, $answer_value)) {
294 $question->addAnswerOptionValue($question_index, $answer_value, $points);
295 $question->saveToDb();
296 }
297
298 $scoring = new TestScoring(
299 $this->test_obj,
300 $this->scorer,
301 $this->database,
302 $this->test_result_repository
303 );
304 $scoring->setPreserveManualScores(true);
305 $scoring->setQuestionId($question_index);
306 $participant_results = $scoring->recalculateSolutions();
307
308 if ($this->logger->isLoggingEnabled()) {
309 $this->logger->logQuestionAdministrationInteraction(
310 $question->toQuestionAdministrationInteraction(
311 $this->logger->getAdditionalInformationGenerator(),
312 $this->test_obj->getRefId(),
314 )
315 );
316 }
317
318 $this->main_tpl->setOnScreenMessage('success', $this->language->txt('saved_successfully'));
319 $this->showAnswerStatistic($participant_results);
320 }
showAnswerStatistic(?array $participant_results=null)

References $data, ILIAS\Repository\ctrl(), ILIAS\Repository\database(), ILIAS\UI\examples\Symbol\Glyph\Language\language(), ILIAS\Repository\logger(), ILIAS\Test\Logging\QUESTION_MODIFIED_IN_CORRECTIONS, ILIAS\Repository\refinery(), and showAnswerStatistic().

+ Here is the call graph for this function:

◆ addHiddenItemsFromArray()

ilTestCorrectionsGUI::addHiddenItemsFromArray ( ilConfirmationGUI  $gui,
  $array,
  $curPath = [] 
)
protected

Definition at line 322 of file class.ilTestCorrectionsGUI.php.

323 {
324 foreach ($array as $name => $value) {
325 if ($name == 'cmd' && !count($curPath)) {
326 continue;
327 }
328
329 if (count($curPath)) {
330 $name = "[{$name}]";
331 }
332
333 if (is_array($value)) {
334 $nextPath = array_merge($curPath, [$name]);
335 $this->addHiddenItemsFromArray($gui, $value, $nextPath);
336 } else {
337 $postVar = implode('', $curPath) . $name;
338 $gui->addHiddenItem($postVar, $value);
339 }
340 }
341 }
addHiddenItem(string $a_post_var, string $a_value)
addHiddenItemsFromArray(ilConfirmationGUI $gui, $array, $curPath=[])

References ilConfirmationGUI\addHiddenItem(), and addHiddenItemsFromArray().

Referenced by addHiddenItemsFromArray(), and confirmManualScoringReset().

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

◆ buildQuestionCorrectionForm()

ilTestCorrectionsGUI::buildQuestionCorrectionForm ( assQuestionGUI  $question_gui)
protected

Definition at line 93 of file class.ilTestCorrectionsGUI.php.

94 {
95 $form = new ilPropertyFormGUI();
96 $form->setFormAction($this->ctrl->getFormAction($this));
97 $form->setId('tst_question_correction');
98
99 $form->setTitle($this->language->txt('tst_corrections_qst_form'));
100
101 $question_gui->populateCorrectionsFormProperties($form);
102
103 $scoring = new TestScoring(
104 $this->test_obj,
105 $this->scorer,
106 $this->database,
107 $this->test_result_repository
108 );
109 $scoring->setQuestionId($question_gui->getObject()->getId());
110
111 if ($scoring->getNumManualScorings()) {
112 $form->addCommandButton('confirmManualScoringReset', $this->language->txt('save'));
113 } else {
114 $form->addCommandButton('saveQuestion', $this->language->txt('save'));
115 }
116
117 return $form;
118 }
populateCorrectionsFormProperties(ilPropertyFormGUI $form)
This class represents a property form user interface.

References $question_gui, ILIAS\Repository\ctrl(), ILIAS\Repository\database(), assQuestionGUI\getObject(), ILIAS\UI\examples\Symbol\Glyph\Language\language(), and assQuestionGUI\populateCorrectionsFormProperties().

Referenced by saveQuestion(), and showQuestion().

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

◆ checkQuestion()

ilTestCorrectionsGUI::checkQuestion ( )
protected

Definition at line 387 of file class.ilTestCorrectionsGUI.php.

387 : bool
388 {
389 if (!$this->test_obj->isTestQuestion($this->question_gui->getObject()->getId())) {
390 return false;
391 }
392
393 if (!$this->supportsAdjustment($this->question_gui)) {
394 return false;
395 }
396
397 return true;
398 }
supportsAdjustment(\assQuestionGUI $question_object)
Returns if the given question object support scoring adjustment.

References supportsAdjustment().

+ Here is the call graph for this function:

◆ confirmManualScoringReset()

ilTestCorrectionsGUI::confirmManualScoringReset ( )
protected

Definition at line 120 of file class.ilTestCorrectionsGUI.php.

121 {
122 $this->setCorrectionTabsContext($this->question_gui, 'question');
123
124 $scoring = new TestScoring(
125 $this->test_obj,
126 $this->scorer,
127 $this->database,
128 $this->test_result_repository
129 );
130 $scoring->setQuestionId($this->question_gui->getObject()->getId());
131
132 $confirmation = sprintf(
133 $this->language->txt('tst_corrections_manscore_reset_warning'),
134 $scoring->getNumManualScorings(),
135 $this->question_gui->getObject()->getTitleForHTMLOutput(),
136 $this->question_gui->getObject()->getId()
137 );
138
139 $gui = new ilConfirmationGUI();
140 $gui->setHeaderText($confirmation);
141 $gui->setFormAction($this->ctrl->getFormAction($this));
142 $gui->setCancel($this->language->txt('cancel'), 'showQuestion');
143 $gui->setConfirm($this->language->txt('confirm'), 'saveQuestion');
144
145 $this->addHiddenItemsFromArray($gui, $this->testrequest->getParsedBody());
146
147 $this->main_tpl->setContent($gui->getHTML());
148 }
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
setCorrectionTabsContext(assQuestionGUI $question_gui, string $active_tab_id)

References addHiddenItemsFromArray(), ILIAS\Repository\ctrl(), ILIAS\Repository\database(), ILIAS\UI\examples\Symbol\Glyph\Language\language(), and setCorrectionTabsContext().

+ Here is the call graph for this function:

◆ executeCommand()

ilTestCorrectionsGUI::executeCommand ( )

Definition at line 64 of file class.ilTestCorrectionsGUI.php.

65 {
66 if (!$this->test_obj->getGlobalSettings()->isAdjustingQuestionsWithResultsAllowed()
67 || !$this->test_access->checkCorrectionsAccess()
68 || $this->question_gui !== null
69 && !$this->checkQuestion()) {
70 ilObjTestGUI::accessViolationRedirect();
71 }
72
73 if ($this->testrequest->isset('removeQid') && (int) $this->testrequest->raw('removeQid')) {
74 $this->confirmQuestionRemoval();
75 return;
76 }
77
78 $this->ctrl->saveParameterByClass(self::class, 'q_id');
79 $command = $this->ctrl->getCmd('showQuestionList');
80 $this->{$command}();
81 }

References ILIAS\Repository\ctrl().

+ Here is the call graph for this function:

◆ getQuestionGUI()

ilTestCorrectionsGUI::getQuestionGUI ( int  $question_id)
protected

Definition at line 405 of file class.ilTestCorrectionsGUI.php.

406 {
407 $question_gui = assQuestion::instantiateQuestionGUI($question_id);
408 if ($question_gui === null) {
409 return null;
410 }
411 $question = $question_gui->getObject();
412 $question->setPoints($question_gui->getObject()->getMaximumPoints());
413 $question_gui->setObject($question);
414 return $question_gui;
415 }
setObject(assQuestion $question)

References $question_gui, assQuestionGUI\getObject(), and assQuestionGUI\setObject().

Referenced by __construct(), and getQuestions().

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

◆ getQuestions()

ilTestCorrectionsGUI::getQuestions ( )
protected

Definition at line 454 of file class.ilTestCorrectionsGUI.php.

454 : array
455 {
456
457 if (!$this->test_obj->getGlobalSettings()->isAdjustingQuestionsWithResultsAllowed()) {
458 return [];
459 }
460
461 return array_reduce(
462 $this->test_obj->getTestQuestions(),
463 function (array $c, array $v): array {
464 $question_gui = $this->getQuestionGUI($v['question_id']);
465
466 if (!$this->supportsAdjustment($question_gui)) {
467 return $c;
468 }
469
470 $c[] = $v;
471 return $c;
472 },
473 []
474 );
475 }
$c
Definition: deliver.php:25

References $c, $question_gui, getQuestionGUI(), and supportsAdjustment().

+ Here is the call graph for this function:

◆ getRefId()

ilTestCorrectionsGUI::getRefId ( )

Definition at line 400 of file class.ilTestCorrectionsGUI.php.

400 : int
401 {
402 return $this->test_obj->getRefId();
403 }

◆ getSolutions()

ilTestCorrectionsGUI::getSolutions ( assQuestion  $question)
protected

Definition at line 417 of file class.ilTestCorrectionsGUI.php.

417 : array
418 {
419 $solution_rows = [];
420
421 foreach (array_keys($this->test_obj->getParticipants()) as $active_id) {
422 $passes_selector = new ilTestPassesSelector($this->database, $this->test_obj);
423 $passes_selector->setActiveId($active_id);
424 $passes_selector->loadLastFinishedPass();
425
426 foreach ($passes_selector->getClosedPasses() as $pass) {
427 foreach ($question->getSolutionValues($active_id, $pass) as $row) {
428 $solution_rows[] = $row;
429 }
430 }
431 }
432
433 return $solution_rows;
434 }
getSolutionValues(int $active_id, ?int $pass=null, bool $authorized=true)
Loads solutions of a given user from the database an returns it.

References ILIAS\Repository\database(), and assQuestion\getSolutionValues().

Referenced by showAnswerStatistic().

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

◆ getSolutionsByParticipantResults()

ilTestCorrectionsGUI::getSolutionsByParticipantResults ( assQuestion  $question,
array  $participant_results 
)
private
Parameters
list<ilTestEvaluationUserData>$participant_results

Definition at line 439 of file class.ilTestCorrectionsGUI.php.

439 : array
440 {
441 $solutions = [];
442
443 foreach ($participant_results as $active_id => $result) {
444 foreach ($result->getPasses() as $pass) {
445 foreach ($question->getSolutionValues($active_id, $pass->getPass()) as $row) {
446 $solutions[] = $row;
447 }
448 }
449 }
450
451 return $solutions;
452 }

References assQuestion\getSolutionValues().

Referenced by showAnswerStatistic().

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

◆ populatePageTitleAndDescription()

ilTestCorrectionsGUI::populatePageTitleAndDescription ( assQuestionGUI  $question_gui)
protected

Definition at line 381 of file class.ilTestCorrectionsGUI.php.

381 : void
382 {
383 $this->main_tpl->setTitle($question_gui->getObject()->getTitleForHTMLOutput());
384 $this->main_tpl->setDescription($question_gui->outQuestionType());
385 }

References $question_gui, assQuestionGUI\getObject(), and assQuestionGUI\outQuestionType().

Referenced by showAnswerStatistic(), showQuestion(), and showSolution().

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

◆ saveQuestion()

ilTestCorrectionsGUI::saveQuestion ( )
protected

Definition at line 150 of file class.ilTestCorrectionsGUI.php.

151 {
154 $form->setValuesByPost();
155
156 if (!$form->checkInput()) {
158
159 $this->showQuestion($form);
160 return;
161 }
162
164 $question = $question_gui->getObject();
165 $question->setPoints($question_gui->getObject()->getMaximumPoints());
166 $question_gui->setObject($question);
167 $question_gui->getObject()->saveToDb();
168
169 $scoring = new TestScoring(
170 $this->test_obj,
171 $this->scorer,
172 $this->database,
173 $this->test_result_repository
174 );
175 $scoring->setPreserveManualScores(false);
176 $scoring->setQuestionId($question_gui->getObject()->getId());
177 $scoring->recalculateSolutions();
178
179 if ($this->logger->isLoggingEnabled()) {
180 $this->logger->logQuestionAdministrationInteraction(
181 $question_gui->getObject()->toQuestionAdministrationInteraction(
182 $this->logger->getAdditionalInformationGenerator(),
183 $this->test_obj->getRefId(),
185 )
186 );
187 }
188
189 $this->main_tpl->setOnScreenMessage('success', $this->language->txt('saved_successfully'), true);
190 $this->ctrl->redirectByClass([ilObjTestGUI::class, self::class], 'showQuestion');
191 }
saveCorrectionsFormProperties(ilPropertyFormGUI $form)
prepareReprintableCorrectionsForm(ilPropertyFormGUI $form)
buildQuestionCorrectionForm(assQuestionGUI $question_gui)
showQuestion(?ilPropertyFormGUI $form=null)

References $question_gui, buildQuestionCorrectionForm(), ILIAS\Repository\ctrl(), ILIAS\Repository\database(), assQuestionGUI\getObject(), ILIAS\UI\examples\Symbol\Glyph\Language\language(), ILIAS\Repository\logger(), assQuestionGUI\prepareReprintableCorrectionsForm(), ILIAS\Test\Logging\QUESTION_MODIFIED_IN_CORRECTIONS, assQuestionGUI\saveCorrectionsFormProperties(), assQuestionGUI\setObject(), and showQuestion().

+ Here is the call graph for this function:

◆ setCorrectionTabsContext()

ilTestCorrectionsGUI::setCorrectionTabsContext ( assQuestionGUI  $question_gui,
string  $active_tab_id 
)
protected

Definition at line 343 of file class.ilTestCorrectionsGUI.php.

343 : void
344 {
345 $this->tabs->clearTargets();
346 $this->tabs->clearSubTabs();
347
348 $this->help->setScreenIdComponent('tst');
349 $this->help->setScreenId('scoringadjust');
350 $this->help->setSubScreenId($active_tab_id);
351
352 $this->ctrl->setParameterByClass(self::class, 'q_id', $question_gui->getObject()->getId());
353 $this->tabs->addTab(
354 'question',
355 $this->language->txt('tst_corrections_tab_question'),
356 $this->ctrl->getLinkTargetByClass([ilObjTestGUI::class, self::class], 'showQuestion')
357 );
358
359 $this->tabs->addTab(
360 'solution',
361 $this->language->txt('tst_corrections_tab_solution'),
362 $this->ctrl->getLinkTargetByClass([ilObjTestGUI::class, self::class], 'showSolution')
363 );
364
366 $this->tabs->addTab(
367 'answers',
368 $this->language->txt('tst_corrections_tab_statistics'),
369 $this->ctrl->getLinkTargetByClass([ilObjTestGUI::class, self::class], 'showAnswerStatistic')
370 );
371 }
372
373 $this->tabs->setBackTarget(
374 $this->language->txt('back'),
375 $this->ctrl->getLinkTargetByClass(ilObjTestGUI::class, 'showQuestions')
376 );
377
378 $this->tabs->activateTab($active_tab_id);
379 }

References $question_gui, ILIAS\Repository\ctrl(), assQuestionGUI\getObject(), ILIAS\Repository\help(), assQuestionGUI\isAnswerFrequencyStatisticSupported(), ILIAS\UI\examples\Symbol\Glyph\Language\language(), and ILIAS\Repository\tabs().

Referenced by confirmManualScoringReset(), showAnswerStatistic(), showQuestion(), and showSolution().

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

◆ showAnswerStatistic()

ilTestCorrectionsGUI::showAnswerStatistic ( ?array  $participant_results = null)
protected
Parameters
null|list<ilTestEvaluationUserData>$participant_results

Definition at line 245 of file class.ilTestCorrectionsGUI.php.

245 : void
246 {
247 $solutions = $participant_results
248 ? $this->getSolutionsByParticipantResults($this->question_gui->getObject(), $participant_results)
249 : $this->getSolutions($this->question_gui->getObject());
250
251 $this->setCorrectionTabsContext($this->question_gui, 'answers');
252
253 $tablesHtml = '';
254
255 foreach ($this->question_gui->getSubQuestionsIndex() as $subQuestionIndex) {
256 $table = $this->question_gui->getAnswerFrequencyTableGUI(
257 $this,
258 'showAnswerStatistic',
259 $solutions,
260 $subQuestionIndex
261 );
262
263 $tablesHtml .= $table->getHTML() . $table->getAdditionalHtml();
264 }
265
266 $this->populatePageTitleAndDescription($this->question_gui);
267 $this->main_tpl->setContent($tablesHtml);
268 }
getSolutionsByParticipantResults(assQuestion $question, array $participant_results)
getSolutions(assQuestion $question)
populatePageTitleAndDescription(assQuestionGUI $question_gui)

References getSolutions(), getSolutionsByParticipantResults(), populatePageTitleAndDescription(), and setCorrectionTabsContext().

Referenced by addAnswer().

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

◆ showQuestion()

ilTestCorrectionsGUI::showQuestion ( ?ilPropertyFormGUI  $form = null)
protected

Definition at line 83 of file class.ilTestCorrectionsGUI.php.

84 {
85 $this->setCorrectionTabsContext($this->question_gui, 'question');
86
87 $form ??= $this->buildQuestionCorrectionForm($this->question_gui);
88
89 $this->populatePageTitleAndDescription($this->question_gui);
90 $this->main_tpl->setContent($form->getHTML());
91 }

References buildQuestionCorrectionForm(), populatePageTitleAndDescription(), and setCorrectionTabsContext().

Referenced by saveQuestion().

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

◆ showSolution()

ilTestCorrectionsGUI::showSolution ( )
protected

Definition at line 193 of file class.ilTestCorrectionsGUI.php.

194 {
196 $page_gui = new ilAssQuestionPageGUI($question_gui->getObject()->getId());
197 $page_gui->setFileDownloadLink(
198 $this->ctrl->getLinkTargetByClass(ilObjTestGUI::class, 'downloadFile')
199 );
200 $page_gui->setRenderPageContainer(false);
201 $page_gui->setEditPreview(true);
202 $page_gui->setEnabledTabs(false);
203
204 $solution_html = $question_gui->getSolutionOutput(
205 0,
206 null,
207 false,
208 false,
209 true,
210 false,
211 true,
212 false,
213 true
214 );
215
216 $page_gui->setQuestionHTML([$question_gui->getObject()->getId() => $solution_html]);
217 $page_gui->setPresentationTitle($question_gui->getObject()->getTitleForHTMLOutput());
218
219 $tpl = new ilTemplate('tpl.tst_corrections_solution_presentation.html', true, true, 'components/ILIAS/Test');
220 $tpl->setVariable('SOLUTION_PRESENTATION', $page_gui->preview());
221
222 $this->setCorrectionTabsContext($question_gui, 'solution');
224
225 $this->main_tpl->setContent($tpl->get());
226
227 $this->main_tpl->setCurrentBlock("ContentStyle");
228 $this->main_tpl->setVariable(
229 "LOCATION_CONTENT_STYLESHEET",
231 );
232 $this->main_tpl->parseCurrentBlock();
233
234 $this->main_tpl->setCurrentBlock("SyntaxStyle");
235 $this->main_tpl->setVariable(
236 "LOCATION_SYNTAX_STYLESHEET",
238 );
239 $this->main_tpl->parseCurrentBlock();
240 }
getSolutionOutput(int $active_id, ?int $pass=null, bool $graphical_output=false, bool $result_output=false, bool $show_question_only=true, bool $show_feedback=false, bool $show_correct_solution=false, bool $show_manual_scoring=false, bool $show_question_text=true, bool $show_inline_feedback=true)
Question page GUI class.
static getContentStylePath(int $a_style_id, bool $add_random=true, bool $add_token=true)
get content style path static (to avoid full reading)
special template class to simplify handling of ITX/PEAR

References $question_gui, ILIAS\Repository\ctrl(), ilObjStyleSheet\getContentStylePath(), assQuestionGUI\getObject(), assQuestionGUI\getSolutionOutput(), ilObjStyleSheet\getSyntaxStylePath(), populatePageTitleAndDescription(), and setCorrectionTabsContext().

+ Here is the call graph for this function:

◆ supportsAdjustment()

ilTestCorrectionsGUI::supportsAdjustment ( \assQuestionGUI  $question_object)
protected

Returns if the given question object support scoring adjustment.

Parameters
$question_objectassQuestionGUI
Returns
bool True, if relevant interfaces are implemented to support scoring adjustment.

Definition at line 484 of file class.ilTestCorrectionsGUI.php.

484 : bool
485 {
486 return ($question_object instanceof ilGuiQuestionScoringAdjustable
487 || $question_object instanceof ilGuiAnswerScoringAdjustable)
488 && ($question_object->getObject() instanceof ilObjQuestionScoringAdjustable
489 || $question_object->getObject() instanceof ilObjAnswerScoringAdjustable);
490 }
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...

References assQuestionGUI\getObject().

Referenced by checkQuestion(), and getQuestions().

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

Field Documentation

◆ $question_gui

◆ $test_access

ilTestAccess ilTestCorrectionsGUI::$test_access
private

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


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