From bd166e618fde47f34a28bb1c1319ea9f0d48893e Mon Sep 17 00:00:00 2001 From: Alex Leontiev Date: Sat, 20 Apr 2013 15:32:27 +0800 Subject: [PATCH] MDL-37514 module.js: fix .js for auto quiz submission in preview mode The issue: when we attempt the quiz as teacher/admin and timer is up, quiz is not submitted, even though "Open attempts are submitted automatically" is set. I've changed the javascript for a timer, responsible for submission, removing the special behaviour in case of preview mode. Note, that when the admin/teacher is taking a quiz, the "preview" mode is automatically switched on. It is a bit strange, since in the javascript there was clearly no expressed intention to really submit quiz in preview, even when timer hits. It does not really seem like a accidental bug, rather it looks like some misunderstanding. Worse still, it may happen that I did not understand the intentions of previous editor and ruined some functionality. Because of this, and the fact that this is my first bug, I would like to ask about the peer review! Please, see my comments in bug discussion for the testing steps. Conflicts: mod/quiz/module.js --- mod/quiz/module.js | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/mod/quiz/module.js b/mod/quiz/module.js index 14bb6f68e43..c3aa3824884 100644 --- a/mod/quiz/module.js +++ b/mod/quiz/module.js @@ -95,14 +95,8 @@ M.mod_quiz.timer = { update: function() { var Y = M.mod_quiz.timer.Y; var secondsleft = Math.floor((M.mod_quiz.timer.endtime - new Date().getTime())/1000); - - // If this is a preview and time expired, display timeleft 0 and don't renew the timer. - if (M.mod_quiz.timer.preview && secondsleft < 0) { - Y.one('#quiz-time-left').setContent('0:00:00'); - return; - } - - // If time has expired, Set the hidden form field that says time has expired. + + // If time has expired, set the hidden form field that says time has expired and submit if (secondsleft < 0) { M.mod_quiz.timer.stop(null); Y.one('#quiz-time-left').setContent(M.str.quiz.timesup);