mirror of
https://github.com/moodle/moodle.git
synced 2025-04-21 00:12:56 +02:00
quiz reports: MDL-20316 per-question averages not shown with the quiz only allows one attempt.
Problem found thanks to OU testing. Fix thanks to Mahmoud Kassaie.
This commit is contained in:
parent
20e4b1d344
commit
1dc12a6475
@ -50,7 +50,7 @@ class quiz_report_overview_table extends table_sql {
|
||||
$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());
|
||||
}
|
||||
@ -62,7 +62,7 @@ class quiz_report_overview_table extends table_sql {
|
||||
$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());
|
||||
}
|
||||
|
@ -123,7 +123,7 @@ function quiz_get_average_grade_for_questions($quiz, $userids){
|
||||
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";
|
||||
|
Loading…
x
Reference in New Issue
Block a user