I want to run a small piece of code when my students complete the tutorials I've published on moodle. How can I do this, I'm waiting for your help.
Asked
Active
Viewed 68 times
1 Answers
1
You can respond to events in Moodle
For example, you could respond to the course_completed
event in a local plugin
In /local/yourplugin/db/events.php
Have something like
$observers = array(
array(
'eventname' => '\core\event\course_completed',
'callback' => 'local_yourplugin_observer::course_completed',
),
Then in /local/yourplugin/classes/observer.php
Have something like
class local_yourplugin_observer {
/**
* Triggered when 'course_completed' event is triggered.
*
* @param \core\event\course_completed $event
* @return bool
*/
public static function course_completed(\core\event\course_completed $event) {
$userid = !empty($event->relateduserid) ? $event->relateduserid : $event->userid;
$courseid = $event->courseid;
// Your code here
}

Russell England
- 9,436
- 1
- 27
- 41