From 525a9da269c896d6ef271259d767bee93c8f4b93 Mon Sep 17 00:00:00 2001 From: David Saylor Date: Fri, 20 Sep 2019 14:05:40 -0800 Subject: [PATCH] MDL-52904 completion: reference context in cron query Co-authored-by: Barbara Lawrence --- lib/classes/task/completion_daily_task.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/classes/task/completion_daily_task.php b/lib/classes/task/completion_daily_task.php index 2457200d3ad..b7966bfd6a5 100644 --- a/lib/classes/task/completion_daily_task.php +++ b/lib/classes/task/completion_daily_task.php @@ -71,7 +71,8 @@ class completion_daily_task extends scheduled_task { INNER JOIN {user_enrolments} ue ON ue.userid = u.id INNER JOIN {enrol} e ON e.id = ue.enrolid INNER JOIN {course} c ON c.id = e.courseid - INNER JOIN {role_assignments} ra ON ra.userid = u.id + INNER JOIN {context} con ON con.contextlevel = ? AND con.instanceid = c.id + INNER JOIN {role_assignments} ra ON ra.userid = u.id AND ra.contextid = con.id LEFT JOIN {course_completions} crc ON crc.course = c.id AND crc.userid = u.id WHERE c.enablecompletion = 1 AND crc.timeenrolled IS NULL @@ -83,7 +84,7 @@ class completion_daily_task extends scheduled_task { $sqlroles ORDER BY course, userid"; $now = time(); - $rs = $DB->get_recordset_sql($sql, [$now, $now, $now, $now]); + $rs = $DB->get_recordset_sql($sql, [CONTEXT_COURSE, $now, $now]); // Check if result is empty. if (!$rs->valid()) {