From 711096ad9d05329dc8131d01b886d4ef0039cbf0 Mon Sep 17 00:00:00 2001 From: "maieul@maieul.net" <> Date: Sun, 18 Dec 2016 22:08:12 +0000 Subject: [PATCH] =?UTF-8?q?modifier=20legerement=20les=20param=C3=A8tres?= =?UTF-8?q?=20pass=C3=A9s=20=C3=A0=20la=20vue=20de=20saisie=20fichiers,=20?= =?UTF-8?q?pour=20ajouter=20l'url=20de=20l'action?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- formidable_fonctions.php | 36 +++++++++++++++++++++++++++++++- modeles/formulaires_reponse.html | 9 ++++---- 2 files changed, 40 insertions(+), 5 deletions(-) diff --git a/formidable_fonctions.php b/formidable_fonctions.php index 0655172b..843e952b 100644 --- a/formidable_fonctions.php +++ b/formidable_fonctions.php @@ -4,13 +4,14 @@ * Chargement des fonctions pour les squelettes * * @package SPIP\Formidable\Fonctions -**/ + **/ if (!defined('_ECRIRE_INC_VERSION')) { return; } include_spip('inc/formidable'); +include_spip('inc/utils'); include_spip('public/formidable_criteres'); /** @@ -144,3 +145,36 @@ function affiche_resume_reponse($id_formulaires_reponse, $id_formulaire = null, ) ); } + +/** + * Si une saisie est de type 'fichiers' + * insère dans la description du résultat de cette saisie + * l'url de l'action pour récuperer la saisie + * Ajoute également une vignette correspondent à l'extention + * @param array $saisie_a_modifier + * @param string $nom_saisie + * @param array $saisies_du_formulaire + * @param int|string $id_formulaire + * @param int|string $id_formulaires_reponse + * return array $saisie_a_modifier + **/ +function formidable_ajouter_action_vue_saisie_fichiers($saisie_a_modifier, $nom_saisie, $saisies_du_formulaire, $id_formulaire, $id_formulaires_reponse) { + // précaution + include_spip('inc/saisies_lister'); + $id_formulaire = strval($id_formulaire); + $id_formulaires_reponse = strval($id_formulaires_reponse); + $vignette_par_defaut = charger_fonction('vignette', 'inc/'); + + if (array_key_exists($nom_saisie, saisies_lister_avec_type($saisies_du_formulaire, 'fichiers'))) { //saisies SPIP + foreach ($saisie_a_modifier as $i => $valeur){ + $param = 'id_formulaire='.$id_formulaire + . '&id_formulaires_reponse='.$id_formulaires_reponse + . '&fichier='.$valeur['nom'] + . '&saisie='.$nom_saisie; + $url = generer_url_action('formidable_recuperer_fichier',$param,true,false); + $saisie_a_modifier[$i]['url'] = $url; + $saisie_a_modifier[$i]['vignette'] = $vignette_par_defaut($valeur['extension'],false); + } + } + return $saisie_a_modifier; +} diff --git a/modeles/formulaires_reponse.html b/modeles/formulaires_reponse.html index d613e798..b99c51a2 100644 --- a/modeles/formulaires_reponse.html +++ b/modeles/formulaires_reponse.html @@ -1,12 +1,13 @@ <BOUCLE_reponse(FORMULAIRES_REPONSES){tout}{id_formulaires_reponse}> +<BOUCLE_formulaire(FORMULAIRES){tout}{id_formulaire}> +#SET{saisies,#SAISIES|unserialize} +</BOUCLE_formulaire> #SET{valeurs,#ARRAY} <BOUCLE_champs(FORMULAIRES_REPONSES_CHAMPS){id_formulaires_reponse}> -#SET_MERGE{valeurs,#ARRAY{#NOM,#VALEUR|tenter_unserialize}} +#SET_MERGE{valeurs,#ARRAY{#NOM,#VALEUR|tenter_unserialize|formidable_ajouter_action_vue_saisie_fichiers{#NOM,#GET{saisies},#ID_FORMULAIRE,#ID_FORMULAIRES_REPONSE}} </BOUCLE_champs> -<BOUCLE_formulaire(FORMULAIRES){tout}{id_formulaire}> -#VOIR_SAISIES{(#SAISIES|unserialize), #GET{valeurs}} -</BOUCLE_formulaire> +#VOIR_SAISIES{#GET{saisies}, #GET{valeurs}} </BOUCLE_reponse> -- GitLab