|
Moodle
2.2.1
http://www.collinsharper.com
|

Public Member Functions | |
| __construct ($controller, $data) | |
| copy ($raterid, $itemid) | |
| get_current_instance () | |
| get_controller () | |
| get_data ($key) | |
| get_id () | |
| get_status () | |
| cancel () | |
| update ($elementvalue) | |
| get_grade () | |
| submit_and_get_grade ($elementvalue, $itemid) | |
| render_grading_element ($page, $gradingformelement) | |
| validate_grading_element ($elementvalue) | |
| default_validation_error_message () | |
Static Public Member Functions | |
| static | create_new ($definitionid, $raterid, $itemid) |
Data Fields | |
| const | INSTANCE_STATUS_ACTIVE = 1 |
| const | INSTANCE_STATUS_NEEDUPDATE = 2 |
| const | INSTANCE_STATUS_INCOMPLETE = 0 |
| const | INSTANCE_STATUS_ARCHIVE = 3 |
Protected Member Functions | |
| make_active () | |
Protected Attributes | |
| $data | |
| $controller | |
Class to manage one grading instance. Stores information and performs actions like update, copy, validate, submit, etc.
| __construct | ( | $ | controller, |
| $ | data | ||
| ) |
Creates an instance
| gradingform_controller | $controller | |
| stdClass | $data |
| cancel | ( | ) |
Deletes this (INCOMPLETE) instance from database. This function is invoked on cancelling the grading form and/or during cron cleanup. Plugins using additional tables must override this method to remove additional data. Note that if the teacher just closes the window or presses 'Back' button of the browser, this function is not invoked.
Reimplemented in gradingform_rubric_instance.
Definition at line 769 of file lib.php.

| copy | ( | $ | raterid, |
| $ | itemid | ||
| ) |
Duplicates the instance before editing (optionally substitutes raterid and/or itemid with the specified values) Plugins may want to override this function to copy data from additional tables as well
| int | $raterid | value for raterid in the duplicate |
| int | $itemid | value for itemid in the duplicate |
Reimplemented in gradingform_rubric_instance.
| static create_new | ( | $ | definitionid, |
| $ | raterid, | ||
| $ | itemid | ||
| ) | [static] |
Returns the error message displayed if validation failed. If plugin wants to display custom message, the empty string should be returned here and the custom message should be output in render_grading_element()
| get_controller | ( | ) |
Returns the controller
Definition at line 707 of file lib.php.

Returns the current (active or needupdate) instance for the same raterid and itemid as this instance. This function is useful to find the status of the currently modified instance
Definition at line 695 of file lib.php.


| get_data | ( | $ | key | ) |
| get_grade | ( | ) | [abstract] |
Calculates the grade to be pushed to the gradebook
Reimplemented in gradingform_rubric_instance.

| get_id | ( | ) |
| get_status | ( | ) |
| make_active | ( | ) | [protected] |
| render_grading_element | ( | $ | page, |
| $ | gradingformelement | ||
| ) | [abstract] |
Returns html for form element of type 'grading'. If there is a form input element it must have the name $gradingformelement->getName(). If there are more than one input elements they MUST be elements of array with name $gradingformelement->getName(). Example: {NAME}[myelement1], {NAME}[myelement2][sub1], {NAME}[myelement2][sub2], etc. ( {NAME} is a shortcut for $gradingformelement->getName() ) After submitting the form the value of $_POST[{NAME}] is passed to the functions validate_grading_element() and submit_and_get_grade()
Plugins may use $gradingformelement->getValue() to get the value passed on previous form submit
When forming html it is a plugin's responsibility to analyze flags $gradingformelement->_flagFrozen and $gradingformelement->_persistantFreeze:
(_flagFrozen == false) => form element is editable
(_flagFrozen == false && _persistantFreeze == true) => form element is not editable but all values are passed as hidden elements
(_flagFrozen == false && _persistantFreeze == false) => form element is not editable and no values are passed as hidden elements
Plugins are welcome to use AJAX in the form element. But it is strongly recommended that the grading only becomes active when teacher presses 'Submit' button (the method submit_and_get_grade() is invoked)
Also client-side JS validation may be implemented here
| moodle_page | $page | |
| MoodleQuickForm_grading | $gradingformelement |
Reimplemented in gradingform_rubric_instance.
| submit_and_get_grade | ( | $ | elementvalue, |
| $ | itemid | ||
| ) |
Called when teacher submits the grading form: updates the instance in DB, marks it as ACTIVE and returns the grade to be pushed to the gradebook. $itemid must be specified here (it was not required when the instance was created, because it might not existed in draft)
| array | $elementvalue | |
| int | $itemid |
Definition at line 815 of file lib.php.

| update | ( | $ | elementvalue | ) |
Updates the instance with the data received from grading form. This function may be called via AJAX when grading is not yet completed, so it does not change the status of the instance.
| array | $elementvalue |
Reimplemented in gradingform_rubric_instance.
Definition at line 783 of file lib.php.


| validate_grading_element | ( | $ | elementvalue | ) |
Server-side validation of the data received from grading form.
| mixed | $elementvalue | is the scalar or array received in $_POST |
Reimplemented in gradingform_rubric_instance.
| const INSTANCE_STATUS_ACTIVE = 1 |
| const INSTANCE_STATUS_ARCHIVE = 3 |
| const INSTANCE_STATUS_INCOMPLETE = 0 |
| const INSTANCE_STATUS_NEEDUPDATE = 2 |