There is a new API method get_definition_copy() that is expected to
return the definition structure as if the form was written from scratch
via the editor. Such a prepared structure is passed to
a controller's update_definition() method in the new target area.
The same mechanism will be used for copying definitions from a shared
area to a normal gradable area.
The user is sent to the new grade/grading/manage.php screen when an
advanced grading method is set in the activity mod form or via the
settings block.
The screen is supposed to (1) let the user change the currently active
grading method, (2) open the editor for the selected method, (3) create
new form from a template (4) display a preview of the form.
Change also adds minor feature to date-time selector so you can specify the time it uses as default when the value is 0 (disabled).
Credit: This feature was developed collaboratively by Charles Fulton, Neill Magill, and me.
The patch makes more sense when reviewed together with the parallel work
on gradingform_random (see MDL-29631) where the developed API is
actually tested.
Big thanks to the developers who put effort into this improvement:
* Jonathan Robson <jonathan.robson@remote-learner.net>
* Jonathan Harker <jonathan@catalyst.net.nz>
Also, refine the standard_grading_coursemodule_elements method to add a
help string.
AMOS BEGIN
CPY [gradecategory,grades],[gradecategoryonmodform,grades]
AMOS END
AMOS BEGIN
MOV [multilangupgrade,core_admin],[pluginname,tool_ multilangupgrade]
MOV [multilangupgradeinfo,core_admin],[multilangupgradeinfo,tool_ multilangupgrade]
AMOS END