From abf3a51e29b0ef2d70ff70c7c6a6cb50a2d718c7 Mon Sep 17 00:00:00 2001 From: Frederic Massart Date: Mon, 28 Apr 2014 15:13:55 +0800 Subject: [PATCH] MDL-45257 mod_assign: Removing wonky feedback_updated event --- mod/assign/classes/event/feedback_updated.php | 110 ------------------ mod/assign/feedback/offline/locallib.php | 12 +- mod/assign/tests/events_test.php | 34 ------ 3 files changed, 1 insertion(+), 155 deletions(-) delete mode 100644 mod/assign/classes/event/feedback_updated.php diff --git a/mod/assign/classes/event/feedback_updated.php b/mod/assign/classes/event/feedback_updated.php deleted file mode 100644 index 2bab6fe3d52..00000000000 --- a/mod/assign/classes/event/feedback_updated.php +++ /dev/null @@ -1,110 +0,0 @@ -. - -/** - * The mod_assign feedback updated event. - * - * @package mod_assign - * @copyright 2014 Mark Nelson - * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later - */ - -namespace mod_assign\event; - -defined('MOODLE_INTERNAL') || die(); - -/** - * The mod_assign feedback updated event. - * - * @property-read array $other { - * Extra information about event. - * - * - int assignid: the id of the assignment. - * } - * - * @package mod_assign - * @since Moodle 2.7 - * @copyright 2014 Mark Nelson - * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later - */ -class feedback_updated extends base { - /** - * Create instance of event. - * - * @param \assign $assign - * @param \stdClass $grade - * @return feedback_updated - */ - public static function create_from_grade(\assign $assign, \stdClass $grade) { - $data = array( - 'objectid' => $grade->id, - 'relateduserid' => $grade->userid, - 'context' => $assign->get_context(), - 'other' => array( - 'assignid' => $assign->get_instance()->id, - ), - ); - /** @var feedback_updated $event */ - $event = self::create($data); - $event->set_assign($assign); - $event->add_record_snapshot('assign_grades', $grade); - return $event; - } - - /** - * Init method. - */ - protected function init() { - $this->data['crud'] = 'r'; - $this->data['edulevel'] = self::LEVEL_TEACHING; - } - - /** - * Returns localised general event name. - * - * @return string - */ - public static function get_name() { - return get_string('eventfeedbackupdated', 'mod_assign'); - } - - /** - * Returns description of what happened. - * - * @return string - */ - public function get_description() { - return "The user with the id {$this->userid} updated the feedback for the user with the id {$this->relateduserid} - for the assignment with the id {$this->other['assignid']}."; - } - - /** - * Custom validation. - * - * @throws \coding_exception - */ - protected function validate_data() { - parent::validate_data(); - - if (!isset($this->relateduserid)) { - throw new \coding_exception('The \'relateduserid\' must be set.'); - } - - if (!isset($this->other['assignid'])) { - throw new \coding_exception('The \'assignid\' must be set in other.'); - } - } -} diff --git a/mod/assign/feedback/offline/locallib.php b/mod/assign/feedback/offline/locallib.php index cc5c5d8aad1..798fd3e0b9d 100644 --- a/mod/assign/feedback/offline/locallib.php +++ b/mod/assign/feedback/offline/locallib.php @@ -187,17 +187,7 @@ class assign_feedback_offline extends assign_feedback_plugin { $updatecount += 1; $grade = $this->assignment->get_user_grade($record->user->id, true); $this->assignment->notify_grade_modified($grade); - if ($plugin->set_editor_text($field, $newvalue, $grade->id)) { - $logdesc = new lang_string('feedbackupdate', 'assignfeedback_offline', - array('field'=>$description, - 'student'=>$userdesc, - 'text'=>$newvalue)); - - // Trigger event for updating the feedback. - $event = \mod_assign\event\feedback_updated::create_from_grade($this->assignment, $grade); - $event->set_legacy_logdata('save grading feedback', $logdesc); - $event->trigger(); - } + $plugin->set_editor_text($field, $newvalue, $grade->id); // If this is the gradebook comments plugin - post an update to the gradebook. if (($plugin->get_subtype() . '_' . $plugin->get_type()) == $gradebookplugin) { diff --git a/mod/assign/tests/events_test.php b/mod/assign/tests/events_test.php index ac391b9c637..4c4400222f2 100644 --- a/mod/assign/tests/events_test.php +++ b/mod/assign/tests/events_test.php @@ -648,40 +648,6 @@ class assign_events_testcase extends mod_assign_base_testcase { $this->assertEventContextNotUsed($event); } - /** - * Test the feedback_updated event. - */ - public function test_feedback_updated() { - $assign = $this->create_instance(); - - $logdesc = get_string('feedbackupdate', 'assignfeedback_offline', - array('field' => 'The description', - 'student' => 'The student\'s name', - 'text' => 'Text')); - $event = \mod_assign\event\feedback_updated::create(array( - 'userid' => 2, - 'relateduserid' => 2, - 'context' => $assign->get_context(), - 'other' => array( - 'assignid' => $assign->get_instance()->id - ) - )); - $event->set_legacy_logdata('save grading feedback', $logdesc); - - // Trigger and capture the event. - $sink = $this->redirectEvents(); - $event->trigger(); - $events = $sink->get_events(); - $event = reset($events); - - $this->assertInstanceOf('\mod_assign\event\feedback_updated', $event); - $this->assertEquals($assign->get_context(), $event->get_context()); - $expectedlog = array($assign->get_course()->id, 'assign', 'save grading feedback', 'view.php?id=' . $assign->get_course_module()->id, - $logdesc, $assign->get_course_module()->id); - $this->assertEventLegacyLogData($expectedlog, $event); - $this->assertEventContextNotUsed($event); - } - /** * Test the grading_form_viewed event. */