From 353c247b4e0ec98366a96a4a99551e713a7ec2b5 Mon Sep 17 00:00:00 2001
From: "maieul@maieul.net" <>
Date: Sun, 1 Jan 2017 16:01:02 +0000
Subject: [PATCH] =?UTF-8?q?avoir=20la=20bonne=20r=C3=A9ponse=20concernant?=
 =?UTF-8?q?=20les=20champs=20fichiers=20lorsqu'on=20a=20les=20r=C3=A9sulta?=
 =?UTF-8?q?ts=20d'un=20formulaire=20qui=20est=20simplement=20post=C3=A9=20?=
 =?UTF-8?q?par=20courriel?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 formulaires/formidable.php | 9 ++++++++-
 traiter/email.php          | 3 +++
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/formulaires/formidable.php b/formulaires/formidable.php
index 20b9eab3..b157b52c 100644
--- a/formulaires/formidable.php
+++ b/formulaires/formidable.php
@@ -402,7 +402,14 @@ function formulaires_formidable_traiter($id, $valeurs = array(), $id_formulaires
 				foreach ($description as $i => $desc){ // ajouter la vignette et l'url
 					if (!isset($description[$i]['erreur'])) {
 						$description[$i]['vignette'] = $vignette_par_defaut($desc['extension'],false);
-						$description[$i]['url'] =  formidable_generer_url_action_recuperer_fichier($id_formulaire, $retours['id_formulaires_reponse'], $saisie, $desc['nom']);
+						if (isset($retours['id_formulaires_reponse'])) {// si réponse enregistrée
+							$description[$i]['url'] =  formidable_generer_url_action_recuperer_fichier($id_formulaire, $retours['id_formulaires_reponse'], $saisie, $desc['fichier']);
+						} elseif (isset($retours['timestamp'])) { // si réponse simplement envoyée par courriel
+							$description[$i]['url'] = formidable_generer_url_action_recuperer_fichier_email($saisie, 
+								$desc['fichier'], 
+								array('timestamp'=>$retours['timestamp'])
+							);
+						}
 					}
 				}	
 				set_request($saisie, $description);
diff --git a/traiter/email.php b/traiter/email.php
index b9d61040..22ea3f52 100644
--- a/traiter/email.php
+++ b/traiter/email.php
@@ -14,6 +14,7 @@ function traiter_email_dist($args, $retours) {
 		$ajouter_fichier = False;
 	}
 	$timestamp = time();
+	$retours['timestamp'] = $timestamp;
 	$formulaire = $args['formulaire'];
 	$options = $args['options'];
 	$saisies = unserialize($formulaire['saisies']);
@@ -397,8 +398,10 @@ function ajouter_action_recuperer_fichier_par_email($saisie_a_modifier, $nom_sai
 		$url = formidable_generer_url_action_recuperer_fichier_email($nom_saisie, $valeur['nom'], $options);
 		$saisie_a_modifier[$i]['url'] = $url;
 		if (_FORMIDABLE_EXPIRATION_FICHIERS_EMAIL > 0) {
+			$saisie_a_modifier[$i]['fichier'] = $valeur['nom'];
 			$saisie_a_modifier[$i]['nom'] = "["._T("formidable:lien_expire", array("delai"=>$delai))."] ".$valeur['nom'];
 		} else {
+			$saisie_a_modifier[$i]['fichier'] = $valeur['nom'];
 			$saisie_a_modifier[$i]['nom'] = $valeur['nom'];
 		}
 		if (isset($valeur['extension'])) {
-- 
GitLab