UserGroupController: Properly handle errors when fetching memberships

refs #8826
This commit is contained in:
Johannes Meyer 2015-05-27 08:55:14 +02:00
parent adc2d33814
commit 45fd1b78f1

View File

@ -250,12 +250,20 @@ class UserController extends AuthBackendController
{ {
$groups = array(); $groups = array();
foreach ($this->loadUserGroupBackends() as $backend) { foreach ($this->loadUserGroupBackends() as $backend) {
try {
foreach ($backend->getMemberships($user) as $groupName) { foreach ($backend->getMemberships($user) as $groupName) {
$groups[] = (object) array( $groups[] = (object) array(
'group_name' => $groupName, 'group_name' => $groupName,
'backend' => $backend 'backend' => $backend
); );
} }
} catch (Exception $e) {
Logger::error($e);
Notification::warning(sprintf(
$this->translate('Failed to fetch memberships from backend %s. Please check your log'),
$backend->getName()
));
}
} }
return new ArrayDatasource($groups); return new ArrayDatasource($groups);