From d72a6fc04cafdde72cbfe5dd987373dd8bb25892 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 d5bc9e23f19..933a173b9fc 100644 --- a/blocks/myoverview/lib.php +++ b/blocks/myoverview/lib.php @@ -121,3 +121,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); +}