From 0fe2d00a1ab038c17a6ac6b20f7016c3ed26236c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ma=C3=AFeul=20Rouquette?= <maieul@maieul.net> Date: Sun, 6 Oct 2024 15:39:27 +0200 Subject: [PATCH] =?UTF-8?q?feat:=20des=20options=20pour=20l'affichage=20de?= =?UTF-8?q?s=20formulaires,=20import=C3=A9es=20depuis=20formidable=20+=20a?= =?UTF-8?q?fficher=20s'il=20n'y=20a=20pas=20de=20saisie?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 9 +++- formulaires/inc-saisies-cvt.html | 75 ++++++++++++++++++++------------ lang/saisies_ar.php | 1 + lang/saisies_de.php | 2 + lang/saisies_en.php | 2 +- lang/saisies_es.php | 1 + lang/saisies_fr.php | 3 +- lang/saisies_it.php | 2 +- lang/saisies_nl.php | 1 + lang/saisies_pt_br.php | 2 +- 10 files changed, 65 insertions(+), 33 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c49d7441..970c14e2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,14 @@ # Changelog ## Unreleased +### Added + +- Options globales `ajax` (defaut `false`) ; `conteneur_class` (defaut `''`) ; `conteneur_id` (defaut `''`) ; `squelettes_bouton` (défaut `formulaires/inc-saisies-cvt-boutons`). +- Indiquer si un formulaire ne contient aucun champ (fonctionnalité rapatriée depuis formidable) + +### Changed + +- Les messages de retour globaux des formulaires "full PHP" sont désormais entourés d'une balise `<div>` et non plus `<p>` ### Fixed @@ -31,7 +39,6 @@ ### Removed - Compatibilité SPIP < 4.1 -## 5.8.0 - 2024-10-04 ### Added - #439 function `saisies_supprimer_depublie_sans_reponse()` diff --git a/formulaires/inc-saisies-cvt.html b/formulaires/inc-saisies-cvt.html index 0f7cb94d..84a078a0 100644 --- a/formulaires/inc-saisies-cvt.html +++ b/formulaires/inc-saisies-cvt.html @@ -1,36 +1,55 @@ -<div class="formulaire_spip formulaire_#ENV{form}[ (#ENV{_etape}|oui)formulaire_multietapes]"[(#ENV{_saisies}|saisies_dont_avec_option{afficher_si}|oui) data-avec-afficher_si="true"]> +[(#ENV**{_saisies/options/ajax}|oui) + <div class="ajax"> +] +<div class=" + formulaire_spip + formulaire_#ENV{form} + [(#ENV{_etape}|oui)formulaire_multietapes] + [(#ENV**{_saisies/options/conteneur_class})]" + [(#ENV{_saisies}|saisies_dont_avec_option{afficher_si}|oui) data-avec-afficher_si="true"] + [id="(#ENV{_saisies/options/conteneur_id})"] + > #ENV**{_saisies/options/inserer_debut} - [<p class="reponse_formulaire reponse_formulaire_ok"[(#HTML5|oui) role="status"]>(#ENV**{message_ok})</p>] - [<p class="reponse_formulaire reponse_formulaire_erreur"[(#HTML5|oui) role="alert"]>(#ENV**{message_erreur})</p>] + [<div class="reponse_formulaire reponse_formulaire_ok"[(#HTML5|oui) role="status"]>(#ENV**{message_ok})</div>] + [<div class="reponse_formulaire reponse_formulaire_erreur"[(#HTML5|oui) role="alert"]>(#ENV**{message_erreur})</div>] [(#ENV{editable}|oui) - <form method="post" action="#ENV{action}" enctype="multipart/form-data"[ data-resume_etapes_futures="(#ENV{_resume_etapes_futures}|json_encode|attribut_html)"]><div> - [(#REM) declarer les hidden qui declencheront le service du formulaire - parametre : url d'action ] - #ACTION_FORMULAIRE{#ENV{action}} - [(#ENV{_etape}|oui) - <INCLURE{fond=formulaires/inc-saisies-cvt-etapes-#ENV{_saisies/options/etapes_presentation,defaut}, etapes=#ENV{_saisies_par_etapes}, env} /> - ] - - <div class="editer-groupe"> - #SET{saisies, #ENV{_saisies}} + [(#ENV{_saisies}|et{#ENV{_saisies}|count}|oui) + <form method="post" action="[(#ENV{action}|ancre_url{#ENV{_saisies/options/id}})]" enctype="multipart/form-data"[ data-resume_etapes_futures="(#ENV{_resume_etapes_futures}|json_encode|attribut_html)"]><div> + [(#REM) declarer les hidden qui declencheront le service du formulaire + parametre : url d'action ] + #ACTION_FORMULAIRE{#ENV{action}} [(#ENV{_etape}|oui) - [(#ENV{_saisies/options/etapes_ignorer_recapitulatif}|non|et{#ENV{_etape}|=={#ENV{_etapes}}}|oui) - <INCLURE{fond=formulaires/inc-saisies-cvt-etapes-recapitulatif,env} /> - ] - [(#ENV{_saisies/options/etapes_ignorer_recapitulatif}|non|et{#ENV{_etape}|=={#ENV{_etapes}}}|non) - #SET{saisies, #GET{etapes}|table_valeur{etape_#ENV{_etape}/saisies}} - #GENERER_SAISIES{#GET{saisies},saisies_par_etapes=#ENV{_saisies_par_etapes}} - ] - ] - [(#ENV{_etape}|non) - #GENERER_SAISIES{#GET{saisies}} + <INCLURE{fond=formulaires/inc-saisies-cvt-etapes-#ENV{_saisies/options/etapes_presentation,defaut}, etapes=#ENV{_saisies_par_etapes}, env} /> ] - </div> - [(#REM) ajouter les saisies supplementaires : extra et autre, a cet endroit ] - <!--extra--> - <INCLURE{fond=formulaires/inc-saisies-cvt-boutons,env} /> - </div></form> + <div class="editer-groupe"> + #SET{saisies, #ENV{_saisies}} + [(#ENV{_etape}|oui) + [(#ENV{_saisies/options/etapes_ignorer_recapitulatif}|non|et{#ENV{_etape}|=={#ENV{_etapes}}}|oui) + <INCLURE{fond=formulaires/inc-saisies-cvt-etapes-recapitulatif,env} /> + ] + [(#ENV{_saisies/options/etapes_ignorer_recapitulatif}|non|et{#ENV{_etape}|=={#ENV{_etapes}}}|non) + #SET{saisies, #GET{etapes}|table_valeur{etape_#ENV{_etape}/saisies}} + #GENERER_SAISIES{#GET{saisies},saisies_par_etapes=#ENV{_saisies_par_etapes}} + ] + ] + [(#ENV{_etape}|non) + #GENERER_SAISIES{#GET{saisies}} + ] + </div> + + [(#REM) ajouter les saisies supplementaires : extra et autre, a cet endroit ] + <!--extra--> + <INCLURE{fond=#ENV**{_saisies/options/squelette_boutons,formulaires/inc-saisies-cvt-boutons},env} /> + </div></form> + ] + + [(#ENV{_saisies}|et{#ENV{_saisies}|count}|non) + <p class="notice"><:saisies:formulaires_aucun_champ:></p> + ] ] #ENV**{_saisies/options/inserer_fin} </div> +[(#ENV**{_saisies/options/ajax}|oui) + </div> +] diff --git a/lang/saisies_ar.php b/lang/saisies_ar.php index d5d0d06c..2bf8ec7d 100644 --- a/lang/saisies_ar.php +++ b/lang/saisies_ar.php @@ -17,6 +17,7 @@ return [ 'construire_position_label' => 'موقع الØقل', 'construire_reinitialiser' => 'إعادة تأصيل الاستمارة', + 'formulaires_aucun_champ' => 'Øالياً لا يوجد اي Øقل إدخال ÙÙŠ هذه الاستمارة.', // L 'label_annee' => 'السنة', 'label_jour' => 'اليوم', diff --git a/lang/saisies_de.php b/lang/saisies_de.php index 4b8720f1..2caa02c9 100644 --- a/lang/saisies_de.php +++ b/lang/saisies_de.php @@ -55,6 +55,8 @@ return [ 'erreur_generique' => 'Fehler im folgenden Feld. Bitte überprüfen Sie Ihre Eingabe.', 'erreur_option_nom_unique' => 'Dieser Name wird bereits für ein anderes Feld verwendet; er kann in diesem Formular nur einmal verwendet werden.', + // F + 'formulaires_aucun_champ' => 'Für dieses Formular gibt es derzeit noch keine Eingabefelder.', // I 'info_configurer_saisies' => 'Testseite der Eingabefelder.', diff --git a/lang/saisies_en.php b/lang/saisies_en.php index f88999ce..37832c7c 100644 --- a/lang/saisies_en.php +++ b/lang/saisies_en.php @@ -66,7 +66,7 @@ Load javascript and CSS on all pages, in the <head> tag', 'fichier_erreur_explication_renvoi_pas_alternative' => 'You can send another file.', 'format_date_attendu' => 'Enter a date in dd/mm/yyyy format.', 'format_email_attendu' => 'Enter an email address in the format you@provider.tld', - + 'formulaires_aucun_champ' => 'There is currently no entry field for this form.', // I 'info_configurer_saisies' => 'Test page for Entries', diff --git a/lang/saisies_es.php b/lang/saisies_es.php index 3ce50156..ce848c4d 100644 --- a/lang/saisies_es.php +++ b/lang/saisies_es.php @@ -69,6 +69,7 @@ return [ 'fichier_erreur_explication_renvoi_pas_alternative' => 'Necesitas enviar otro archivo.', 'format_date_attendu' => 'Ingrese una fecha en el formato dd/mm/aaaa.', 'format_email_attendu' => 'Ingrese una dirección de correo electrónico en el formato vous@fournisseur.fr', + 'formulaires_aucun_champ' => 'TodavÃa este formulario no contiene ningún campo.', // I 'info_configurer_saisies' => 'Página de prueba de las entradas', diff --git a/lang/saisies_fr.php b/lang/saisies_fr.php index 51c98ee4..0b71863f 100644 --- a/lang/saisies_fr.php +++ b/lang/saisies_fr.php @@ -70,7 +70,8 @@ return [ 'fichier_erreur_explication_renvoi_pas_alternative' => 'Vous devez envoyer un autre fichier.', 'format_date_attendu' => 'Saisir une date au format jj/mm/aaaa.', 'format_email_attendu' => 'Saisir une adresse email au format vous@fournisseur.fr', - + 'formulaires_aucun_champ' => 'Il n’y a pour l’instant aucun champ de saisie pour ce formulaire.', + 'formulaires_aucun_champ' => 'У формы нет полей Ð´Ð»Ñ Ð²Ð²Ð¾Ð´Ð° информации.', // I 'info_configurer_saisies' => 'Page de test des Saisies', diff --git a/lang/saisies_it.php b/lang/saisies_it.php index ca4668f9..54d1183a 100644 --- a/lang/saisies_it.php +++ b/lang/saisies_it.php @@ -66,7 +66,7 @@ return [ 'fichier_erreur_explication_renvoi_pas_alternative' => 'Devi inviare un altro file.', 'format_date_attendu' => 'Immettere una data nel formato gg/mm/aaaa.', 'format_email_attendu' => 'Inserisci un indirizzo email nel formato nome@indirizzo.it', - + 'formulaires_aucun_champ' => 'Non ci sono attualmente campi richiesti per questo modulo.', // I 'info_configurer_saisies' => 'Pagina di test di Saisies', diff --git a/lang/saisies_nl.php b/lang/saisies_nl.php index 7c751b3b..54b60056 100644 --- a/lang/saisies_nl.php +++ b/lang/saisies_nl.php @@ -51,6 +51,7 @@ return [ // F 'fichier_erreur_explication_renvoi_alternative' => 'Je kunt een nieuw bestand versturen, of het formulier als zodanig. Het oude bestand wordt niet bewaard.', 'fichier_erreur_explication_renvoi_pas_alternative' => 'Je moet een ander bestand sturen.', + 'formulaires_aucun_champ' => 'Er is momenteel geen iinvoerveld in dit formulier.', // I 'info_configurer_saisies' => 'Testbladzijde voor invoer', diff --git a/lang/saisies_pt_br.php b/lang/saisies_pt_br.php index ab16910a..ab9e44b3 100644 --- a/lang/saisies_pt_br.php +++ b/lang/saisies_pt_br.php @@ -69,7 +69,7 @@ return [ 'fichier_erreur_explication_renvoi_pas_alternative' => 'Você deve enviar um outro arquivo.', 'format_date_attendu' => 'Informar uma data no formato dd/mm/aaaa.', 'format_email_attendu' => 'Informar um endereço de e-mail no formato nome@dominio.com.br', - + 'formulaires_aucun_champ' => 'Ainda não há nenhum campo de entrada para esse formulário.', // I 'info_configurer_saisies' => 'Página de teste das entradas de dados', -- GitLab