|
Moodle PHP Documentation 4.4
Moodle 4.4.9+ (Build: 20250711) (4ea86454947)
|
Abstract class for assign_plugin (submission/feedback). More...
Public Member Functions | |
| __construct (assign $assignment, $type) | |
| Constructor for the abstract plugin type class. | |
| can_upgrade ($type, $version) | |
| Return true if this plugin can upgrade an old Moodle 2.2 assignment of this type and version. | |
| data_preprocessing (&$defaultvalues) | |
| Allows the plugin to update the defaultvalues passed in to the settings form (needed to set up draft areas for editor and filemanager elements) | |
| delete_instance () | |
| The assignment has been deleted - remove the plugin specific data. | |
| disable () | |
| Set this plugin to disabled. | |
| enable () | |
| Set this plugin to enabled. | |
| format_for_log () | |
| get_config ($setting=null) | |
| Get a configuration value for this plugin. | |
| get_config_file_areas () | |
| Get a list of file areas associated with the plugin configuration. | |
| get_config_for_external () | |
| Return the plugin configs for external functions, in some cases the configs will need formatting or be returned only if the current user has some capabilities enabled. | |
| get_editor_fields () | |
| Return a list of the fields that can be exported or imported via text. | |
| get_editor_format ($name, $submissionid) | |
| Given a field name, should return the format of an editor field that is part of this plugin. | |
| get_editor_text ($name, $submissionorgradeid) | |
| Given a field name, should return the text of an editor field that is part of this plugin. | |
| get_error () | |
| What was the last error? | |
| get_external_parameters () | |
| If this plugin can participate in a webservice (save_submission or save_grade), return a list of external_params to be included in the definition of that webservice. | |
| get_file_areas () | |
| Get file areas returns a list of areas this plugin stores files. | |
| get_file_info ($browser, $filearea, $itemid, $filepath, $filename) | |
| Default implementation of file_get_info for plugins. | |
| get_files (stdClass $submissionorgrade, stdClass $user) | |
| Produce a list of files suitable for export that represent this feedback or submission. | |
| get_form_elements ($submissionorgrade, MoodleQuickForm $mform, stdClass $data) | |
| Get any additional fields for the submission/grading form for this assignment. | |
| get_form_elements_for_user ($submissionorgrade, MoodleQuickForm $mform, stdClass $data, $userid) | |
| Get any additional fields for the submission/grading form for this assignment. | |
| get_name () | |
| Should return the name of this plugin type. | |
| get_requires () | |
| Get the required moodle version for this plugin. | |
| get_settings (MoodleQuickForm $mform) | |
| This function should be overridden to provide an array of elements that can be added to a moodle form for display in the settings page for the assignment. | |
| get_sort_order () | |
| Get the numerical sort order for this plugin. | |
| get_subtype () | |
| Should return the subtype of this plugin. | |
| get_type () | |
| Should return the type of this plugin. | |
| get_version () | |
| Get the installed version of this plugin. | |
| has_admin_settings () | |
| Has this plugin got a custom settings.php file? | |
| has_user_summary () | |
| If this plugin should not include a column in the grading table or a row on the summary page then return false. | |
| is_configurable () | |
| If true, the plugin will appear on the module settings page and can be enabled/disabled per assignment instance. | |
| is_empty (stdClass $submissionorgrade) | |
| Is this assignment plugin empty? | |
| is_enabled () | |
| Allows hiding this plugin from the submission/feedback screen if it is not enabled. | |
| is_first () | |
| Is this the first plugin in the list? | |
| is_last () | |
| Is this the last plugin in the list? | |
| is_visible () | |
| Is this plugin enaled? | |
| save (stdClass $submissionorgrade, stdClass $data) | |
| Save any custom data for this form submission. | |
| save_settings (stdClass $formdata) | |
| The assignment subtype is responsible for saving it's own settings as the database table for the standard type cannot be modified. | |
| set_config ($name, $value) | |
| Set a configuration value for this plugin. | |
| set_editor_format ($name, $format, $submissionorgradeid) | |
| Given a field name and value should update the format for this field in the plugins submission or grade. | |
| set_editor_text ($name, $value, $submissionorgradeid) | |
| Given a field name and value should update the text for this field in the plugins submission or grade. | |
| upgrade (context $oldcontext, stdClass $oldassignment, stdClass $oldsubmissionorgrade, stdClass $submissionorgrade, & $log) | |
| Upgrade the submission from the old assignment to the new one. | |
| upgrade_settings (context $oldcontext, stdClass $oldassignment, & $log) | |
| Upgrade the settings from the old assignment to the new one. | |
| view (stdClass $submissionorgrade) | |
| Should not output anything - return the result as a string so it can be consumed by webservices. | |
| view_header () | |
| This allows a plugin to render an introductory section which is displayed right below the activity's "intro" section on the main assignment page. | |
| view_page ($action) | |
| This allows a plugin to render a page in the context of the assignment. | |
| view_summary (stdClass $submissionorgrade, & $showviewlink) | |
| Should not output anything - return the result as a string so it can be consumed by webservices. | |
Static Public Member Functions | |
| static | cron () |
| Run cron for this plugin. | |
Protected Member Functions | |
| set_error ($msg) | |
| Save the error message from the last error. | |
Protected Attributes | |
| assign | $assignment |
| $assignment the assignment record that contains the global settings for this assign instance | |
Abstract class for assign_plugin (submission/feedback).
|
final |
Constructor for the abstract plugin type class.
| assign | $assignment | |
| string | $type |
| assign_plugin::can_upgrade | ( | $type, | |
| $version ) |
Return true if this plugin can upgrade an old Moodle 2.2 assignment of this type and version.
| string | $type | The old assignment subtype |
| int | $version | The old assignment version |
| bool | True if upgrade is possible |
Reimplemented in assign_feedback_comments, assign_feedback_file, assign_submission_comments, assign_submission_file, and assign_submission_onlinetext.
| assign_plugin::data_preprocessing | ( | & | $defaultvalues | ) |
Allows the plugin to update the defaultvalues passed in to the settings form (needed to set up draft areas for editor and filemanager elements)
| array | $defaultvalues |
| assign_plugin::delete_instance | ( | ) |
The assignment has been deleted - remove the plugin specific data.
| bool |
Reimplemented in assign_feedback_comments, assign_feedback_editpdf, assign_feedback_file, assign_submission_file, and assign_submission_onlinetext.
|
final |
Set this plugin to disabled.
| bool |
|
final |
Set this plugin to enabled.
| bool |
| assign_plugin::format_for_log | ( | ) |
|
final |
Get a configuration value for this plugin.
| mixed | $setting | The config key (string) or null |
| mixed | string | false |
| assign_plugin::get_config_file_areas | ( | ) |
Get a list of file areas associated with the plugin configuration.
This is used for backup/restore.
| array | names of the fileareas, can be an empty array |
| assign_plugin::get_config_for_external | ( | ) |
Return the plugin configs for external functions, in some cases the configs will need formatting or be returned only if the current user has some capabilities enabled.
| array | the list of settings |
Reimplemented in assign_feedback_comments, assign_feedback_editpdf, assign_feedback_file, assign_feedback_offline, assign_submission_comments, assign_submission_file, and assign_submission_onlinetext.
| assign_plugin::get_editor_fields | ( | ) |
Return a list of the fields that can be exported or imported via text.
| array | - The list of field names (strings) and descriptions. ($name => $description) |
Reimplemented in assign_feedback_comments, and assign_submission_onlinetext.
| assign_plugin::get_editor_format | ( | $name, | |
| $submissionid ) |
Given a field name, should return the format of an editor field that is part of this plugin.
This is used when exporting to portfolio.
| string | $name | Name of the field. |
| int | $submissionid | The id of the submission |
| int | - The format for the editor field |
Reimplemented in assign_submission_onlinetext.
| assign_plugin::get_editor_text | ( | $name, | |
| $submissionorgradeid ) |
Given a field name, should return the text of an editor field that is part of this plugin.
This is used when exporting to portfolio.
| string | $name | Name of the field. |
| int | $submissionorgradeid | The id of the submission or grade |
| string | - The text for the editor field |
Reimplemented in assign_feedback_comments, and assign_submission_onlinetext.
|
final |
What was the last error?
| string |
| assign_plugin::get_external_parameters | ( | ) |
If this plugin can participate in a webservice (save_submission or save_grade), return a list of external_params to be included in the definition of that webservice.
| external_description|null |
Reimplemented in assign_feedback_comments, assign_feedback_file, assign_submission_file, and assign_submission_onlinetext.
| assign_plugin::get_file_areas | ( | ) |
Get file areas returns a list of areas this plugin stores files.
| array | - An array of fileareas (keys) and descriptions (values) |
Reimplemented in assign_feedback_comments, assign_feedback_editpdf, assign_feedback_file, assign_submission_file, and assign_submission_onlinetext.
| assign_plugin::get_file_info | ( | $browser, | |
| $filearea, | |||
| $itemid, | |||
| $filepath, | |||
| $filename ) |
Default implementation of file_get_info for plugins.
This is used by the filebrowser to browse a plugins file areas.
This implementation should work for most plugins but can be overridden if required.
| file_browser | $browser | |
| string | $filearea | |
| int | $itemid | |
| string | $filepath | |
| string | $filename |
| file_info_stored |
| assign_plugin::get_files | ( | stdClass | $submissionorgrade, |
| stdClass | $user ) |
Produce a list of files suitable for export that represent this feedback or submission.
| stdClass | $submissionorgrade | assign_submission or assign_grade For submission plugins this is the submission data, for feedback plugins it is the grade data |
| stdClass | $user | The user record for the current submission. Needed for url rewriting if this is a group submission. |
| array | - return an array of files indexed by filename |
Reimplemented in assign_submission_file, and assign_submission_onlinetext.
| assign_plugin::get_form_elements | ( | $submissionorgrade, | |
| MoodleQuickForm | $mform, | ||
| stdClass | $data ) |
Get any additional fields for the submission/grading form for this assignment.
This function is retained for backwards compatibility - new plugins should override get_form_elements_for_user().
| mixed | $submissionorgrade | submission|grade - For submission plugins this is the submission data, for feedback plugins it is the grade data |
| MoodleQuickForm | $mform | - This is the form |
| stdClass | $data | - This is the form data that can be modified for example by a filemanager element |
| boolean | - true if we added anything to the form |
Reimplemented in assign_feedback_offline, assign_submission_file, and assign_submission_onlinetext.
| assign_plugin::get_form_elements_for_user | ( | $submissionorgrade, | |
| MoodleQuickForm | $mform, | ||
| stdClass | $data, | ||
| $userid ) |
Get any additional fields for the submission/grading form for this assignment.
| mixed | $submissionorgrade | submission|grade - For submission plugins this is the submission data, for feedback plugins it is the grade data |
| MoodleQuickForm | $mform | - This is the form |
| stdClass | $data | - This is the form data that can be modified for example by a filemanager element |
| int | $userid | - This is the userid for the current submission. This is passed separately as there may not yet be a submission or grade. |
| boolean | - true if we added anything to the form |
Reimplemented in assign_feedback_comments, assign_feedback_editpdf, and assign_feedback_file.
|
abstract |
Should return the name of this plugin type.
| string | - the name |
Reimplemented in assign_feedback_comments, assign_feedback_editpdf, assign_feedback_file, assign_feedback_offline, assign_submission_comments, assign_submission_file, and assign_submission_onlinetext.
|
final |
Get the required moodle version for this plugin.
| string |
| assign_plugin::get_settings | ( | MoodleQuickForm | $mform | ) |
This function should be overridden to provide an array of elements that can be added to a moodle form for display in the settings page for the assignment.
| MoodleQuickForm | $mform | The form to add the elements to |
| $array |
Reimplemented in assign_feedback_comments, assign_submission_file, and assign_submission_onlinetext.
|
final |
Get the numerical sort order for this plugin.
| int |
|
abstract |
Should return the subtype of this plugin.
| string | - either 'assignsubmission' or 'feedback' |
Reimplemented in assign_feedback_plugin, and assign_submission_plugin.
|
final |
Should return the type of this plugin.
| string | - the type |
|
final |
Get the installed version of this plugin.
| string |
|
final |
Has this plugin got a custom settings.php file?
| bool |
| assign_plugin::has_user_summary | ( | ) |
If this plugin should not include a column in the grading table or a row on the summary page then return false.
| bool |
Reimplemented in assign_feedback_offline.
| assign_plugin::is_configurable | ( | ) |
If true, the plugin will appear on the module settings page and can be enabled/disabled per assignment instance.
| bool |
Reimplemented in assign_feedback_editpdf, and assign_submission_comments.
| assign_plugin::is_empty | ( | stdClass | $submissionorgrade | ) |
Is this assignment plugin empty?
(ie no submission or feedback)
| stdClass | $submissionorgrade | assign_submission or assign_grade |
| bool |
Reimplemented in assign_feedback_comments, assign_feedback_editpdf, assign_feedback_file, assign_feedback_offline, assign_submission_comments, assign_submission_file, and assign_submission_onlinetext.
| assign_plugin::is_enabled | ( | ) |
Allows hiding this plugin from the submission/feedback screen if it is not enabled.
| bool | - if false - this plugin will not accept submissions / feedback |
Reimplemented in assign_feedback_offline, and assign_submission_comments.
|
final |
Is this the first plugin in the list?
| bool |
|
final |
Is this the last plugin in the list?
| bool |
|
final |
Is this plugin enaled?
| bool |
| assign_plugin::save | ( | stdClass | $submissionorgrade, |
| stdClass | $data ) |
Save any custom data for this form submission.
| stdClass | $submissionorgrade | - assign_submission or assign_grade. For submission plugins this is the submission data, for feedback plugins it is the grade data |
| stdClass | $data | - the data submitted from the form |
| bool | - on error the subtype should call set_error and return false. |
Reimplemented in assign_feedback_comments, assign_feedback_editpdf, assign_feedback_file, assign_submission_file, and assign_submission_onlinetext.
| assign_plugin::save_settings | ( | stdClass | $formdata | ) |
The assignment subtype is responsible for saving it's own settings as the database table for the standard type cannot be modified.
| stdClass | $formdata | - the data submitted from the form |
| bool | - on error the subtype should call set_error and return false. |
Reimplemented in assign_feedback_comments, assign_submission_file, and assign_submission_onlinetext.
|
final |
Set a configuration value for this plugin.
| string | $name | The config key |
| string | $value | The config value |
| bool |
| assign_plugin::set_editor_format | ( | $name, | |
| $format, | |||
| $submissionorgradeid ) |
Given a field name and value should update the format for this field in the plugins submission or grade.
| string | $name | Name of the field. |
| int | $format | Updated format. |
| int | $submissionorgradeid | The id of the submission or grade. |
| bool | - true if the value was updated |
| assign_plugin::set_editor_text | ( | $name, | |
| $value, | |||
| $submissionorgradeid ) |
Given a field name and value should update the text for this field in the plugins submission or grade.
| string | $name | Name of the field. |
| string | $value | Updated text |
| int | $submissionorgradeid | The id of the submission or grade |
| bool | - true if the value was updated |
Reimplemented in assign_feedback_comments.
|
finalprotected |
Save the error message from the last error.
| string | $msg | - the error description |
| assign_plugin::upgrade | ( | context | $oldcontext, |
| stdClass | $oldassignment, | ||
| stdClass | $oldsubmissionorgrade, | ||
| stdClass | $submissionorgrade, | ||
| & | $log ) |
Upgrade the submission from the old assignment to the new one.
| context | $oldcontext | The data record for the old context |
| stdClass | $oldassignment | The data record for the old assignment |
| stdClass | $oldsubmissionorgrade | The data record for the old submission |
| stdClass | $submissionorgrade | assign_submission or assign_grade The new submission or grade |
| string | $log | Record upgrade messages in the log |
| boolean | true or false - false will trigger a rollback |
Reimplemented in assign_feedback_comments, assign_feedback_file, assign_submission_comments, assign_submission_file, and assign_submission_onlinetext.
| assign_plugin::upgrade_settings | ( | context | $oldcontext, |
| stdClass | $oldassignment, | ||
| & | $log ) |
Upgrade the settings from the old assignment to the new one.
| context | $oldcontext | The context for the old assignment module |
| stdClass | $oldassignment | The data record for the old assignment |
| string | $log | Record upgrade messages in the log |
| bool | true or false - false will trigger a rollback |
Reimplemented in assign_feedback_comments, assign_feedback_file, assign_submission_comments, assign_submission_file, and assign_submission_onlinetext.
| assign_plugin::view | ( | stdClass | $submissionorgrade | ) |
Should not output anything - return the result as a string so it can be consumed by webservices.
| stdClass | $submissionorgrade | assign_submission or assign_grade For submission plugins this is the submission data, for feedback plugins it is the grade data |
| string | - return a string representation of the submission in full |
Reimplemented in assign_feedback_comments, assign_feedback_editpdf, assign_feedback_file, assign_submission_file, and assign_submission_onlinetext.
| assign_plugin::view_header | ( | ) |
This allows a plugin to render an introductory section which is displayed right below the activity's "intro" section on the main assignment page.
| string |
| assign_plugin::view_page | ( | $action | ) |
This allows a plugin to render a page in the context of the assignment.
If the plugin creates a link to the assignment view.php page with The following required parameters: id=coursemoduleid plugin=type pluginsubtype=assignfeedback|assignsubmission pluginaction=customaction
Then this function will be called to display the page with the pluginaction passed as action
| string | $action | The plugin specified action |
| string |
Reimplemented in assign_feedback_file, and assign_feedback_offline.
| assign_plugin::view_summary | ( | stdClass | $submissionorgrade, |
| & | $showviewlink ) |
Should not output anything - return the result as a string so it can be consumed by webservices.
| stdClass | $submissionorgrade | assign_submission or assign_grade For submission plugins this is the submission data, for feedback plugins it is the grade data |
| bool | $showviewlink | Modifed to return whether or not to show a link to the full submission/feedback |
| string | - return a string representation of the submission in full |
Reimplemented in assign_feedback_comments, assign_feedback_editpdf, assign_feedback_file, assign_submission_comments, assign_submission_file, and assign_submission_onlinetext.