From cc96887b3dcf6f178758ed7e60f4c046f5d6c18d Mon Sep 17 00:00:00 2001 From: Naumov Alexey Date: Sat, 10 Oct 2020 20:22:18 +0300 Subject: [PATCH 1/2] fix(plugin-auth): CB-266 check user name(administation page) CB-266 --- .../Administration/Users/UserForm/UserFormController.ts | 8 +++++++- webapp/packages/plugin-authentication/src/locales/en.ts | 2 ++ webapp/packages/plugin-authentication/src/locales/ru.ts | 2 ++ 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/webapp/packages/plugin-authentication/src/Administration/Users/UserForm/UserFormController.ts b/webapp/packages/plugin-authentication/src/Administration/Users/UserForm/UserFormController.ts index 508e86520b..2955bb9145 100644 --- a/webapp/packages/plugin-authentication/src/Administration/Users/UserForm/UserFormController.ts +++ b/webapp/packages/plugin-authentication/src/Administration/Users/UserForm/UserFormController.ts @@ -143,9 +143,15 @@ export class UserFormController implements IInitializableController, IDestructib }; private validate() { - if (!this.credentials.login) { + if (!this.credentials.login.trim()) { this.notificationService.logError({ title: 'authentication_user_login_not_set' }); return; + } else if (this.rolesManagerService.roles.has(this.credentials.login)) { + this.notificationService.logError({ title: 'authentication_user_login_cant_be_used' }); + return; + } else if (this.usersResource.has(this.credentials.login)) { + this.notificationService.logError({ title: 'authentication_user_login_already_exists' }); + return; } if (!this.isRoleSelected()) { diff --git a/webapp/packages/plugin-authentication/src/locales/en.ts b/webapp/packages/plugin-authentication/src/locales/en.ts index 54fda62997..54598fa879 100644 --- a/webapp/packages/plugin-authentication/src/locales/en.ts +++ b/webapp/packages/plugin-authentication/src/locales/en.ts @@ -25,4 +25,6 @@ export default [ ['authentication_user_role_not_set', 'At least one role must be selected'], ['authentication_user_password_not_set', 'Password is required'], ['authentication_user_passwords_not_match', "Passwords don't match"], + ['authentication_user_login_already_exists', 'A user with this name already exists'], + ['authentication_user_login_cant_be_used', 'Sorry, that name cannot be used'], ]; diff --git a/webapp/packages/plugin-authentication/src/locales/ru.ts b/webapp/packages/plugin-authentication/src/locales/ru.ts index f64a4c792a..5a59ecddc9 100644 --- a/webapp/packages/plugin-authentication/src/locales/ru.ts +++ b/webapp/packages/plugin-authentication/src/locales/ru.ts @@ -25,4 +25,6 @@ export default [ ['authentication_user_role_not_set', 'Должна быть выбрана минимум одна роль'], ['authentication_user_password_not_set', 'Пароль не задан'], ['authentication_user_passwords_not_match', 'Пароли не совпадают'], + ['authentication_user_login_already_exists', 'Пользователь с таким именем уже существует'], + ['authentication_user_login_cant_be_used', 'Данное имя нельзя использовать'], ]; From 45b93fc756eb4409beec89d0aca8a921c1e38b5b Mon Sep 17 00:00:00 2001 From: Naumov Alexey Date: Mon, 12 Oct 2020 11:57:57 +0300 Subject: [PATCH 2/2] fix(plugin-auth): CB-266 check user name(administation) remove else if CB-266 --- .../Administration/Users/UserForm/UserFormController.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/webapp/packages/plugin-authentication/src/Administration/Users/UserForm/UserFormController.ts b/webapp/packages/plugin-authentication/src/Administration/Users/UserForm/UserFormController.ts index 2955bb9145..3d05610d32 100644 --- a/webapp/packages/plugin-authentication/src/Administration/Users/UserForm/UserFormController.ts +++ b/webapp/packages/plugin-authentication/src/Administration/Users/UserForm/UserFormController.ts @@ -146,10 +146,14 @@ export class UserFormController implements IInitializableController, IDestructib if (!this.credentials.login.trim()) { this.notificationService.logError({ title: 'authentication_user_login_not_set' }); return; - } else if (this.rolesManagerService.roles.has(this.credentials.login)) { + } + + if (this.rolesManagerService.roles.has(this.credentials.login)) { this.notificationService.logError({ title: 'authentication_user_login_cant_be_used' }); return; - } else if (this.usersResource.has(this.credentials.login)) { + } + + if (this.usersResource.has(this.credentials.login)) { this.notificationService.logError({ title: 'authentication_user_login_already_exists' }); return; }