Skip to content
Extraits de code Groupes Projets
Valider be3b5fa4 rédigé par maieul@maieul.net's avatar maieul@maieul.net
Parcourir les fichiers

L'option qui permet de définir un résumé personnalisé pour les réponses

enregistrées correspond au seul traitement "enregistrement".
On déplace donc la config dans les réglages de ce traitement.
La migration des réglages est prévues lors de la mise à jour du plugin.
parent 3fe68384
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -78,7 +78,6 @@ function formidable_declarer_tables_objets_sql($tables) {
'message_erreur_unicite' => "text NOT NULL default ''",
'url_redirect' => 'varchar(255)',
'statut' => "varchar(10) NOT NULL default ''",
'resume_reponse' => "text NOT NULL default ''",
'date_creation' => "datetime NOT NULL DEFAULT '0000-00-00 00:00:00'",
'maj' => 'timestamp',
),
......
......@@ -85,7 +85,9 @@ function formidable_upgrade($nom_meta_base_version, $version_cible) {
$maj['0.8.0'] = array(
array('formidable_migrer_formulaires_afficher_si_remplissage')
);
$maj['0.9.0'] = array(
array('formidable_migrer_resume_reponse')
);
include_spip('base/upgrade');
maj_plugin($nom_meta_base_version, $version_cible, $maj);
}
......@@ -206,7 +208,37 @@ function formidable_migrer_formulaires_afficher_si_remplissage(){
}
/**
* Cherche tous les formulaires et migre le champ resume_reponse vers une option du traitement "enregistrer"
*
* Supprime ensuite ce champ de la structure de table
* @return void
*/
function formidable_migrer_resume_reponse() {
if ($res = sql_select(array('id_formulaire','traitements','resume_reponse'), 'spip_formulaires')) {
while ($row = sql_fetch($res)) {
$id_formulaire = $row['id_formulaire'];
$traitements = unserialize($row['traitements']);
$resume_reponse = $row['resume_reponse'];
if ($resume_reponse) {
if (isset($traitements['enregistrement'])) {
$traitements['enregistrement']['resume_reponse'] = $resume_reponse;
} else {
$traitements['enregistrement'] = array('resume_reponse' => $resume_reponse);
}
sql_updateq(
'spip_formulaires',
array('traitements'=>serialize($traitements)),
"id_formulaire=$id_formulaire"
);
}
}
}
// suppression du champ
sql_alter("TABLE spip_formulaires DROP COLUMN resume_reponse");
}
/**
* Désinstallation/suppression des tables de formidable
*
......
......@@ -112,11 +112,16 @@ function affiche_resume_reponse($id_formulaires_reponse, $id_formulaire = null,
);
}
if (is_null($modele_resume) and !isset($modeles_resume[$id_formulaire])) {
$modeles_resume[$id_formulaire] = sql_getfetsel(
'resume_reponse',
$traitements_formulaire = unserialize(sql_getfetsel(
'traitements',
'spip_formulaires',
'id_formulaire='.intval($id_formulaire)
);
));
if (isset($traitements_formulaire['enregistrement']['resume_reponse'])) {
$modeles_resume[$id_formulaire] = $traitements_formulaire['enregistrement']['resume_reponse'];
} else {
$modeles_resume[$id_formulaire] = '';
}
}
if (is_null($modele_resume)) {
$modele_resume = $modeles_resume[$id_formulaire];
......
......@@ -68,13 +68,6 @@
]<input type="text" name="#GET{name}" class="text" value="#ENV*{#GET{name},#GET{defaut}}" id="#GET{name}" [(#HTML5|et{#GET{obli}})required='required']/>
<p class="explication"><:formidable:editer_redirige_url_explication:></p>
</li>
#SET{name,resume_reponse}#SET{obli,''}#SET{defaut,''}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}}
<li class="editer editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
<label for="#GET{name}"><:formidable:editer_resume_reponse:></label>[
<span class='erreur_message'>(#GET{erreurs})</span>
]<input type="text" name="#GET{name}" class="text" value="#ENV*{#GET{name},#GET{defaut}}" id="#GET{name}" [(#HTML5|et{#GET{obli}})required='required']/>
<p class="explication"><:formidable:editer_resume_reponse_explication:></p>
</li>
#INCLURE{fond=formulaires/inc-formidable-unicite, env}
</ul>
......
......@@ -58,7 +58,7 @@ $GLOBALS[$GLOBALS['idx_lang']] = array(
'editer_nouveau' => 'استمارة جديدة',
'editer_redirige_url' => 'عنوان إعادة التوجيه بعد التصديق',
'editer_redirige_url_explication' => 'أترك فارغاً اذا اردت البقاء في الصفحة نفسها',
'editer_resume_reponse' => 'عرض مقتضب للإجابة',
'traiter_enregistrement_option_resume_reponse_label' => 'عرض مقتضب للإجابة',
'editer_titre' => 'العنوان',
'erreur_identifiant' => 'هذا المعرّف مستخدم سايقاً',
'erreur_inexistant' => 'هذه الاستمارة غير موجودة',
......
......@@ -77,8 +77,8 @@ $GLOBALS[$GLOBALS['idx_lang']] = array(
'editer_nouveau' => 'New form',
'editer_redirige_url' => 'Forwarding address after validation',
'editer_redirige_url_explication' => 'Leave blank if you want to stay on the same page',
'editer_resume_reponse' => 'Display summary of the response',
'editer_resume_reponse_explication' => '
'traiter_enregistrement_option_resume_reponse_label' => 'Display summary of the response',
'traiter_enregistrement_option_resume_reponse_explication' => '
This string is used to display a summary of each reply in the lists. Fields such as <tt>@input_1@</tt> will be replaced as indicated by the following reminder',
'editer_titre' => 'Title',
'editer_unicite_explication' => 'Save the form only if a field is unique',
......
......@@ -72,8 +72,8 @@ $GLOBALS[$GLOBALS['idx_lang']] = array(
'editer_nouveau' => 'Nouveau formulaire',
'editer_redirige_url' => 'Adresse de redirection après validation',
'editer_redirige_url_explication' => 'Laissez vide si vous souhaitez rester sur la même page',
'editer_resume_reponse' => 'Affichage résumé de la réponse',
'editer_resume_reponse_explication' => 'Cette chaîne sera utilisée pour afficher un résumé de chaque réponse dans les listes. Les champs comme <tt>@input_1@</tt> seront remplacés comme indiqué par l’aide mémoire ci-contre.',
'traiter_enregistrement_option_resume_reponse_label' => 'Affichage résumé de la réponse',
'traiter_enregistrement_option_resume_reponse_explication' => 'Cette chaîne sera utilisée pour afficher un résumé de chaque réponse dans les listes. Les champs comme <tt>@input_1@</tt> seront remplacés comme indiqué par l’aide mémoire ci-contre.',
'editer_titre' => 'Titre',
'editer_unicite_explication' => 'Enregistrer le formulaire seulement si un champ est unique',
'editer_unicite_label' => 'Vérifier l’unicité d’un champ',
......
......@@ -72,8 +72,8 @@ $GLOBALS[$GLOBALS['idx_lang']] = array(
'editer_nouveau' => 'Novo formulário',
'editer_redirige_url' => 'Endereço de redirecionamento após validação',
'editer_redirige_url_explication' => 'Deixar em branco se quiser que fique na mesma página',
'editer_resume_reponse' => 'Exibição resumida da resposta',
'editer_resume_reponse_explication' => 'Esta cadeia será utilizada para exibir um resumo de cada resposta nas listas. Campos como <tt>@input_1@</tt> serão substituídos conforme indicado no lembrete ao lado.',
'traiter_enregistrement_option_resume_label' => 'Exibição resumida da resposta',
'traiter_enregistrement_option_resume_reponse_explication' => 'Esta cadeia será utilizada para exibir um resumo de cada resposta nas listas. Campos como <tt>@input_1@</tt> serão substituídos conforme indicado no lembrete ao lado.',
'editer_titre' => 'Título',
'editer_unicite_explication' => 'Gravar o formulário apenas se um campo for único',
'editer_unicite_label' => 'Verificar a unicidade do campo',
......
......@@ -58,7 +58,7 @@ $GLOBALS[$GLOBALS['idx_lang']] = array(
'editer_nouveau' => 'Новая форма',
'editer_redirige_url' => 'Адрес переадресации после обработки формы',
'editer_redirige_url_explication' => 'Оставьте пустым, если хотите остаться на той же странице',
'editer_resume_reponse' => 'Показать сводную информацию по ответам',
'traiter_enregistrement_option_resume_label' => 'Показать сводную информацию по ответам',
'editer_titre' => 'Название',
'editer_unicite_explication' => 'Сохранять ответ только если значение поля уникально ( не встречалось в других ответах).',
'editer_unicite_label' => 'Проверять уникальность значения для поля',
......
<paquet
prefix="formidable"
categorie="communication"
version="3.10.2"
version="3.11.0"
etat="stable"
compatibilite="[3.0.0;3.2.*]"
logo="images/formidable-64.png"
schema="0.8.0"
schema="0.9.0"
documentation="https://contrib.spip.net/Formidable-le-generateur-de-formulaires"
>
<nom>Formidable</nom>
......
......@@ -2,6 +2,12 @@
titre: '<:formidable:traiter_enregistrement_titre:>'
description: '<:formidable:traiter_enregistrement_description:>'
options:
-
saisie: 'input'
options:
nom: 'resume_reponse'
label: '<:formidable:traiter_enregistrement_option_resume_reponse_label:>'
explication: '<:formidable:traiter_enregistrement_option_resume_reponse_explication:>'
-
saisie: 'case'
options:
......
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