From d9420631b857d07424693ef471383fac375acf4e Mon Sep 17 00:00:00 2001 From: stronk7 Date: Fri, 5 Oct 2007 22:27:55 +0000 Subject: [PATCH] ORPHAN_USER_LASTACCESS_PROBLEM . MDL-11604 --- admin/cron.php | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/admin/cron.php b/admin/cron.php index a3e7a8b6ae..6cba62bc96 100644 --- a/admin/cron.php +++ b/admin/cron.php @@ -211,6 +211,21 @@ } } rs_close($rs); + /// Execute the same query again, looking for remaining records and deleting them + /// if the user hasn't moodle/course:view in the CONTEXT_COURSE context (orphan records) + $rs = get_recordset_sql ("SELECT id, userid, courseid + FROM {$CFG->prefix}user_lastaccess + WHERE courseid != ".SITEID." + AND timeaccess < $cuttime "); + while ($assign = rs_fetch_next_record($rs)) { + if ($context = get_context_instance(CONTEXT_COURSE, $assign->courseid)) { + if (!has_capability('moodle/course:view', $context, $assign->userid)) { + delete_records('user_lastaccess', 'userid', $assign->userid, 'courseid', $assign->courseid); + mtrace("Deleted orphan user_lastaccess for user $assign->userid from course $assign->courseid"); + } + } + } + rs_close($rs); } flush(); -- 2.39.5