Skip to content
Extraits de code Groupes Projets
Valider 7ef54352 rédigé par camille.sauvage@espci.fr's avatar camille.sauvage@espci.fr
Parcourir les fichiers

suppression de fichiers accidentellement ajoutés au dépôt

parent 7c065700
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -12,7 +12,6 @@ echanger/formulaire/forms.php -text ...@@ -12,7 +12,6 @@ echanger/formulaire/forms.php -text
echanger/formulaire/wcs.php -text echanger/formulaire/wcs.php -text
echanger/formulaire/yaml.php -text echanger/formulaire/yaml.php -text
exec/puce_statut_formulaires.php -text exec/puce_statut_formulaires.php -text
/formidable.diff -text
/formidable_administrations.php -text /formidable_administrations.php -text
/formidable_autorisations.php -text /formidable_autorisations.php -text
/formidable_fonctions.php -text /formidable_fonctions.php -text
......
Seulement dans formidable_1_0/action: exporter_analyse_reponses.php
diff -r -U4 -x CVS formidable_1_0.orig/formidable_autorisations.php formidable_1_0/formidable_autorisations.php
--- formidable_1_0.orig/formidable_autorisations.php 2012-09-06 14:00:04.000000000 +0200
+++ formidable_1_0/formidable_autorisations.php 2013-03-19 15:47:51.681294328 +0100
@@ -27,10 +27,12 @@
* @param array $opt Options de cette autorisation
* @return bool true s'il a le droit, false sinon
**/
function autoriser_formulaire_editer_dist($faire, $type, $id, $qui, $opt){
- if (isset($qui['statut']) and $qui['statut'] <= '0minirezo' and !$qui['restreint']) return true;
- else return false;
+ if (isset($qui['statut']) and $qui['statut'] <= '0minirezo' and
+ (!$qui['restreint']) or $GLOBALS['formulaires']['autoriser_admin_restreint'])
+ return true;
+ else return false;
}
/**
* Autorisation de voir la liste des formulaires formidable
@@ -92,9 +94,9 @@
return true;
else{
include_spip('inc/formidable');
// Si la personne n'a jamais répondu, c'est bon
- if (!formidable_verifier_reponse_formulaire($id, $options['identification']))
+ if (!formidable_verifier_reponse_formulaire($id))
return true;
else
return false;
}
diff -r -U4 -x CVS formidable_1_0.orig/formidable_options.php formidable_1_0/formidable_options.php
--- formidable_1_0.orig/formidable_options.php 2012-10-12 11:00:03.000000000 +0200
+++ formidable_1_0/formidable_options.php 2013-03-19 15:56:57.877287434 +0100
@@ -83,8 +83,19 @@
)
)
);
+/* déclaration des différentes variables utilisées pour effectuer l'anonymisation */
+$GLOBALS['formulaires']['variables_anonymisation'] = array(
+ 'remote_user' => '$_SERVER["REMOTE_USER"]',
+ 'php_auth_user' => '$_SERVER["PHP_AUTH_USER"]',
+);
+
+$GLOBALS['formulaires']['passwd'] = array(
+ 'interne' => 'palabresecreta',
+);
+
+$GLOBALS['formulaires']['autoriser_admin_restreint'] = false;
if (!function_exists('array_fill_keys')) {
/**
* Remplit un tableau avec des valeurs, en spécifiant les clés
diff -r -U4 -x CVS formidable_1_0.orig/formulaires/formidable.html formidable_1_0/formulaires/formidable.html
--- formidable_1_0.orig/formulaires/formidable.html 2012-09-06 15:00:08.000000000 +0200
+++ formidable_1_0/formulaires/formidable.html 2013-03-19 15:58:24.837286337 +0100
@@ -1,8 +1,13 @@
<BOUCLE_remplacer_le_formulaire(CONDITION){si #ENV{_remplacer_formulaire}}>
[(#REM) Afficher du HTML si prévu par un plugin ou pour les stats ]
[(#ENV**{_remplacer_formulaire})]
</BOUCLE_remplacer_le_formulaire>
+<BOUCLE_formulaire(FORMULAIRES){id_formulaire=#ENV{id}}>
+ [(#SET{enregistrement,[(#TRAITEMENTS**|unserialize|table_valeur{'enregistrement'})]})]
+ [(#SET{anonymiser,[(#GET{enregistrement}|table_valeur{'anonymiser'})]})]
+ [(#GET{anonymiser}|=={on}|oui)<h3><:formidable:formulaire_anonyme_explication:>]</h3>
+</BOUCLE_formulaire>
<div class="formulaire_spip formulaire_#ENV{form}[ formulaire_#ENV{form}-(#ENV{id,nouveau})]">
[<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>]
[<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>]
diff -r -U4 -x CVS formidable_1_0.orig/formulaires/formidable.php formidable_1_0/formulaires/formidable.php
--- formidable_1_0.orig/formulaires/formidable.php 2012-10-12 11:00:07.000000000 +0200
+++ formidable_1_0/formulaires/formidable.php 2013-03-19 15:47:51.781294328 +0100
@@ -94,10 +94,10 @@
// la dernière réponse si elle existe
if ($options = $traitements['enregistrement']
and !$options['multiple']
and $options['modifiable']
- and $reponses = formidable_verifier_reponse_formulaire($formulaire['id_formulaire'], $options['identification'])
- ){
+ and $reponses = formidable_verifier_reponse_formulaire($formulaire['id_formulaire'], $options)
+ ) {
$id_formulaires_reponse = array_pop($reponses);
$contexte = formidable_definir_contexte_avec_reponse($contexte, $id_formulaires_reponse, $ok);
// On ajoute un hidden pour dire que c'est une modif
diff -r -U4 -x CVS formidable_1_0.orig/inc/formidable.php formidable_1_0/inc/formidable.php
--- formidable_1_0.orig/inc/formidable.php 2012-09-06 14:00:10.000000000 +0200
+++ formidable_1_0/inc/formidable.php 2013-03-19 15:47:51.945294326 +0100
@@ -93,36 +93,47 @@
/*
* Vérifie si le visiteur a déjà répondu à un formulaire
*
* @param int $id_formulaire L'identifiant du formulaire
- * @param string $choix_identification Comment verifier une reponse. Priorite sur 'cookie' ou sur 'id_auteur'
+ * @param string $options : options du formulaire definies dans l'espace prive
* @return unknown_type Retourne un tableau contenant les id des réponses si elles existent, sinon false
*/
-function formidable_verifier_reponse_formulaire($id_formulaire, $choix_identification='cookie'){
+function formidable_verifier_reponse_formulaire($id_formulaire, $options){
global $auteur_session;
$id_auteur = $auteur_session ? intval($auteur_session['id_auteur']) : 0;
$nom_cookie = formidable_generer_nom_cookie($id_formulaire);
$cookie = isset($_COOKIE[$nom_cookie]) ? $_COOKIE[$nom_cookie] : false;
+ $anonymiser = isset($options['anonymiser']) ? $options['anonymiser'] : false;
+ $anonymiser_variable = isset($options['anonymiser_variable']) ? $options['anonymiser_variable'] : '';
+
+ // traitement de l'anonymisation
+ if ($anonymiser != false) {
+ // mod de l'id_auteur
+ $variables_anonymisation =
+ $GLOBALS['formulaires']['variables_anonymisation'][$options['anonymiser_variable']];
+ $id = eval("return $variables_anonymisation;");
+ $id_auteur = formidable_scramble($id);
+ }
// ni cookie ni id, on ne peut rien faire
if (!$cookie and !$id_auteur) {
return false;
}
// priorite sur le cookie
if ($choix_identification == 'cookie' or !$choix_identification) {
if ($cookie)
- $where = '(cookie='.sql_quote($cookie).($id_auteur ? ' OR id_auteur='.intval($id_auteur).')' : ')');
+ $where = '(cookie='.sql_quote($cookie).($id_auteur ? ' OR id_auteur='.$id_auteur.')' : ')');
else
- $where = 'id_auteur='.intval($id_auteur);
+ $where = 'id_auteur='.$id_auteur;
}
// sinon sur l'id_auteur
else {
if ($id_auteur)
- $where = 'id_auteur='.intval($id_auteur);
+ $where = 'id_auteur='.$id_auteur;
else
- $where = '(cookie='.sql_quote($cookie).($id_auteur ? ' OR id_auteur='.intval($id_auteur).')' : ')');
+ $where = '(cookie='.sql_quote($cookie).($id_auteur ? ' OR id_auteur='.$id_auteur.')' : ')');
}
$reponses = sql_allfetsel(
'id_formulaires_reponse',
@@ -148,9 +159,9 @@
* @param array $saisie Un tableau décrivant une saisie
* @param array $env L'environnement, contenant normalement la réponse à la saisie
* @return string Retour le HTML des vues
*/
-function formidable_analyser_saisie($saisie, $valeurs=array(), $reponses_total=0){
+function formidable_analyser_saisie($saisie, $valeurs=array(), $reponses_total=0, $format_brut=false) {
// Si le paramètre n'est pas bon ou que c'est un conteneur, on génère du vide
if (!is_array($saisie) or (isset($saisie['saisies']) and $saisie['saisies']))
return '';
@@ -176,12 +187,106 @@
$contexte['valeurs'] = array();
}
// On génère la saisie
- return recuperer_fond(
- 'saisies-analyses/_base',
- $contexte
- );
+ if ($format_brut) {
+ return analyser_saisie($contexte);
+ } else {
+ return recuperer_fond(
+ 'saisies-analyses/_base',
+ $contexte
+ );
+ }
+}
+
+/*
+ * Renvoie une ligne de réponse sous la forme d'un tableau
+ *
+ * @param array $saisie Un tableau décrivant une saisie
+ * @return array Tableau contenant une ligne
+ */
+function analyser_saisie($saisie) {
+ if (!isset($saisie['type_saisie']) or $saisie['type_saisie'] == '')
+ return '';
+
+ $ligne = array();
+
+ switch($saisie['type_saisie']) {
+ case 'selecteur_rubrique' :
+ case 'selecteur_rubrique_article' :
+ case 'selecteur_article' :
+ $ligne['plein'] = count(array_filter($saisie['valeurs']));
+ $ligne['vide'] = count(array_diff_key($saisie['valeurs']
+ , array_filter($saisie['valeurs'])));
+ break;
+ case 'radio' :
+ case 'selection' :
+ case 'selection_multiple' :
+ case 'checkbox' :
+ $stats = array();
+ foreach($saisie['valeurs'] as $valeur) {
+ if (is_array($valeur)) {
+ foreach($valeur as $choix) {
+ if (isset($stats["choix-$choix"]))
+ $stats["choix-$choix"]++;
+ else $stats["choix-$choix"] = 1;
+ }
+ } else {
+ if (isset($stats["choix-$valeur"]))
+ $stats["choix-$valeur"]++;
+ else $stats["choix-$valeur"] = 1;
+ }
+ }
+ $datas = is_string($saisie['datas'])
+ ? saisies_chaine2tableau($saisie['datas'])
+ : $saisie['datas'];
+ foreach($datas as $key => $val) {
+ $nb = (isset($stats["choix-$key"]))
+ ? $stats["choix-$key"]
+ : 0;
+ $ligne[$val] = $nb;
+ }
+ break;
+ case 'destinataires' :
+ $stats = array();
+ foreach($saisie['valeurs'] as $valeur) {
+ foreach($valeur as $choix) {
+ if (isset($stats["choix-$choix"]))
+ $stats["choix-$choix"]++;
+ else $stats["choix-$choix"] = 1;
+ }
+ }
+ foreach($stats as $key => $val) {
+ $key = str_replace('choix-', '', $key);
+ if ($key == '') $key = '<valeur vide>';
+ $auteur = sql_getfetsel('nom','spip_auteurs',"id_auteur=$key");
+ $ligne[$auteur] = $val;
+ }
+ break;
+ }
+
+ $vide = 0;
+ foreach($saisie['valeurs'] as $valeur) {
+ if ($valeur == '') $vide++;
+ switch($saisie['type_saisie']) {
+ case 'case' :
+ case 'oui_non' :
+ if(isset($ligne['oui']) == false) $ligne['oui'] = 0;
+ if(isset($ligne['non']) == false) $ligne['non'] = 0;
+ if ($valeur) $ligne['oui']++; else $ligne['non']++;
+ break;
+ case 'input' :
+ case 'hidden' :
+ case 'explication' :
+ break;
+ }
+ }
+ $ligne['sans_reponse'] = $vide;
+ $ligne['header'] = $saisie['label'] != ''
+ ? $saisie['label']
+ : $saisie['type_saisie'];
+
+ return $ligne;
}
/**
@@ -222,5 +327,51 @@
if ($nb == 1) return _T('formidable:reponse_une');
return _T('formidable:reponses_nb', array('nb' => $nb));
}
+/**
+ * Transforme le hash MD5 en une valeur numérique unique
+ *
+ * trouvé ici : http://stackoverflow.com/questions/1422725/represent-md5-hash-as-an-integer
+ * @param string $hex_str La valeur alphanumérique à transformer
+ * @return string Valeur numérique
+*/
+function md5_hex_to_dec($hex_str) {
+ $arr = str_split($hex_str, 4);
+ foreach ($arr as $grp) {
+ $dec[] = str_pad(hexdec($grp), 5, '0', STR_PAD_LEFT);
+ }
+
+ /* on s'assure que $result ne commence pas par un zero */
+ $result = implode('', $dec);
+ for ($cpt = 0 ; $cpt < strlen($result) ; $cpt++) {
+ if ($result[$cpt] != '0') break;
+ }
+ $result = substr($result, $cpt);
+ return $result;
+}
+
+/**
+ * Transforme un login en une valeur numérique de 19 caractères
+ *
+ * NOTE: il devient impossible de retrouver la valeur d'origine car le HASH
+ * est coupé à 19cars et est donc incomplet. L'unicité n'est pas garantie mais
+ * les chances pour que deux logins tombent sur le même HASH sont de 1 sur
+ * 10 milliards de milliards
+ * A la fin, on recherche et supprime les éventuels zéros de début
+ * @param string $login Login à transformer
+ * @param string $passwd Chaîne 'secrète' ajoutée au login et id_formulaire pour éviter
+ * les recoupements d'identité entre plusieurs formulaires
+ * @return string Un nombre de 19 chiffres
+*/
+function formidable_scramble($login, $passwd = '') {
+ $id_form = (isset($flux['args']['id_form']) ? $flux['args']['id_form'] : '');
+ if ($passwd == '')
+ $passwd = $GLOBALS['formulaires']['passwd']['interne'];
+ $login_md5 = md5("$login$passwd$id_form");
+ $login_num = md5_hex_to_dec($login_md5);
+ $login_num = substr($login_num, 0, 19);
+
+ return $login_num;
+}
+
?>
diff -r -U4 -x CVS formidable_1_0.orig/lang/formidable_de.php formidable_1_0/lang/formidable_de.php
--- formidable_1_0.orig/lang/formidable_de.php 2012-09-07 04:00:18.000000000 +0200
+++ formidable_1_0/lang/formidable_de.php 2013-03-19 15:47:51.993294324 +0100
@@ -14,8 +14,9 @@
'analyse_sans_reponse' => 'Leere Antworten',
'analyse_une_reponse_total' => 'Une personne a répondu à ce formulaire.', # NEW
'analyse_zero_reponse_total' => 'Aucune personne n\'a répondu à ce formulaire.', # NEW
'aucun_traitement' => 'Aucun traitement', # NEW
+ 'analyse_exporter' => 'Analyse exportieren',
// B
'bouton_formulaires' => 'Formulare',
@@ -25,8 +26,9 @@
<code>orange</code>, <code>green</code> ou tout ce qui vous plairait !', # NEW
'cfg_analyse_classe_label' => 'Classe CSS de la barre de progression', # NEW
'cfg_titre_page_configurer_formidable' => 'Configurer Formidable', # NEW
'cfg_titre_parametrages_analyse' => 'Paramétrages de l\'analyse des réponses', # NEW
+ 'champ' => 'Feld',
// E
'echanger_formulaire_forms_importer' => 'Forms & Tables (.xml)',
'echanger_formulaire_wcs_importer' => 'W.C.S. (.wcs)',
@@ -61,8 +63,9 @@
'erreur_importer_yaml' => 'Fehler beim Importieren des Formulars aus YAML',
'erreur_inexistant' => 'Formular nicht vorhanden.',
// F
+ 'formulaire_anonyme_explication' => "Diese Form ist anonym, dh die Identität des Benutzers nicht registriert ist.",
'formulaires_aucun' => 'Kein Formular vorhanden.',
'formulaires_dupliquer' => 'Formular kopieren',
'formulaires_dupliquer_copie' => '(Kopie)',
'formulaires_introduction' => 'Erstellen und bearbeiten sie Formulare für ihre Website.',
@@ -106,8 +109,11 @@
'reponses_nb' => '@nb@ réponses', # NEW
'reponses_voir_detail' => 'Antwort anzeigen',
'retour_aucun_traitement' => 'Ihre Antwort wurde gesendet, jedoch wurde keine Verarbeitungsoption für das Formular festgelegt. Deshalb geschieht mit den Daten aus diesem Formular überhaupt nichts. :)',
+ // S
+ 'sans_reponses' => 'Unbeantwortet',
+
// T
'titre_cadre_raccourcis' => 'Raccourcis', # NEW
'traitements_actives' => 'Traitements activés', # NEW
'traitements_aide_memoire' => 'Merkzettel:',
@@ -137,8 +143,13 @@
'traiter_email_sujet' => '@nom@ hat ihnen geschrieben.',
'traiter_email_sujet_accuse' => 'Danke für ihre Antwort.',
'traiter_email_titre' => 'Per Mail senden',
'traiter_email_url_enregistrement' => 'Sie könen die Antworten <a href="@url@">auf dieser Seite verwalten</a>.',
+ 'traiter_enregistrement_option_anonymiser_label' => "Anonymisierter Form",
+ 'traiter_enregistrement_option_anonymiser_explication' => "Stellen die Ergebnisse der anonymen Form (nicht halten Trace-Kennung der Befragten).')",
+ 'traiter_enregistrement_option_choix_select_label' => "W&auml;hlen eine Variable von denen zur Verf&uuml;gung.",
+ 'traiter_enregistrement_option_anonymiser_variable_label' => "Variable aus dem anonymisierter Form.",
+ 'traiter_enregistrement_option_anonymiser_variable_explication' => "Welches System Variable verwendet, um einen einzelnen Wert f&uuml;r jeden Autor ohne Offenlegung seiner Identit&auml;t zu berechnen.",
'traiter_enregistrement_description' => 'Einträge in das Formular in der Datenbank speichern',
'traiter_enregistrement_erreur_base' => 'Beim Speichern in der Datenbank ist ein Fehler aufgetreten',
'traiter_enregistrement_erreur_deja_repondu' => 'Sie haben dieses Formular bereits ausgefüllt.',
'traiter_enregistrement_erreur_edition_reponse_inexistante' => 'La réponse à éditer est introuvable.', # NEW
Seulement dans formidable_1_0.orig/lang: formidable_en.php
diff -r -U4 -x CVS formidable_1_0.orig/lang/formidable_fr.php formidable_1_0/lang/formidable_fr.php
--- formidable_1_0.orig/lang/formidable_fr.php 2012-09-07 04:00:18.000000000 +0200
+++ formidable_1_0/lang/formidable_fr.php 2013-03-19 16:01:12.685284218 +0100
@@ -12,8 +12,9 @@
'analyse_sans_reponse' => 'Laissés blanc',
'analyse_une_reponse_total' => 'Une personne a répondu à ce formulaire.',
'analyse_zero_reponse_total' => 'Aucune personne n\'a répondu à ce formulaire.',
'aucun_traitement' => 'Aucun traitement',
+ 'analyse_exporter' => 'Exporter l\'analyse',
// B
'bouton_formulaires' => 'Formulaires',
@@ -23,8 +24,9 @@
<code>orange</code>, <code>green</code> ou tout ce qui vous plairait !',
'cfg_analyse_classe_label' => 'Classe CSS de la barre de progression',
'cfg_titre_page_configurer_formidable' => 'Configurer Formidable',
'cfg_titre_parametrages_analyse' => 'Paramétrages de l\'analyse des réponses',
+ 'champ' => 'Champ',
// E
'echanger_formulaire_forms_importer' => 'Forms & Tables (.xml)',
'echanger_formulaire_wcs_importer' => 'W.C.S. (.wcs)',
@@ -59,8 +61,9 @@
'erreur_importer_yaml' => 'Erreur durant l\'importation du fichier YAML',
'erreur_inexistant' => 'Le formulaire n\'existe pas.',
// F
+ 'formulaire_anonyme_explication' => 'Ce formulaire est anonyme ; c\'est à dire que l\'identité de l\'utilisateur n\'est pas enregistr&eacute;e.',
'formulaires_aucun' => 'Il n\'y a pour l\'instant aucun formulaire.',
'formulaires_dupliquer' => 'Dupliquer le formulaire',
'formulaires_dupliquer_copie' => '(copie)',
'formulaires_introduction' => 'Créez et configurez ici les formulaires de votre site.',
@@ -104,8 +107,11 @@
'reponses_nb' => '@nb@ réponses',
'reponses_voir_detail' => 'Voir la réponse',
'retour_aucun_traitement' => 'Votre réponse a bien été envoyée, mais aucun traitement n\'a été défini pour ce formulaire. Il ne fait donc rien. :)',
+ // S
+ 'sans_reponses' => 'Sans réponse',
+
// T
'titre_cadre_raccourcis' => 'Raccourcis',
'traitements_actives' => 'Traitements activés',
'traitements_aide_memoire' => 'Aide mémoire :',
@@ -135,8 +141,13 @@
'traiter_email_sujet' => '@nom@ vous a écrit.',
'traiter_email_sujet_accuse' => 'Merci de votre réponse.',
'traiter_email_titre' => 'Envoyer par courriel',
'traiter_email_url_enregistrement' => 'Vous pouvez gérer les réponses <a href="@url@">sur cette page</a>.',
+ 'traiter_enregistrement_option_anonymiser_label' => "Anonymiser le formulaire",
+ 'traiter_enregistrement_option_anonymiser_explication' => "Rendre les r&eacute;sultats du formulaire anonymes (ne pas garder de traces de l'identifiant des personnes ayant r&eacute;pondu.)",
+ 'traiter_enregistrement_option_choix_select_label' => "Choisir une variable parmi celles propos&eacute;es",
+ 'traiter_enregistrement_option_anonymiser_variable_label' => "Variable &agrave; partir de laquelle anonymiser le formulaire",
+ 'traiter_enregistrement_option_anonymiser_variable_explication' => "Quelle variable syst&egrave;me utiliser pour calculer une valeur unique pour chaque auteur sans pour autant r&eacute;v&eacute;ler son identit&eacute;.",
'traiter_enregistrement_description' => 'Enregistre les résultats du formulaire dans la base de données',
'traiter_enregistrement_erreur_base' => 'Une erreur technique est survenue durant l\'enregistrement en base de données',
'traiter_enregistrement_erreur_deja_repondu' => 'Vous avez déjà répondu à ce formulaire.',
'traiter_enregistrement_erreur_edition_reponse_inexistante' => 'La réponse à éditer est introuvable.',
diff -r -U4 -x CVS formidable_1_0.orig/lang/formidable_it.php formidable_1_0/lang/formidable_it.php
--- formidable_1_0.orig/lang/formidable_it.php 2012-09-07 04:00:18.000000000 +0200
+++ formidable_1_0/lang/formidable_it.php 2013-03-19 15:47:52.009294324 +0100
@@ -14,8 +14,9 @@
'analyse_sans_reponse' => 'Risposte vuote',
'analyse_une_reponse_total' => 'Une personne a répondu à ce formulaire.', # NEW
'analyse_zero_reponse_total' => 'Aucune personne n\'a répondu à ce formulaire.', # NEW
'aucun_traitement' => 'Aucun traitement', # NEW
+ 'analyse_exporter' => 'Esporta l\'analisi',
// B
'bouton_formulaires' => 'Moduli',
@@ -25,8 +26,9 @@
<code>orange</code>, <code>green</code> ou tout ce qui vous plairait !', # NEW
'cfg_analyse_classe_label' => 'Classe CSS de la barre de progression', # NEW
'cfg_titre_page_configurer_formidable' => 'Configurer Formidable', # NEW
'cfg_titre_parametrages_analyse' => 'Paramétrages de l\'analyse des réponses', # NEW
+ 'champ' => 'Campo',
// E
'echanger_formulaire_forms_importer' => 'Forms & Tables (.xml)',
'echanger_formulaire_wcs_importer' => 'W.C.S. (.wcs)',
@@ -106,8 +108,11 @@
'reponses_nb' => '@nb@ réponses', # NEW
'reponses_voir_detail' => 'Vedi la risposta',
'retour_aucun_traitement' => 'La risposta è stata correttamente inviata. Grazie :)',
+ // S
+ 'sans_reponses' => 'Senza risposta',
+
// T
'titre_cadre_raccourcis' => 'Raccourcis', # NEW
'traitements_actives' => 'Traitements activés', # NEW
'traitements_aide_memoire' => 'Promemoria:',
diff -r -U4 -x CVS formidable_1_0.orig/lang/formidable_sk.php formidable_1_0/lang/formidable_sk.php
--- formidable_1_0.orig/lang/formidable_sk.php 2012-09-17 04:00:06.000000000 +0200
+++ formidable_1_0/lang/formidable_sk.php 2013-03-19 15:47:52.017294325 +0100
@@ -14,8 +14,9 @@
'analyse_sans_reponse' => 'Nevyplnené',
'analyse_une_reponse_total' => 'Na tento formulár odpovedal jeden človek.',
'analyse_zero_reponse_total' => 'Na tento formulár neodpovedal žiaden človek.',
'aucun_traitement' => 'Žiadne spracovanie',
+ 'analyse_exporter' => 'Exportovať analýzu',
// B
'bouton_formulaires' => 'Formuláre',
@@ -25,8 +26,9 @@
<code>oranžový,</code> <code>zelený</code> alebo akýkoľvek iný stĺpec!',
'cfg_analyse_classe_label' => 'Trieda CSS stĺpca dokončenia úkonu',
'cfg_titre_page_configurer_formidable' => 'Nastaviť Formidable',
'cfg_titre_parametrages_analyse' => 'Nastavenia analýzy odpovedí',
+ 'champ' => 'Pol\'a',
// E
'echanger_formulaire_forms_importer' => 'formuláre Forms & Tables (.xml)',
'echanger_formulaire_wcs_importer' => 'W.C.S. (.wcs)',
@@ -106,8 +108,11 @@
'reponses_nb' => '@nb@ odpovedí',
'reponses_voir_detail' => 'Zobraziť odpoveď',
'retour_aucun_traitement' => 'Vaša odpoveď bola odoslaná, ale k tomuto formuláru nebola definovaná žiadna funkcia. Nič neurobí. :-)',
+ // S
+ 'sans_reponses' => 'Neriešiteľný',
+
// T
'titre_cadre_raccourcis' => 'Skratky',
'traitements_actives' => 'Aktívne spracovanie',
'traitements_aide_memoire' => 'Pomocná pamäť:',
diff -r -U4 -x CVS formidable_1_0.orig/lang/formidable.xml formidable_1_0/lang/formidable.xml
--- formidable_1_0.orig/lang/formidable.xml 2013-01-21 04:00:22.000000000 +0100
+++ formidable_1_0/lang/formidable.xml 2013-03-19 15:47:52.001294324 +0100
@@ -1,10 +1,6 @@
<traduction module="formidable" gestionnaire="salvatore" url="http://trad.spip.net" source="svn://zone.spip.org/spip-zone/_plugins_/formidable/trunk/lang/" reference="fr">
<langue code="de" />
- <langue code="en" url="http://trad.spip.net/tradlang_module/formidable?lang_cible=en">
- <traducteur nom="Benitron" lien="http://trad.spip.net/auteur/benitron" />
- <traducteur nom="Paolo" lien="http://trad.spip.net/auteur/paolo" />
- </langue>
<langue code="fr" />
<langue code="it" />
<langue code="sk" url="http://trad.spip.net/tradlang_module/formidable?lang_cible=sk">
<traducteur nom="jaro" lien="http://trad.spip.net/auteur/jaro" />
diff -r -U4 -x CVS formidable_1_0.orig/modeles/formulaire_analyse.html formidable_1_0/modeles/formulaire_analyse.html
--- formidable_1_0.orig/modeles/formulaire_analyse.html 2013-03-12 19:00:08.000000000 +0100
+++ formidable_1_0/modeles/formulaire_analyse.html 2013-03-19 15:47:52.057294325 +0100
@@ -3,9 +3,9 @@
[(#REM) On fait un tableau qui contient toutes les réponses, classées par champ ]
#SET{valeurs,#ARRAY}
#SET{reponses_total,0}
<BOUCLE_reponses(FORMULAIRES_REPONSES){id_formulaire}>
-<BOUCLE_champs(FORMULAIRES_REPONSES_CHAMPS){id_formulaires_reponse}{nom ?= #ENV{nom}>
+<BOUCLE_champs(FORMULAIRES_REPONSES_CHAMPS){id_formulaires_reponse}>
#SET_MERGE{liste_valeurs, #GET{valeurs}|table_valeur{#NOM}|sinon{#ARRAY}, #ARRAY{0,#VALEUR|tenter_unserialize}}
#SET_MERGE{valeurs, #ARRAY{#NOM,#GET{liste_valeurs}}}
</BOUCLE_champs>
</BOUCLE_reponses>
@@ -18,11 +18,9 @@
<//B_reponses>
<BOUCLE_saisies(POUR){tableau #SAISIES|unserialize|saisies_lister_par_nom}>
[(#VAL{saisie}|array_key_exists{#VALEUR}|oui)
- [(#CLE|=={#ENV{nom,#CLE}}|oui)
[(#VALEUR|formidable_analyser_saisie{#GET{valeurs}, #GET{reponses_total}})]
- ]
]
</BOUCLE_saisies>
</div><!-- formidable_analyse -->
@@ -61,5 +59,5 @@
</script>
<style type='text/css'>
<INCLURE{fond=css/formidable_analyse.css} />
</style>
-</BOUCLE_formulaire>
\ Pas de fin de ligne à la fin du fichier
+</BOUCLE_formulaire>
diff -r -U4 -x CVS formidable_1_0.orig/paquet.xml formidable_1_0/paquet.xml
--- formidable_1_0.orig/paquet.xml 2013-03-11 21:00:08.000000000 +0100
+++ formidable_1_0/paquet.xml 2013-03-19 15:47:52.117294324 +0100
@@ -1,8 +1,8 @@
<paquet
prefix="formidable"
categorie="communication"
- version="1.3.5"
+ version="1.3.4"
etat="dev"
compatibilite="[3.0.0-dev;3.0.99]"
logo="images/formidable-64.png"
schema="0.5.1"
Seulement dans formidable_1_0/prive/squelettes/extra: formulaires_analyse.html
diff -r -U4 -x CVS formidable_1_0.orig/saisies-analyses/checkbox.html formidable_1_0/saisies-analyses/checkbox.html
--- formidable_1_0.orig/saisies-analyses/checkbox.html 2013-03-12 04:00:06.000000000 +0100
+++ formidable_1_0/saisies-analyses/checkbox.html 2013-03-19 15:47:52.477294318 +0100
@@ -5,9 +5,9 @@
</BOUCLE_choix>
</BOUCLE_reponses>
[(#REM) datas peut être une chaine qu'on sait décomposer ]
-#SET{datas, #ENV*{datas}}
+#SET{datas, #ENV{datas}}
#SET{datas, #GET{datas}|is_string|?{(#GET{datas}|saisies_chaine2tableau), #GET{datas}}}
<BOUCLE_datas(POUR){tableau #GET{datas}}>
[(#SET{nb,[(#GET{stats}|table_valeur{choix-#CLE}|sinon{0})]})]
diff -r -U4 -x CVS formidable_1_0.orig/saisies-analyses/radio.html formidable_1_0/saisies-analyses/radio.html
--- formidable_1_0.orig/saisies-analyses/radio.html 2013-03-12 04:00:06.000000000 +0100
+++ formidable_1_0/saisies-analyses/radio.html 2013-03-19 15:47:52.449294319 +0100
@@ -5,9 +5,9 @@
]
</BOUCLE_reponses>
[(#REM) datas peut être une chaine qu'on sait décomposer ]
-#SET{datas, #ENV*{datas}}
+#SET{datas, #ENV{datas}}
#SET{datas, #GET{datas}|is_string|?{(#GET{datas}|saisies_chaine2tableau), #GET{datas}}}
<BOUCLE_datas(POUR){tableau #GET{datas}}>
[(#SET{nb,[(#GET{stats}|table_valeur{choix-#CLE}|sinon{0})]})]
diff -r -U4 -x CVS formidable_1_0.orig/svn.revision formidable_1_0/svn.revision
--- formidable_1_0.orig/svn.revision 2013-03-12 18:28:10.000000000 +0100
+++ formidable_1_0/svn.revision 2013-03-19 15:47:52.529294319 +0100
@@ -1,10 +1,10 @@
<svn_revision>
<text_version>
Origine: file:///home/svn/repository/spip-zone/_plugins_/formidable/trunk
-Revision: 70631
-Dernier commit: 2013-03-12 18:28:10 +0100
+Revision: 66722
+Dernier commit: 2012-10-12 11:00:03 +0200
</text_version>
<origine>file:///home/svn/repository/spip-zone/_plugins_/formidable/trunk</origine>
-<revision>70631</revision>
-<commit>2013-03-12 18:28:10 +0100 </commit>
+<revision>66722</revision>
+<commit>2012-10-12 11:00:03 +0200 </commit>
</svn_revision>
\ Pas de fin de ligne à la fin du fichier
diff -r -U4 -x CVS formidable_1_0.orig/traiter/enregistrement.php formidable_1_0/traiter/enregistrement.php
--- formidable_1_0.orig/traiter/enregistrement.php 2012-01-22 11:00:13.000000000 +0100
+++ formidable_1_0/traiter/enregistrement.php 2013-03-19 15:47:52.545294317 +0100
@@ -15,8 +15,17 @@
// La personne a-t-elle un compte ?
global $auteur_session;
$id_auteur = $auteur_session ? intval($auteur_session['id_auteur']) : 0;
+ // traitement de l'anonymisation
+ if ($options['anonymiser'] == 'on') {
+ // mod de l'id_auteur
+ $variables_anonymisation =
+ $GLOBALS['formulaires']['variables_anonymisation'][$options['anonymiser_variable']];
+ $id = eval("return $variables_anonymisation;");
+ $id_auteur = formidable_scramble($id);
+ }
+
// On cherche le cookie et sinon on le crée
$nom_cookie = formidable_generer_nom_cookie($id_formulaire);
if (isset($_COOKIE[$nom_cookie]))
$cookie = $_COOKIE[$nom_cookie];
diff -r -U4 -x CVS formidable_1_0.orig/traiter/enregistrement.yaml formidable_1_0/traiter/enregistrement.yaml
--- formidable_1_0.orig/traiter/enregistrement.yaml 2012-03-18 16:00:30.000000000 +0100
+++ formidable_1_0/traiter/enregistrement.yaml 2013-03-19 15:47:52.557294317 +0100
@@ -26,8 +26,26 @@
cookie: '<:formidable:identification_par_cookie:>'
id_auteur: '<:formidable:identification_par_id_auteur:>'
defaut: 'cookie'
-
+ saisie: 'oui_non'
+ options:
+ nom: 'anonymiser'
+ label: '<:formidable:traiter_enregistrement_option_anonymiser_label:>'
+ explication: '<:formidable:traiter_enregistrement_option_anonymiser_explication:>'
+ defaut: ''
+ -
+ saisie: 'selection'
+ options:
+ option_intro: '<:formidable:traiter_enregistrement_option_choix_select_label:>'
+ nom: 'anonymiser_variable'
+ label: '<:formidable:traiter_enregistrement_option_anonymiser_variable_label:>'
+ explication: '<:formidable:traiter_enregistrement_option_anonymiser_variable_explication:>'
+ datas:
+ remote_user: "Variable serveur : REMOTE_USER"
+ php_auth_user: "Variable serveur : PHP_AUTH_USER"
+ defaut: ''
+ -
saisie: 'radio'
options:
nom: 'moderation'
label: '<:formidable:traiter_enregistrement_option_moderation_label:>'
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter