From e0d97874b399c56dbba753a68828f53af900fa06 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ma=C3=AFeul=20Rouquette?= <maieul@maieul.net>
Date: Tue, 7 Jan 2020 00:13:57 +0100
Subject: [PATCH] =?UTF-8?q?nouveau=20raccourci=20pour=20le=20message=20de?=
 =?UTF-8?q?=20l'accus=C3=A9=20de=20r=C3=A9ception=20:=20@message=5Fretour@?=
 =?UTF-8?q?.=20Permet=20de=20prendre=20le=20message=20standard=20de=20reto?=
 =?UTF-8?q?ur=20de=20formulaire=20puis=20de=20le=20compl=C3=A9ter?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 inc/formidable.php                   | 8 +++++++-
 modeles/formulaire_aide_memoire.html | 4 ++++
 paquet.xml                           | 2 +-
 traiter/email.php                    | 6 +++++-
 4 files changed, 17 insertions(+), 3 deletions(-)

diff --git a/inc/formidable.php b/inc/formidable.php
index b5b37fab..778810b1 100644
--- a/inc/formidable.php
+++ b/inc/formidable.php
@@ -519,7 +519,13 @@ function formidable_raccourcis_arobases_2_valeurs_champs($chaine, $saisies, $bru
 		else {
 			$a_remplacer = array_intersect_key($valeurs_libellees, $a_remplacer);
 		}
-		$a_remplacer = array_merge($a_remplacer, array('nom_site_spip' => lire_config("nom_site")));
+
+		$a_remplacer = array_merge($a_remplacer,array('nom_site_spip' => lire_config('nom_site')));
+		if (strpos($chaine,'@message_retour@') !== false) {// test pour éviter recurrence infinie
+			$message_retour = sql_getfetsel('message_retour', 'spip_formulaires', "id_formulaire=$id_formulaire");
+			$message_retour = formidable_raccourcis_arobases_2_valeurs_champs($message_retour, $saisies, $brut, $sans_reponse, $source, $id_formulaires_reponse, $id_formulaire);
+			$a_remplacer = array_merge($a_remplacer,array('message_retour' => $message_retour));
+		}
 	}
 	return trim(_L($chaine, $a_remplacer));
 }
diff --git a/modeles/formulaire_aide_memoire.html b/modeles/formulaire_aide_memoire.html
index 70764617..b08f888a 100644
--- a/modeles/formulaire_aide_memoire.html
+++ b/modeles/formulaire_aide_memoire.html
@@ -4,6 +4,10 @@
 		<dt>@nom_site_spip@</dt>
 		<dd><:info_nom_site:></dd>
 	</dl>
+	<dl>
+		<dt>@message_retour@</dt>
+		<dd><:formidable:editer_message_ok:></dd>
+	</dl>
 	<BOUCLE_champs(POUR){tableau #SAISIES*|unserialize|saisies_lister_par_nom{1}}>
 	[(#VALEUR{saisie}|=={explication}|oui)
 		#SET{label,#VALEUR{options/texte}}
diff --git a/paquet.xml b/paquet.xml
index 5d16b0e8..8d933e01 100644
--- a/paquet.xml
+++ b/paquet.xml
@@ -1,7 +1,7 @@
 <paquet
 	prefix="formidable"
 	categorie="communication"
-	version="3.47.9"
+	version="3.48.0"
 	etat="stable"
 	compatibilite="[3.0.0;3.2.*]"
 	logo="images/formidable-64.png"
diff --git a/traiter/email.php b/traiter/email.php
index 03ff1189..29ce5ceb 100644
--- a/traiter/email.php
+++ b/traiter/email.php
@@ -24,6 +24,7 @@ function traiter_email_dist($args, $retours) {
 	}
 	$timestamp = time();
 	$retours['timestamp'] = $timestamp;
+	$id_formulaire = $args['id_formulaire'];
 	$formulaire = $args['formulaire'];
 	$options = $args['options'];
 	$saisies = unserialize($formulaire['saisies']);
@@ -242,7 +243,10 @@ function traiter_email_dist($args, $retours) {
 					$options['texte_accuse'] ? $options['texte_accuse'] : $formulaire['message_retour'],
 					$saisies,
 					false,
-					''),
+					'',
+					'request',
+					0,
+					$id_formulaire),
 				'traitements' => $traitements,
 				'saisies' => $options['masquer_valeurs_accuse'] ? '' : $saisies,
 				'valeurs' => $options['masquer_valeurs_accuse'] ? '' : $valeurs
-- 
GitLab