From c0248f99acbfe336c9fa5f642d4c721edd472585 Mon Sep 17 00:00:00 2001 From: nicod_ <nicod_@noreply.git.spip.net> Date: Mon, 5 Oct 2020 22:22:30 +0200 Subject: [PATCH] =?UTF-8?q?Accessibilit=C3=A9=20du=20formulaire=20dater=20?= =?UTF-8?q?(!68)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Accessibilité du formulaire dater Ajout de labels cachés à l'écran et d'attributs aria --- ecrire/lang/spip_fr.php | 2 ++ prive/formulaires/dater.html | 19 +++++++++++-------- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/ecrire/lang/spip_fr.php b/ecrire/lang/spip_fr.php index 637e6084e4..87a573c115 100644 --- a/ecrire/lang/spip_fr.php +++ b/ecrire/lang/spip_fr.php @@ -282,7 +282,9 @@ le site "@nom_site_spip@" (@adresse_login@) :', 'form_prop_non_enregistre' => 'Votre proposition n’a pas été enregistrée.', 'form_prop_sujet' => 'Sujet', 'form_prop_url_site' => 'Adresse URL du site', + 'format_date_attendu' => 'Saisir une date au format jj/mm/aaaa.', 'format_date_incorrecte' => 'La date ou son format est incorrect', + 'format_heure_attendu' => 'Saisir une heure au format hh:mm.', 'format_heure_incorrecte' => 'L’heure ou son format est incorrect', 'forum_non_inscrit' => 'Vous n’êtes pas inscrit, ou l’adresse ou le mot de passe sont erronés.', 'forum_par_auteur' => 'par @auteur@', diff --git a/prive/formulaires/dater.html b/prive/formulaires/dater.html index ca8c0ec7f4..705f3638d4 100644 --- a/prive/formulaires/dater.html +++ b/prive/formulaires/dater.html @@ -1,6 +1,9 @@ -<div class="formulaire_spip formulaire_#FORM formulaire_#FORM-#ENV{objet}-#ENV{id,nouveau}[ (#ENV{_class})]"> +#SET{id,#FORM-#ENV{objet}-#ENV{id,nouveau}} +<div class="formulaire_spip formulaire_#FORM formulaire_#GET{id}[ (#ENV{_class})]"> [<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>] [<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>] + <p hidden id="format_date_#GET{id}"><:format_date_attendu:></p> + <p hidden id="format_heure_#GET{id}"><:format_heure_attendu:></p> [(#ENV{editable}) <form method='post' action='#ENV{action}'><div> <input type='submit' class='over' name='changer' value='<:bouton_changer:>' /> @@ -11,8 +14,8 @@ <div class="editer-groupe"> #SET{name,date}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}} <div class="editer long_label editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]"> - <label for="#GET{name}">[(#ENV{_label_date})] #AIDER{artdate}</label>[ - <span class='erreur_message'>(#GET{erreurs})</span> + <label for="#GET{name}_jour" id="#GET{name}_jour_#GET{id}">[(#ENV{_label_date})] #AIDER{artdate}</label>[ + <span class='erreur_message' id="erreur_#GET{id}">(#GET{erreurs})</span> ] <span class="affiche"[(#ENV{_saisie_en_cours}|et{#ENV{_editer_date}}|oui)style="display:none;"]>[(#ENV*{afficher_#GET{name}}|affdate)]</span> <BOUCLE_editable(CONDITION){si #ENV{editable}}> @@ -22,23 +25,23 @@ onclick="var f=jQuery(this).parents('form').eq(0);f.find('.editer .input.editable').show('fast').siblings('span').add(jQuery(this).parent()).hide('fast');f.find('.boutons').show('fast');f.find('input.date').eq(0).focus();[(#ENV{sans_redac}|oui)f.find('.editer_date_redac label\[for=date_redac\]').hide();]return false;" ><:bouton_changer:><i class="over"> \(#ENV{_label_date}\)</i></button>]</span> <span class="input[(#ENV{_editer_date}|oui)editable]"[(#ENV{_saisie_en_cours}|et{#ENV{_editer_date}}|non)style="display:none;"]> - <input type="text" class="text date" name="#GET{name}_jour" id="#GET{name}_jour" value="#ENV{#GET{name}_jour}" size="10"/> - <input type="text" class="text heure time" name="#GET{name}_heure" id="#GET{name}_heure" value="#ENV{#GET{name}_heure}" size="5"/> + <input type="text" class="text date" name="#GET{name}_jour" id="#GET{name}_jour" value="#ENV{#GET{name}_jour}" size="10" aria-describedby="[(#GET{erreurs}|oui)erreur_#GET{id} ]format_date_#GET{id}"/> + <input type="text" class="text heure time" name="#GET{name}_heure" id="#GET{name}_heure" value="#ENV{#GET{name}_heure}" size="5" aria-labelledby="#GET{name}_jour_#GET{id}" aria-describedby="format_heure_#GET{id}"/> </span> </BOUCLE_editable> </div> <BOUCLE_editer_date_anterieure(CONDITION){si #ENV{_editer_date_anterieure}|oui}> #SET{name,date_redac}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}} <div class="editer long_label editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]"> - <label for="#GET{name}">[(#ENV{_label_date_redac,<:texte_date_publication_anterieure:>})] #AIDER{artdate_redac}</label>[ + <label for="#GET{name}_jour" id="#GET{name}_jour_#GET{id}">[(#ENV{_label_date_redac,<:texte_date_publication_anterieure:>})] #AIDER{artdate_redac}</label>[ <span class='erreur_message'>(#GET{erreurs})</span> ] <span class="affiche"[(#ENV{_saisie_en_cours}|oui)style="display:none;"]>[(#ENV*{afficher_#GET{name}}|affdate|sinon{<:jour_non_connu_nc:>})]</span> <BOUCLE_editable1(CONDITION){si #ENV{editable}}> <span class="input editable"[(#ENV{_saisie_en_cours}|non)style="display:none;"]> <span class="saisie_redac"[(#ENV{sans_redac}|oui)style="display:none;"]> - <input type="text" class="text date" name="#GET{name}_jour" id="#GET{name}_jour" value="#ENV{#GET{name}_jour}" size="10"/> - <input type="text" class="text heure time" name="#GET{name}_heure" id="#GET{name}_heure" value="#ENV{#GET{name}_heure}" size="5"/> + <input type="text" class="text date" name="#GET{name}_jour" id="#GET{name}_jour" value="#ENV{#GET{name}_jour}" size="10" aria-describedby="[(#GET{erreurs}|oui)erreur_#GET{id} ]format_date_#GET{id}"/> + <input type="text" class="text heure time" name="#GET{name}_heure" id="#GET{name}_heure" value="#ENV{#GET{name}_heure}" size="5" aria-labelledby="#GET{name}_jour_#GET{id}" aria-describedby="format_heure_#GET{id}"/> <br /> </span> <span class="choix"> -- GitLab