From fdb31aeb8653ad442305bb1da5d621882744a67d Mon Sep 17 00:00:00 2001 From: Lai Wei Date: Thu, 14 Mar 2024 13:09:17 +0000 Subject: [PATCH] Avoid removing group membership unnecessarily --- local/o365/classes/feature/coursesync/utils.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/local/o365/classes/feature/coursesync/utils.php b/local/o365/classes/feature/coursesync/utils.php index 0a69a66e3..52e7b59e9 100644 --- a/local/o365/classes/feature/coursesync/utils.php +++ b/local/o365/classes/feature/coursesync/utils.php @@ -789,7 +789,10 @@ public static function sync_user_role_in_course_group(int $userid, int $courseid break; case MICROSOFT365_GROUP_ROLE_MEMBER: // Add user to the Microsoft 365 group as member. - $coursesync->remove_owner_from_group($groupobjectid, $userobjectid); + $groupowneroids = $coursesync->get_group_owners($groupobjectid); + if (in_array($userobjectid, $groupowneroids)) { + $coursesync->remove_owner_from_group($groupobjectid, $userobjectid); + } $coursesync->add_member_to_group($groupobjectid, $userobjectid); break; }