From 2ab6f8a87e801aebefd08bc554b3bb0310dc5182 Mon Sep 17 00:00:00 2001 From: Jake Dallimore Date: Thu, 18 Jul 2019 15:13:58 +0800 Subject: [PATCH] MDL-66156 block_myoverview: purge course favourites on course deletion. --- blocks/myoverview/lib.php | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/blocks/myoverview/lib.php b/blocks/myoverview/lib.php index 81090edef50..36fc201919a 100644 --- a/blocks/myoverview/lib.php +++ b/blocks/myoverview/lib.php @@ -127,3 +127,14 @@ function block_myoverview_user_preferences() { return $preferences; } + +/** + * Pre-delete course hook to cleanup any records with references to the deleted course. + * + * @param stdClass $course The deleted course + */ +function block_myoverview_pre_course_delete(\stdClass $course) { + // Removing any starred courses which have been created for users, for this course. + $service = \core_favourites\service_factory::get_service_for_component('core_course'); + $service->delete_favourites_by_type_and_item('courses', $course->id); +}