Fix# registrationservice: handle case where group to be added does not

exist
This commit is contained in:
Pellaeon Lin 2018-08-04 15:48:33 +08:00
parent a37b8e5133
commit 9b2adba6aa
1 changed files with 7 additions and 4 deletions

View File

@ -294,12 +294,15 @@ class RegistrationService {
// Add user to group // Add user to group
$registered_user_group = $this->config->getAppValue($this->appName, 'registered_user_group', 'none'); $registered_user_group = $this->config->getAppValue($this->appName, 'registered_user_group', 'none');
if ( $registered_user_group !== 'none' ) { if ( $registered_user_group !== 'none' ) {
try { $group = $this->groupManager->get($registered_user_group);
$group = $this->groupManager->get($registered_user_group); if ( $group === null ) {
// This might happen if $registered_user_group is deleted after setting the value
// Here I choose to log error instead of stopping the user to register
$this->logger->error("You specified newly registered users be added to '$registered_user_group' group, but it does not exist.");
$groupId = '';
} else {
$group->addUser($user); $group->addUser($user);
$groupId = $group->getGID(); $groupId = $group->getGID();
} catch (\Exception $e) {
throw new RegistrationException($e->getMessage());
} }
} else { } else {
$groupId = ""; $groupId = "";