37 $this->preserve_manual_scores =
false;
39 require_once
'./Modules/Test/classes/class.ilObjTestGUI.php';
61 $participants = $this->test->getCompleteEvaluationData(
false)->getParticipants();
62 if (is_array($participants))
64 require_once
"./Modules/TestQuestionPool/classes/class.assQuestion.php";
65 foreach ($participants as $active_id => $userdata)
67 if (is_object($userdata) && is_array($userdata->getPasses()))
82 require_once
'./Modules/Test/classes/class.ilTestEvaluationGUI.php';
83 require_once
'./Modules/Test/classes/class.ilTestPDFGenerator.php';
84 require_once
'./Modules/Test/classes/class.ilTestArchiver.php';
86 $passes = $userdata->getPasses();
87 foreach ($passes as
$pass => $passdata)
89 if (is_object( $passdata ))
92 if ($this->test->getEnableArchiving())
96 $result_array = $this->test->getTestResult($active_id,
$pass);
97 $overview = $test_evaluation_gui->getPassListOfAnswers($result_array, $active_id,
$pass,
true,
false,
false,
true);
115 $questions = $passdata->getAnsweredQuestions();
116 if (is_array( $questions ))
118 foreach ($questions as $questiondata)
120 $question_gui = $this->test->createQuestionGUI(
"", $questiondata[
'id'] );
121 $this->recalculateQuestionScore( $question_gui, $active_id,
$pass, $questiondata );
133 public function recalculateQuestionScore($question_gui, $active_id,
$pass, $questiondata)
136 if (is_object( $question_gui ))
138 $reached = $question_gui->object->calculateReachedPoints( $active_id,
$pass );
139 $actual_reached = $question_gui->object->adjustReachedPointsByScoringOptions($reached, $active_id,
$pass);
141 if ($this->preserve_manual_scores ==
true && $questiondata[
'manual'] ==
'1')
150 $question_gui->object->getMaximumPoints(),
162 public function calculateBestSolutionForTest()
165 foreach ($this->test->getAllQuestions() as $question)
168 $question_gui = $this->test->createQuestionGUI(
"", $question[
'question_id'] );
169 $solution .= $question_gui->getSolutionOutput(0, null,
true,
true,
false,
false,
true,
false);
recalculatePass($passdata, $active_id, $pass)
Output class for assessment test evaluation.
__construct(ilObjTest $test)
setPreserveManualScores( $preserve_manual_scores)
static generatePDF($pdf_output, $output_mode, $filename=null)
_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...
_updateTestResultCache($active_id, ilAssQuestionProcessLocker $processLocker=null)
Move this to a proper place.
getPreserveManualScores()
static getWebspaceDir($mode="filesystem")
get webspace directory
recalculatePasses($userdata, $active_id)
handInTestResult($active_fi, $pass, $pdf_path)
Hands in an individual test result for a pass.