Merge branch 'envoi_separe'

This commit is contained in:
Christophe 2023-11-07 10:34:28 +01:00
commit c70ced219c
3 changed files with 29 additions and 6 deletions

View file

@ -196,6 +196,7 @@ function formulaires_gamumail_verifier_dist($slug, $destinataires = 0, $Tclient
}
function formulaires_gamumail_traiter_dist($slug, $destinataires = 0, $Tclient = [], $Tpdf = [], $redirect = '', $options = []) :Array{
$retour = [];
// blocage de l'envoi par appel du pseudo-slug no_gamumail
if ($slug === 'no_gamumail') {
@ -210,9 +211,8 @@ function formulaires_gamumail_traiter_dist($slug, $destinataires = 0, $Tclient =
include_spip('inc/texte');
include_spip('classes/facteur');
$retour = [];
$envoi_separe = _request('envoi_separe') ?? '';
$options['envoi_separe'] = $envoi_separe;
$pour = _request('pour');
$pour = explode(',', $pour);
@ -275,6 +275,10 @@ function gamuSend($slug, $options, $destinataires, $Tclient, $Tpdf, $redirect, &
$Tid_doc = _request('Tid_doc');
$texte = facteur_mail_html2text($html);
$args = $options;
$args['slug'] = $slug;
$args['destinataires'] = $destinataires;
$pieces_jointes = [];
if ($f = charger_fonction('traiter_av_pdf', 'gamumail', true)) {
$options = $f($options, $destinataires, $Tclient, $Tpdf);
@ -341,6 +345,7 @@ function gamuSend($slug, $options, $destinataires, $Tclient, $Tpdf, $redirect, &
$recup_pdf = charger_fonction('charger_pdf','inc');
foreach ($Tpdfs_ok as $pdf) {
$nom = "mon_fichier";
foreach ($Tpdf as $cle => $p) {
if ($p['fichier'].'_'.$cle === $pdf) {
$fichier = $p['fichier'];
@ -348,6 +353,20 @@ function gamuSend($slug, $options, $destinataires, $Tclient, $Tpdf, $redirect, &
$nom = isset($p['nom']) ? $p['nom'] : $fichier;
}
}
$nom = pipeline('remplacements_slug', array(
'args' => $args,
'data' => $nom
));
$c = pipeline('tpdf_charger_contexte', [
'args' => [
'destinataires' => $destinataires,
'contexte' => $c,
'options' => $options
], 'data' => $c
]);
$pdf = $recup_pdf($fichier, $c);
$nom_fichier = $nom.'.pdf';
$destination = _DIR_TMP.basename($nom_fichier);
@ -392,9 +411,6 @@ function gamuSend($slug, $options, $destinataires, $Tclient, $Tpdf, $redirect, &
$html = $html_header . $html . $html_footer;
// pipeline pour les traitement du contenu des slugs spécifiques de chaque plugin
$args = $options;
$args['slug'] = $slug;
$args['destinataires'] = $destinataires;
$html = pipeline('remplacements_slug', array(
'args' => $args,
'data' => $html

View file

@ -1,10 +1,16 @@
[(#SET{Tpdf,#ARRAY{
fichier,#ENV{pdf_fichier},
nom,#ENV{pdf_nom},
contexte,#ARRAY{slug, #ENV{slug}}
}}
)]
<h3 id="titre_slug"><:gamumail:contenu_mail:></h3>
<div class="bloc_contenu_slug ajax">
[(#FORMULAIRE_GAMUMAIL{
#ENV{slug},
#ENV{dest},
#ENV{client},
#ENV{Tpdf},
#GET{Tpdf},
#ENV{redirect},
#ENV{options}
})]

View file

@ -21,6 +21,7 @@
<pipeline nom="remplacements_slug" action='' />
<pipeline nom="post_gamumail_ok" action='' />
<pipeline nom="tpdf_charger_contexte" action='' />
<pipeline nom="autoriser" inclure="gamumail_autorisations.php" />