Project

General

Profile

Actions

Anomalie #1390

closed

Sélection multiple sur les statuts

Added by Olivier Peyrat over 2 years ago. Updated over 2 years ago.

Status:
Fermé
Priority:
Normal
Category:
IHM
Target version:
Start date:
02/07/2020
Due date:
% Done:

100%

Estimated time:
Version utilisée:

Description

Bonjour,
La version de Galette que nous exploitons actuellement (la 0.9.1) permet, lors de la recherche avancée, de filtrer par une sélection multiple au niveau du statut des membres (la requête est : SELECT DISTINCT `a`.* FROM `galette_adherents` AS `a` INNER JOIN `galette_statuts` AS `p` ON `a`.`id_statut`=`p`.`id_statut` LEFT JOIN `galette_cotisations` AS `ct` ON `ct`.`id_adh`=`a`.`id_adh` WHERE (date_echeance >= '2020-02-07' OR bool_exempt_adh=true) AND `a`.`id_statut` IN ('1', '10', '2', '3') ORDER BY `nom_adh` ASC, `prenom_adh` ASC LIMIT 50 OFFSET 0).

Or dans la toute dernière version que nous avons en intégration (0.9.3), j'ai vu qu'il n'était plus possible de le faire, la sélection se faisant par menu déroulant sans possibilité de choix multiples.
Cette fonctionnalité est bien pratique pour nous puisqu'elle permet comme dans l'exemple, de rechercher parmi les adhérents dont le statut est dans la liste, ceux qui sont à jour.
La recherche libre ne permet pas non plus de le faire car si nous ajoutons un critère de recherche avec l'opérateur "ou" sur le statut, on perd de fait le critère principal "adhérents à jour".
Serait-il possible de permettre à nouveau cette sélection multiple (le `a`.`id_statut` IN (....)) ?
Merci
Olivier

Actions #1

Updated by Johan Cwiklinski over 2 years ago

  • Tracker changed from Souhaits to Anomalie
  • Version utilisée set to 0.9.1

Je vais vérifier, je n'ai plus ça en tête. Mais à priori il s'agit d'un problème d'interface, auquel cas ce devrait être assez simple à modifier.

Actions #2

Updated by Johan Cwiklinski over 2 years ago

  • Category set to IHM
  • Assignee set to Johan Cwiklinski
  • Target version set to 0.9.3.1

Correctif à tester :

diff --git a/galette/templates/default/advanced_search.tpl b/galette/templates/default/advanced_search.tpl
index a02dc6b1..1090dec6 100644
--- a/galette/templates/default/advanced_search.tpl
+++ b/galette/templates/default/advanced_search.tpl
@@ -86,7 +86,7 @@
                     </p>
                     <p>
                         <label class="bline" for="status">{_T string="Statuts"}</label>
-                        <select name="status[]" id="status" multiple="multiple">
+                        <select name="status[]" id="status" multiple="multiple" class="nochosen">
                             {html_options options=$statuts selected=$filters->status}
                         </select>
                     </p>

Actions #3

Updated by Johan Cwiklinski over 2 years ago

  • Status changed from Nouveau to In Progress
Actions #4

Updated by Olivier Peyrat over 2 years ago

Bonjour,
Test concluant chez nous.
La requête reprend bien l'ensemble des statuts sur lesquels filtrer :
SELECT DISTINCT `a`.* FROM `galette_adherents` AS `a` INNER JOIN `galette_statuts` AS `p` ON `a`.`id_statut`=`p`.`id_statut` WHERE `a`.`id_statut` IN ('1', '10', '2', '3', '12', '13') ORDER BY `nom_adh` ASC, `prenom_adh` ASC LIMIT 50 OFFSET 0
Merci
Olivier

Actions #5

Updated by Johan Cwiklinski over 2 years ago

  • Status changed from In Progress to Résolu
  • % Done changed from 0 to 100
Actions #6

Updated by Johan Cwiklinski over 2 years ago

  • Status changed from Résolu to Fermé
Actions

Also available in: Atom PDF