. namespace core\event; defined('MOODLE_INTERNAL') || die(); /** * Event when course completed. * * @package core_event * @copyright 2013 Rajesh Taneja * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ class course_completed extends base { /** * Initialise required event data properties. */ protected function init() { $this->data['objecttable'] = 'course_completions'; $this->data['crud'] = 'u'; $this->data['edulevel'] = self::LEVEL_PARTICIPATING; } /** * Returns localised event name. * * @return string */ public static function get_name() { return get_string('eventcoursecompleted', 'core_completion'); } /** * Returns non-localised event description with id's for admin use only. * * @return string */ public function get_description() { return 'Course completed by user '.$this->userid; } /** * Returns relevant URL. * * @return \moodle_url */ public function get_url() { return new \moodle_url('/report/completion/index.php', array('course' => $this->courseid)); } /** * Return name of the legacy event, which is replaced by this event. * * @return string legacy event name */ public static function get_legacy_eventname() { return 'course_completed'; } /** * Return course_completed legacy event data. * * @return \stdClass completion data. */ protected function get_legacy_eventdata() { return $this->get_record_snapshot('course_completions', $this->objectid); } }