65 $this->container =
$DIC;
84 if ($this->testOBJ->isShowGradingStatusEnabled()) {
88 if ($this->testOBJ->isShowGradingMarkEnabled()) {
92 if ($this->testOBJ->getECTSOutput()) {
99 $this->messageText[] = $msgPart;
104 return implode(
' ', $this->messageText);
109 return (
bool) $this->resultData[
'passed'];
114 if (!$this->testOBJ->isShowGradingStatusEnabled()) {
115 $this->container->ui()->mainTemplate()->setOnScreenMessage(
'info', $this->
getFullMessage());
117 $this->container->ui()->mainTemplate()->setOnScreenMessage(
'success', $this->
getFullMessage());
119 $this->container->ui()->mainTemplate()->setOnScreenMessage(
'info', $this->
getFullMessage());
125 $this->resultData = $this->testOBJ->getResultsForActiveId($this->
getActiveId());
127 if ($this->testOBJ->getECTSOutput()) {
128 $ectsMark = $this->testOBJ->getECTSGrade(
129 $this->testOBJ->getTotalPointsPassedArray(),
130 $this->resultData[
'reached_points'],
131 $this->resultData[
'max_points']
134 $this->resultData[
'ects_grade'] = strtoupper($ectsMark);
141 return $this->
lng->txt(
'grading_status_passed_msg');
144 return $this->
lng->txt(
'grading_status_failed_msg');
149 $markMsg = $this->
lng->txt(
'grading_mark_msg');
152 $markMsg = str_replace(
"[markshort]", $this->
getMarkShort(), $markMsg);
153 $markMsg = str_replace(
"[percentage]", $this->
getPercentage(), $markMsg);
155 $markMsg = str_replace(
"[max]", $this->
getMaxPoints(), $markMsg);
162 return $this->resultData[
'mark_official'];
167 return $this->resultData[
'mark_short'];
178 return sprintf(
"%.2f", $percentage);
183 return $this->resultData[
'reached_points'];
188 return $this->resultData[
'max_points'];
193 return (
bool) $this->resultData[
'obligations_answered'];
198 return str_replace(
'[markects]', $this->
getEctsGrade(), $this->
lng->txt(
'mark_tst_ects'));
203 return $this->resultData[
'ects_grade'];
212 if ($this->testOBJ->isShowGradingStatusEnabled()) {
213 $passedStatusLangVar = $this->
isPassed() ?
'passed_official' :
'failed_official';
216 $this->
lng->txt(
'passed_status'),
217 $this->
lng->txt($passedStatusLangVar)
221 if ($this->testOBJ->areObligationsEnabled()) {
223 $obligAnsweredStatusLangVar =
'grading_obligations_answered_listentry';
225 $obligAnsweredStatusLangVar =
'grading_obligations_missing_listentry';
229 $this->
lng->txt(
'grading_obligations_listlabel'),
230 $this->
lng->txt($obligAnsweredStatusLangVar)
234 if ($this->testOBJ->isShowGradingMarkEnabled()) {
238 if ($this->testOBJ->getECTSOutput()) {
247 $this->tpl =
new ilTemplate(
'tpl.tst_grading_msg_list.html',
true,
true,
'Modules/Test');
252 $this->tpl->setCurrentBlock(
'grading_msg_entry');
253 $this->tpl->setVariable(
'LABEL', $label);
254 $this->tpl->setVariable(
'VALUE', $value);
255 $this->tpl->parseCurrentBlock();
260 $this->tpl->setCurrentBlock(
'grading_msg_list');
261 $this->tpl->parseCurrentBlock();
266 return $this->tpl->get();
__construct(ilLanguage $lng, ilObjTest $testOBJ)
populateListEntry($label, $value)