49 Commits

Author SHA1 Message Date
Tim Hunt
1f0f413187 MDL-46091 quiz start attempt: rationalise confirmations.
1. Don't show a warning if there are a limited number of attempts, only
   if there is a time limit.
2. Merge that time-limit warning into the same form that is used for
   entering a password, etc.
3. Make that form an JavaScript dialogue when you click the start attempt
   button.

AMOS BEGIN
  MOV ['confirmstarttimelimit', 'mod_quiz'], ['confirmstart', 'quizaccess_timelimit']
AMOS END
2016-01-18 22:12:41 +00:00
Mark Nelson
400afba6ab MDL-45803 mod_quiz: prevented the attempt_started event from being triggered twice 2014-06-09 15:59:41 -07:00
Rossiani Wijaya
8c6ca6961a MDL-42339 - removed double formatting for set_title() and set_heading() 2014-02-05 14:47:23 +08:00
Tim Hunt
1f8ff396d2 MDL-43412 quiz with grade period and password did not work.
Once the attempt became overdue, it was impossible to get in to submit
it because of a redirect loop. This fix resovles that loop, so the
student can enter their password and get in.
2014-01-08 17:55:25 +00:00
rwijaya
c544ee92f5 MDL-41615 quiz_mod: fix heading levels for usability and accessibility 2013-11-07 12:04:00 +08:00
Jamie Pratt
1cd7c92ece MDL-40074 refactoring of quiz code
to reuse code fro quiz attempt walk through
2013-07-14 16:28:39 +07:00
Tim Hunt
2ed7833790 MDL-39971 each attempt builds on last broken for previews. 2013-05-31 20:24:50 +01:00
Tim Lock
be47011d3c MDL-35868: quiz: Use correct attemptnumber when a last attempt exists. 2013-04-08 11:09:04 +08:00
Matt Petro
8e771aed93 MDL-35717 quiz: fix overdue attempt processing 2012-11-16 21:32:09 -05:00
Tim Hunt
9e83f3d11d MDL-32788 quiz: clean up codechecker issues before the 2.3 release. 2012-05-04 15:12:23 +01:00
Tim Hunt
a403bce0bd MDL-3030 quiz overdue handling: back-end code for the new transitions 2012-04-27 15:07:36 +01:00
Tim Hunt
34b7d8383d MDL-3030 quiz overdue handling: trigger automatic state transitions.
Here, we catch all the places where a student might be accessing their
own attempts, and make sure any automatic state transitions that
should happen, do happen, before the student sees the attempt.

The places where we need to check this are view.php, startattempt.php
and processattempt.php.

We do not really need to check attempt.php or summary.php, because if
the student is on one of those pages, the JavaScript timer will
auto-submit when time expires, taking them to processattempt.php,
which will do the acutal work.

We intentionally do not trigger state transition when a teacher is
looking at a student's quiz attemp. We will trigger state transitions
on cron, but that is still to do.

Also, the body of the process_... methods still needs to be written.
2012-04-27 15:07:35 +01:00
Petr Skoda
cdbea7eed1 MDL-31607 use full course object for require_login() if already available
This eliminates 1 db query.
2012-04-22 17:41:47 +02:00
Sam Hemelryk
d36b5d1177 Merge branch 'MDL-31095' of git://github.com/timhunt/moodle 2012-01-16 16:58:32 +08:00
Aparup Banerjee
c5fd16826a MDL-3054 quiz : cleaned whitespaces. 2012-01-16 13:41:12 +08:00
Charles Fulton
5db8294940 MDL-3054 record the current page of a quiz attempt 2012-01-12 09:15:37 -08:00
Tim Hunt
18dff75754 MDL-31095 quiz editing: only set quiz->grade to 0 if really necessary.
It is only necessary when there are (non-preview) attempts. However,
after making this change we have to ensure users cannot start attempts
when ->grade > 0 and ->sumgrades = 0.

Display ->grade on the order and paging tab of edit.php, so it is clear
what is going on when you are using that tab.

Finally, improve the error message a student gets if they try to start a
quiz with no questions.
2012-01-12 12:10:08 +00:00
Tim Hunt
7238cd2ef0 MDL-30209 quiz refers to wrong rendere method in two places.
Thanks to Dan Marsden for working out the fix.
2011-11-15 11:23:03 +00:00
Tim Hunt
987c2d491e MDL-29627 quiz access refactor password check into a generic check page. 2011-10-13 11:13:20 +01:00
Tim Hunt
d755b0f577 MDL-29627 quiz_access_manager move all output code to the renderer.
This achieves a massive clean-up. It simplifies comples code in a number
of places. It allows some methods and functions to be moved to a more
appropriate home (for example cannot_review_message to the quiz class).
It moves more logic out of the renderer.
2011-10-13 11:13:12 +01:00
Tim Hunt
dd70d561ef MDL-29627 quiz load access settings when a quiz is being attempted. 2011-10-13 11:13:10 +01:00
Tim Hunt
cbb8b55c33 MDL-28166 send quiz event notifications asynchronously.
This avoids the problem that you cannot send messages in transactions.

It also means that the quiz submission will not be prevented, and the
message will still be sent eventually, if any part of the messaging
system is giving intermittent errors when the student wants to submit
their quiz.
2011-07-06 14:16:30 +01:00
Eloy Lafuente (stronk7)
a2854474ce Merge branch 'MDL-27979' of git://github.com/timhunt/moodle 2011-06-23 00:34:03 +02:00
Tim Hunt
da72991636 MDL-27979 Should be an edit link for each question when previewing or reviewing a quiz. 2011-06-22 21:07:40 +01:00
Tim Hunt
3461dbad9e MDL-27860 count quiz attempts properly when checking if a new attempt is allowed. 2011-06-18 18:23:49 +01:00
Tim Hunt
c014b989ba MDL-27649 Convert the calculated question types to use the new variants mechanism. 2011-05-26 21:53:47 +01:00
Tim Hunt
1da821bbde MDL-27649 support question variants as a first-class concept in the question engine. 2011-05-26 21:23:56 +01:00
Tim Hunt
e35ba43c91 MDL-20636 make syncronised datasets work for calculated* questions. 2011-05-19 19:06:07 +01:00
Tim Hunt
25a03faaca MDL-20636 fix many code-checker issues in mod/quiz. 2011-05-12 00:30:25 +01:00
Dean Lennard
bcd42560e3 MDL-20636 Updated code to include html writer 2011-05-09 12:30:45 +01:00
Tim Hunt
55ca80edde MDL-20636 Fix lots of problems found by the new improved codechecker. 2011-04-04 20:11:29 +01:00
Tim Hunt
88f0eb1546 MDL-20636 Reveiw all throw statements. 2011-02-23 16:50:09 +00:00
Tim Hunt
ba6438471b MDL-20636 Fix top of file boilerplate in mod/quiz. 2011-02-21 16:13:25 +00:00
Tim Hunt
a1eb3a4466 MDL-20636 It is now possible to start a quiz attempt.
This includes merging the CSS.
2011-02-09 20:18:15 +00:00
Tim Hunt
7c5bd5bfab MDL-20636 Working towards being able to attempt a quiz. 2011-02-09 20:18:12 +00:00
Tim Hunt
6723a0390b MDL-24140 Each attempt builds on last setting was being ingored in one place.
The code was behaving as if it was always true.
2010-11-02 19:12:21 +00:00
Petr Skoda
39790bd805 MDL-24321 switching to stdClass in /mod/ 2010-09-21 08:37:36 +00:00
Petr Skoda
eab8ed9fb7 fixed a few spelling errors in /admin/ 2010-09-17 10:27:26 +00:00
Tim Hunt
a88ba5700c NOBUG quiz start attempt Fix the quiz password page. 2010-07-28 15:06:28 +00:00
Martin Dougiamas
204f394e27 Converted some quiz events to use frankenstyle component names (spit) 2010-07-08 04:07:23 +00:00
Dan Marsden
9df209c122 Quiz Events MDL-22539 add events to start and process attempts 2010-05-20 23:01:22 +00:00
Tim Hunt
990650f94c quiz: MDL-16478 Allow different open/close dates, etc. for individual students or groups.
This was implemented by Matt Petro of the University of Wisconsin - Madison Engineering
School and Math Department. Many thanks. Reviewed by and committed by Tim Hunt.

This adds a new Overrides tab to the UI, with sub-tabs Group overrides and User overrides.
Each of those lists all the overrides that currently exist, and lets you manage them and
create more.

When a quiz is being attempted, the override that applies to the current user is combined
with the current quiz settings loaded from the quiz table (normally called $quiz).
If there are both user and group overrides, then just the specific user override is used (more specific).
If the user is in several groups, then the overrides are combined to give the most permissive set of options.

There is one new database table quiz_overrides, to store the overrides.
2010-03-08 16:01:38 +00:00
Petr Skoda
8319260833 MDL-20700 coding style cleanup - cvs keywords removed, closign php tag removed, trailing whitespace cleanup 2009-11-04 11:58:30 +00:00
skodak
a8f3a651c0 MDL-18293 removed obsoleted checking of return values from insert and update_record + unused strings cleanup 2009-06-13 18:16:08 +00:00
tjhunt
4299df1daf quiz editing: Refactor the editing actions to make functions in editlib.php for most of them.
In the process, do MDL-17456, move/delete questions by question id rather than position, for greater robustness.
2009-02-27 08:45:05 +00:00
tjhunt
ccc4515578 MDL-15541 - add a comment about where this code originated. 2008-07-15 16:31:22 +00:00
tjhunt
b1103f2bf2 MDL-15535 - URLs are changing from attempt.php?id=XXX to attempt.php?attempt =YYY - implement a sensible redirect if we recieve an old-style URL, since they are stored in a few places like the logs. Also update all URLs we generate that point to attempt.php. 2008-07-09 17:00:26 +00:00
tjhunt
72395e60cb MDL-15541 - Refactor starting a new attempt into a new file startattempt.php - slight improvement to the code. 2008-07-08 17:43:34 +00:00
tjhunt
78e7a3dd5d MDL-15452 - Put the OU quiz navigation improvements into the Moodle codebase - quite a lot of progress, sorry I am committing this as a big lump, but it took me a while to get the code back to a working state.
MDL-15537 - create oo attemptlib.php to hold shared code between attempt, summary and review.php
MDL-15541 - Refactor starting a new attempt into a new file startattempt.php
MDL-15538 - Rework attempt.php to use attemptlib.php
2008-07-08 16:33:47 +00:00