ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
ilTestScoringGUI Class Reference

Scoring class for tests. More...

+ Inheritance diagram for ilTestScoringGUI:
+ Collaboration diagram for ilTestScoringGUI:

Public Member Functions

 __construct (ilObjTest $a_object)
 ilTestScoringGUI constructor More...
 
 executeCommand ()
 execute command More...
 
- Public Member Functions inherited from ilTestServiceGUI
 isContextResultPresentation ()
 
 setContextResultPresentation ($contextResultPresentation)
 
 __construct (ilObjTest $a_object)
 The constructor takes the test object reference as parameter. More...
 
 setParticipantData ($participantData)
 
 getParticipantData ()
 
 getPassOverviewTableData (ilTestSession $testSession, $passes, $withResults)
 
 setObjectiveOrientedContainer (ilTestObjectiveOrientedContainer $objectiveOrientedContainer)
 
 getObjectiveOrientedContainer ()
 
 executeCommand ()
 execute command More...
 
 getCommand ($cmd)
 Retrieves the ilCtrl command. More...
 
 buildPassOverviewTableGUI ($targetGUI, $targetCmd='')
 
 getPassListOfAnswers (&$result_array, $active_id, $pass, $show_solutions=false, $only_answered_questions=false, $show_question_only=false, $show_reached_points=false, $anchorNav=false, ilTestQuestionRelatedObjectivesList $objectivesList=null, ilTestResultHeaderLabelBuilder $testResultHeaderLabelBuilder=null)
 Returns the list of answers of a users test pass. More...
 
 getPassListOfAnswersWithScoring (&$result_array, $active_id, $pass, $show_solutions=false)
 Returns the list of answers of a users test pass and offers a scoring option. More...
 
 getResultsSignature ()
 Returns HTML code for a signature field. More...
 
 getAdditionalUsrDataHtmlAndPopulateWindowTitle ($testSession, $active_id, $overwrite_anonymity=false)
 Returns the user data for a test results output. More...
 
 getCorrectSolutionOutput ($question_id, $active_id, $pass, ilTestQuestionRelatedObjectivesList $objectivesList=null)
 Returns an output of the solution to an answer compared to the correct solution. More...
 
 getResultsOfUserOutput ($testSession, $active_id, $pass, $targetGUI, $show_pass_details=true, $show_answers=true, $show_question_only=false, $show_reached_points=false)
 Output of the pass overview for a test called by a test participant. More...
 
 getResultsHeadUserAndPass ($active_id, $pass)
 Returns the user and pass data for a test results output. More...
 
 getQuestionResultForTestUsers ($question_id, $test_id)
 Creates a HTML representation for the results of a given question in a test. More...
 
 populatePassFinishDate ($tpl, $passFinishDate)
 

Data Fields

const PART_FILTER_ACTIVE_ONLY = 1
 
const PART_FILTER_INACTIVE_ONLY = 2
 
const PART_FILTER_ALL_USERS = 3
 
const PART_FILTER_MANSCORING_DONE = 4
 
const PART_FILTER_MANSCORING_NONE = 5
 
- Data Fields inherited from ilTestServiceGUI
 $object = null
 
 $service = null
 
 $lng
 
 $tpl
 
 $ctrl
 
 $ilias
 
 $tree
 
 $ref_id
 

Private Member Functions

 fetchActiveIdParameter ()
 
 fetchPassParameter ($activeId)
 
 showManScoringParticipantsTable ()
 
 applyManScoringParticipantsFilter ()
 
 resetManScoringParticipantsFilter ()
 
 showManScoringParticipantScreen (ilPropertyFormGUI $form=null)
 
 saveManScoringParticipantScreen ($redirect=true)
 
 saveNextManScoringParticipantScreen ()
 
 saveReturnManScoringParticipantScreen ()
 
 buildManScoringParticipantForm ($questionGuiList, $activeId, $pass, $initValues=false)
 
 sendManScoringParticipantNotification ()
 
 buildManScoringParticipantsTable ($withData=false)
 

Additional Inherited Members

- Protected Member Functions inherited from ilTestServiceGUI
 handleTabs ($activeTabId)
 
 isPdfDeliveryRequest ()
 
 getPassDetailsOverviewTableGUI ($result_array, $active_id, $pass, $targetGUI, $targetCMD, $questionDetailsCMD, $questionAnchorNav, ilTestQuestionRelatedObjectivesList $objectivesList=null, $multipleObjectivesInvolved=true)
 
 buildPassDetailsOverviewTableGUI ($targetGUI, $targetCMD)
 
 isGradingMessageRequired ()
 
 getGradingMessageBuilder ($activeId)
 
 buildQuestionRelatedObjectivesList (ilLOTestQuestionAdapter $objectivesAdapter, ilTestQuestionSequence $testSequence)
 
 getFilteredTestResult ($active_id, $pass, $considerHiddenQuestions, $considerOptionalQuestions)
 
 populateContent ($content)
 
 buildUserTestResultsToolbarGUI ()
 
 outCorrectSolutionCmd ()
 
 outCorrectSolution ()
 Creates an output of the solution of an answer compared to the correct solution. More...
 
- Protected Attributes inherited from ilTestServiceGUI
 $db
 
 $tabs
 
 $objCache
 
 $testSessionFactory = null
 
 $testSequenceFactory = null
 
 $participantData
 

Detailed Description

Scoring class for tests.

Author
Helmut Schottmüller helmu.nosp@m.t.sc.nosp@m.hottm.nosp@m.uell.nosp@m.er@ma.nosp@m.c.co.nosp@m.m
Björn Heyser bheys.nosp@m.er@d.nosp@m.ataba.nosp@m.y.de
Version
$Id$

Definition at line 17 of file class.ilTestScoringGUI.php.

Constructor & Destructor Documentation

◆ __construct()

ilTestScoringGUI::__construct ( ilObjTest  $a_object)

ilTestScoringGUI constructor

The constructor takes the test object reference as parameter

Parameters
object$a_objectAssociated ilObjTest class @access public

Reimplemented from ilTestServiceGUI.

Reimplemented in ilTestScoringByQuestionsGUI.

Definition at line 34 of file class.ilTestScoringGUI.php.

35 {
36 parent::__construct($a_object);
37 }

Member Function Documentation

◆ applyManScoringParticipantsFilter()

ilTestScoringGUI::applyManScoringParticipantsFilter ( )
private

Definition at line 134 of file class.ilTestScoringGUI.php.

135 {
137
138 $table->resetOffset();
139 $table->writeFilterToSession();
140
142 }
buildManScoringParticipantsTable($withData=false)
if(empty($password)) $table
Definition: pwgen.php:24

References $table, buildManScoringParticipantsTable(), and showManScoringParticipantsTable().

+ Here is the call graph for this function:

◆ buildManScoringParticipantForm()

ilTestScoringGUI::buildManScoringParticipantForm (   $questionGuiList,
  $activeId,
  $pass,
  $initValues = false 
)
private

Definition at line 350 of file class.ilTestScoringGUI.php.

351 {
352 global $ilCtrl, $lng;
353
354 require_once 'Services/Form/classes/class.ilPropertyFormGUI.php';
355 require_once 'Services/Form/classes/class.ilFormSectionHeaderGUI.php';
356 require_once 'Services/Form/classes/class.ilCustomInputGUI.php';
357 require_once 'Services/Form/classes/class.ilCheckboxInputGUI.php';
358 require_once 'Services/Form/classes/class.ilTextInputGUI.php';
359 require_once 'Services/Form/classes/class.ilTextAreaInputGUI.php';
360
361 $ilCtrl->setParameter($this, 'active_id', $activeId);
362 $ilCtrl->setParameter($this, 'pass', $pass);
363
364 $form = new ilPropertyFormGUI();
365 $form->setFormAction($ilCtrl->getFormAction($this));
366
367 $form->setTitle(sprintf($lng->txt('manscoring_results_pass'), $pass + 1));
368 $form->setTableWidth('100%');
369
370 foreach ($questionGuiList as $questionId => $questionGUI) {
371 $questionHeader = sprintf($lng->txt('tst_manscoring_question_section_header'), $questionGUI->object->getTitle());
372 $questionSolution = $questionGUI->getSolutionOutput($activeId, $pass, false, false, true, false, false, true);
373 $bestSolution = $questionGUI->object->getSuggestedSolutionOutput();
374
375 $sect = new ilFormSectionHeaderGUI();
376 $sect->setTitle($questionHeader . ' [' . $this->lng->txt('question_id_short') . ': ' . $questionGUI->object->getId() . ']');
377 $form->addItem($sect);
378
379 $cust = new ilCustomInputGUI($lng->txt('tst_manscoring_input_question_and_user_solution'));
380 $cust->setHtml($questionSolution);
381 $form->addItem($cust);
382
383 $text = new ilTextInputGUI($lng->txt('tst_change_points_for_question'), "question__{$questionId}__points");
384 if ($initValues) {
385 $text->setValue(assQuestion::_getReachedPoints($activeId, $questionId, $pass));
386 }
387 $form->addItem($text);
388
389 $nonedit = new ilNonEditableValueGUI($lng->txt('tst_manscoring_input_max_points_for_question'), "question__{$questionId}__maxpoints");
390 if ($initValues) {
391 $nonedit->setValue(assQuestion::_getMaximumPoints($questionId));
392 }
393 $form->addItem($nonedit);
394
395 $area = new ilTextAreaInputGUI($lng->txt('set_manual_feedback'), "question__{$questionId}__feedback");
396 $area->setUseRTE(true);
397 if ($initValues) {
398 $area->setValue($this->object->getManualFeedback($activeId, $questionId, $pass));
399 }
400 $form->addItem($area);
401
402 if (strlen(trim($bestSolution))) {
403 $cust = new ilCustomInputGUI($lng->txt('tst_show_solution_suggested'));
404 $cust->setHtml($bestSolution);
405 $form->addItem($cust);
406 }
407 }
408
409 $sect = new ilFormSectionHeaderGUI();
410 $sect->setTitle($lng->txt('tst_participant'));
411 $form->addItem($sect);
412
413 $check = new ilCheckboxInputGUI($lng->txt('set_manscoring_done'), 'manscoring_done');
414 if ($initValues && ilTestService::isManScoringDone($activeId)) {
415 $check->setChecked(true);
416 }
417 $form->addItem($check);
418
419 $check = new ilCheckboxInputGUI($lng->txt('tst_manscoring_user_notification'), 'manscoring_notify');
420 $form->addItem($check);
421
422 $form->addCommandButton('saveManScoringParticipantScreen', $lng->txt('save'));
423 $form->addCommandButton('saveReturnManScoringParticipantScreen', $lng->txt('save_return'));
424 $form->addCommandButton('saveNextManScoringParticipantScreen', $lng->txt('save_and_next'));
425
426 return $form;
427 }
sprintf('%.4f', $callTime)
static _getReachedPoints($active_id, $question_id, $pass=null)
Returns the points, a learner has reached answering the question.
static _getMaximumPoints($question_id)
Returns the maximum points, a learner can reach answering the question.
This class represents a checkbox property in a property form.
This class represents a custom property in a property form.
This class represents a section header in a property form.
This class represents a non editable value in a property form.
This class represents a property form user interface.
static isManScoringDone($activeId)
reads the flag wether manscoring is done for the given test active or not from the global settings (s...
This class represents a text area property in a property form.
This class represents a text property in a property form.
global $ilCtrl
Definition: ilias.php:18
if(isset($_POST['submit'])) $form
$text
Definition: errorreport.php:18

References $form, $ilCtrl, ilTestServiceGUI\$lng, $pass, $text, assQuestion\_getMaximumPoints(), assQuestion\_getReachedPoints(), ilTestService\isManScoringDone(), and sprintf.

Referenced by saveManScoringParticipantScreen(), and showManScoringParticipantScreen().

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

◆ buildManScoringParticipantsTable()

ilTestScoringGUI::buildManScoringParticipantsTable (   $withData = false)
private
Returns
ilTestManScoringParticipantsTableGUI

Definition at line 436 of file class.ilTestScoringGUI.php.

437 {
438 require_once 'Modules/Test/classes/tables/class.ilTestManScoringParticipantsTableGUI.php';
440
441 if ($withData) {
442 $participantStatusFilterValue = $table->getFilterItemByPostVar('participant_status')->getValue();
443 $table->setData($this->object->getTestParticipantsForManualScoring($participantStatusFilterValue));
444 }
445
446 return $table;
447 }

References $table.

Referenced by applyManScoringParticipantsFilter(), resetManScoringParticipantsFilter(), saveNextManScoringParticipantScreen(), and showManScoringParticipantsTable().

+ Here is the caller graph for this function:

◆ executeCommand()

ilTestScoringGUI::executeCommand ( )

execute command

Reimplemented from ilTestServiceGUI.

Definition at line 90 of file class.ilTestScoringGUI.php.

91 {
92 global $ilAccess;
93
94 if (!$ilAccess->checkAccess("write", "", $this->ref_id)) {
95 // allow only write access
96 ilUtil::sendFailure($this->lng->txt("cannot_edit_test"), true);
97 $this->ctrl->redirectByClass("ilobjtestgui", "infoScreen");
98 }
99
100 require_once 'Modules/Test/classes/class.ilObjAssessmentFolder.php';
102 // allow only if at least one question type is marked for manual scoring
103 ilUtil::sendFailure($this->lng->txt("manscoring_not_allowed"), true);
104 $this->ctrl->redirectByClass("ilobjtestgui", "infoScreen");
105 }
106
107 $cmd = $this->ctrl->getCmd();
108 $next_class = $this->ctrl->getNextClass($this);
109
110 if (strlen($cmd) == 0) {
111 $this->ctrl->redirect($this, "manscoring");
112 }
113
114 $cmd = $this->getCommand($cmd);
115 $this->buildSubTabs('man_scoring');
116 switch ($next_class) {
117 default:
118 $ret =&$this->$cmd();
119 break;
120 }
121
122 return $ret;
123 }
static _mananuallyScoreableQuestionTypesExists()
Returns the fact wether manually scoreable question types exist or not.
getCommand($cmd)
Retrieves the ilCtrl command.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
$ret
Definition: parser.php:6

References $ret, ilObjAssessmentFolder\_mananuallyScoreableQuestionTypesExists(), ilTestServiceGUI\getCommand(), and ilUtil\sendFailure().

+ Here is the call graph for this function:

◆ fetchActiveIdParameter()

ilTestScoringGUI::fetchActiveIdParameter ( )
private

Definition at line 54 of file class.ilTestScoringGUI.php.

55 {
56 global $ilCtrl;
57
58 // fetch active_id
59
60 if (!isset($_GET['active_id']) || !(int) $_GET['active_id']) {
61 // allow only write access
62 ilUtil::sendFailure('no active id given!', true);
63 $ilCtrl->redirectByClass("ilobjtestgui", "infoScreen");
64 } else {
65 $activeId = (int) $_GET['active_id'];
66 }
67
68 return $activeId;
69 }
$_GET["client_id"]

References $_GET, $ilCtrl, and ilUtil\sendFailure().

Referenced by saveManScoringParticipantScreen(), and showManScoringParticipantScreen().

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

◆ fetchPassParameter()

ilTestScoringGUI::fetchPassParameter (   $activeId)
private

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

72 {
73 // fetch pass nr
74
75 $maxPass = $this->object->_getMaxPass($activeId);
76 if (isset($_GET["pass"]) && 0 <= (int) $_GET["pass"] && $maxPass >= (int) $_GET["pass"]) {
77 $pass = $_GET["pass"];
78 } elseif ($this->object->getPassScoring() == SCORE_LAST_PASS) {
79 $pass = $maxPass;
80 } else {
81 $pass = $this->object->_getResultPass($activeId);
82 }
83
84 return $pass;
85 }
const SCORE_LAST_PASS

References $_GET, $pass, and SCORE_LAST_PASS.

Referenced by saveManScoringParticipantScreen(), and showManScoringParticipantScreen().

+ Here is the caller graph for this function:

◆ resetManScoringParticipantsFilter()

ilTestScoringGUI::resetManScoringParticipantsFilter ( )
private

Definition at line 144 of file class.ilTestScoringGUI.php.

145 {
147
148 $table->resetOffset();
149 $table->resetFilter();
150
152 }

References $table, buildManScoringParticipantsTable(), and showManScoringParticipantsTable().

+ Here is the call graph for this function:

◆ saveManScoringParticipantScreen()

ilTestScoringGUI::saveManScoringParticipantScreen (   $redirect = true)
private
Parameters
bool$redirect
Returns
bool Returns a boolean flag, whether or not everything worked fine

Definition at line 195 of file class.ilTestScoringGUI.php.

196 {
197 global $tpl, $ilCtrl, $lng;
198
199 $activeId = $this->fetchActiveIdParameter();
200 $pass = $this->fetchPassParameter($activeId);
201
202 $questionGuiList = $this->service->getManScoringQuestionGuiList($activeId, $pass);
203 $form = $this->buildManScoringParticipantForm($questionGuiList, $activeId, $pass, false);
204
205 $form->setValuesByPost();
206
207 if (!$form->checkInput()) {
208 ilUtil::sendFailure(sprintf($lng->txt('tst_save_manscoring_failed'), $pass + 1));
210 return false;
211 }
212
213 include_once "./Modules/TestQuestionPool/classes/class.assQuestion.php";
214
215 $maxPointsByQuestionId = array();
216 $maxPointsExceeded = false;
217 foreach ($questionGuiList as $questionId => $questionGui) {
218 $reachedPoints = $form->getItemByPostVar("question__{$questionId}__points")->getValue();
219 $maxPoints = assQuestion::_getMaximumPoints($questionId);
220
221 if ($reachedPoints > $maxPoints) {
222 $maxPointsExceeded = true;
223
224 $form->getItemByPostVar("question__{$questionId}__points")->setAlert(sprintf(
225 $lng->txt('tst_manscoring_maxpoints_exceeded_input_alert'),
226 $maxPoints
227 ));
228 }
229
230 $maxPointsByQuestionId[$questionId] = $maxPoints;
231 }
232
233 if ($maxPointsExceeded) {
234 ilUtil::sendFailure(sprintf($lng->txt('tst_save_manscoring_failed'), $pass + 1));
236 return false;
237 }
238
239 include_once "./Services/AdvancedEditing/classes/class.ilObjAdvancedEditing.php";
240
241 foreach ($questionGuiList as $questionId => $questionGui) {
242 $reachedPoints = $form->getItemByPostVar("question__{$questionId}__points")->getValue();
243
245 $activeId,
246 $questionId,
247 $reachedPoints,
248 $maxPointsByQuestionId[$questionId],
249 $pass,
250 1,
251 $this->object->areObligationsEnabled()
252 );
253
254 $feedback = ilUtil::stripSlashes(
255 $form->getItemByPostVar("question__{$questionId}__feedback")->getValue(),
256 false,
258 );
259
260 $this->object->saveManualFeedback($activeId, $questionId, $pass, $feedback);
261
262 $notificationData[$questionId] = array(
263 'points' => $reachedPoints, 'feedback' => $feedback
264 );
265 }
266
267 include_once "./Modules/Test/classes/class.ilObjTestAccess.php";
268 include_once("./Services/Tracking/classes/class.ilLPStatusWrapper.php");
270 $this->object->getId(),
272 );
273
274 $manScoringDone = $form->getItemByPostVar("manscoring_done")->getChecked();
275 ilTestService::setManScoringDone($activeId, $manScoringDone);
276
277 $manScoringNotify = $form->getItemByPostVar("manscoring_notify")->getChecked();
278 if ($manScoringNotify) {
279 require_once 'Modules/Test/classes/notifications/class.ilTestManScoringParticipantNotification.php';
280
281 $notification = new ilTestManScoringParticipantNotification(
282 $this->object->_getUserIdFromActiveId($activeId),
283 $this->object->getRefId()
284 );
285
286 $notification->setAdditionalInformation(array(
287 'test_title' => $this->object->getTitle(),
288 'test_pass' => $pass + 1,
289 'questions_gui_list' => $questionGuiList,
290 'questions_scoring_data' => $notificationData
291 ));
292
293 $notification->send();
294 }
295
296 require_once './Modules/Test/classes/class.ilTestScoring.php';
297 $scorer = new ilTestScoring($this->object);
298 $scorer->setPreserveManualScores(true);
299 $scorer->recalculateSolutions();
300
301 if ($this->object->getAnonymity() == 0) {
303 $name_real_or_anon = $user_name['firstname'] . ' ' . $user_name['lastname'];
304 } else {
305 $name_real_or_anon = $lng->txt('anonymous');
306 }
307 ilUtil::sendSuccess(sprintf($lng->txt('tst_saved_manscoring_successfully'), $pass + 1, $name_real_or_anon), true);
308 if ($redirect == true) {
309 $ilCtrl->redirect($this, 'showManScoringParticipantScreen');
310 } else {
311 return true;
312 }
313 }
static _setReachedPoints($active_id, $question_id, $points, $maxpoints, $pass, $manualscoring, $obligationsEnabled)
Sets the points, a learner has reached answering the question Additionally objective results are upda...
static _updateStatus($a_obj_id, $a_usr_id, $a_obj=null, $a_percentage=false, $a_force_raise=false)
Update status.
static _getUsedHTMLTagsAsString($a_module="")
Returns a string of all allowed HTML tags for text editing.
static _getParticipantId($active_id)
Get user id for active id.
static _lookupName($a_user_id)
lookup user name
buildManScoringParticipantForm($questionGuiList, $activeId, $pass, $initValues=false)
showManScoringParticipantScreen(ilPropertyFormGUI $form=null)
Class ilTestScoring.
static setManScoringDone($activeId, $manScoringDone)
stores the flag wether manscoring is done for the given test active or not within the global settings...
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled

References $form, $ilCtrl, ilTestServiceGUI\$lng, $pass, ilTestServiceGUI\$tpl, assQuestion\_getMaximumPoints(), ilObjTestAccess\_getParticipantId(), ilObjAdvancedEditing\_getUsedHTMLTagsAsString(), ilObjUser\_lookupName(), assQuestion\_setReachedPoints(), ilLPStatusWrapper\_updateStatus(), buildManScoringParticipantForm(), fetchActiveIdParameter(), fetchPassParameter(), ilUtil\sendFailure(), ilUtil\sendSuccess(), ilTestService\setManScoringDone(), showManScoringParticipantScreen(), sprintf, and ilUtil\stripSlashes().

Referenced by saveNextManScoringParticipantScreen(), and saveReturnManScoringParticipantScreen().

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

◆ saveNextManScoringParticipantScreen()

ilTestScoringGUI::saveNextManScoringParticipantScreen ( )
private

Definition at line 315 of file class.ilTestScoringGUI.php.

316 {
317 global $ilCtrl;
318
320
321 if ($this->saveManScoringParticipantScreen(false)) {
322 $participantData = $table->getInternalyOrderedDataValues();
323
324 $nextIndex = null;
325 foreach ($participantData as $index => $participant) {
326 if ($participant['active_id'] == $_GET['active_id']) {
327 $nextIndex = $index + 1;
328 break;
329 }
330 }
331
332 if ($nextIndex && isset($participantData[$nextIndex])) {
333 $ilCtrl->setParameter($this, 'active_id', $participantData[$nextIndex]['active_id']);
334 $ilCtrl->redirect($this, 'showManScoringParticipantScreen');
335 }
336
337 $ilCtrl->redirectByClass("iltestscoringgui", "showManScoringParticipantsTable");
338 }
339 }
saveManScoringParticipantScreen($redirect=true)
$index
Definition: metadata.php:60

References $_GET, $ilCtrl, $index, ilTestServiceGUI\$participantData, $table, buildManScoringParticipantsTable(), and saveManScoringParticipantScreen().

+ Here is the call graph for this function:

◆ saveReturnManScoringParticipantScreen()

ilTestScoringGUI::saveReturnManScoringParticipantScreen ( )
private

Definition at line 341 of file class.ilTestScoringGUI.php.

342 {
343 global $ilCtrl;
344
345 if ($this->saveManScoringParticipantScreen(false)) {
346 $ilCtrl->redirectByClass("iltestscoringgui", "showManScoringParticipantsTable");
347 }
348 }

References $ilCtrl, and saveManScoringParticipantScreen().

+ Here is the call graph for this function:

◆ sendManScoringParticipantNotification()

ilTestScoringGUI::sendManScoringParticipantNotification ( )
private

Definition at line 429 of file class.ilTestScoringGUI.php.

430 {
431 }

◆ showManScoringParticipantScreen()

ilTestScoringGUI::showManScoringParticipantScreen ( ilPropertyFormGUI  $form = null)
private

Definition at line 154 of file class.ilTestScoringGUI.php.

155 {
156 global $tpl, $lng;
157
158 $activeId = $this->fetchActiveIdParameter();
159 $pass = $this->fetchPassParameter($activeId);
160
161 $contentHTML = '';
162
163 // pass overview table
164 require_once 'Modules/Test/classes/tables/class.ilTestPassManualScoringOverviewTableGUI.php';
165 $table = new ilTestPassManualScoringOverviewTableGUI($this, 'showManScoringParticipantScreen');
166
167 $userId = $this->object->_getUserIdFromActiveId($activeId);
168 $userFullname = $this->object->userLookupFullName($userId, false, true);
169 $tableTitle = sprintf($lng->txt('tst_pass_overview_for_participant'), $userFullname);
170 $table->setTitle($tableTitle);
171
172 $passOverviewData = $this->service->getPassOverviewData($activeId);
173 $table->setData($passOverviewData['passes']);
174
175 $contentHTML .= $table->getHTML() . '<br />';
176
177 // pass scoring form
178
179 if ($form === null) {
180 $questionGuiList = $this->service->getManScoringQuestionGuiList($activeId, $pass);
181 $form = $this->buildManScoringParticipantForm($questionGuiList, $activeId, $pass, true);
182 }
183
184 $contentHTML .= $form->getHTML();
185
186 // set content
187
188 $tpl->setContent($contentHTML);
189 }

References $form, ilTestServiceGUI\$lng, $pass, $table, ilTestServiceGUI\$tpl, buildManScoringParticipantForm(), fetchActiveIdParameter(), fetchPassParameter(), and sprintf.

Referenced by saveManScoringParticipantScreen().

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

◆ showManScoringParticipantsTable()

ilTestScoringGUI::showManScoringParticipantsTable ( )
private

Definition at line 125 of file class.ilTestScoringGUI.php.

126 {
127 global $tpl;
128
130
131 $tpl->setContent($table->getHTML());
132 }

References $table, ilTestServiceGUI\$tpl, and buildManScoringParticipantsTable().

Referenced by applyManScoringParticipantsFilter(), and resetManScoringParticipantsFilter().

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

Field Documentation

◆ PART_FILTER_ACTIVE_ONLY

const ilTestScoringGUI::PART_FILTER_ACTIVE_ONLY = 1

◆ PART_FILTER_ALL_USERS

const ilTestScoringGUI::PART_FILTER_ALL_USERS = 3

◆ PART_FILTER_INACTIVE_ONLY

const ilTestScoringGUI::PART_FILTER_INACTIVE_ONLY = 2

◆ PART_FILTER_MANSCORING_DONE

const ilTestScoringGUI::PART_FILTER_MANSCORING_DONE = 4

◆ PART_FILTER_MANSCORING_NONE

const ilTestScoringGUI::PART_FILTER_MANSCORING_NONE = 5

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