$groupaveragerow = array($namekey => get_string('groupavg', 'grades'),
'sumgrades' => quiz_format_grade($this->quiz, $groupaverage->grade),
'feedbacktext'=> strip_tags(quiz_report_feedback_for_grade($groupaverage->grade, $this->quiz->id)));
- if($this->detailedmarks && $this->qmsubselect) {
+ if($this->detailedmarks && ($this->qmsubselect || $this->quiz->attempts == 1)) {
$avggradebyq = quiz_get_average_grade_for_questions($this->quiz, $this->groupstudents);
$groupaveragerow += quiz_format_average_grade_for_questions($avggradebyq, $this->questions, $this->quiz, $this->is_downloading());
}
$overallaveragerow = array($namekey => get_string('overallaverage', 'grades'),
'sumgrades' => quiz_format_grade($this->quiz, $overallaverage->grade),
'feedbacktext'=> strip_tags(quiz_report_feedback_for_grade($overallaverage->grade, $this->quiz->id)));
- if($this->detailedmarks && $this->qmsubselect) {
+ if($this->detailedmarks && ($this->qmsubselect || $this->quiz->attempts == 1)) {
$avggradebyq = quiz_get_average_grade_for_questions($this->quiz, $this->students);
$overallaveragerow += quiz_format_average_grade_for_questions($avggradebyq, $this->questions, $this->quiz, $this->is_downloading());
}
LEFT JOIN {question_sessions} qns ON (qns.attemptid = qa.uniqueid)
LEFT JOIN {question_states} qs ON (qns.newgraded = qs.id AND qs.event IN (".QUESTION_EVENTS_GRADED."))
WHERE " .
- "($qmfilter) AND " .
+ ($qmfilter?$qmfilter.' AND ':'') .
"qa.userid $usql AND " .
"qa.quiz = ? ".
"GROUP BY qns.questionid";