2 // This file is part of Moodle - http://moodle.org/
4 // Moodle is free software: you can redistribute it and/or modify
5 // it under the terms of the GNU General Public License as published by
6 // the Free Software Foundation, either version 3 of the License, or
7 // (at your option) any later version.
9 // Moodle is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 // GNU General Public License for more details.
14 // You should have received a copy of the GNU General Public License
15 // along with Moodle. If not, see <http://www.gnu.org/licenses/>.
21 * @copyright 2014 Mark Nelson <markn@moodle.com>
22 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
27 defined('MOODLE_INTERNAL') ||
die();
30 * Tag deleted event class.
32 * @property-read array $other {
33 * Extra information about event.
35 * - string name: the name of the tag.
36 * - string rawname: the raw name of the tag.
41 * @copyright 2014 Mark Nelson <markn@moodle.com>
42 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
44 class tag_deleted
extends base
{
47 * Initialise the event data.
49 protected function init() {
50 $this->data
['objecttable'] = 'tag';
51 $this->data
['crud'] = 'd';
52 $this->data
['edulevel'] = self
::LEVEL_OTHER
;
56 * Returns localised general event name.
60 public static function get_name() {
61 return get_string('eventtagdeleted', 'tag');
65 * Returns non-localised description of what happened.
69 public function get_description() {
70 return "The user with id '$this->userid' deleted the tag with id '$this->objectid'.";
76 * @throws \coding_exception
79 protected function validate_data() {
80 parent
::validate_data();
82 if (!isset($this->other
['name'])) {
83 throw new \
coding_exception('The \'name\' value must be set in other.');
86 if (!isset($this->other
['rawname'])) {
87 throw new \
coding_exception('The \'rawname\' value must be set in other.');
91 public static function get_objectid_mapping() {
92 // Tags cannot be mapped.
93 return array('db' => 'tag', 'restore' => base
::NOT_MAPPED
);
96 public static function get_other_mapping() {