mirror of
https://github.com/nextcloud/server.git
synced 2026-02-24 10:26:07 -05:00
Merge pull request #48473 from nextcloud/backport/47846/stable29
This commit is contained in:
commit
db1d71e322
3 changed files with 30 additions and 30 deletions
|
|
@ -459,7 +459,7 @@ class UsersController extends AUserData {
|
|||
$group = $this->groupManager->get($groupid);
|
||||
// Check if group exists
|
||||
if ($group === null) {
|
||||
throw new OCSException($this->l10n->t('Sub-admin group does not exist'), 102);
|
||||
throw new OCSException($this->l10n->t('Sub-admin group does not exist'), 109);
|
||||
}
|
||||
// Check if trying to make subadmin of admin group
|
||||
if ($group->getGID() === 'admin') {
|
||||
|
|
@ -479,7 +479,7 @@ class UsersController extends AUserData {
|
|||
}
|
||||
if ($password === '') {
|
||||
if ($email === '') {
|
||||
throw new OCSException($this->l10n->t('To send a password link to the user an email address is required.'), 108);
|
||||
throw new OCSException($this->l10n->t('An email address is required, to send a password link to the user.'), 108);
|
||||
}
|
||||
|
||||
$passwordEvent = new GenerateSecurePasswordEvent();
|
||||
|
|
@ -963,7 +963,7 @@ class UsersController extends AUserData {
|
|||
}
|
||||
// Check if permitted to edit this field
|
||||
if (!in_array($key, $permittedFields)) {
|
||||
throw new OCSException('', 103);
|
||||
throw new OCSException('', 113);
|
||||
}
|
||||
// Process the edit
|
||||
switch ($key) {
|
||||
|
|
@ -984,14 +984,14 @@ class UsersController extends AUserData {
|
|||
$quota = \OCP\Util::computerFileSize($quota);
|
||||
}
|
||||
if ($quota === false) {
|
||||
throw new OCSException($this->l10n->t('Invalid quota value: %1$s', [$value]), 102);
|
||||
throw new OCSException($this->l10n->t('Invalid quota value: %1$s', [$value]), 101);
|
||||
}
|
||||
if ($quota === -1) {
|
||||
$quota = 'none';
|
||||
} else {
|
||||
$maxQuota = (int) $this->config->getAppValue('files', 'max_quota', '-1');
|
||||
if ($maxQuota !== -1 && $quota > $maxQuota) {
|
||||
throw new OCSException($this->l10n->t('Invalid quota value. %1$s is exceeding the maximum quota', [$value]), 102);
|
||||
throw new OCSException($this->l10n->t('Invalid quota value. %1$s is exceeding the maximum quota', [$value]), 101);
|
||||
}
|
||||
$quota = \OCP\Util::humanFileSize($quota);
|
||||
}
|
||||
|
|
@ -1000,7 +1000,7 @@ class UsersController extends AUserData {
|
|||
if ($quota === 'none') {
|
||||
$allowUnlimitedQuota = $this->config->getAppValue('files', 'allow_unlimited_quota', '1') === '1';
|
||||
if (!$allowUnlimitedQuota) {
|
||||
throw new OCSException($this->l10n->t('Unlimited quota is forbidden on this instance'), 102);
|
||||
throw new OCSException($this->l10n->t('Unlimited quota is forbidden on this instance'), 101);
|
||||
}
|
||||
}
|
||||
$targetUser->setQuota($quota);
|
||||
|
|
@ -1011,26 +1011,26 @@ class UsersController extends AUserData {
|
|||
case self::USER_FIELD_PASSWORD:
|
||||
try {
|
||||
if (strlen($value) > IUserManager::MAX_PASSWORD_LENGTH) {
|
||||
throw new OCSException($this->l10n->t('Invalid password value'), 102);
|
||||
throw new OCSException($this->l10n->t('Invalid password value'), 101);
|
||||
}
|
||||
if (!$targetUser->canChangePassword()) {
|
||||
throw new OCSException($this->l10n->t('Setting the password is not supported by the users backend'), 103);
|
||||
throw new OCSException($this->l10n->t('Setting the password is not supported by the users backend'), 112);
|
||||
}
|
||||
$targetUser->setPassword($value);
|
||||
} catch (HintException $e) { // password policy error
|
||||
throw new OCSException($e->getMessage(), 103);
|
||||
throw new OCSException($e->getMessage(), 107);
|
||||
}
|
||||
break;
|
||||
case self::USER_FIELD_LANGUAGE:
|
||||
$languagesCodes = $this->l10nFactory->findAvailableLanguages();
|
||||
if (!in_array($value, $languagesCodes, true) && $value !== 'en') {
|
||||
throw new OCSException($this->l10n->t('Invalid language'), 102);
|
||||
throw new OCSException($this->l10n->t('Invalid language'), 101);
|
||||
}
|
||||
$this->config->setUserValue($targetUser->getUID(), 'core', 'lang', $value);
|
||||
break;
|
||||
case self::USER_FIELD_LOCALE:
|
||||
if (!$this->l10nFactory->localeExists($value)) {
|
||||
throw new OCSException($this->l10n->t('Invalid locale'), 102);
|
||||
throw new OCSException($this->l10n->t('Invalid locale'), 101);
|
||||
}
|
||||
$this->config->setUserValue($targetUser->getUID(), 'core', 'locale', $value);
|
||||
break;
|
||||
|
|
@ -1051,14 +1051,14 @@ class UsersController extends AUserData {
|
|||
}
|
||||
}
|
||||
if (!$success) {
|
||||
throw new OCSException('', 102);
|
||||
throw new OCSException('', 101);
|
||||
}
|
||||
break;
|
||||
case IAccountManager::PROPERTY_EMAIL:
|
||||
if (filter_var($value, FILTER_VALIDATE_EMAIL) || $value === '') {
|
||||
$targetUser->setEMailAddress($value);
|
||||
} else {
|
||||
throw new OCSException('', 102);
|
||||
throw new OCSException('', 101);
|
||||
}
|
||||
break;
|
||||
case IAccountManager::COLLECTION_EMAIL:
|
||||
|
|
@ -1067,13 +1067,13 @@ class UsersController extends AUserData {
|
|||
$mailCollection = $userAccount->getPropertyCollection(IAccountManager::COLLECTION_EMAIL);
|
||||
|
||||
if ($mailCollection->getPropertyByValue($value)) {
|
||||
throw new OCSException('', 102);
|
||||
throw new OCSException('', 101);
|
||||
}
|
||||
|
||||
$mailCollection->addPropertyWithDefaults($value);
|
||||
$this->accountManager->updateAccount($userAccount);
|
||||
} else {
|
||||
throw new OCSException('', 102);
|
||||
throw new OCSException('', 101);
|
||||
}
|
||||
break;
|
||||
case IAccountManager::PROPERTY_PHONE:
|
||||
|
|
@ -1095,7 +1095,7 @@ class UsersController extends AUserData {
|
|||
$this->knownUserService->deleteByContactUserId($targetUser->getUID());
|
||||
}
|
||||
} catch (InvalidArgumentException $e) {
|
||||
throw new OCSException('Invalid ' . $e->getMessage(), 102);
|
||||
throw new OCSException('Invalid ' . $e->getMessage(), 101);
|
||||
}
|
||||
}
|
||||
} catch (PropertyDoesNotExistException $e) {
|
||||
|
|
@ -1104,7 +1104,7 @@ class UsersController extends AUserData {
|
|||
try {
|
||||
$this->accountManager->updateAccount($userAccount);
|
||||
} catch (InvalidArgumentException $e) {
|
||||
throw new OCSException('Invalid ' . $e->getMessage(), 102);
|
||||
throw new OCSException('Invalid ' . $e->getMessage(), 101);
|
||||
}
|
||||
break;
|
||||
case IAccountManager::PROPERTY_PROFILE_ENABLED:
|
||||
|
|
@ -1140,12 +1140,12 @@ class UsersController extends AUserData {
|
|||
$userProperty->setScope($value);
|
||||
$this->accountManager->updateAccount($userAccount);
|
||||
} catch (InvalidArgumentException $e) {
|
||||
throw new OCSException('Invalid ' . $e->getMessage(), 102);
|
||||
throw new OCSException('Invalid ' . $e->getMessage(), 101);
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:
|
||||
throw new OCSException('', 103);
|
||||
throw new OCSException('', 113);
|
||||
}
|
||||
return new DataResponse();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1651,7 +1651,7 @@ class UsersControllerTest extends TestCase {
|
|||
->with($userAccount);
|
||||
|
||||
$this->expectException(OCSException::class);
|
||||
$this->expectExceptionCode(102);
|
||||
$this->expectExceptionCode(101);
|
||||
$this->api->editUser('UserToEdit', 'additional_mail', 'demo@nextcloud.com')->getData();
|
||||
}
|
||||
|
||||
|
|
@ -1710,13 +1710,13 @@ class UsersControllerTest extends TestCase {
|
|||
->with($userAccount);
|
||||
|
||||
$this->expectException(OCSException::class);
|
||||
$this->expectExceptionCode(102);
|
||||
$this->expectExceptionCode(101);
|
||||
$this->api->editUser('UserToEdit', 'additional_mail', 'demo1@nextcloud.com')->getData();
|
||||
}
|
||||
|
||||
public function testEditUserRegularUserSelfEditChangeEmailInvalid() {
|
||||
$this->expectException(\OCP\AppFramework\OCS\OCSException::class);
|
||||
$this->expectExceptionCode(102);
|
||||
$this->expectExceptionCode(101);
|
||||
|
||||
$loggedInUser = $this->getMockBuilder(IUser::class)
|
||||
->disableOriginalConstructor()
|
||||
|
|
@ -1948,7 +1948,7 @@ class UsersControllerTest extends TestCase {
|
|||
|
||||
public function testEditUserRegularUserSelfEditChangeQuota() {
|
||||
$this->expectException(\OCP\AppFramework\OCS\OCSException::class);
|
||||
$this->expectExceptionCode(103);
|
||||
$this->expectExceptionCode(113);
|
||||
|
||||
$loggedInUser = $this->getMockBuilder(IUser::class)
|
||||
->disableOriginalConstructor()
|
||||
|
|
@ -2035,7 +2035,7 @@ class UsersControllerTest extends TestCase {
|
|||
public function testEditUserAdminUserSelfEditChangeInvalidQuota() {
|
||||
$this->expectException(\OCP\AppFramework\OCS\OCSException::class);
|
||||
$this->expectExceptionMessage('Invalid quota value: ABC');
|
||||
$this->expectExceptionCode(102);
|
||||
$this->expectExceptionCode(101);
|
||||
|
||||
$loggedInUser = $this->getMockBuilder(IUser::class)->disableOriginalConstructor()->getMock();
|
||||
$loggedInUser
|
||||
|
|
|
|||
|
|
@ -208,7 +208,7 @@ Feature: provisioning
|
|||
And sending "PUT" to "/cloud/users/brand-new-user" with
|
||||
| key | additional_mail |
|
||||
| value | no-reply@nextcloud.com |
|
||||
And the OCS status code should be "102"
|
||||
And the OCS status code should be "101"
|
||||
And the HTTP status code should be "200"
|
||||
And sending "PUT" to "/cloud/users/brand-new-user" with
|
||||
| key | additional_mail |
|
||||
|
|
@ -219,7 +219,7 @@ Feature: provisioning
|
|||
And sending "PUT" to "/cloud/users/brand-new-user" with
|
||||
| key | additional_mail |
|
||||
| value | no.reply2@nextcloud.com |
|
||||
And the OCS status code should be "102"
|
||||
And the OCS status code should be "101"
|
||||
And the HTTP status code should be "200"
|
||||
Then user "brand-new-user" has
|
||||
| id | brand-new-user |
|
||||
|
|
@ -264,17 +264,17 @@ Feature: provisioning
|
|||
When sending "PUT" to "/cloud/users/brand-new-user" with
|
||||
| key | phoneScope |
|
||||
| value | invalid |
|
||||
Then the OCS status code should be "102"
|
||||
Then the OCS status code should be "101"
|
||||
And the HTTP status code should be "200"
|
||||
When sending "PUT" to "/cloud/users/brand-new-user" with
|
||||
| key | displaynameScope |
|
||||
| value | v2-private |
|
||||
Then the OCS status code should be "102"
|
||||
Then the OCS status code should be "101"
|
||||
And the HTTP status code should be "200"
|
||||
When sending "PUT" to "/cloud/users/brand-new-user" with
|
||||
| key | emailScope |
|
||||
| value | v2-private |
|
||||
Then the OCS status code should be "102"
|
||||
Then the OCS status code should be "101"
|
||||
And the HTTP status code should be "200"
|
||||
|
||||
Scenario: Edit a user account multi-value property scopes with invalid or unsupported value
|
||||
|
|
@ -320,7 +320,7 @@ Feature: provisioning
|
|||
When sending "PUT" to "/cloud/users/brand-new-user" with
|
||||
| key | phoneScope |
|
||||
| value | v2-private |
|
||||
Then the OCS status code should be "103"
|
||||
Then the OCS status code should be "113"
|
||||
And the HTTP status code should be "200"
|
||||
|
||||
Scenario: Search by phone number
|
||||
|
|
|
|||
Loading…
Reference in a new issue