From ca0ea3d201be981b9bcdc236c0b25b6623b611a3 Mon Sep 17 00:00:00 2001 From: Jan Cernik <66427541+jancernik@users.noreply.github.com> Date: Mon, 9 Dec 2024 12:06:59 -0300 Subject: [PATCH] FIX: Improve name validation in the signup form (#30150) --- .../discourse/app/mixins/password-validation.js | 12 ++++++++++++ config/locales/client.en.yml | 1 + config/locales/server.en.yml | 2 ++ 3 files changed, 15 insertions(+) diff --git a/app/assets/javascripts/discourse/app/mixins/password-validation.js b/app/assets/javascripts/discourse/app/mixins/password-validation.js index ffe80c14b1b..50d89735ac2 100644 --- a/app/assets/javascripts/discourse/app/mixins/password-validation.js +++ b/app/assets/javascripts/discourse/app/mixins/password-validation.js @@ -30,6 +30,7 @@ export default Mixin.create({ "passwordRequired", "rejectedPasswords.[]", "accountUsername", + "accountName", "accountEmail", "passwordMinLength", "forceValidationReason", @@ -88,6 +89,17 @@ export default Mixin.create({ ); } + if ( + !isEmpty(this.accountName) && + this.accountPassword === this.accountName + ) { + return EmberObject.create( + Object.assign(failedAttrs, { + reason: i18n("user.password.same_as_name"), + }) + ); + } + if ( !isEmpty(this.accountEmail) && this.accountPassword === this.accountEmail diff --git a/config/locales/client.en.yml b/config/locales/client.en.yml index 73d86f7bf35..10a06ce1807 100644 --- a/config/locales/client.en.yml +++ b/config/locales/client.en.yml @@ -2044,6 +2044,7 @@ en: other: "Your password is too short (minimum is %{count} characters)." common: "That password is too common." same_as_username: "Your password is the same as your username." + same_as_name: "Your password is the same as your name." same_as_email: "Your password is the same as your email." ok: "Your password looks good." instructions: diff --git a/config/locales/server.en.yml b/config/locales/server.en.yml index bf06480a8ee..369719ef7e5 100644 --- a/config/locales/server.en.yml +++ b/config/locales/server.en.yml @@ -749,6 +749,8 @@ en: user: ip_address: "" password: "Password" + user_password: + password: "Password" errors: <<: *errors models: