Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Fix the user email issue while creating a user
When the user is created, the provisioning api
was not adding the email address of the user
when provided if the `send email to new user`
is not set.

Signed-off-by: Sujith Haridasan <[email protected]>
  • Loading branch information
sharidasan authored and backportbot[bot] committed Oct 5, 2020
commit c998209ec10b4b7bb75b102d6a4a162a86e4079c
26 changes: 14 additions & 12 deletions apps/provisioning_api/lib/Controller/UsersController.php
Original file line number Diff line number Diff line change
Expand Up @@ -337,19 +337,21 @@ public function addUser(string $userid,
}

// Send new user mail only if a mail is set
if ($email !== '' && $this->config->getAppValue('core', 'newUser.sendEmail', 'yes') === 'yes') {
if ($email !== '') {
$newUser->setEMailAddress($email);
try {
$emailTemplate = $this->newUserMailHelper->generateTemplate($newUser, $generatePasswordResetToken);
$this->newUserMailHelper->sendMail($newUser, $emailTemplate);
} catch (\Exception $e) {
// Mail could be failing hard or just be plain not configured
// Logging error as it is the hardest of the two
$this->logger->logException($e, [
'message' => "Unable to send the invitation mail to $email",
'level' => ILogger::ERROR,
'app' => 'ocs_api',
]);
if ($this->config->getAppValue('core', 'newUser.sendEmail', 'yes') === 'yes') {
try {
$emailTemplate = $this->newUserMailHelper->generateTemplate($newUser, $generatePasswordResetToken);
$this->newUserMailHelper->sendMail($newUser, $emailTemplate);
} catch (\Exception $e) {
// Mail could be failing hard or just be plain not configured
// Logging error as it is the hardest of the two
$this->logger->logException($e, [
'message' => "Unable to send the invitation mail to $email",
'level' => ILogger::ERROR,
'app' => 'ocs_api',
]);
}
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -500,9 +500,13 @@ public function testAddUserSuccessfulGeneratePassword() {
->method('userExists')
->with('NewUser')
->willReturn(false);
$newUser = $this->createMock(IUser::class);
$newUser->expects($this->once())
->method('setEMailAddress');
$this->userManager
->expects($this->once())
->method('createUser');
->method('createUser')
->willReturn($newUser);
$this->logger
->expects($this->once())
->method('info')
Expand Down