MDL-87166 communication: verify user feature support on user deletion.

This commit is contained in:
Paul Holden
2025-11-11 11:44:08 +00:00
parent a331b32bef
commit 1c8f9db3f9
@@ -442,9 +442,10 @@ class hook_listener {
courseid: $course->id,
context: $coursecontext,
);
if ($communication->get_processor() !== null) {
$processor = $communication->get_processor();
if ($processor?->supports_room_user_features()) {
$communication->get_room_user_provider()->remove_members_from_room(userids: [$user->id]);
$communication->get_processor()->delete_instance_user_mapping(userids: [$user->id]);
$processor->delete_instance_user_mapping(userids: [$user->id]);
}
} else {
// If group mode is set then handle the group communication rooms.
@@ -454,9 +455,10 @@ class hook_listener {
groupid: $coursegroup->id,
context: $coursecontext,
);
if ($communication->get_processor() !== null) {
$processor = $communication->get_processor();
if ($processor?->supports_room_user_features()) {
$communication->get_room_user_provider()->remove_members_from_room(userids: [$user->id]);
$communication->get_processor()->delete_instance_user_mapping(userids: [$user->id]);
$processor->delete_instance_user_mapping(userids: [$user->id]);
}
}