From 3a270ef48d63b7b40e1232b9c1e2c5c1489e8234 Mon Sep 17 00:00:00 2001 From: "maieul@maieul.net" <> Date: Sun, 1 Jan 2017 16:01:03 +0000 Subject: [PATCH] =?UTF-8?q?lorsqu'on=20affiche=20le=20formulaire=20=C3=A0?= =?UTF-8?q?=20nouveau=20apr=C3=A8s=20qu'il=20ait=20=C3=A9t=C3=A9=20post?= =?UTF-8?q?=C3=A9,=20et=20que=20ce=20formulaire=20n'autorise=20pas=20la=20?= =?UTF-8?q?modification=20des=20r=C3=A9ponses,=20afficher=20les=20infos=20?= =?UTF-8?q?sur=20les=20fichiers=20pr=C3=A9c=C3=A9dements=20envoy=C3=A9s,?= =?UTF-8?q?=20comme=20on=20fait=20pour=20les=20autres=20champs?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- formulaires/formidable.php | 47 ++++++++++++++++++++++++++++++++++---- 1 file changed, 42 insertions(+), 5 deletions(-) diff --git a/formulaires/formidable.php b/formulaires/formidable.php index b157b52c..62f7e56d 100644 --- a/formulaires/formidable.php +++ b/formulaires/formidable.php @@ -176,6 +176,9 @@ function formulaires_formidable_charger($id, $valeurs = array(), $id_formulaires } $contexte['_hidden'] .= "\n" . '<input type="hidden" name="formidable_afficher_apres' /*.$formulaire['id_formulaire']*/ . '" value="' . $formulaire['apres'] . '"/>'; // marche pas + if ($precharger= _request('_formidable_cvtupload_precharger_fichiers')) { + $contexte['cvtupload_precharger_fichiers'] = $precharger; + } $contexte['formidable_afficher_apres'] = $formulaire['apres']; return $contexte; @@ -309,11 +312,6 @@ function formulaires_formidable_traiter($id, $valeurs = array(), $id_formulaires $retours['formidable_afficher_apres'] = $formulaire['apres']; $retours['id_formulaire'] = $id_formulaire; - // lorsqu'on affichera à nouveau le html, dire à cvt-upload de ne pas générer le html pour les résultats des saisies fichiers - if ($formulaire['apres']=='formulaire'){ - set_request('_fichiers', null); - set_request('_cvtupload_precharger_fichiers_forcer',true); - } // Si on a une redirection valide if (($formulaire['apres'] == 'redirige') and ($formulaire['url_redirect'] != '')) { refuser_traiter_formulaire_ajax(); @@ -416,6 +414,45 @@ function formulaires_formidable_traiter($id, $valeurs = array(), $id_formulaires } } } + // lorsqu'on affichera à nouveau le html, dire à cvt-upload de ne pas générer le html pour les résultats des saisies fichiers + if ($formulaire['apres']=='formulaire' and isset($retours['fichiers'])) { + $formidable_cvtupload_precharger_fichiers = array(); + set_request('_fichiers', null); + set_request('_cvtupload_precharger_fichiers_forcer',true); + foreach ($retours['fichiers'] as $champ => $valeur){ + $i = -1; + foreach ($valeur as $id=>$info){ + $i++; + if (isset ($info['fichier'])) { + $nom_fichier = $info['fichier']; + } else { + $nom_fichier = $info['nom']; + } + if (isset($retours['id_formulaires_reponse'])) { + $chemin_fichier = _DIR_FICHIERS_FORMIDABLE + ."formulaire_".$retours['id_formulaire'] + ."/reponse_".$retours['id_formulaires_reponse'] + ."/".$champ + ."/".$nom_fichier; + $formidable_cvtupload_precharger_fichiers[$champ][$i]['url'] = formidable_generer_url_action_recuperer_fichier($retours['id_formulaire'], $retours['id_formulaires_reponse'], $champ, $nom_fichier); + $formidable_cvtupload_precharger_fichiers[$champ][$i]['chemin'] = $chemin_fichier; + } elseif (isset($retours['timestamp'])) { + $chemin_fichier = _DIR_FICHIERS_FORMIDABLE + ."timestamp/" + .$retours['timestamp']."/" + .$champ."/" + .$nom_fichier; + $formidable_cvtupload_precharger_fichiers[$champ][$i]['chemin'] = $chemin_fichier; + $formidable_cvtupload_precharger_fichiers[$champ][$i]['url'] = formidable_generer_url_action_recuperer_fichier_email( + $champ, + $nom_fichier, + array('timestamp'=>$retours['timestamp']) + ); + } + } + } + set_request('_formidable_cvtupload_precharger_fichiers', $formidable_cvtupload_precharger_fichiers); + } // si aucun traitement, alerter le webmestre pour ne pas perdre les donnees if (!$erreur_texte and !count($retours['traitements'])) { $erreur_texte = "Aucun traitement pour le formulaire $id\n"; -- GitLab