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