Moodle APIs 4.3
Moodle 4.3.6 (Build: 20240812)
assign_feedback_offline Class Reference

library class for file feedback plugin extending feedback plugin base class More...

Inheritance diagram for assign_feedback_offline:

Public Member Functions

 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.
 
 download_grades ()
 Download a marking worksheet.
 
 enable ()
 Set this plugin to enabled.
 
 files_for_gradebook (stdClass $grade)
 Return any files this plugin wishes to save to the gradebook.
 
 format_for_gradebook (stdClass $grade)
 If this plugin adds to the gradebook comments field, it must specify the format of the comment.
 
 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.
 
 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 ($grade, MoodleQuickForm $mform, stdClass $data)
 Get form elements for grading form.
 
 get_form_elements_for_user ($submissionorgrade, MoodleQuickForm $mform, stdClass $data, $userid)
 Get any additional fields for the submission/grading form for this assignment.
 
 get_grading_actions ()
 Return a list of the grading actions performed by this plugin This plugin supports upload zip.
 
 get_grading_batch_operations ()
 Return a list of the batch grading operations supported by this plugin.
 
 get_name ()
 Get the name of the file feedback plugin.
 
 get_quickgrading_html ($userid, $grade)
 Get quickgrading form elements as html.
 
 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 ()
 Return subtype name of the plugin.
 
 get_type ()
 Should return the type of this plugin.
 
 get_version ()
 Get the installed version of this plugin.
 
 grading_action ($gradingaction)
 Show a grading action form.
 
 grading_batch_operation ($action, $users)
 Show a batch operations form.
 
 has_admin_settings ()
 Has this plugin got a custom settings.php file?
 
 has_user_summary ()
 Do not show this plugin in the grading table or on the front page.
 
 is_configurable ()
 If true, the plugin will appear on the module settings page and can be enabled/disabled per assignment instance.
 
 is_empty (stdClass $grade)
 Return true if there are no feedback files.
 
 is_enabled ()
 Override the default is_enabled to disable this plugin if advanced grading is active.
 
 is_feedback_modified (stdClass $grade, stdClass $data)
 This plugin does not save through the normal interface so this returns false.
 
 is_first ()
 Is this the first plugin in the list?
 
 is_last ()
 Is this the last plugin in the list?
 
 is_quickgrading_modified ($userid, $grade)
 Has the plugin quickgrading form element been modified in the current form submission?
 
 is_visible ()
 Is this plugin enaled?
 
 process_import_grades ($draftid, $importid, $ignoremodified, $encoding='utf-8', $separator='comma')
 Loop through uploaded grades and update the grades for this assignment.
 
 save (stdClass $submissionorgrade, stdClass $data)
 Save any custom data for this form submission.
 
 save_quickgrading_changes ($userid, $grade)
 Save quickgrading changes.
 
 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.
 
 supports_quickgrading ()
 Override to indicate a plugin supports quickgrading.
 
 supports_review_panel ()
 Supports injecting content into the review panel of the grading app.
 
 text_for_gradebook (stdClass $grade)
 If this plugin adds to the gradebook comments field, it must format the text of the comment.
 
 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.
 
 upload_grades ()
 Display upload grades form.
 
 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)
 Print a sub page in this plugin.
 
 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
 

Detailed Description

library class for file feedback plugin extending feedback plugin base class

License
http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later

Member Function Documentation

◆ can_upgrade()

assign_plugin::can_upgrade ( $type,
$version )
inherited

Return true if this plugin can upgrade an old Moodle 2.2 assignment of this type and version.

Parameters
string$typeThe old assignment subtype
int$versionThe old assignment version
Return values
boolTrue if upgrade is possible

Reimplemented in assign_feedback_comments, assign_feedback_file, assign_submission_comments, assign_submission_file, and assign_submission_onlinetext.

◆ data_preprocessing()

assign_plugin::data_preprocessing ( & $defaultvalues)
inherited

Allows the plugin to update the defaultvalues passed in to the settings form (needed to set up draft areas for editor and filemanager elements)

Parameters
array$defaultvalues

◆ delete_instance()

assign_plugin::delete_instance ( )
inherited

The assignment has been deleted - remove the plugin specific data.

Return values
bool

Reimplemented in assign_feedback_comments, assign_feedback_editpdf, assign_feedback_file, assign_submission_file, and assign_submission_onlinetext.

◆ disable()

assign_plugin::disable ( )
finalinherited

Set this plugin to disabled.

Return values
bool

◆ download_grades()

assign_feedback_offline::download_grades ( )

Download a marking worksheet.

Return values
stringThe response html

◆ enable()

assign_plugin::enable ( )
finalinherited

Set this plugin to enabled.

Return values
bool

◆ files_for_gradebook()

assign_feedback_plugin::files_for_gradebook ( stdClass $grade)
inherited

Return any files this plugin wishes to save to the gradebook.

The array being returned should contain the necessary information to identify and copy the files.

eg.

[ 'contextid' => $modulecontext->id, 'component' => ASSIGNFEEDBACK_XYZ_COMPONENT, 'filearea' => ASSIGNFEEDBACK_XYZ_FILEAREA, 'itemid' => $grade->id ]

Parameters
stdClass$gradeThe assign_grades object from the db
Return values
array

Reimplemented in assign_feedback_comments.

◆ format_for_gradebook()

assign_feedback_plugin::format_for_gradebook ( stdClass $grade)
inherited

If this plugin adds to the gradebook comments field, it must specify the format of the comment.

(From weblib.php) define('FORMAT_MOODLE', '0'); // Does all sorts of transformations and filtering define('FORMAT_HTML', '1'); // Plain HTML (with some tags stripped) define('FORMAT_PLAIN', '2'); // Plain text (even tags are printed in full) define('FORMAT_WIKI', '3'); // Wiki-formatted text define('FORMAT_MARKDOWN', '4'); // Markdown-formatted

Only one feedback plugin can push comments to the gradebook and that is chosen by the assignment settings page.

Parameters
stdClass$gradeThe grade
Return values
int

Reimplemented in assign_feedback_comments.

◆ format_for_log()

assign_plugin::format_for_log ( )
inherited
Deprecated
since 2.7

◆ get_config()

assign_plugin::get_config ( $setting = null)
finalinherited

Get a configuration value for this plugin.

Parameters
mixed$settingThe config key (string) or null
Return values
mixedstring | false

◆ get_config_file_areas()

assign_plugin::get_config_file_areas ( )
inherited

Get a list of file areas associated with the plugin configuration.

This is used for backup/restore.

Return values
arraynames of the fileareas, can be an empty array

◆ get_config_for_external()

assign_feedback_offline::get_config_for_external ( )

Return the plugin configs for external functions.

Return values
arraythe list of settings
Since
Moodle 3.2

Reimplemented from assign_plugin.

◆ get_editor_fields()

assign_plugin::get_editor_fields ( )
inherited

Return a list of the fields that can be exported or imported via text.

Return values
array- The list of field names (strings) and descriptions. ($name => $description)

Reimplemented in assign_feedback_comments, and assign_submission_onlinetext.

◆ get_editor_format()

assign_plugin::get_editor_format ( $name,
$submissionid )
inherited

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.

Parameters
string$nameName of the field.
int$submissionidThe id of the submission
Return values
int- The format for the editor field

Reimplemented in assign_submission_onlinetext.

◆ get_editor_text()

assign_plugin::get_editor_text ( $name,
$submissionorgradeid )
inherited

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.

Parameters
string$nameName of the field.
int$submissionorgradeidThe id of the submission or grade
Return values
string- The text for the editor field

Reimplemented in assign_feedback_comments, and assign_submission_onlinetext.

◆ get_error()

assign_plugin::get_error ( )
finalinherited

What was the last error?

Return values
string

◆ get_external_parameters()

assign_plugin::get_external_parameters ( )
inherited

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.

Return values
external_description|null

Reimplemented in assign_feedback_comments, assign_feedback_file, assign_submission_file, and assign_submission_onlinetext.

◆ get_file_areas()

assign_plugin::get_file_areas ( )
inherited

Get file areas returns a list of areas this plugin stores files.

Return values
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.

◆ get_file_info()

assign_plugin::get_file_info ( $browser,
$filearea,
$itemid,
$filepath,
$filename )
inherited

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.

Parameters
file_browser$browser
string$filearea
int$itemid
string$filepath
string$filename
Return values
file_info_stored

◆ get_files()

assign_plugin::get_files ( stdClass $submissionorgrade,
stdClass $user )
inherited

Produce a list of files suitable for export that represent this feedback or submission.

Parameters
stdClass$submissionorgradeassign_submission or assign_grade For submission plugins this is the submission data, for feedback plugins it is the grade data
stdClass$userThe user record for the current submission. Needed for url rewriting if this is a group submission.
Return values
array- return an array of files indexed by filename

Reimplemented in assign_submission_file, and assign_submission_onlinetext.

◆ get_form_elements()

assign_feedback_offline::get_form_elements ( $grade,
MoodleQuickForm $mform,
stdClass $data )

Get form elements for grading form.

Parameters
stdClass$grade
MoodleQuickForm$mform
stdClass$data
Return values
booltrue if elements were added to the form

Reimplemented from assign_plugin.

◆ get_form_elements_for_user()

assign_plugin::get_form_elements_for_user ( $submissionorgrade,
MoodleQuickForm $mform,
stdClass $data,
$userid )
inherited

Get any additional fields for the submission/grading form for this assignment.

Parameters
mixed$submissionorgradesubmission|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.
Return values
boolean- true if we added anything to the form

Reimplemented in assign_feedback_comments, assign_feedback_editpdf, and assign_feedback_file.

◆ get_grading_actions()

assign_feedback_offline::get_grading_actions ( )

Return a list of the grading actions performed by this plugin This plugin supports upload zip.

Return values
arrayThe list of grading actions

Reimplemented from assign_feedback_plugin.

◆ get_grading_batch_operations()

assign_feedback_plugin::get_grading_batch_operations ( )
inherited

Return a list of the batch grading operations supported by this plugin.

Return values
array- An array of action and description strings. The action will be passed to grading_batch_operation.

Reimplemented in assign_feedback_file.

◆ get_name()

assign_feedback_offline::get_name ( )

Get the name of the file feedback plugin.

Return values
string

Reimplemented from assign_plugin.

◆ get_quickgrading_html()

assign_feedback_plugin::get_quickgrading_html ( $userid,
$grade )
inherited

Get quickgrading form elements as html.

Parameters
int$useridThe user id in the table this quickgrading element relates to
mixed$gradegrade or null - The grade data. May be null if there are no grades for this user (yet)
Return values
mixed- A html string containing the html form elements required for quickgrading or false to indicate this plugin does not support quickgrading

Reimplemented in assign_feedback_comments.

◆ get_requires()

assign_plugin::get_requires ( )
finalinherited

Get the required moodle version for this plugin.

Return values
string

◆ get_settings()

assign_plugin::get_settings ( MoodleQuickForm $mform)
inherited

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.

Parameters
MoodleQuickForm$mformThe form to add the elements to
Return values
$array

Reimplemented in assign_feedback_comments, assign_submission_file, and assign_submission_onlinetext.

◆ get_sort_order()

assign_plugin::get_sort_order ( )
finalinherited

Get the numerical sort order for this plugin.

Return values
int

◆ get_subtype()

assign_feedback_plugin::get_subtype ( )
inherited

Return subtype name of the plugin.

Return values
string

Reimplemented from assign_plugin.

◆ get_type()

assign_plugin::get_type ( )
finalinherited

Should return the type of this plugin.

Return values
string- the type

◆ get_version()

assign_plugin::get_version ( )
finalinherited

Get the installed version of this plugin.

Return values
string

◆ grading_action()

assign_feedback_plugin::grading_action ( $gradingaction)
inherited

Show a grading action form.

Parameters
string$gradingactionThe action chosen from the grading actions menu
Return values
stringThe page containing the form

◆ grading_batch_operation()

assign_feedback_plugin::grading_batch_operation ( $action,
$users )
inherited

Show a batch operations form.

Parameters
string$actionThe action chosen from the batch operations menu
array$usersThe list of selected userids
Return values
stringThe page containing the form

Reimplemented in assign_feedback_file.

◆ has_admin_settings()

assign_plugin::has_admin_settings ( )
finalinherited

Has this plugin got a custom settings.php file?

Return values
bool

◆ has_user_summary()

assign_feedback_offline::has_user_summary ( )

Do not show this plugin in the grading table or on the front page.

Return values
bool

Reimplemented from assign_plugin.

◆ is_configurable()

assign_plugin::is_configurable ( )
inherited

If true, the plugin will appear on the module settings page and can be enabled/disabled per assignment instance.

Return values
bool

Reimplemented in assign_feedback_editpdf, and assign_submission_comments.

◆ is_empty()

assign_feedback_offline::is_empty ( stdClass $grade)

Return true if there are no feedback files.

Parameters
stdClass$grade

Reimplemented from assign_plugin.

◆ is_enabled()

assign_feedback_offline::is_enabled ( )

Override the default is_enabled to disable this plugin if advanced grading is active.

Return values
bool

Reimplemented from assign_plugin.

◆ is_feedback_modified()

assign_feedback_offline::is_feedback_modified ( stdClass $grade,
stdClass $data )

This plugin does not save through the normal interface so this returns false.

Parameters
stdClass$gradeThe grade.
stdClass$dataForm data from the feedback form.
Return values
boolean- False

Reimplemented from assign_feedback_plugin.

◆ is_first()

assign_plugin::is_first ( )
finalinherited

Is this the first plugin in the list?

Return values
bool

◆ is_last()

assign_plugin::is_last ( )
finalinherited

Is this the last plugin in the list?

Return values
bool

◆ is_quickgrading_modified()

assign_feedback_plugin::is_quickgrading_modified ( $userid,
$grade )
inherited

Has the plugin quickgrading form element been modified in the current form submission?

Parameters
int$useridThe user id in the table this quickgrading element relates to
stdClass$gradeThe grade
Return values
boolean- true if the quickgrading form element has been modified

Reimplemented in assign_feedback_comments.

◆ is_visible()

assign_plugin::is_visible ( )
finalinherited

Is this plugin enaled?

Return values
bool

◆ process_import_grades()

assign_feedback_offline::process_import_grades ( $draftid,
$importid,
$ignoremodified,
$encoding = 'utf-8',
$separator = 'comma' )

Loop through uploaded grades and update the grades for this assignment.

Parameters
int$draftid- The unique draft item id for this import
int$importid- The unique import ID for this csv import operation
bool$ignoremodified- Ignore the last modified date when checking fields
string$encoding- Encoding of the file being processed.
string$separator- The character used to separate the information.
Return values
string- The html response

◆ save()

assign_plugin::save ( stdClass $submissionorgrade,
stdClass $data )
inherited

Save any custom data for this form submission.

Parameters
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
Return values
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.

◆ save_quickgrading_changes()

assign_feedback_plugin::save_quickgrading_changes ( $userid,
$grade )
inherited

Save quickgrading changes.

Parameters
int$useridThe user id in the table this quickgrading element relates to
stdClass$gradeThe grade
Return values
boolean- true if the grade changes were saved correctly

Reimplemented in assign_feedback_comments.

◆ save_settings()

assign_plugin::save_settings ( stdClass $formdata)
inherited

The assignment subtype is responsible for saving it's own settings as the database table for the standard type cannot be modified.

Parameters
stdClass$formdata- the data submitted from the form
Return values
bool- on error the subtype should call set_error and return false.

Reimplemented in assign_feedback_comments, assign_submission_file, and assign_submission_onlinetext.

◆ set_config()

assign_plugin::set_config ( $name,
$value )
finalinherited

Set a configuration value for this plugin.

Parameters
string$nameThe config key
string$valueThe config value
Return values
bool

◆ set_editor_format()

assign_plugin::set_editor_format ( $name,
$format,
$submissionorgradeid )
inherited

Given a field name and value should update the format for this field in the plugins submission or grade.

Parameters
string$nameName of the field.
int$formatUpdated format.
int$submissionorgradeidThe id of the submission or grade.
Return values
bool- true if the value was updated

◆ set_editor_text()

assign_plugin::set_editor_text ( $name,
$value,
$submissionorgradeid )
inherited

Given a field name and value should update the text for this field in the plugins submission or grade.

Parameters
string$nameName of the field.
string$valueUpdated text
int$submissionorgradeidThe id of the submission or grade
Return values
bool- true if the value was updated

Reimplemented in assign_feedback_comments.

◆ set_error()

assign_plugin::set_error ( $msg)
finalprotectedinherited

Save the error message from the last error.

Parameters
string$msg- the error description

◆ supports_quickgrading()

assign_feedback_plugin::supports_quickgrading ( )
inherited

Override to indicate a plugin supports quickgrading.

Return values
boolean- True if the plugin supports quickgrading

Reimplemented in assign_feedback_comments.

◆ supports_review_panel()

assign_feedback_plugin::supports_review_panel ( )
inherited

Supports injecting content into the review panel of the grading app.

Return values
boolTrue if this plugin will add content to the review panel of the grading app.

Reimplemented in assign_feedback_editpdf.

◆ text_for_gradebook()

assign_feedback_plugin::text_for_gradebook ( stdClass $grade)
inherited

If this plugin adds to the gradebook comments field, it must format the text of the comment.

Only one feedback plugin can push comments to the gradebook and that is chosen by the assignment settings page.

Parameters
stdClass$gradeThe grade
Return values
string

Reimplemented in assign_feedback_comments.

◆ upgrade()

assign_plugin::upgrade ( context $oldcontext,
stdClass $oldassignment,
stdClass $oldsubmissionorgrade,
stdClass $submissionorgrade,
& $log )
inherited

Upgrade the submission from the old assignment to the new one.

Parameters
context$oldcontextThe data record for the old context
stdClass$oldassignmentThe data record for the old assignment
stdClass$oldsubmissionorgradeThe data record for the old submission
stdClass$submissionorgradeassign_submission or assign_grade The new submission or grade
string$logRecord upgrade messages in the log
Return values
booleantrue 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.

◆ upgrade_settings()

assign_plugin::upgrade_settings ( context $oldcontext,
stdClass $oldassignment,
& $log )
inherited

Upgrade the settings from the old assignment to the new one.

Parameters
context$oldcontextThe context for the old assignment module
stdClass$oldassignmentThe data record for the old assignment
string$logRecord upgrade messages in the log
Return values
booltrue 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.

◆ upload_grades()

assign_feedback_offline::upload_grades ( )

Display upload grades form.

Return values
stringThe response html

◆ view()

assign_plugin::view ( stdClass $submissionorgrade)
inherited

Should not output anything - return the result as a string so it can be consumed by webservices.

Parameters
stdClass$submissionorgradeassign_submission or assign_grade For submission plugins this is the submission data, for feedback plugins it is the grade data
Return values
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.

◆ view_header()

assign_plugin::view_header ( )
inherited

This allows a plugin to render an introductory section which is displayed right below the activity's "intro" section on the main assignment page.

Return values
string

◆ view_page()

assign_feedback_offline::view_page ( $action)

Print a sub page in this plugin.

Parameters
string$action- The plugin action
Return values
stringThe response html

Reimplemented from assign_plugin.

◆ view_summary()

assign_plugin::view_summary ( stdClass $submissionorgrade,
& $showviewlink )
inherited

Should not output anything - return the result as a string so it can be consumed by webservices.

Parameters
stdClass$submissionorgradeassign_submission or assign_grade For submission plugins this is the submission data, for feedback plugins it is the grade data
bool$showviewlinkModifed to return whether or not to show a link to the full submission/feedback
Return values
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.


The documentation for this class was generated from the following file: