Agenda: Fix to save invited list changed - refs BT#20946

pull/4863/head
Angel Fernando Quiroz Campos 2 years ago
parent ea3be70986
commit 96afc8a913
  1. 18
      main/inc/lib/agenda.lib.php

@ -991,6 +991,13 @@ class Agenda
if (api_get_configuration_value('agenda_event_subscriptions') && api_is_platform_admin()) {
$personalEvent = $em->find(PersonalAgenda::class, $id);
if ($personalEvent->hasInvitation()
&& !($personalEvent->getInvitation() instanceof AgendaEventSubscription)
) {
break;
}
$personalEvent->setSubscriptionVisibility($subscriptionVisibility);
/** @var AgendaEventSubscription $subscription */
@ -4883,6 +4890,17 @@ class Agenda
}
}
$inviteesToRemove = $invitation->getInvitees()
->filter(function (AgendaEventInvitee $invitee) use ($inviteeUserList): bool {
$userInvitee = $invitee->getUser();
return !in_array($userInvitee->getUserId(), $inviteeUserList);
});
foreach ($inviteesToRemove as $invitee) {
$em->remove($invitee);
}
$em->flush();
}

Loading…
Cancel
Save