mirror of
https://github.com/moodle/moodle.git
synced 2025-08-09 10:56:56 +02:00
MDL-57915 mod_data: Move view completion and event code to function
This commit is contained in:
parent
1034421264
commit
023ffa656d
3 changed files with 74 additions and 14 deletions
|
@ -4101,3 +4101,33 @@ function data_set_config(&$database, $key, $value) {
|
|||
$DB->set_field('data', 'config', $database->config, ['id' => $database->id]);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Mark the activity completed (if required) and trigger the course_module_viewed event.
|
||||
*
|
||||
* @param stdClass $data data object
|
||||
* @param stdClass $course course object
|
||||
* @param stdClass $cm course module object
|
||||
* @param stdClass $context context object
|
||||
* @since Moodle 3.3
|
||||
*/
|
||||
function data_view($data, $course, $cm, $context) {
|
||||
global $CFG;
|
||||
require_once($CFG->libdir . '/completionlib.php');
|
||||
|
||||
// Trigger course_module_viewed event.
|
||||
$params = array(
|
||||
'context' => $context,
|
||||
'objectid' => $data->id
|
||||
);
|
||||
|
||||
$event = \mod_data\event\course_module_viewed::create($params);
|
||||
$event->add_record_snapshot('course_modules', $cm);
|
||||
$event->add_record_snapshot('course', $course);
|
||||
$event->add_record_snapshot('data', $data);
|
||||
$event->trigger();
|
||||
|
||||
// Completion.
|
||||
$completion = new completion_info($course);
|
||||
$completion->set_module_viewed($cm);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue