Commit 00815d9b8bbc2350b700e7ed4207a3b318fb517f

Authored by Etienne Pallier
2 parents d45cb1da f7e9b54d
Exists in master and in 1 other branch dev

Merge dev branch into master branch (vv3.7.9.59)

Showing 2 changed files with 42 additions and 16 deletions   Show diff stats
README.md
... ... @@ -44,17 +44,14 @@ Logiciel testé et validé sur les configurations suivantes :
44 44  
45 45 VERSION ACTUELLE
46 46  
47   -Date: 08/07/2020
48   -Version: 3.7.9.58 (encours)
  47 +Date: 10/07/2020
  48 +Version: 3.7.9.59
49 49 Author: EP
50 50 Commentaire:
51 51 - Nouveau filtre "age" (FINALISÉ) sur page index des matériels : Affichage des matériels par tranche d'âge (0-5 ans, 5-10, ...)
52   - - Grosse refactorisation du javascript dans la page materiels/index pour utiliser le meme code pour les 2 filtres "age" et "nb lines"
  52 + - Amélioration des filtres par statut => gardent les paramètres (options) déjà sélectionnées (age, nb lines, tri...)
53 53 - Bugfix url rewriting dans la page materiels/index pour supprimer le paramètre "page" car ça n'est pas pertinent et ça provoque plantages
54   - - Nombreux petits bugfixes sur les css
55   -
56   - - TODO: conserver les arguments de l'url quand on change de statut dans la page materiels/index
57   -
  54 + - Bugfixes
58 55  
59 56 - Nouvelle page web "Nouveautés" (/pages/changes)
60 57 - Changements migrés dans fichier CHANGES.txt et affichés proprement dans une nouvelle page web changes.ctp
... ... @@ -96,6 +93,12 @@ La liste ci-dessous est aussi en ligne ici : https://tinyurl.com/labinvent#headi
96 93 -----------------------------------------------------------------------------------------------------------
97 94 VERSION ACTUELLE
98 95  
  96 +08/07/2020 v3.7.9.58 (EP)
  97 + - Nouveau filtre "age" (FINALISÉ) sur page index des matériels : Affichage des matériels par tranche d'âge (0-5 ans, 5-10, ...)
  98 + - Grosse refactorisation du javascript dans la page materiels/index pour utiliser le meme code pour les 2 filtres "age" et "nb lines"
  99 + - Bugfix url rewriting dans la page materiels/index pour supprimer le paramètre "page" car ça n'est pas pertinent et ça provoque plantages
  100 + - Nombreux petits bugfixes sur les css
  101 +
99 102 07/07/2020 v3.7.9.56-57 (EP)
100 103 - Nouveau filtre "age" sur page index des matériels : Affichage des matériels par tranche d'âge (0-5 ans, 5-10, ...)
101 104 - Materiel : technique ou/et inventoriable => trop compliqué et inutile => en fait c’est un OUX (exclusif)
... ...
src/Template/Materiels/index.ctp
... ... @@ -94,10 +94,19 @@ $displayStatusButtons = function($SELECTED_STATUS, $nbMateriels, $html) {
94 94 $b_arc = $SELECTED;
95 95 } else $b_all = $SELECTED;
96 96  
97   - // Affichage des boutons en haut de la page
  97 +
  98 + // Affichage des boutons de filtrage par statut (en haut de la page)
  99 +
  100 + //$args = explode('?',$_SERVER['REQUEST_URI']);
  101 + //$args = count($args)==2 ? '?'.$args[1] : null;
  102 + $params = $this->request->getParam('?');
  103 + // S'il y a des paramètres, supprimer le paramètre 'page' car inapproprié
  104 + if ($params) unset($params['page']);
  105 +
98 106 //echo $this->Html->link($b_all . ' Tous', [
99 107 echo $html->link($b_all . ' Tous', [
100   - 'action' => 'index'
  108 + 'action' => 'index',
  109 + '?' => $params
101 110 ], [
102 111 'title' => 'Tous',
103 112 'style' => 'margin-right: 5px',
... ... @@ -106,7 +115,13 @@ $displayStatusButtons = function($SELECTED_STATUS, $nbMateriels, $html) {
106 115  
107 116 echo $html->link($b_cre . ' A valider', [
108 117 'action' => 'index',
109   - 'CREATED'
  118 + 'CREATED',
  119 + // https://book.cakephp.org/3/en/views/helpers/html.html#creating-links
  120 + //'?' => ['height' => 400, 'width' => 500]
  121 + '?' => $params
  122 + //'?' => null
  123 + //[$args],
  124 + //"http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']
110 125 ], [
111 126 'title' => 'Liste des matériels créés',
112 127 'style' => 'margin-right: 5px',
... ... @@ -115,7 +130,8 @@ $displayStatusButtons = function($SELECTED_STATUS, $nbMateriels, $html) {
115 130  
116 131 echo $html->link($b_val . ' Validés', [
117 132 'action' => 'index',
118   - 'VALIDATED'
  133 + 'VALIDATED',
  134 + '?' => $params
119 135 ], [
120 136 'title' => 'Liste des materiels que l\'on peut archiver',
121 137 'style' => 'margin-right: 5px',
... ... @@ -124,7 +140,8 @@ $displayStatusButtons = function($SELECTED_STATUS, $nbMateriels, $html) {
124 140  
125 141 echo $html->link($b_toarc . ' A sortir', [
126 142 'action' => 'index',
127   - 'TOBEARCHIVED'
  143 + 'TOBEARCHIVED',
  144 + '?' => $params
128 145 ], [
129 146 'title' => 'A sortir de l\'inventaire',
130 147 'style' => 'margin-right: 5px',
... ... @@ -133,7 +150,8 @@ $displayStatusButtons = function($SELECTED_STATUS, $nbMateriels, $html) {
133 150  
134 151 echo $html->link($b_arc . ' Archivés', [
135 152 'action' => 'index',
136   - 'ARCHIVED'
  153 + 'ARCHIVED',
  154 + '?' => $params
137 155 ], [
138 156 'title' => 'A sortir de l\'inventaire',
139 157 'style' => 'margin-right: 0px',
... ... @@ -736,10 +754,15 @@ function updateUrlWithSelectedValue(select_name, param_name) {
736 754 var i; //, j;
737 755 //var param = 0;
738 756 //var bool = false;
739   - var argsBis = new Array();
  757 + //var argsBis = new Array();
  758 + var argsBis = [];
740 759  
741   - //console.log(age, args);
  760 + //console.log(param_val, args);
742 761  
  762 + // Si pas d'argument (paramètre) passé, args[0] = '' => on ne fait rien
  763 + if (args[0]=='') args = [];
  764 + //console.log(args);
  765 +
743 766 for(i=0; i<args.length; ++i) {
744 767 // On sépare les parametres de leurs valeurs
745 768 // ex:
... ... @@ -764,7 +787,7 @@ function updateUrlWithSelectedValue(select_name, param_name) {
764 787  
765 788 //if(bool) { // Si le parametre recherché a ete trouvé
766 789 //argsBis[param][1] = age; //argsBis[i][0] c'est le nom du parametre, et argsBis[i][1] c'est la valeur associée
767   - var oldargs = "";
  790 + var oldargs = '';
768 791 for(i=0; i<args.length; ++i) { //... on reconstruit une url propre ...
769 792 // On ne conserve pas l'argument de pagination (page=x) car les données ne seront plus les mêmes et cette page risque de ne plus exister => ERROR
770 793 // On ne conserve pas non plus l'argument 'age' car on va l'ajouter en tête des arguments
... ...