Moodle APIs  3.8
Moodle 3.8.6 (Build: 20201109)
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
assign_feedback_comments Class Reference

Library class for comment feedback plugin extending feedback plugin base class. More...

Inheritance diagram for assign_feedback_comments:
assign_feedback_plugin assign_plugin

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. More...
 
 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) More...
 
 delete_instance ()
 The assignment has been deleted - cleanup. More...
 
 disable ()
 Set this plugin to disabled. More...
 
 enable ()
 Set this plugin to enabled. More...
 
 files_for_gradebook (stdClass $grade)
 Return any files this plugin wishes to save to the gradebook. More...
 
 format_for_gradebook (stdClass $grade)
 If this plugin adds to the gradebook comments field, it must specify the format of the text of the comment. More...
 
 format_for_log (stdClass $submissionorgrade)
 Formatting for log info. More...
 
 get_config ($setting=null)
 Get a configuration value for this plugin. More...
 
 get_config_file_areas ()
 Get a list of file areas associated with the plugin configuration. More...
 
 get_config_for_external ()
 Return the plugin configs for external functions. More...
 
 get_editor_fields ()
 Return a list of the text fields that can be imported/exported by this plugin. More...
 
 get_editor_format ($name, $submissionid)
 Given a field name, should return the format of an editor field that is part of this plugin. More...
 
 get_editor_text ($name, $gradeid)
 Get the saved text content from the editor. More...
 
 get_error ()
 What was the last error? More...
 
 get_external_parameters ()
 Return a description of external params suitable for uploading an feedback comment from a webservice. More...
 
 get_feedback_comments ($gradeid)
 Get the feedback comment from the database. More...
 
 get_file_areas ()
 Get file areas returns a list of areas this plugin stores files. More...
 
 get_file_info ($browser, $filearea, $itemid, $filepath, $filename)
 Default implementation of file_get_info for plugins. More...
 
 get_files (stdClass $submissionorgrade, stdClass $user)
 Produce a list of files suitable for export that represent this feedback or submission. More...
 
 get_form_elements ($submissionorgrade, MoodleQuickForm $mform, stdClass $data)
 Get any additional fields for the submission/grading form for this assignment. More...
 
 get_form_elements_for_user ($grade, MoodleQuickForm $mform, stdClass $data, $userid)
 Get form elements for the grading page. More...
 
 get_grading_actions ()
 Return a list of the grading actions supported by this plugin. More...
 
 get_grading_batch_operations ()
 Return a list of the batch grading operations supported by this plugin. More...
 
 get_name ()
 Get the name of the online comment feedback plugin. More...
 
 get_quickgrading_html ($userid, $grade)
 Get quickgrading form elements as html. More...
 
 get_requires ()
 Get the required moodle version for this plugin. More...
 
 get_settings (MoodleQuickForm $mform)
 Get the default setting for feedback comments plugin. More...
 
 get_sort_order ()
 Get the numerical sort order for this plugin. More...
 
 get_subtype ()
 Return subtype name of the plugin. More...
 
 get_type ()
 Should return the type of this plugin. More...
 
 get_version ()
 Get the installed version of this plugin. More...
 
 grading_action ($gradingaction)
 Show a grading action form. More...
 
 grading_batch_operation ($action, $users)
 Show a batch operations form. More...
 
 has_admin_settings ()
 Has this plugin got a custom settings.php file? More...
 
 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. More...
 
 is_configurable ()
 If true, the plugin will appear on the module settings page and can be enabled/disabled per assignment instance. More...
 
 is_empty (stdClass $grade)
 Returns true if there are no feedback comments for the given grade. More...
 
 is_enabled ()
 Allows hiding this plugin from the submission/feedback screen if it is not enabled. More...
 
 is_feedback_modified (stdClass $grade, stdClass $data)
 Has the comment feedback been modified? More...
 
 is_first ()
 Is this the first plugin in the list? More...
 
 is_last ()
 Is this the last plugin in the list? More...
 
 is_quickgrading_modified ($userid, $grade)
 Has the plugin quickgrading form element been modified in the current form submission? More...
 
 is_visible ()
 Is this plugin enaled? More...
 
 save (stdClass $grade, stdClass $data)
 Saving the comment content into database. More...
 
 save_quickgrading_changes ($userid, $grade)
 Save quickgrading changes. More...
 
 save_settings (stdClass $data)
 Save the settings for feedback comments plugin. More...
 
 set_config ($name, $value)
 Set a configuration value for this plugin. More...
 
 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. More...
 
 set_editor_text ($name, $value, $gradeid)
 Get the saved text content from the editor. More...
 
 supports_quickgrading ()
 Override to indicate a plugin supports quickgrading. More...
 
 supports_review_panel ()
 Supports injecting content into the review panel of the grading app. More...
 
 text_for_gradebook (stdClass $grade)
 If this plugin adds to the gradebook comments field, it must format the text of the comment. More...
 
 upgrade (context $oldcontext, stdClass $oldassignment, stdClass $oldsubmission, stdClass $grade, & $log)
 Upgrade the feedback from the old assignment to the new one. More...
 
 upgrade_settings (context $oldcontext, stdClass $oldassignment, & $log)
 Upgrade the settings from the old assignment to the new plugin based one. More...
 
 view (stdClass $grade)
 Display the comment in the feedback table. More...
 
 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. More...
 
 view_page ($action)
 This allows a plugin to render a page in the context of the assignment. More...
 
 view_summary (stdClass $grade, & $showviewlink)
 Display the comment in the feedback table. More...
 

Static Public Member Functions

static cron ()
 Run cron for this plugin.
 

Protected Member Functions

 convert_submission_text_to_feedback ($submission, $data, $grade)
 Convert the text from any submission plugin that has an editor field to a format suitable for inserting in the feedback text field. More...
 
 set_error ($msg)
 Save the error message from the last error. More...
 

Protected Attributes

assign $assignment
 $assignment the assignment record that contains the global settings for this assign instance
 

Detailed Description

Library class for comment 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_feedback_comments::can_upgrade (   $type,
  $version 
)

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

Parameters
string$typeold assignment subtype
int$versionold assignment version
Return values
boolTrue if upgrade is possible

Reimplemented from assign_plugin.

◆ convert_submission_text_to_feedback()

assign_feedback_comments::convert_submission_text_to_feedback (   $submission,
  $data,
  $grade 
)
protected

Convert the text from any submission plugin that has an editor field to a format suitable for inserting in the feedback text field.

Parameters
stdClass$submission
stdClass$data- Form data to be filled with the converted submission text and format.
stdClass | null$grade
Return values
boolean- True if feedback text was set.

◆ 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_feedback_comments::delete_instance ( )

The assignment has been deleted - cleanup.

Return values
bool

Reimplemented from assign_plugin.

◆ disable()

assign_plugin::disable ( )
finalinherited

Set this plugin to disabled.

Return values
bool

◆ enable()

assign_plugin::enable ( )
finalinherited

Set this plugin to enabled.

Return values
bool

◆ files_for_gradebook()

assign_feedback_comments::files_for_gradebook ( stdClass  $grade)

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

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

Reimplemented from assign_feedback_plugin.

◆ format_for_gradebook()

assign_feedback_comments::format_for_gradebook ( stdClass  $grade)

If this plugin adds to the gradebook comments field, it must specify the format of 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
int

Reimplemented from assign_feedback_plugin.

◆ format_for_log()

assign_plugin::format_for_log ( stdClass  $submissionorgrade)
inherited

Formatting for log info.

Parameters
stdClass$submissionorgradeassign_submission or assign_grade The new submission or grade
Return values
string

Reimplemented in assign_submission_onlinetext, and assign_submission_file.

◆ 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_comments::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_feedback_comments::get_editor_fields ( )

Return a list of the text fields that can be imported/exported by this plugin.

Return values
arrayAn array of field names and descriptions. (name=>description, ...)

Reimplemented from assign_plugin.

◆ 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_feedback_comments::get_editor_text (   $name,
  $gradeid 
)

Get the saved text content from the editor.

Parameters
string$name
int$gradeid
Return values
string

Reimplemented from assign_plugin.

◆ get_error()

assign_plugin::get_error ( )
finalinherited

What was the last error?

Return values
string

◆ get_external_parameters()

assign_feedback_comments::get_external_parameters ( )

Return a description of external params suitable for uploading an feedback comment from a webservice.

Return values
external_description|null

Reimplemented from assign_plugin.

◆ get_feedback_comments()

assign_feedback_comments::get_feedback_comments (   $gradeid)

Get the feedback comment from the database.

Parameters
int$gradeid
Return values
stdClass|falseThe feedback comments for the given grade if it exists. False if it doesn't.

◆ get_file_areas()

assign_feedback_comments::get_file_areas ( )

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

Return values
array- An array of fileareas (keys) and descriptions (values)

Reimplemented from assign_plugin.

◆ 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_onlinetext, and assign_submission_file.

◆ get_form_elements()

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

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().

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
Return values
boolean- true if we added anything to the form

Reimplemented in assign_submission_onlinetext, assign_submission_file, and assign_feedback_offline.

◆ get_form_elements_for_user()

assign_feedback_comments::get_form_elements_for_user (   $grade,
MoodleQuickForm  $mform,
stdClass  $data,
  $userid 
)

Get form elements for the grading page.

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

Reimplemented from assign_plugin.

◆ get_grading_actions()

assign_feedback_plugin::get_grading_actions ( )
inherited

Return a list of the grading actions supported by this plugin.

A grading action is a page that is not specific to a user but to the whole assignment.

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

Reimplemented in assign_feedback_offline, and assign_feedback_file.

◆ 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_comments::get_name ( )

Get the name of the online comment feedback plugin.

Return values
string

Reimplemented from assign_plugin.

◆ get_quickgrading_html()

assign_feedback_comments::get_quickgrading_html (   $userid,
  $grade 
)

Get quickgrading form elements as html.

Parameters
int$useridThe user id in the table this quickgrading element relates to
mixed$grade- 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

Reimplemented from assign_feedback_plugin.

◆ get_requires()

assign_plugin::get_requires ( )
finalinherited

Get the required moodle version for this plugin.

Return values
string

◆ get_settings()

assign_feedback_comments::get_settings ( MoodleQuickForm  $mform)

Get the default setting for feedback comments plugin.

Parameters
MoodleQuickForm$mformThe form to add elements to
Return values
void

Reimplemented from assign_plugin.

◆ 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_plugin::has_user_summary ( )
inherited

If this plugin should not include a column in the grading table or a row on the summary page then return false.

Return values
bool

Reimplemented in assign_feedback_offline.

◆ 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_submission_comments, and assign_feedback_editpdf.

◆ is_empty()

assign_feedback_comments::is_empty ( stdClass  $grade)

Returns true if there are no feedback comments for the given grade.

Parameters
stdClass$grade
Return values
bool

Reimplemented from assign_plugin.

◆ is_enabled()

assign_plugin::is_enabled ( )
inherited

Allows hiding this plugin from the submission/feedback screen if it is not enabled.

Return values
bool- if false - this plugin will not accept submissions / feedback

Reimplemented in assign_submission_comments, and assign_feedback_offline.

◆ is_feedback_modified()

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

Has the comment feedback been modified?

Parameters
stdClass$gradeThe grade object.
stdClass$dataData from the form submission.
Return values
booleanTrue if the comment feedback has been modified, else 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_comments::is_quickgrading_modified (   $userid,
  $grade 
)

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 from assign_feedback_plugin.

◆ is_visible()

assign_plugin::is_visible ( )
finalinherited

Is this plugin enaled?

Return values
bool

◆ save()

assign_feedback_comments::save ( stdClass  $grade,
stdClass  $data 
)

Saving the comment content into database.

Parameters
stdClass$grade
stdClass$data
Return values
bool

Reimplemented from assign_plugin.

◆ save_quickgrading_changes()

assign_feedback_comments::save_quickgrading_changes (   $userid,
  $grade 
)

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 from assign_feedback_plugin.

◆ save_settings()

assign_feedback_comments::save_settings ( stdClass  $data)

Save the settings for feedback comments plugin.

Parameters
stdClass$data
Return values
bool

Reimplemented from assign_plugin.

◆ 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_feedback_comments::set_editor_text (   $name,
  $value,
  $gradeid 
)

Get the saved text content from the editor.

Parameters
string$name
string$value
int$gradeid
Return values
string

Reimplemented from assign_plugin.

◆ 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_comments::supports_quickgrading ( )

Override to indicate a plugin supports quickgrading.

Return values
boolean- True if the plugin supports quickgrading

Reimplemented from assign_feedback_plugin.

◆ 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_comments::text_for_gradebook ( stdClass  $grade)

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 from assign_feedback_plugin.

◆ upgrade()

assign_feedback_comments::upgrade ( context  $oldcontext,
stdClass  $oldassignment,
stdClass  $oldsubmission,
stdClass  $grade,
$log 
)

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

Parameters
context$oldcontext- the database for the old assignment context
stdClass$oldassignmentThe data record for the old assignment
stdClass$oldsubmissionThe data record for the old submission
stdClass$gradeThe data record for the new grade
string$logRecord upgrade messages in the log
Return values
booltrue or false - false will trigger a rollback

Reimplemented from assign_plugin.

◆ upgrade_settings()

assign_feedback_comments::upgrade_settings ( context  $oldcontext,
stdClass  $oldassignment,
$log 
)

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

Parameters
context$oldcontext- the context for the old assignment
stdClass$oldassignment- the data for the old assignment
string$log- can be appended to by the upgrade
Return values
boolwas it a success? (false will trigger a rollback)

Reimplemented from assign_plugin.

◆ view()

assign_feedback_comments::view ( stdClass  $grade)

Display the comment in the feedback table.

Parameters
stdClass$grade
Return values
string

Reimplemented from assign_plugin.

◆ 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_plugin::view_page (   $action)
inherited

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

Parameters
string$actionThe plugin specified action
Return values
string

Reimplemented in assign_feedback_offline, and assign_feedback_file.

◆ view_summary()

assign_feedback_comments::view_summary ( stdClass  $grade,
$showviewlink 
)

Display the comment in the feedback table.

Parameters
stdClass$grade
bool$showviewlinkSet to true to show a link to view the full feedback
Return values
string

Reimplemented from assign_plugin.


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