Améliorer l'accessibilité de la page de login
La page de login a quelques soucis d'accessibilité :
- Les messages d'alerte doivent avoir un role="alert" (cf. "RGAA 7.5":https://www.numerique.gouv.fr/publications/rgaa-accessibilite/methode/criteres/#crit-7-5) Dans la page de login il y a plusieurs messages qui ne l'ont pas. Ca permet d'alerter le lecteur d'écran immédiatement en lisant d'abord ce message.
- Les champs obligatoires doivent avoir un message indiquant qu'ils le sont avant la validation du formulaire. (cf. "RGAA 11.10.1/11.10.2":https://www.numerique.gouv.fr/publications/rgaa-accessibilite/methode/criteres/#crit-11-10) Dans la page de login le champ login (d'après ce que j'en comprends le mot de passe n'est pas obligatoire) a un attribut required mais n'a rien dans son label, aria-labelledby ou aria-describedby n'indique qu'il est obligatoire. Le plus simple est de mettre un astérisque à la fin du label.
Je peux faire une PR pour ces deux points.
Il y a une autre chose que je ne comprends pas, dans login.php on a :
if (strlen($session_password)) {
$erreurs['password'] = _T('login_erreur_pass');
} else {
// sinon c'est un login en deux passe old style (ou js en panne)
// pas de message d'erreur
$erreurs['password'] = ' ';
}
Qu'est-ce qu'un login en deux passes ? Le souci c'est qu'en cas d'absence de mot de passe on ne met rien dans le message d'erreur, et donc ça n'affiche aucun message d'erreur lié au champ de mot de passe.