1<?php 2// This file is part of Moodle - http://moodle.org/ 3// 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. 8// 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. 13// 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/>. 16 17/** 18 * Role allow switch updated event. 19 * 20 * @package core 21 * @since Moodle 2.6 22 * @copyright 2013 Rajesh Taneja <rajesh@moodle.com> 23 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later 24 */ 25 26namespace core\event; 27 28defined('MOODLE_INTERNAL') || die(); 29 30/** 31 * Role allow switch updated event class. 32 * 33 * @package core 34 * @since Moodle 2.6 35 * @copyright 2013 Rajesh Taneja <rajesh@moodle.com> 36 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later 37 */ 38class role_allow_switch_updated extends base { 39 /** 40 * Initialise event parameters. 41 */ 42 protected function init() { 43 $this->data['crud'] = 'u'; 44 $this->data['edulevel'] = self::LEVEL_OTHER; 45 $this->data['objecttable'] = 'role_allow_switch'; 46 } 47 48 /** 49 * Returns localised event name. 50 * 51 * @return string 52 */ 53 public static function get_name() { 54 return get_string('eventroleallowswitchupdated', 'role'); 55 } 56 57 /** 58 * Returns non-localised event description with id's for admin use only. 59 * 60 * @return string 61 */ 62 public function get_description() { 63 $action = ($this->other['allow']) ? 'allow' : 'stop allowing'; 64 return "The user with id '$this->userid' modified the role with id '" . $this->other['targetroleid'] 65 . "' to $action users with that role from switching the role with id '" . $this->objectid . "' to users"; 66 } 67 68 /** 69 * Returns relevant URL. 70 * 71 * @return \moodle_url 72 */ 73 public function get_url() { 74 return new \moodle_url('/admin/roles/allow.php', array('mode' => 'switch')); 75 } 76 77 /** 78 * Returns array of parameters to be passed to legacy add_to_log() function. 79 * 80 * @return array 81 */ 82 protected function get_legacy_logdata() { 83 return array(SITEID, 'role', 'edit allow switch', 'admin/roles/allow.php?mode=switch'); 84 } 85} 86