Commit bbc46c5117b99175d31d6e6ce18b5f1e54cd4d77

Authored by Etienne Pallier
1 parent 14c43aae
Exists in master and in 1 other branch dev

Nouveau filtre dans la liste des matériels (index) => par "projet"

Mais aussi : Enorme refactorisation de tous les filtres (nb lignes, age,
domaine, projet) de la page index (liste des matériels) => une fonction
unique

v3.7.9.100
@@ -13,11 +13,13 @@ CHANGEMENTS @@ -13,11 +13,13 @@ CHANGEMENTS
13 13
14 14
15 ------- 15 -------
16 -10/09/2020 NEWS#3 : 16 +11/09/2020 NEWS#3 :
17 17
18 - Nouvelle entité "Projet", à laquelle un matériel peut (ou pas) être associé 18 - Nouvelle entité "Projet", à laquelle un matériel peut (ou pas) être associé
19 19
20 -- Nouveau format étiquette 19mm avec QrCode pour la nouvelle étiqueteuse (Dymo MobileLabeler) 20 +- Nouveau filtre de la liste des matériels (index) => par "Projet"
  21 +
  22 +- Nouveau format étiquette 19mm "avec le QrCode" pour la nouvelle étiqueteuse (Dymo MobileLabeler)
21 23
22 24
23 ------- 25 -------
@@ -85,6 +87,11 @@ Outre ces changements, voici d'autres changements importants : @@ -85,6 +87,11 @@ Outre ces changements, voici d'autres changements importants :
85 ======= CHANGES ======= 87 ======= CHANGES =======
86 88
87 ------- 89 -------
  90 +11/09/2020 v3.7.9.100 (EP)
  91 + - (e) Nouveau filtre de la liste des matériels (index) => par "projet"
  92 + - (i) Enorme refactorisation de tous les filtres (nb lignes, age, domaine, projet) de la page index (liste des matériels)
  93 +
  94 +-------
88 10-11/09/2020 v3.7.9.97-99 (EP) 95 10-11/09/2020 v3.7.9.97-99 (EP)
89 - (e) Ajout de l'entité (table) "Projet", à laquelle un matériel peut (ou pas) être associé 96 - (e) Ajout de l'entité (table) "Projet", à laquelle un matériel peut (ou pas) être associé
90 - (b) Enorme bugfix sur le numéro d'inventaire qui se régénérait à chaque modif du matériel !!! 97 - (b) Enorme bugfix sur le numéro d'inventaire qui se régénérait à chaque modif du matériel !!!
@@ -43,7 +43,7 @@ Logiciel testé et validé sur les configurations suivantes : @@ -43,7 +43,7 @@ Logiciel testé et validé sur les configurations suivantes :
43 -------------------------------------------------------------------------------------------- 43 --------------------------------------------------------------------------------------------
44 44
45 Date: 11/09/2020 45 Date: 11/09/2020
46 -Version: 3.7.9.99 46 +Version: 3.7.9.100
47 47
48 48
49 HISTORIQUE DES CHANGEMENTS DE VERSION : voir le fichier CHANGES.txt (ou la page web /pages/changes) 49 HISTORIQUE DES CHANGEMENTS DE VERSION : voir le fichier CHANGES.txt (ou la page web /pages/changes)
src/Controller/MaterielsController.php
@@ -913,22 +913,28 @@ class MaterielsController extends AppController { @@ -913,22 +913,28 @@ class MaterielsController extends AppController {
913 } 913 }
914 */ 914 */
915 915
916 -  
917 // - FILTRE Domaine ? 916 // - FILTRE Domaine ?
918 - $domain_id = $this->request->getQuery('domain'); 917 + $domaine_id = $this->request->getQuery('domaine');
919 // Par défaut, TOUS les domaines (id=0) 918 // Par défaut, TOUS les domaines (id=0)
920 - if (is_null($domain_id)) $domain_id = 0; 919 + if (is_null($domaine_id)) $domaine_id = 0;
921 // Si $domain_id==0 on ne fait rien (car on prend TOUS les domaines) 920 // Si $domain_id==0 on ne fait rien (car on prend TOUS les domaines)
922 - if ($domain_id > 0) 921 + if ($domaine_id > 0)
923 // OK 922 // OK
924 - $conditions['Materiels.sur_categorie_id'] = $domain_id; 923 + $conditions['Materiels.sur_categorie_id'] = $domaine_id;
925 // KO => Exception PDO ! 924 // KO => Exception PDO !
926 //$conditions['sur_categorie_id'] = $domain_id; 925 //$conditions['sur_categorie_id'] = $domain_id;
927 //debug($conditions); 926 //debug($conditions);
928 -  
929 - 927 +
  928 + // - FILTRE Projet ?
  929 + $projet_id = $this->request->getQuery('projet');
  930 + // Par défaut, TOUS les domaines (id=0)
  931 + if (is_null($projet_id)) $projet_id = 0;
  932 + // Si $domain_id==0 on ne fait rien (car on prend TOUS les domaines)
  933 + if ($projet_id > 0) $conditions['Materiels.projet_id'] = $projet_id;
  934 +
930 // - FILTRE Nb lignes par page ? 935 // - FILTRE Nb lignes par page ?
931 - $limit = $this->request->getQuery('aff'); 936 + //$limit = $this->request->getQuery('aff');
  937 + $limit = $this->request->getQuery('nblines');
932 // Par défaut, nb lignes demandées dans config 938 // Par défaut, nb lignes demandées dans config
933 if ($limit===null) $limit = $config['aff_par_defaut']; 939 if ($limit===null) $limit = $config['aff_par_defaut'];
934 940
@@ -1093,15 +1099,63 @@ class MaterielsController extends AppController { @@ -1093,15 +1099,63 @@ class MaterielsController extends AppController {
1093 1099
1094 $this->set(compact('materiels')); 1100 $this->set(compact('materiels'));
1095 1101
  1102 + // Liste des DOMAINES
1096 //$domain_options = $this->Materiels->SurCategories->find()->toArray(); 1103 //$domain_options = $this->Materiels->SurCategories->find()->toArray();
1097 - $domain_options = $this->Materiels->SurCategories->find('list', [ 1104 + $domaine_options = $this->Materiels->SurCategories->find('list', [
1098 'keyField' => 'id', 1105 'keyField' => 'id',
1099 'valueField' => 'nom', 1106 'valueField' => 'nom',
1100 ])->toArray(); 1107 ])->toArray();
1101 // Ajoute l'élément 0 => 'TOUS' en tête de tableau 1108 // Ajoute l'élément 0 => 'TOUS' en tête de tableau
1102 //$domain_options[0] = 'TOUS'; 1109 //$domain_options[0] = 'TOUS';
1103 - array_unshift($domain_options, "Tous");  
1104 - $this->set(compact('domain_options', 'searchfor')); 1110 + //debug($domain_options);
  1111 + array_unshift($domaine_options, "Tous");
  1112 + //debug($domain_options);
  1113 +
  1114 + // Liste des PROJETS
  1115 + $projet_options = $this->Materiels->Projets->find('list', [
  1116 + 'keyField' => 'id',
  1117 + 'valueField' => 'nom',
  1118 + // implicite, pourquoi ???
  1119 + //'order' => 'Projets.nom'
  1120 + ])->toArray();
  1121 + //debug($projet_options);
  1122 + /* Ajoute l'élément 0 => 'TOUS' en tête de tableau
  1123 + * SANS changer les clés !!!
  1124 + */
  1125 + // 1) on ajoute un élément vide à la clé "0",
  1126 + // et on trie le tableau sur les values (nom du projet) (en conservant les clés)
  1127 + // => l'élément vide se retrouve donc en tête
  1128 + $projet_options[0] = '';
  1129 + asort($projet_options);
  1130 + // 2) on remplace l'élément vide (en tête) par 'Tous', qui est donc toujours en tête !
  1131 + $projet_options[0] = 'Tous';
  1132 + //debug($projet_options);
  1133 +
  1134 + // Liste des AGES (intervalles d'années)
  1135 + $age_options = [
  1136 + '0' => 'Tous',
  1137 + '5' => 'Récents (5 ans max)',
  1138 + '10' => '5-10 ans',
  1139 + '15' => '10-15 ans',
  1140 + '20' => '15-20 ans',
  1141 + //'20plus' => '+ 20 ans',
  1142 + '21' => '+ 20 ans',
  1143 + //'unknown' => 'inconnu',
  1144 + '-1' => 'inconnu',
  1145 + ];
  1146 +
  1147 + // Liste des NBLINES (Nb de matériels affichés par page)
  1148 + $nblines_options = [
  1149 + '20' => 20,
  1150 + '30' => 30,
  1151 + '50' => 50,
  1152 + '100' => 100,
  1153 + '150' => 150,
  1154 + '200' => 200
  1155 + ];
  1156 +
  1157 +
  1158 + $this->set(compact('age_options', 'nblines_options', 'domaine_options', 'projet_options', 'searchfor'));
1105 1159
1106 // Pas bien..., mais pratique : 1160 // Pas bien..., mais pratique :
1107 // on passe le controleur de materiels à la vue index pour qu'elle 1161 // on passe le controleur de materiels à la vue index pour qu'elle
src/Template/Materiels/index.ctp
@@ -8,15 +8,23 @@ use App\Controller\MaterielsController; @@ -8,15 +8,23 @@ use App\Controller\MaterielsController;
8 // (EP 21/5/19) 8 // (EP 21/5/19)
9 // --- Elements set by Controller for this view --- 9 // --- Elements set by Controller for this view ---
10 10
11 -/*TODO: $materiels doit etre enrichi avec des nouveaux attributs tels que (pour chaque materiel de la liste) : 11 +/*
  12 + TODO: $materiels doit etre enrichi avec des nouveaux attributs tels que (pour chaque materiel de la liste) :
12 - CAN_EDIT 13 - CAN_EDIT
13 - CAN_DELETE 14 - CAN_DELETE
14 - CAN_VALIDATE 15 - CAN_VALIDATE
15 - CAN_TBA 16 - CAN_TBA
16 - CAN_ARCHIVE 17 - CAN_ARCHIVE
17 */ 18 */
18 -$domain_options = $domain_options; 19 +
  20 +// Options des filtres
  21 +$nblines_options = $nblines_options;
  22 +$age_options = $age_options;
  23 +$domaine_options = $domaine_options;
  24 +$projet_options = $projet_options;
  25 +
19 //debug($domain_options); 26 //debug($domain_options);
  27 +//debug($projet_options);
20 28
21 $nbMateriels = $nbMateriels; 29 $nbMateriels = $nbMateriels;
22 $controller=$controller; 30 $controller=$controller;
@@ -119,7 +127,8 @@ $displaySearchField = function($params, $searchfor, $html, $form) { @@ -119,7 +127,8 @@ $displaySearchField = function($params, $searchfor, $html, $form) {
119 ]); 127 ]);
120 // (EP 202007) Ajouter un champ caché pour chaque paramètre passé dans l'url 128 // (EP 202007) Ajouter un champ caché pour chaque paramètre passé dans l'url
121 // afin de ne pas les perdre... 129 // afin de ne pas les perdre...
122 - $parameters = ['aff', 'age', 'domain', 'status']; 130 + //$parameters = ['aff', 'age', 'domaine', 'status', 'projet'];
  131 + $parameters = ['nblines', 'age', 'domaine', 'status', 'projet'];
123 foreach ($parameters as $param) 132 foreach ($parameters as $param)
124 if (isset($params[$param])) 133 if (isset($params[$param]))
125 echo $this->Form->hidden($param, [ 134 echo $this->Form->hidden($param, [
@@ -295,28 +304,62 @@ $displayStatusButtons = function($SELECTED_STATUS, $params, $nbMateriels, $html) @@ -295,28 +304,62 @@ $displayStatusButtons = function($SELECTED_STATUS, $params, $nbMateriels, $html)
295 304
296 }; // displayStatusButtons() 305 }; // displayStatusButtons()
297 306
298 -$displaySelectors = function($form, $request, $displayNbLinesSelector, $displayAgeSelector, $displayDomaineSelector, $domain_options) { 307 +
  308 +//$displaySelectors = function($form, $request,
  309 +$displayFilters = function($form, $request,
  310 + $df,
  311 + /*
  312 + $displayNbLinesSelector,
  313 + $displayAgeSelector,
  314 + */
  315 + //$f1_func,
  316 + //$f1_func,
  317 + $f1_name, $f1_options,
  318 + //$f2_func, $f2_options,
  319 + $f2_name, $f2_options,
  320 + //$displayDomaineSelector, $domain_options,
  321 + //$displayProjetSelector, $projet_options
  322 + $f3_name, $f3_options,
  323 + $f4_name, $f4_options
  324 +) {
299 //echo '<div>'; 325 //echo '<div>';
300 echo '<div class="col-lg-2 col-md-3 col-sm-4">'; 326 echo '<div class="col-lg-2 col-md-3 col-sm-4">';
301 echo '<table><tr>'; 327 echo '<table><tr>';
302 328
  329 + // Filtre 1
303 echo '<td>'; 330 echo '<td>';
304 - $displayNbLinesSelector($form, $request); 331 + //$displayNbLinesSelector($form, $request);
  332 + //$f1_func($form, $request);
  333 + $df($f1_name, $form, $request, $f1_options);
305 echo '</td>'; 334 echo '</td>';
306 335
  336 + // Filtre 2
307 echo '<td>'; 337 echo '<td>';
308 - $displayAgeSelector($form, $request); 338 + //$displayAgeSelector($form, $request);
  339 + //$f2_func($form, $request, $f2_options);
  340 + $df($f2_name, $form, $request, $f2_options);
309 echo '</td>'; 341 echo '</td>';
310 342
  343 + // Filtre 3
311 echo '<td>'; 344 echo '<td>';
312 - $displayDomaineSelector($form, $request, $domain_options); 345 + //$displayDomaineSelector($form, $request, $domain_options);
  346 + //$df('domain', $form, $request, $domain_options);
  347 + $df($f3_name, $form, $request, $f3_options);
  348 + echo '</td>';
  349 +
  350 + // Filtre 4
  351 + echo '<td>';
  352 + //$displayProjetSelector('projet', $form, $request, $projet_options);
  353 + //$df('projet', $form, $request, $projet_options);
  354 + $df($f4_name, $form, $request, $f4_options);
313 echo '</td>'; 355 echo '</td>';
314 356
315 echo '</tr></table>'; 357 echo '</tr></table>';
316 echo '</div>'; 358 echo '</div>';
317 }; 359 };
318 360
319 -$displayNbLinesSelector = function($form, $request) { 361 +/*
  362 +$displayNbLinesSelector = function($form, $request, $options) {
320 //echo '<div class="col-lg-2 col-md-3 col-sm-4">'; 363 //echo '<div class="col-lg-2 col-md-3 col-sm-4">';
321 //echo $this->Form->create('materiels', [ 364 //echo $this->Form->create('materiels', [
322 // echo $this->Form->create('materiels', ['url' => '/materiels/execActions?page=index']); 365 // echo $this->Form->create('materiels', ['url' => '/materiels/execActions?page=index']);
@@ -324,51 +367,101 @@ $displayNbLinesSelector = function($form, $request) { @@ -324,51 +367,101 @@ $displayNbLinesSelector = function($form, $request) {
324 echo $form->control('aff_par_defaut', [ 367 echo $form->control('aff_par_defaut', [
325 'label' => 'Nombre lignes', 368 'label' => 'Nombre lignes',
326 'onchange' => "updateUrlWithSelectedValue('aff-par-defaut', 'aff')", 369 'onchange' => "updateUrlWithSelectedValue('aff-par-defaut', 'aff')",
327 - 'options' => [  
328 - '20' => 20,  
329 - '30' => 30,  
330 - '50' => 50,  
331 - '100' => 100,  
332 - '150' => 150,  
333 - '200' => 200  
334 - ] 370 + 'options' => $options,
335 ]); 371 ]);
336 //echo '</div>'; 372 //echo '</div>';
337 }; // displayNbLinesSelector() 373 }; // displayNbLinesSelector()
338 374
339 -$displayAgeSelector = function($form, $request) { 375 +$age_options = [
  376 + '0' => 'Tous',
  377 + '5' => 'Récents (5 ans max)',
  378 + '10' => '5-10 ans',
  379 + '15' => '10-15 ans',
  380 + '20' => '15-20 ans',
  381 + //'20plus' => '+ 20 ans',
  382 + '21' => '+ 20 ans',
  383 + //'unknown' => 'inconnu',
  384 + '-1' => 'inconnu',
  385 +];
  386 +
  387 +$displayAgeSelector = function($form, $request, $options) {
340 //echo '<div class="col-lg-2 col-md-3 col-sm-4">'; 388 //echo '<div class="col-lg-2 col-md-3 col-sm-4">';
341 echo $form->control('age_selector', [ 389 echo $form->control('age_selector', [
342 'label' => 'Age', 390 'label' => 'Age',
343 'onchange' => "updateUrlWithSelectedValue('age-selector', 'age')", 391 'onchange' => "updateUrlWithSelectedValue('age-selector', 'age')",
344 - 'options' => [  
345 - '0' => 'Tous',  
346 - '5' => 'Récents (5 ans max)',  
347 - '10' => '5-10 ans',  
348 - '15' => '10-15 ans',  
349 - '20' => '15-20 ans',  
350 - //'20plus' => '+ 20 ans',  
351 - '21' => '+ 20 ans',  
352 - //'unknown' => 'inconnu',  
353 - '-1' => 'inconnu',  
354 - ], 392 + 'options' => $options,
  393 + 'default' => '0',
355 // Inutile car géré via javascript 394 // Inutile car géré via javascript
356 //'default' => '5', 395 //'default' => '5',
357 ]); 396 ]);
358 //echo '</div>'; 397 //echo '</div>';
359 -}; // displayNbLinesSelector() 398 +}; // $displayAgeSelector()
360 399
361 -$displayDomaineSelector = function($form, $request, $domain_options) { 400 +$displayDomaineSelector = function($form, $request, $options) {
362 //echo '<div class="col-lg-2 col-md-3 col-sm-4">'; 401 //echo '<div class="col-lg-2 col-md-3 col-sm-4">';
363 echo $form->control('domain_selector', [ 402 echo $form->control('domain_selector', [
364 'label' => 'Domaine', 403 'label' => 'Domaine',
365 'onchange' => "updateUrlWithSelectedValue('domain-selector', 'domain')", 404 'onchange' => "updateUrlWithSelectedValue('domain-selector', 'domain')",
366 - 'options' => $domain_options, 405 + 'options' => $options,
367 // Inutile car géré via javascript 406 // Inutile car géré via javascript
368 'default' => 0, 407 'default' => 0,
369 ]); 408 ]);
370 //echo '</div>'; 409 //echo '</div>';
371 -}; // displayNbLinesSelector() 410 +};
  411 +
  412 +$displayProjetSelector = function($form, $request, $options) {
  413 + //echo '<div class="col-lg-2 col-md-3 col-sm-4">';
  414 + echo $form->control('projet_selector', [
  415 + 'label' => 'Projet',
  416 + 'onchange' => "updateUrlWithSelectedValue('projet-selector', 'projet')",
  417 + 'options' => $options,
  418 + // Inutile car géré via javascript
  419 + 'default' => 0,
  420 + ]);
  421 + //echo '</div>';
  422 +};
  423 +
  424 +$displayProjetSelector = function($filter_name, // 'projet'
  425 + $form, $request, $options
  426 + ) {
  427 + //echo '<div class="col-lg-2 col-md-3 col-sm-4">';
  428 + $html_filter_name = $filter_name.'-selector';
  429 + //echo $form->control('projet_selector', [
  430 + echo $form->control($filter_name.'_selector', [ // 'projet_selector'
  431 + //'label' => 'Projet',
  432 + 'label' => ucfirst($filter_name), // 'Projet'
  433 + //'onchange' => "updateUrlWithSelectedValue('projet-selector', 'projet')",
  434 + //'onchange' => "updateUrlWithSelectedValue($filter_name.'-selector', $filter_name)", // ('projet-selector', 'projet')
  435 + 'onchange' => "updateUrlWithSelectedValue('$html_filter_name', '$filter_name')", // ('projet-selector', 'projet')
  436 + 'options' => $options,
  437 + // Inutile car géré via javascript
  438 + 'default' => 0,
  439 + ]);
  440 + //echo '</div>';
  441 +};
  442 +*/
  443 +
  444 +$displayFilter = function($filter_name, // 'projet'
  445 + $form, $request, $options
  446 + ) {
  447 + //echo '<div class="col-lg-2 col-md-3 col-sm-4">';
  448 + $html_filter_name = $filter_name.'-selector';
  449 + //echo $form->control('projet_selector', [
  450 + echo $form->control($filter_name.'_selector', [ // 'projet_selector'
  451 + //'label' => 'Projet',
  452 + 'label' => ucfirst($filter_name), // 'Projet'
  453 + //'onchange' => "updateUrlWithSelectedValue('projet-selector', 'projet')",
  454 + //'onchange' => "updateUrlWithSelectedValue($filter_name.'-selector', $filter_name)", // ('projet-selector', 'projet')
  455 + 'onchange' => "updateUrlWithSelectedValue('$html_filter_name', '$filter_name')", // ('projet-selector', 'projet')
  456 + 'options' => $options,
  457 + // Inutile car géré via javascript
  458 + 'default' => 0,
  459 + ]);
  460 + //echo '</div>';
  461 +};
  462 +
  463 +
  464 +
372 465
373 466
374 $displayActionButtonsForSelectedOrAllElements = function($form, $SELECTED_STATUS, $USER_IS_RESPONSABLE, $USER_IS_ADMIN_OR_MORE, $USER_IS_SUPERADMIN) { 467 $displayActionButtonsForSelectedOrAllElements = function($form, $SELECTED_STATUS, $USER_IS_RESPONSABLE, $USER_IS_ADMIN_OR_MORE, $USER_IS_SUPERADMIN) {
@@ -639,7 +732,19 @@ if ($USER_IS_ADMIN_OR_MORE) $displayStatusButtons($SELECTED_STATUS, $params, $nb @@ -639,7 +732,19 @@ if ($USER_IS_ADMIN_OR_MORE) $displayStatusButtons($SELECTED_STATUS, $params, $nb
639 732
640 733
641 // <!-- SELECTEURS : NOMBRE LIGNES PAR PAGE et AGE --> 734 // <!-- SELECTEURS : NOMBRE LIGNES PAR PAGE et AGE -->
642 -$displaySelectors($this->Form, $this->request, $displayNbLinesSelector, $displayAgeSelector, $displayDomaineSelector, $domain_options); 735 +//$displaySelectors(
  736 +$displayFilters(
  737 + $this->Form, $this->request,
  738 + $displayFilter,
  739 + //$displayNbLinesSelector,
  740 + 'nblines', $nblines_options,
  741 + //$displayAgeSelector, $age_options,
  742 + 'age', $age_options,
  743 + //$displayDomaineSelector, $domain_options,
  744 + //$displayProjetSelector, $projet_options
  745 + 'domaine', $domaine_options,
  746 + 'projet', $projet_options
  747 +);
643 //$displayNbLinesSelector($this->Form, $this->request); 748 //$displayNbLinesSelector($this->Form, $this->request);
644 749
645 750
@@ -989,7 +1094,12 @@ $(document).ready(function(){ @@ -989,7 +1094,12 @@ $(document).ready(function(){
989 selectNbLines(); 1094 selectNbLines();
990 // Actualiser le domaine sélectionné si passé en paramètre de l'url 1095 // Actualiser le domaine sélectionné si passé en paramètre de l'url
991 //$(document).ready(selectDomain); 1096 //$(document).ready(selectDomain);
992 - selectDomain(); 1097 + //selectDomain();
  1098 + selectFilterItem('domaine');
  1099 + //selectProjet('projet');
  1100 + selectFilterItem('projet');
  1101 +
  1102 +
993 // Remplir le champ recherche général avec le texte de la dernière recherche effectuée 1103 // Remplir le champ recherche général avec le texte de la dernière recherche effectuée
994 //$(document).ready(setSearchField); 1104 //$(document).ready(setSearchField);
995 //setSearchField(); 1105 //setSearchField();
@@ -1006,6 +1116,7 @@ function setSearchField() { @@ -1006,6 +1116,7 @@ function setSearchField() {
1006 } 1116 }
1007 */ 1117 */
1008 1118
  1119 +/*
1009 function selectDomain() { 1120 function selectDomain() {
1010 var domain_id = parseInt($_GET('domain')); 1121 var domain_id = parseInt($_GET('domain'));
1011 //console.log(domain_id); 1122 //console.log(domain_id);
@@ -1016,15 +1127,36 @@ function selectDomain() { @@ -1016,15 +1127,36 @@ function selectDomain() {
1016 //$("#domain-selector").val(domain_id); 1127 //$("#domain-selector").val(domain_id);
1017 //document.getElementById('domain-selector').value = domain; 1128 //document.getElementById('domain-selector').value = domain;
1018 } 1129 }
  1130 +*/
  1131 +
  1132 +//function selectProjet(filter_name) {
  1133 +function selectFilterItem(filter_name) {
  1134 + //var id = parseInt($_GET('projet'));
  1135 + var id = parseInt($_GET(filter_name));
  1136 + var filter_selector_name = filter_name+'-selector';
  1137 + //console.log(domain_id);
  1138 + // NotANumber
  1139 + if (!isNaN(id))
  1140 + // PAS BON : sélectionne par l'INDEX
  1141 + //$("#projet-selector")[0].selectedIndex = id;
  1142 + // OK : sélectionne par la CLÉ
  1143 + $('#'+filter_selector_name).val(id);
  1144 + //$("#projet-selector").val(id);
  1145 + //document.getElementById('domain-selector').selectedIndex = domain_id;
  1146 + //$("#domain-selector").val(domain_id);
  1147 + //document.getElementById('domain-selector').value = domain;
  1148 +}
1019 1149
1020 //$(document).ready(function () { 1150 //$(document).ready(function () {
1021 function selectNbLines() { 1151 function selectNbLines() {
1022 - var nblines = parseInt($_GET('aff')); 1152 + //var nblines = parseInt($_GET('aff'));
  1153 + var nblines = parseInt($_GET('nblines'));
1023 //document.getElementById('aff-par-defaut').value = affichage; 1154 //document.getElementById('aff-par-defaut').value = affichage;
1024 if ( [20,30,50,100,200].includes(nblines) ) 1155 if ( [20,30,50,100,200].includes(nblines) )
1025 - $("#aff-par-defaut").val(nblines); 1156 + //$("#aff-par-defaut").val(nblines);
  1157 + $("#nblines-selector").val(nblines);
1026 else 1158 else
1027 - $("#aff-par-defaut").val(<?=$configuration->aff_par_defaut?>); 1159 + $("#nblines-selector").val(<?=$configuration->aff_par_defaut?>);
1028 /* 1160 /*
1029 switch(affichage) { 1161 switch(affichage) {
1030 case 20 : 1162 case 20 :