Kumi
6cbe774d79
Introduced a new script to set activity completion for a user in a course. Ensures completion is enabled for the course module before marking activities as completed. This enhancement streamlines tracking of user progress within courses.
24 lines
648 B
PHP
24 lines
648 B
PHP
<?php
|
|
|
|
require_once($CFG->libdir.'/completionlib.php');
|
|
|
|
function set_activity_completion($course, $cm, $userId) {
|
|
// Ensure completion is enabled for the course module.
|
|
$completion = new completion_info($course);
|
|
|
|
if ($completion->is_enabled($cm)) {
|
|
// Mark the activity as completed for this user.
|
|
$completion->update_state($cm, COMPLETION_COMPLETE, $userId);
|
|
}
|
|
}
|
|
|
|
|
|
$courseid = required_param('courseid', PARAM_INT);
|
|
$cmid = required_param('cmid', PARAM_INT);
|
|
|
|
$userid = $USER->id;
|
|
|
|
$course = get_course($courseid);
|
|
$cm = get_coursemodule_from_id(null, $cmid);
|
|
|
|
set_activity_completion($course, $cm, $userid);
|