Omit summary page of the quiz if all questions are answered

Omit summary page of the quiz if all questions are answered

Dmitry Matyushechkin -
回帖数:12

We`d like to add a new option to omit summary page of the quiz. We can do it different ways but can not choose the the best. Please share your opinions how could it be better. 

Now the most actual idea is to add a new option to "Quiz administration -> Edit settings:->Layout". 

Which text on labels and in information block should it be to get more understandable?

We are interested in any suggestions about this subject.

More about the solution on wiki and tracker


平均分:Useful (1)
回复Dmitry Matyushechkin

Re: Omit summary page of the quiz if all questions are answered

Oleg Sychev -

One of the main question is whether we should go for small or big text on the form.

A) Put small text in the ComboBox  - Label "Summary page" and variants "Show" and "Hide", while placing more detailed description in the help like in the screenshot above. My +1 goes for that variant - help text should be improved of course.

B) Put full desctiption in the ComboBox - i.e. Label "At the end of the quiz" and variants "List all the questions and if they are complete before showing the submit button" and "Put the submit button directly under the last question".


回复Oleg Sychev

Re: Omit summary page of the quiz if all questions are answered

Tim Hunt -
Core developers的头像 Documentation writers的头像 Particularly helpful Moodlers的头像 Peer reviewers的头像 Plugin developers的头像

Does anyone else want this feature?

回复Tim Hunt

Re: Omit summary page of the quiz if all questions are answered

Oleg Sychev -

I must probably explain situation where this summary page is particulary nasty from teacher's view.

We have training quizzes students can do at home in adaptive and interactive modes to be prepared for summative quizzes at class. Such training quizzes naturaly calls for a thorough general feedback, describing solving an entire question and all necessary rules they should know about. But the only way to give student a honest several trys before seen general feedback for now is to allow this general feedback only after quiz was finished, otherwise students will see full explanation after their first attempt at that question and could not try to think on their errors by themselves. These training quizzes are one-page quizzes.

When summary page was introduced we noticed sharp drop in the training quiz finishing, especially with the students new to the Moodle (which we got each year in a large quantities). They just give several trys to the questions and close tab in the browser or browse away without hitting summary page - and so do not see general feedback. When the "finish" button was right on the attempt page more students finished quiz and see the feedback.

回复Oleg Sychev

Re: Omit summary page of the quiz if all questions are answered

Oleg Sychev -

On the second thougt, we could just add "Submit and finish" button to every page of the quiz to give user ability to finish quiz where they want without need for additional option in quiz. Or add finishing button to the just last page if this thought too risky (then "Next" could be changed to the "Summary" probably). I can imagine student doing multi page quiz without strict order of the pages, switching back and forth and wanting to finish from any page with the question he answer last.

回复Oleg Sychev

Re: Omit summary page of the quiz if all questions are answered

Tim Hunt -
Core developers的头像 Documentation writers的头像 Particularly helpful Moodlers的头像 Peer reviewers的头像 Plugin developers的头像

It would be interesting to see what effect a Submit all and finish button on every page of the quiz would be.

Should be quite easy to do. In mod/quiz/renderer.php in the attempt_form method, next to where it outputs the Next button add

        $output .= html_writer::empty_tag('input', array('type' => 'submit', 'name' => 'finishattempt',
                'value' => get_string('submitallandfinish', 'quiz')));
(Annoyingly difficult to do that by overriding the renderer, without duplicating a lot of code. We could do with a bit of a refactor there.)

回复Tim Hunt

Re: Omit summary page of the quiz if all questions are answered

Oleg Sychev -

Hi, Tim.

"It would be interesting to see what effect a Submit all and finish button on every page of the quiz would be"

Are you implying experiment on our server or a patch for the Moodle to look at that effect?

回复Oleg Sychev

Re: Omit summary page of the quiz if all questions are answered

Tim Hunt -
Core developers的头像 Documentation writers的头像 Particularly helpful Moodlers的头像 Peer reviewers的头像 Plugin developers的头像

I was most interested in the first of those: what happens with your students if you try this?

回复Tim Hunt

Re: Omit summary page of the quiz if all questions are answered

Oleg Sychev -

Well, we'll try - but it will take some time to gather enought attempts to decide.

Also people with multi page quizzes may have another view on having such button on each page, so could you ask anyone with multi-page quizzes to try this too?

回复Tim Hunt

Re: Omit summary page of the quiz if all questions are answered

Oleg Sychev -

Tim, did you actually proposing to add "Submit all and finish" button without confirmation action? Using html_writer::empty_tag() suggests that. I feel when placing button on the attempt page confirmation is more important, than on the summary page.

Unfortunately, single_button class that does confirmation well doesn't have a field for 'name' attribute, so it can be used there either. Should we write a short patch adding $name field to the single_button class and modifiying https://github.com/moodle/moodle/blob/master/lib/outputrenderers.php#L1774 to add 'name' attribute? Or is there another way of having confirmation window in the https://github.com/moodle/moodle/blob/master/mod/quiz/renderer.php#L480?


回复Oleg Sychev

Re: Omit summary page of the quiz if all questions are answered

Tim Hunt -
Core developers的头像 Documentation writers的头像 Particularly helpful Moodlers的头像 Peer reviewers的头像 Plugin developers的头像

You should be able to reuse the standard confirmation JavaScript that is used for the Summary page. Something like

$this->page->requires->event_handler('#submit-and-finish-button', 'click', 'M.util.show_confirm_dialog', array('message' => get_string('confirmclose', 'quiz')  'continuelabel' => null, 'cancellabel' => null));

回复Tim Hunt

Re: Omit summary page of the quiz if all questions are answered

Oleg Sychev -

First result of expriment is that javascript confirmation need some more wok.

For the quiz attempts in a secure window it somehow triggers onbeforeunload event and browser starts to frighten the students that they are going away from the page and may lose their data (which in quiz case is quite frightening), thought when action is confirmed no actual data loss happens.

回复Oleg Sychev

Re: Omit summary page of the quiz if all questions are answered

Dmitry Matyushechkin -

This window really can confuse students... I think it is not a problem to submit this form "totally". I'll try to solve it.