Merge branch 'MDL-48255-27' of git://github.com/lameze/moodle into MOODLE_27_STABLE
[moodle.git] / mod / assign / upgrade.txt
blob3856c723ed2a0804b9d28b3638f7cac456e7023d
1 This files describes API changes in the assign code.
2 === 2.7 ===
4 * Added setting sendstudentnotifications to assign DB table with admin defaults. This sets the default value for the
5   "Notify students" option on the grading forms. This setting can be retrieved via webservices.
7 * Web service function mod_assign_save_grade has an additional optional parameter $advancedgradingdata which allows
8   advanced grading data to be used.
9 * A new web service function mod_assign_save_grades has been added which allows multiple grades to be processed.
10 * The event submission_updated() [mod/assign/classes/event/submission_updated.php] has been altered to now be an abstract class
11   for submission events in the submission plug-ins.
13 === 2.6.1 ===
15 * format_text() is no longer used for formating assignment content to be used in events (assign_submission_onlinetext::save()) or
16   the word count (assign_submission_onlinetext::format_for_log()) in mod/assign/submission/onlinetext/locallib.php. format_text()
17   should only be used when displaying information to the screen. It was being used incorrectly before in these areas. Plugins using
18   the event assessable_uploaded() should use file_rewrite_pluginfile_urls() to translate the text back to the desired output.
20 === 2.6 ===
21 * To see submission/grades of inactive users, user should have moodle/course:viewsuspendedusers capability.
22 * count_* functions will return only active participants.
23 * assign_submission_plugin->lock and unlock methods have an additional parameter for user flags. A user will not
24   always have a submission record when the submission is locked/unlocked.
25 * Submission and feedback plugins can now participate in webservices. The plugin must implement get_external_parameters()
26   to describe the parameters it is expecting from the mod_assign_save_grade or mod_assign_save_submission functions. The
27   plugin will then handle the webservice via it's normal save() method with the extra data supplied in the $data argument.
29 === 2.5 ===
31 * New feature - Attempt History
33     This adds settings so that a student can have build up a history of separate submission attempts and grades for the same
34     assignment.
36     Extra settings on the assign table are:
37     attemptreopenmethod - The way attempts can be reopened. One of:
38                             ASSIGN_ATTEMPT_REOPEN_METHOD_NONE - Attempts cannot be reopened (default)
39                             ASSIGN_ATTEMPT_REOPEN_METHOD_UNTIL_PASS - Attempts are reopened on grading until the gradebook
40                                                                       indicates this student has passed.
41                             ASSIGN_ATTEMPT_REOPEN_METHOD_MANUAL - Attempts are reopened on manually by the grader.
42     maxattempts - The maximum allowed number of attempts per student for this assign instance.
44     Extra settings on the submission and grade records:
45     attemptnumber - Starting from 0 until the latest attempt.
47     New table assign_user_flags holds user specific flags that were stored in the assign_grade table.  (contains assignment,
48     userid, extensionduedate, mailed and locked)
50     assign changes:
51         "get_user_grade" function has an extra optional parameter to retrieve a specific attempt number.
52         "get_user_submission" function has an extra optional parameter to retrieve a specific attempt number.
53         "get_group_submission" function has an extra optional parameter to retrieve a specific attempt number.
54         new "get_user_flags" function can retrieve the user flags for a specific user (extensionduedate, mailed and locked).
55         new "update_user_flags" function can update the user flags for a specific user (extensionduedate, mailed and locked).
57     assign_submission_plugin changes:
58         "precheck_submission" function now takes a submission record so you can determine which submission is being checked.
59         "submit_for_grading" function now takes a submission record so you can determine which submission is being submitted.
60         new function "copy_submission" can be implemented to copy submission data from one submission to a new one.
62     New renderable object "assign_attempt_history" for rendering the list of previous submissions.
63     New renderable object "assign_gradingmessage" for rendering a generic grading message.
65     assign_grading_table changes:
66         get_group_and_submission is now protected and should not be called from outside this class.
69 === Earlier changes ===
71 * Were not documented in this way. Sorry.