Feat : les remplacements de Gamumail (y compris ceux arrivant depuis le pipeline remplacements_slug) doivent passer par extraire_multi() pour gérer les éventuelles chaînes de langue injectées

This commit is contained in:
cy_altern 2024-06-07 16:51:30 +02:00
parent 13021a3df1
commit d57df2412e

View file

@ -53,10 +53,13 @@ function inc_envoyer_gamumail($slug, $destinataires, $options = [], $Tid_doc_pie
return $retour; return $retour;
} }
// langue (par défaut langue du site)
$lang = $options['lang'] != '' ? $options['lang'] : lire_config('langue_site', 'fr');
// contenus du slug // contenus du slug
$res = sql_fetsel('*', 'spip_gamumails', 'slug = "'.$slug.'"'); $res = sql_fetsel('*', 'spip_gamumails', 'slug = "'.$slug.'"');
if ($res) { if ($res) {
$sujet = $res['sujet']; $sujet = extraire_multi($res['sujet'], $lang);
$html = propre($res['texte']); $html = propre($res['texte']);
$id_docs = $res['id_docs']; $id_docs = $res['id_docs'];
} }
@ -228,16 +231,15 @@ function inc_envoyer_gamumail($slug, $destinataires, $options = [], $Tid_doc_pie
'args' => $args, 'args' => $args,
'data' => $sujet 'data' => $sujet
]); ]);
// traitement des remplacements génériques fournis par Gamumail // traitement des remplacements génériques fournis par Gamumail
$remplacement_generiques = charger_fonction('gamumail_remplacements', 'inc'); $remplacement_generiques = charger_fonction('gamumail_remplacements', 'inc');
$html = $remplacement_generiques($args, $html); $html = $remplacement_generiques($args, $html);
$sujet = $remplacement_generiques($args, $sujet); $sujet = $remplacement_generiques($args, $sujet);
// TO DO : traduction des <multi> intégrés par les remplacements // traduction des <multi> intégrés par les remplacements
// => vérifier/gérer si on a lang dans $options[] $html = extraire_multi($html, $lang);
//$html = extraire_multi($html, $options['lang']); $sujet = extraire_multi($sujet, $lang);
//$sujet = extraire_multi($sujet, $options['lang']);
include_spip('facteur_fonctions'); include_spip('facteur_fonctions');
$texte = facteur_mail_html2text($html); $texte = facteur_mail_html2text($html);