This commit reduces boilerplate code.
It also forces WS returning files to always return the following
fields: filename, filepath, mimetype, filesize, timemodified and
fileurl.
Previous empty submission checks required the submission to
be saved to the database. This patch adds a new method to
submission plugins that lets them report whether the submission
is empty before it is saved.
Added a method to the feedback plugins to check if feedback
has been modified. This allows for a more accurate record
of when the grade has been modified.
New events have been created for submission plugins. This is
part of the consistancy move by adding the same type of event through
all of the modules.
AMOS BEGIN
MOV [event_submission_updated,mod_assign],[eventsubmissionupdated,mod_assign]
AMOS END
This patch adds lots of webservices to the assignment module.
* mod_assign_revert_submissions_to_draft
* mod_assign_lock_submissions
* mod_assign_unlock_submissions
* mod_assign_save_submission
* mod_assign_submit_for_grading
* mod_assign_save_grade
* mod_assign_save_user_extensions
* mod_assign_reveal_identities
* mod_assign_copy_previous_attempt
All features such as reopening attempts and marking workflow are supported through
the save_grade and save_submission functions.
Uploading files is supported by sending draft item ids for the files_filemanager param the same functions.
This change makes the attempt history display for teachers and students
even when there is no grade (e.g. blind marking). It also will show the previous
attempt in the grading table when a submission has been newly reopened (instead
of a blank submission).