From 71ec5d19df4f506ca810cd55e25ebca4c5b94962 Mon Sep 17 00:00:00 2001 From: Tim Hunt Date: Fri, 29 Apr 2011 12:09:05 +0100 Subject: [PATCH] MDL-26937 quiz grades report. Work-around MySQL fussiness, like for MDL-26416. --- mod/quiz/report/overview/report.php | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/mod/quiz/report/overview/report.php b/mod/quiz/report/overview/report.php index ebe6ebc32c5..61201486723 100644 --- a/mod/quiz/report/overview/report.php +++ b/mod/quiz/report/overview/report.php @@ -348,9 +348,22 @@ class quiz_report extends quiz_default_report { "END) AS gradedattempt, "; } - $select .= 'qa.uniqueid AS attemptuniqueid, qa.id AS attempt, ' . - 'u.id AS userid, u.idnumber, u.firstname, u.lastname, u.picture, u.imagealt, ' . - 'qa.sumgrades, qa.timefinish, qa.timestart, qa.timefinish - qa.timestart AS duration '; + $select .= ' + qa.uniqueid AS attemptuniqueid, + qa.id AS attempt, + u.id AS userid, + u.idnumber, + u.firstname, + u.lastname, + u.picture, + u.imagealt, + u.email, + qa.sumgrades, + qa.timefinish, + qa.timestart, + CASE WHEN qa.timefinish = 0 THEN null + WHEN qa.timefinish > qa.timestart THEN qa.timefinish - qa.timestart + ELSE 0 END AS duration '; // This part is the same for all cases - join users and quiz_attempts tables $from = 'FROM '.$CFG->prefix.'user u ';