From e9d809d44144a91419908fb8186a2afe122efd30 Mon Sep 17 00:00:00 2001 From: Eliseu Amaro Date: Wed, 15 Sep 2021 14:47:29 +0100 Subject: [PATCH] [Security][Exception] Security exception handling, login and register. TODO EmailNotFoundException and NicknameNotFoundException. --- public/assets/css/base.css | 9 +++++---- src/Security/Authenticator.php | 2 +- src/Util/Exception/EmailNotFoundException.php | 7 +++++++ src/Util/Exception/NicknameNotFoundException.php | 9 +++++++++ templates/security/login.html.twig | 7 +++++-- templates/security/register.html.twig | 15 +++++++-------- 6 files changed, 34 insertions(+), 15 deletions(-) create mode 100644 src/Util/Exception/EmailNotFoundException.php create mode 100644 src/Util/Exception/NicknameNotFoundException.php diff --git a/public/assets/css/base.css b/public/assets/css/base.css index e065c807d8..78f5e33fbc 100644 --- a/public/assets/css/base.css +++ b/public/assets/css/base.css @@ -480,13 +480,12 @@ summary:hover .icon-details-open { } .form-group { + all: unset; + display: flex; flex-direction: column; - margin-bottom: 10px; -} -.form-group label { - margin-bottom: 5px; } + .help-block { margin-top: 5px; margin-bottom: 10px; @@ -500,6 +499,8 @@ summary:hover .icon-details-open { .help-block > .list-unstyled, .alert, .alert-danger { + display: inline-block; + border: solid 2px #FF6347; background-color: #FF634733; border-radius: var(--unit-size); diff --git a/src/Security/Authenticator.php b/src/Security/Authenticator.php index 445cd1c983..cb125e167a 100644 --- a/src/Security/Authenticator.php +++ b/src/Security/Authenticator.php @@ -97,7 +97,7 @@ class Authenticator extends AbstractFormLoginAuthenticator $user = DB::findOneBy('local_user', ['or' => ['nickname' => $nick, 'outgoing_email' => $nick]]); } catch (Exception $e) { throw new CustomUserMessageAuthenticationException( - _m('\'{nickname}\' doesn\'t match any registered nickname or email.', ['nickname' => $credentials['nickname']])); + _m('Invalid login credentials.')); } return $user; diff --git a/src/Util/Exception/EmailNotFoundException.php b/src/Util/Exception/EmailNotFoundException.php new file mode 100644 index 0000000000..2c97eced6e --- /dev/null +++ b/src/Util/Exception/EmailNotFoundException.php @@ -0,0 +1,7 @@ +{{ "Login" | trans }} {% if error %} + - #} {% endif %} diff --git a/templates/security/register.html.twig b/templates/security/register.html.twig index c81c9951cd..cab7ee1bd3 100644 --- a/templates/security/register.html.twig +++ b/templates/security/register.html.twig @@ -15,14 +15,13 @@
{{ "Register" | trans }} - + {% for flashError in app.flashes('verify_email_error') %} + + {% endfor %} + + {% for flashError in app.flashes('verify_nickname_error') %} + + {% endfor %} {{ form_row(registration_form.nickname) }} {{ form_row(registration_form.email) }}