From 9a8dea57f09fbc7abfaeaa52cffb8bdbfada7007 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Noack?= <noack@data-quest.de> Date: Fri, 19 Jan 2024 15:01:50 +0000 Subject: [PATCH] Resolve #3605 "Barriere in der Nutzung des Login-Formulars" Closes #3605 Merge request studip/studip!2531 --- .../5.5.16_add_tooltip_fields_for_login.php | 26 +++---------------- db/migrations/5.5.18_add_login_faq_config.php | 4 +-- .../javascripts/bootstrap/application.js | 2 +- templates/_standard_loginform.php | 13 ++++++---- 4 files changed, 13 insertions(+), 32 deletions(-) diff --git a/db/migrations/5.5.16_add_tooltip_fields_for_login.php b/db/migrations/5.5.16_add_tooltip_fields_for_login.php index f4d536b41da..a375b3ffcf8 100644 --- a/db/migrations/5.5.16_add_tooltip_fields_for_login.php +++ b/db/migrations/5.5.16_add_tooltip_fields_for_login.php @@ -15,7 +15,7 @@ class AddTooltipFieldsForLogin extends Migration $statement = DBManager::get()->prepare($query); $statement->execute([ 'name' => 'USERNAME_TOOLTIP_TEXT', - 'value' => 'Geben Sie hier Ihren Stud.IP-Benutzernamen ein.', + 'value' => '', 'type' => 'i18n', 'section' => 'Loginseite', 'range' => 'global', @@ -24,31 +24,13 @@ class AddTooltipFieldsForLogin extends Migration $statement->execute([ 'name' => 'PASSWORD_TOOLTIP_TEXT', - 'value' => 'Geben Sie hier Ihr Stud.IP-Passwort ein. Achten Sie bei der Eingabe auf Groß- und Kleinschreibung.', + 'value' => '', 'type' => 'i18n', 'section' => 'Loginseite', 'range' => 'global', 'description' => 'Text für den Tooltip des Benutzernamens auf der Loginseite' ]); - $statement->execute([ - 'name' => 'USERNAME_TOOLTIP_ACTIVATED', - 'value' => '1', - 'type' => 'boolean', - 'section' => 'Loginseite', - 'range' => 'global', - 'description' => 'Soll der Tooltip beim Benutzernamen auf der Loginseite sichtbar sein?' - ]); - - $statement->execute([ - 'name' => 'PASSWORD_TOOLTIP_ACTIVATED', - 'value' => '1', - 'type' => 'boolean', - 'section' => 'Loginseite', - 'range' => 'global', - 'description' => 'Soll der Tooltip beim Passwort auf der Loginseite sichtbar sein?' - ]); - } public function down() @@ -62,9 +44,7 @@ class AddTooltipFieldsForLogin extends Migration AND `object_id` = MD5(`config`.`field`) WHERE `field` IN ( 'USERNAME_TOOLTIP_TEXT', - 'PASSWORD_TOOLTIP_TEXT', - 'USERNAME_TOOLTIP_ACTIVATED', - 'PASSWORD_TOOLTIP_ACTIVATED' + 'PASSWORD_TOOLTIP_TEXT' )"; DBManager::get()->exec($query); } diff --git a/db/migrations/5.5.18_add_login_faq_config.php b/db/migrations/5.5.18_add_login_faq_config.php index 3196e34e6a4..fd2a658c0e5 100644 --- a/db/migrations/5.5.18_add_login_faq_config.php +++ b/db/migrations/5.5.18_add_login_faq_config.php @@ -44,9 +44,7 @@ class AddLoginFaqConfig extends Migration AND `object_id` = MD5(`config`.`field`) WHERE `field` IN ( 'LOGIN_FAQ_TITLE', - 'LOGIN_FAQ_VISIBILITY', - 'USERNAME_TOOLTIP_ACTIVATED', - 'PASSWORD_TOOLTIP_ACTIVATED' + 'LOGIN_FAQ_VISIBILITY' )"; DBManager::get()->exec($query); } diff --git a/resources/assets/javascripts/bootstrap/application.js b/resources/assets/javascripts/bootstrap/application.js index 830f2c025f2..c8312618687 100644 --- a/resources/assets/javascripts/bootstrap/application.js +++ b/resources/assets/javascripts/bootstrap/application.js @@ -370,7 +370,7 @@ STUDIP.domReady(function () { [usernameInput, passwordInput].forEach((input) => { input.addEventListener('keydown', (event) => { - if (event.getModifierState('CapsLock')) { + if (typeof event.getModifierState === 'function' && event.getModifierState('CapsLock')) { passwordCapsText.style.display = 'block'; } else { passwordCapsText.style.display = 'none'; diff --git a/templates/_standard_loginform.php b/templates/_standard_loginform.php index 0a8be593313..a300cb608e0 100644 --- a/templates/_standard_loginform.php +++ b/templates/_standard_loginform.php @@ -6,6 +6,8 @@ use Studip\Button; * @var bool $hidden * @var string $uname; */ +$username_tooltip_text = (string)Config::get()->USERNAME_TOOLTIP_TEXT; +$password_tooltip_text = (string)Config::get()->PASSWORD_TOOLTIP_TEXT; ?> <form class="default <?= $hidden ? 'hide' : '' ?>" @@ -18,8 +20,8 @@ use Studip\Button; <section> <label> <span class="required"><?= _('Benutzername') ?></span> - <? if (Config::get()->USERNAME_TOOLTIP_ACTIVATED) : ?> - <?= tooltipIcon(htmlReady((string)Config::get()->USERNAME_TOOLTIP_TEXT)) ?> + <? if ($username_tooltip_text) : ?> + <?= tooltipIcon($username_tooltip_text) ?> <? endif ?> <input type="text" <?= (mb_strlen($uname) || $hidden) ? '' : 'autofocus' ?> id="loginname" @@ -28,17 +30,18 @@ use Studip\Button; size="20" spellcheck="false" autocapitalize="off" - title="<?= _('Der Benutzername entspricht nicht den Anforderungen') ?>" + autocomplete="username" required> </label> <label for="password" style="position: relative"> <span class="required"><?= _('Passwort') ?></span> - <? if (Config::get()->PASSWORD_TOOLTIP_ACTIVATED) : ?> - <?= tooltipIcon(htmlReady((string)Config::get()->PASSWORD_TOOLTIP_TEXT)) ?> + <? if ($password_tooltip_text) : ?> + <?= tooltipIcon($password_tooltip_text) ?> <? endif ?> <input type="password" <?= mb_strlen($uname) && !$hidden ? 'autofocus' : '' ?> id="password" name="password" + autocomplete="current-password" size="20" required> -- GitLab