Plugin: Azure: Catch exception when getting group members - refs BT#21930

pull/5763/head
Angel Fernando Quiroz Campos 1 year ago
parent 2b5eeb58ad
commit f5d563c361
No known key found for this signature in database
GPG Key ID: B284841AE3E562CD
  1. 6
      plugin/azure_active_directory/src/AzureSyncUsergroupsCommand.php
  2. 7
      plugin/azure_active_directory/src/AzureSyncUsersCommand.php

@ -48,11 +48,17 @@ class AzureSyncUsergroupsCommand extends AzureCommand
yield sprintf('Obtaining members for group (ID %d)', $groupId); yield sprintf('Obtaining members for group (ID %d)', $groupId);
try {
foreach ($this->getAzureGroupMembers($azureGroupUid) as $azureGroupMember) { foreach ($this->getAzureGroupMembers($azureGroupUid) as $azureGroupMember) {
if ($userId = $this->plugin->getUserIdByVerificationOrder($azureGroupMember, 'id')) { if ($userId = $this->plugin->getUserIdByVerificationOrder($azureGroupMember, 'id')) {
$newGroupMembers[] = $userId; $newGroupMembers[] = $userId;
} }
} }
} catch (Exception $e) {
yield $e->getMessage();
continue;
}
if ($newGroupMembers) { if ($newGroupMembers) {
$usergroup->subscribe_users_to_usergroup($groupId, $newGroupMembers); $usergroup->subscribe_users_to_usergroup($groupId, $newGroupMembers);

@ -42,7 +42,14 @@ class AzureSyncUsersCommand extends AzureCommand
$em = Database::getManager(); $em = Database::getManager();
foreach ($roleGroups as $userRole => $groupUid) { foreach ($roleGroups as $userRole => $groupUid) {
try {
$azureGroupMembersInfo = iterator_to_array($this->getAzureGroupMembers($groupUid)); $azureGroupMembersInfo = iterator_to_array($this->getAzureGroupMembers($groupUid));
} catch (Exception $e) {
yield $e->getMessage();
continue;
}
$azureGroupMembersUids = array_column($azureGroupMembersInfo, 'id'); $azureGroupMembersUids = array_column($azureGroupMembersInfo, 'id');
foreach ($azureGroupMembersUids as $azureGroupMembersUid) { foreach ($azureGroupMembersUids as $azureGroupMembersUid) {

Loading…
Cancel
Save