From e7197bf92601a26e6771c8f58e27db9b3ec0d18f Mon Sep 17 00:00:00 2001 From: Etienne Pallier Date: Fri, 31 Jul 2020 14:06:34 +0200 Subject: [PATCH] Ajout recherche organisme... --- CHANGES.txt | 2 +- README.md | 2 +- src/Controller/MaterielsController.php | 21 +++++++++++++-------- src/Template/Materiels/index.ctp | 4 +++- 4 files changed, 18 insertions(+), 11 deletions(-) diff --git a/CHANGES.txt b/CHANGES.txt index f29eead..a77afc8 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -78,7 +78,7 @@ Outre ces changements, voici d'autres changements importants : ======= CHANGES ======= ------- -31/07/2020 v3.7.9.84-86 (EP) +31/07/2020 v3.7.9.84-87 (EP) - (materiels/index) bugfix champ recherche sur liste materiels qui perdait le contexte des autres paramètres (nb page, age, ...) - (materiels/index) bugfix champ recherche sur liste materiels qui perdait le contexte du statut (CREATED, VALIDATED, ...) - (i) (materiels/index) Grosse refactorisation (et simplification) du code des boutons filtrage par statut et champ recherche diff --git a/README.md b/README.md index 02d71d0..6217921 100644 --- a/README.md +++ b/README.md @@ -43,7 +43,7 @@ Logiciel testé et validé sur les configurations suivantes : -------------------------------------------------------------------------------------------- Date: 31/07/2020 -Version: 3.7.9.86 +Version: 3.7.9.87 HISTORIQUE DES CHANGEMENTS DE VERSION : voir le fichier CHANGES.txt (ou la page web /pages/changes) diff --git a/src/Controller/MaterielsController.php b/src/Controller/MaterielsController.php index 4c4cfed..8918814 100755 --- a/src/Controller/MaterielsController.php +++ b/src/Controller/MaterielsController.php @@ -768,8 +768,9 @@ class MaterielsController extends AppController { $conditions = [ 'Materiels.status =' => $SELECTED_STATUS ]; - $this->set('SELECTED_STATUS', $SELECTED_STATUS); } + else $SELECTED_STATUS = null; + $this->set(compact('SELECTED_STATUS')); // /materiels/index?GT=2 // /materiels/index?GM=1 @@ -960,6 +961,9 @@ class MaterielsController extends AppController { $searchfor = $this->request->getQuery('searchfor'); // Par défaut, TOUS les domaines (id=0) if (!is_null($searchfor) && $searchfor!='') { + // Enlever les espaces en trop + $searchfor=trim($searchfor); + //debug($searchfor); /* $conditions['OR'] = [ 'Materiels.designation LIKE' => "%$searchfor%", @@ -970,12 +974,12 @@ class MaterielsController extends AppController { //array_push($conditions, $this->getFieldsConditionsForGeneralSearchOfWords($searchfor) ); //$conditions = ['AND' => $conditions]; /* -[ - 'AND' => [ - 'year(date_acquisition) <=' => (int) 2020, - 'year(date_acquisition) >' => (int) 2015 - ] -] + [ + 'AND' => [ + 'year(date_acquisition) <=' => (int) 2020, + 'year(date_acquisition) >' => (int) 2015 + ] + ] */ //$conditions = []; //$conditions = [$conditions]; @@ -1003,7 +1007,7 @@ class MaterielsController extends AppController { ] ]; */ - $contain = ['Fournisseurs', 'Categories']; + $contain = ['Fournisseurs', 'Categories', 'Organismes']; //debug($conditions); } @@ -2399,6 +2403,7 @@ class MaterielsController extends AppController { // 2) Materiels table foreign keys 'Fournisseurs.nom LIKE' => $search_str, 'Categories.nom LIKE' => $search_str, + 'Organismes.nom LIKE' => $search_str, ]; } diff --git a/src/Template/Materiels/index.ctp b/src/Template/Materiels/index.ctp index 08d5586..a3c14ec 100644 --- a/src/Template/Materiels/index.ctp +++ b/src/Template/Materiels/index.ctp @@ -117,6 +117,8 @@ $displaySearchField = function($params, $searchfor, $html, $form) { 'placeholder' => "Entrez un ou plusieurs mots séparés par un espace", 'default' => $searchfor, ]); + // (EP 202007) Ajouter un champ caché pour chaque paramètre passé dans l'url + // afin de ne pas les perdre... $parameters = ['age', 'domain', 'status']; foreach ($parameters as $param) if (isset($params[$param])) @@ -415,7 +417,7 @@ $displayActionButtonsForSelectedOrAllElements = function($form, $SELECTED_STATUS //]); echo $form->button('Exporter la liste complete', ['class'=>'btn btn-outline-success', 'type'=>'submit', 'name' => 'exportAll', 'id' => 'exportAll', 'style' => 'margin: 0px;']); -}; +}; // $displayActionButtonsForSelectedOrAllElements() -- libgit2 0.21.2