Feat: multilangue gestion de la langue dans le contexte des PDFs générés

This commit is contained in:
cy_altern 2023-11-06 16:37:48 +01:00
parent 15d9526132
commit 6f73910ed4
2 changed files with 13 additions and 5 deletions

View file

@ -4,9 +4,13 @@
[(#REM)
inclure vide pour surcharge si besoin de passer du JS en fonction du retour du traiter du form
(voir dans le fichier fermer_modale.html pour exemple permettant de fermer une modalbox contenant ce formulaire + README)
(voir inclure/fermer_modale.html pour exemple permettant de fermer une modalbox contenant ce formulaire + README)
]<INCLURE{fond=inclure/fermer_modale,env}>
[(#REM)
récupérer la langue du destinataire dans le paramètre options/lang
] #SET{lang_dest, #ENV{options/lang}|sinon{#CONFIG{langue_site}}}
<div class="formulaire_spip formulaire_#FORM">
[<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>]
@ -17,7 +21,7 @@
#SET{fichier,#SLUG|concat{_debutform}}
[(#CHEMIN{gamumail/#GET{fichier}.html}|oui)
<INCLURE{fond=gamumail/#GET{fichier},env}>
<INCLURE{fond=gamumail/#GET{fichier},env,lang=#GET{lang_dest}}>
]
<div class="editer_groupe">
#SET{name,pour}
@ -76,7 +80,7 @@
#SET{fichier,#SLUG|concat{_soustexte}}
[(#CHEMIN{gamumail/#GET{fichier}.html}|oui)
<INCLURE{fond=gamumail/#GET{fichier},env}>
<INCLURE{fond=gamumail/#GET{fichier},env,lang=#GET{lang_dest}}>
]
#SET{name,Tpdfs_ok}
@ -89,7 +93,10 @@
<BOUCLE_pdf(DATA){source tableau, #ENV{TFichierpdfs}}>
<div class="choix">
<input type="checkbox" class="checkbox" name="#GET{name}[]" value="[(#VALEUR|table_valeur{fichier})]_#CLE" id="#GET{name}_#COMPTEUR_BOUCLE" checked="checked" >
[(#SET{url_pdf,[(#URL_PAGE{spipdf}|parametre_url{spipdf,[(#VALEUR|table_valeur{fichier})]})]})]
[(#SET{url_pdf, #URL_PAGE{spipdf}
|parametre_url{spipdf, #VALEUR|table_valeur{fichier}}
|parametre_url{lang, #GET{lang_dest}}
})]
<BOUCLE_options(DATA){source tableau, #VALEUR|table_valeur{contexte}}>
[(#SET{url_pdf,[(#GET{url_pdf}|parametre_url{#CLE,#VALEUR})]})]
</BOUCLE_options>

View file

@ -13,7 +13,8 @@ include_spip('inc/filtres');
* de la forme []['objet' => 'app_client', 'id_objet' => 3, 'champ' => 'email', 'copie' => 'cc|cci'] ou ['objet' => 'app_client', 'id_objet' => 3, 'champ' => 'email']
* le paramètre 'copie' est facultatif : cc ou cci pour mettre un destinataire en copie, '' par défaut = destinataire principal
* @param array $Tpdf = un ou plusieurs fichiers PDF générés par spiPDF (le contexte permet la personnalisation du contenu)
* []['fichier' => 'pdf_facture', 'nom' => 'facture_123', 'contexte' => ['id_app_facture' => 3]] ou ['fichier' => 'pdf_facture', 'nom' => 'facture_123', 'contexte' => ['id_app_facture' => 3]]
* []['fichier' => 'pdf_facture', 'nom' => 'facture_123', 'contexte' => ['id_app_facture' => 3, 'lang' => 'en']] ou ['fichier' => 'pdf_facture', 'nom' => 'facture_123', 'contexte' => ['id_app_facture' => 3, 'lang' => 'en']]
* NB: si besoin que le PDF généré soit dans une langue précise, il faut passer la passer en paramètre "lang" dans le contexte
* @param string $redirect
* @param array $options = un gros fourre-tout sous forme d'un array
* utilisé en particulier par les inclure HTML de gamumail/#SLUG_soustexte et gamumail/#SLUG_fichiers