* Chargement des fonctions pour les squelettes
*
* @package SPIP\Formidable\Fonctions
-**/
+ **/
if (!defined('_ECRIRE_INC_VERSION')) {
return;
$tenter_unserialize = charger_fonction('tenter_unserialize', 'filtre/');
// Si pas déjà présent, on cherche les saisies de ce formulaire
- if (is_null($formulaires_saisies[$id_formulaire])) {
- $formulaires_saisies[$id_formulaire] = unserialize(sql_getfetsel('saisies', 'spip_formulaires', 'id_formulaire = '.intval($id_formulaire)));
+ if (!isset($formulaires_saisies[$id_formulaire])) {
+ $formulaires_saisies[$id_formulaire] = unserialize(
+ sql_getfetsel('saisies', 'spip_formulaires', 'id_formulaire = '.intval($id_formulaire))
+ );
}
// Si pas déjà présent, on cherche les valeurs de cette réponse
- if (is_null($reponses_valeurs[$id_formulaires_reponse])) {
- if ($champs = sql_allfetsel('nom,valeur', 'spip_formulaires_reponses_champs', 'id_formulaires_reponse = '.intval($id_formulaires_reponse))) {
+ if (!isset($reponses_valeurs[$id_formulaires_reponse])) {
+ if ($champs = sql_allfetsel(
+ 'nom,valeur',
+ 'spip_formulaires_reponses_champs',
+ 'id_formulaires_reponse = '.intval($id_formulaires_reponse)
+ )) {
foreach ($champs as $champ) {
$reponses_valeurs[$id_formulaires_reponse][$champ['nom']] = $tenter_unserialize($champ['valeur']);
}
static $modeles_vars = array();
if (is_null($id_formulaire)) {
- $id_formulaire = sql_getfetsel('id_formulaire', 'spip_formulaires_reponses', 'id_formulaires_reponse='.intval($id_formulaires_reponse));
+ $id_formulaire = sql_getfetsel(
+ 'id_formulaire',
+ 'spip_formulaires_reponses',
+ 'id_formulaires_reponse='.intval($id_formulaires_reponse)
+ );
}
if (is_null($modele_resume) and !isset($modeles_resume[$id_formulaire])) {
- $modeles_resume[$id_formulaire] = sql_getfetsel('resume_reponse', 'spip_formulaires', 'id_formulaire='.intval($id_formulaire));
+ $modeles_resume[$id_formulaire] = sql_getfetsel(
+ 'resume_reponse',
+ 'spip_formulaires',
+ 'id_formulaire='.intval($id_formulaire)
+ );
}
if (is_null($modele_resume)) {
$modele_resume = $modeles_resume[$id_formulaire];
)
);
}
+
+/**
+ * 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_recuperer_fichier($saisie_a_modifier, $nom_saisie, $saisies_du_formulaire, $id_formulaire, $id_formulaires_reponse) {
+ // précaution
+ include_spip('inc/saisies_lister');
+ include_spip('inc/formidable_fichiers');
+ $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
+ if (isset($saisie_a_modifier) and is_array($saisie_a_modifier)) {
+ foreach ($saisie_a_modifier as $i => $valeur) {
+ $url = formidable_generer_url_action_recuperer_fichier(
+ $id_formulaire,
+ $id_formulaires_reponse,
+ $nom_saisie,
+ $valeur['nom']
+ );
+ $saisie_a_modifier[$i]['url'] = $url;
+ if (in_array($valeur['extension'],array('png','jpg','gif'))) {
+ $saisie_a_modifier[$i]['vignette'] = _DIR_FICHIERS_FORMIDABLE."formulaire_$id_formulaire/reponse_$id_formulaires_reponse/$nom_saisie/".$valeur['nom'];
+ } else {
+ $saisie_a_modifier[$i]['vignette'] = $vignette_par_defaut($valeur['extension'], false);
+ }
+ }
+ }
+ }
+ return $saisie_a_modifier;
+}