From 299dc536aaffa28c10b781c213d176f132f79716 Mon Sep 17 00:00:00 2001 From: Mathew Date: Mon, 10 Dec 2018 11:04:10 +0800 Subject: [PATCH 1/1] MDL-49651 mod_forum: Respect course visibility in cron This checks the courses' current visibility and the users permissions. If they have the permission to view the course when it is hidden they'll get messages. We already have checks for the users enrolled & subscription status. --- mod/forum/lib.php | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/mod/forum/lib.php b/mod/forum/lib.php index aaf91fb06d5..81bf60d909c 100644 --- a/mod/forum/lib.php +++ b/mod/forum/lib.php @@ -657,6 +657,12 @@ function forum_cron() { } } + $coursecontext = context_course::instance($course->id); + if (!$course->visible and !has_capability('moodle/course:viewhiddencourses', $coursecontext, $userto->id)) { + // The course is hidden and the user does not have access to it. + continue; + } + // Don't send email if the forum is Q&A and the user has not posted. // Initial topics are still mailed. if ($forum->type == 'qanda' && !forum_get_user_posted_time($discussion->id, $userto->id) && $pid != $discussion->firstpost) { -- 2.43.0