From 0a6a25435180822dcdc6d9e1cf99bd0e2e2108ee Mon Sep 17 00:00:00 2001 From: Dave Cooper Date: Thu, 20 Nov 2014 11:50:49 +0800 Subject: [PATCH] MDL-41155 Lesson: Fixed multiple question attempts logic Thanks to Rajneel Totaram for providing this patch. --- mod/lesson/continue.php | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/mod/lesson/continue.php b/mod/lesson/continue.php index 9106cfb7f7a..8ea44cbfdc4 100644 --- a/mod/lesson/continue.php +++ b/mod/lesson/continue.php @@ -161,11 +161,11 @@ if ($canmanage) { } } // Report attempts remaining -if ($result->attemptsremaining != 0 && !$lesson->review && !$reviewmode) { +if ($result->attemptsremaining != 0 && $lesson->review && !$reviewmode) { $lesson->add_message(get_string('attemptsremaining', 'lesson', $result->attemptsremaining)); } // Report if max attempts reached -if ($result->maxattemptsreached != 0 && !$lesson->review && !$reviewmode) { +if ($result->maxattemptsreached != 0 && $lesson->review && !$reviewmode) { $lesson->add_message('('.get_string("maximumnumberofattemptsreached", "lesson").')'); } @@ -183,7 +183,9 @@ if ($lesson->displayleft) { if ($lesson->ongoing && !$reviewmode) { echo $lessonoutput->ongoing_score($lesson); } -echo $result->feedback; +if (!$result->maxattemptsreached && !$reviewmode) { + echo $result->feedback; +} // User is modifying attempts - save button and some instructions if (isset($USER->modattempts[$lesson->id])) { @@ -198,7 +200,7 @@ if (isset($USER->modattempts[$lesson->id])) { } // Review button back -if (!$result->correctanswer && !$result->noanswer && !$result->isessayquestion && !$reviewmode && $lesson->review) { +if (!$result->correctanswer && !$result->noanswer && !$result->isessayquestion && !$reviewmode && $lesson->review && !$result->maxattemptsreached) { $url = $CFG->wwwroot.'/mod/lesson/view.php'; $content = html_writer::empty_tag('input', array('type'=>'hidden', 'name'=>'id', 'value'=>$cm->id)); $content .= html_writer::empty_tag('input', array('type'=>'hidden', 'name'=>'pageid', 'value'=>$page->id)); @@ -207,7 +209,7 @@ if (!$result->correctanswer && !$result->noanswer && !$result->isessayquestion & } $url = new moodle_url('/mod/lesson/view.php', array('id'=>$cm->id, 'pageid'=>$result->newpageid)); -if ($lesson->review && !$result->correctanswer && !$result->noanswer && !$result->isessayquestion) { +if ($lesson->review && !$result->correctanswer && !$result->noanswer && !$result->isessayquestion && !$result->maxattemptsreached) { // Review button continue echo $OUTPUT->single_button($url, get_string('reviewquestioncontinue', 'lesson')); } else {