From 09b3cf5c215cbdcd093d9ce5a178d0f4d7b27684 Mon Sep 17 00:00:00 2001
From: "marcimat@rezo.net" <>
Date: Wed, 5 Sep 2012 15:27:49 +0000
Subject: [PATCH] =?UTF-8?q?On=20compl=C3=A8te=20tr=C3=A8s=20l=C3=A9g=C3=A8?=
 =?UTF-8?q?rement=20formidable=20pour=20pr=C3=A9parer=20un=20petit=20modul?=
 =?UTF-8?q?e=20de=20sondage=20dans=20un=20plugin=20s=C3=A9par=C3=A9=20:?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

- Dans le chargement du formulaire formidable, on transmet la ligne SQL du formulaire (ça évite de refaire une requête pour les modules se branchant dessus)

- Dans la construction des analyses de réponses, on indique dans l'attribut data-nombre le nombre total de réponse (ça permet de faire des pourcentages en jquery)
---
 formulaires/formidable.php                        | 7 +++++--
 plugin.xml                                        | 2 +-
 prive/squelettes/contenu/formulaires_analyse.html | 2 +-
 saisies-analyses/_base.html                       | 2 +-
 4 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/formulaires/formidable.php b/formulaires/formidable.php
index 5ec3543d..829747f3 100644
--- a/formulaires/formidable.php
+++ b/formulaires/formidable.php
@@ -32,13 +32,16 @@ function formulaires_formidable_charger($id_formulaire, $valeurs=array(), $id_fo
 		return;
 	
 	// On cherche si le formulaire existe
-	if ($formulaire = sql_fetsel('*', 'spip_formulaires', $where)){
+	if ($formulaire = sql_fetsel('*', 'spip_formulaires', $where)) {
+		// on ajoute un point d'entrée avec les infos de ce formulaire
+		// pour d'eventuels plugins qui en ont l'utilité
+		$contexte += array('_formidable' => $formulaire);
 		// Est-ce que la personne a le droit de répondre ?
 		if (autoriser('repondre', 'formulaire', $formulaire['id_formulaire'], null, array('formulaire'=>$formulaire))){
 			$saisies = unserialize($formulaire['saisies']);
 			$traitements = unserialize($formulaire['traitements']);
 			// On déclare les champs
-			$contexte = array_fill_keys(saisies_lister_champs($saisies), '');
+			$contexte += array_fill_keys(saisies_lister_champs($saisies), '');
 			$contexte['mechantrobot'] = '';
 			// On ajoute le formulaire complet
 			$contexte['_saisies'] = $saisies;
diff --git a/plugin.xml b/plugin.xml
index 1be077e0..10350eeb 100644
--- a/plugin.xml
+++ b/plugin.xml
@@ -3,7 +3,7 @@
 	<slogan>G&#233;n&#233;rateur de formulaires</slogan>
 	<auteur>RastaPopoulos, [Les Développements Durables->http://www.ldd.fr]</auteur>
 	<licence>GPL v3</licence>
-	<version>1.1.1</version>
+	<version>1.1.2</version>
 	<version_base>0.5.1</version_base>
 	<etat>dev</etat>
 	<description>Cr&#233;ation de formulaires avec une interface graphique et configuration des traitements associ&#233;s (envoyer par courriel, enregistrer les r&#233;ponses, etc).</description>
diff --git a/prive/squelettes/contenu/formulaires_analyse.html b/prive/squelettes/contenu/formulaires_analyse.html
index ef424c77..f5d58bf7 100644
--- a/prive/squelettes/contenu/formulaires_analyse.html
+++ b/prive/squelettes/contenu/formulaires_analyse.html
@@ -14,7 +14,7 @@
 	</B_reponses>
 	<strong><:formidable:analyse_zero_reponse_total:></strong>
 	<//B_reponses>
-	#BOITE_FERMER	
+	#BOITE_FERMER
 #BOITE_FERMER
 
 [(#BOITE_OUVRIR{'','simple'})]
diff --git a/saisies-analyses/_base.html b/saisies-analyses/_base.html
index d1a0eb56..278fa255 100644
--- a/saisies-analyses/_base.html
+++ b/saisies-analyses/_base.html
@@ -1,5 +1,5 @@
 <div class="cadre cadre-liste analyser analyser_#ENV{nom} saisie_#ENV{type_saisie}">
-<table class="liste" cellspacing="0" cellpadding="2" border="0" style="width:100%;">
+<table class="liste" cellspacing="0" cellpadding="2" border="0" style="width:100%;" data-nombre="#ENV{reponses_total}">
 [<caption class="titrem"><strong class="caption">(#ENV{label_case,#ENV{label,#ENV{nom}}})</strong></caption>]
 	<tbody>
 	[(#CHEMIN{saisies-analyses/#ENV{type_saisie}.html}|oui)
-- 
GitLab