Skip to content

Commit

Permalink
Show hint in OCS API for user creation
Browse files Browse the repository at this point in the history
* adds a 107 error code together with the hint of the exception
* logs the exception as warning
* fixes #7946

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
  • Loading branch information
MorrisJobke committed Feb 23, 2018
1 parent a5b73fe commit 168f188
Showing 1 changed file with 10 additions and 2 deletions.
12 changes: 10 additions & 2 deletions apps/provisioning_api/lib/Controller/UsersController.php
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
namespace OCA\Provisioning_API\Controller;

use OC\Accounts\AccountManager;
use OC\HintException;
use OC\Settings\Mailer\NewUserMailHelper;
use OC_Helper;
use OCP\App\IAppManager;
Expand Down Expand Up @@ -187,15 +188,22 @@ public function addUser($userid, $password, $groups = null) {

try {
$newUser = $this->userManager->createUser($userid, $password);
$this->logger->info('Successful addUser call with userid: '.$userid, ['app' => 'ocs_api']);
$this->logger->info('Successful addUser call with userid: ' . $userid, ['app' => 'ocs_api']);

if (is_array($groups)) {
foreach ($groups as $group) {
$this->groupManager->get($group)->addUser($newUser);
$this->logger->info('Added userid '.$userid.' to group '.$group, ['app' => 'ocs_api']);
$this->logger->info('Added userid ' . $userid . ' to group ' . $group, ['app' => 'ocs_api']);
}
}
return new DataResponse();
} catch (HintException $e ) {
$this->logger->logException($e, [
'message' => 'Failed addUser attempt with hint exception.',
'level' => \OCP\Util::WARN,
'app' => 'ocs_api',
]);
throw new OCSException($e->getHint(), 107);
} catch (\Exception $e) {
$this->logger->error('Failed addUser attempt with exception: '.$e->getMessage(), ['app' => 'ocs_api']);
throw new OCSException('Bad request', 101);
Expand Down

0 comments on commit 168f188

Please sign in to comment.