Commit c9ad82a7c7c59e89b2538b778fb13cbd50ddf35e

Authored by Etienne Pallier
1 parent 9d3c5a68
Exists in master and in 1 other branch dev

Filtre "age" FINALISÉ sur page index des matériels (v3.7.9.58)

- Affichage des matériels par tranche d'âge (0-5 ans, 5-10, ...)
- Grosse refactorisation du javascript dans la page materiels/index pour
utiliser le meme code pour les 2 filtres "age" et "nb lines"
- Bugfix url rewriting dans la page materiels/index pour supprimer le
paramètre "page" car ça n'est pas pertinent et ça provoque plantages
- Nombreux petits bugfixes sur les css
@@ -44,11 +44,16 @@ Logiciel testé et validé sur les configurations suivantes : @@ -44,11 +44,16 @@ Logiciel testé et validé sur les configurations suivantes :
44 44
45 VERSION ACTUELLE 45 VERSION ACTUELLE
46 46
47 -Date: 07/07/2020  
48 -Version: 3.7.9.57 47 +Date: 08/07/2020
  48 +Version: 3.7.9.58 (encours)
49 Author: EP 49 Author: EP
50 Commentaire: 50 Commentaire:
51 - - Nouveau filtre "age" sur page index des matériels : Affichage des matériels par tranche d'âge (0-5 ans, 5-10, ...) 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"
  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
52 57
53 58
54 - Nouvelle page web "Nouveautés" (/pages/changes) 59 - Nouvelle page web "Nouveautés" (/pages/changes)
@@ -91,7 +96,8 @@ La liste ci-dessous est aussi en ligne ici : https://tinyurl.com/labinvent#headi @@ -91,7 +96,8 @@ La liste ci-dessous est aussi en ligne ici : https://tinyurl.com/labinvent#headi
91 ----------------------------------------------------------------------------------------------------------- 96 -----------------------------------------------------------------------------------------------------------
92 VERSION ACTUELLE 97 VERSION ACTUELLE
93 98
94 -07/07/2020 v3.7.9.56 (EP) 99 +07/07/2020 v3.7.9.56-57 (EP)
  100 + - Nouveau filtre "age" sur page index des matériels : Affichage des matériels par tranche d'âge (0-5 ans, 5-10, ...)
95 - Materiel : technique ou/et inventoriable => trop compliqué et inutile => en fait c’est un OUX (exclusif) 101 - Materiel : technique ou/et inventoriable => trop compliqué et inutile => en fait c’est un OUX (exclusif)
96 => simplifier en ne gardant qu'UNE SEULE case à cocher qui s'appelle "materiel technique". 102 => simplifier en ne gardant qu'UNE SEULE case à cocher qui s'appelle "materiel technique".
97 => Si cette case n'est pas cochée, le prix doit alors être supérieur à 1000E 103 => Si cette case n'est pas cochée, le prix doit alors être supérieur à 1000E
src/Controller/MaterielsController.php
@@ -9,6 +9,8 @@ use Cake\Auth\FallbackPasswordHasher; @@ -9,6 +9,8 @@ use Cake\Auth\FallbackPasswordHasher;
9 use App\Model\Entity\Materiel; 9 use App\Model\Entity\Materiel;
10 use App\Model\Entity\User; 10 use App\Model\Entity\User;
11 use Cake\I18n\FrozenDate; 11 use Cake\I18n\FrozenDate;
  12 +use Cake\Database\Expression\QueryExpression;
  13 +use Cake\Database\Query;
12 14
13 //use App\Controller\DocumentsController; 15 //use App\Controller\DocumentsController;
14 //App::import('Controller', 'Documents'); 16 //App::import('Controller', 'Documents');
@@ -746,9 +748,9 @@ class MaterielsController extends AppController { @@ -746,9 +748,9 @@ class MaterielsController extends AppController {
746 $this->myDebug("step 3: MaterielsController.index()"); 748 $this->myDebug("step 3: MaterielsController.index()");
747 749
748 // /materiels/index/VALIDATED 750 // /materiels/index/VALIDATED
749 - $condition = ''; 751 + $conditions = [];
750 if (isset($this->request->getAttribute('params')['pass'][0])) { 752 if (isset($this->request->getAttribute('params')['pass'][0])) {
751 - $condition = [ 753 + $conditions = [
752 'Materiels.status =' => $this->request->getAttribute('params')['pass'][0] 754 'Materiels.status =' => $this->request->getAttribute('params')['pass'][0]
753 ]; 755 ];
754 //$this->set('STATUS', $this->request->getAttribute('params')['pass'][0]); 756 //$this->set('STATUS', $this->request->getAttribute('params')['pass'][0]);
@@ -766,7 +768,7 @@ class MaterielsController extends AppController { @@ -766,7 +768,7 @@ class MaterielsController extends AppController {
766 'nom =' => 'N/A' 768 'nom =' => 'N/A'
767 ]) 769 ])
768 ->first()['id']) 770 ->first()['id'])
769 - $condition = [ 771 + $conditions = [
770 'Materiels.groupes_metier_id =' => $GM, 772 'Materiels.groupes_metier_id =' => $GM,
771 'Materiels.status !=' => 'ARCHIVED' 773 'Materiels.status !=' => 'ARCHIVED'
772 ]; 774 ];
@@ -776,12 +778,12 @@ class MaterielsController extends AppController { @@ -776,12 +778,12 @@ class MaterielsController extends AppController {
776 'nom =' => 'N/A' 778 'nom =' => 'N/A'
777 ]) 779 ])
778 ->first()['id']) 780 ->first()['id'])
779 - $condition = [ 781 + $conditions = [
780 'Materiels.groupes_thematique_id =' => $GT, 782 'Materiels.groupes_thematique_id =' => $GT,
781 'Materiels.status !=' => 'ARCHIVED' 783 'Materiels.status !=' => 'ARCHIVED'
782 ]; 784 ];
783 else 785 else
784 - $condition = [ 786 + $conditions = [
785 'Materiels.id =' => 0 787 'Materiels.id =' => 0
786 ]; 788 ];
787 } 789 }
@@ -794,7 +796,7 @@ class MaterielsController extends AppController { @@ -794,7 +796,7 @@ class MaterielsController extends AppController {
794 'nom =' => 'N/A' 796 'nom =' => 'N/A'
795 ]) 797 ])
796 ->first()['id']) 798 ->first()['id'])
797 - $condition = [ 799 + $conditions = [
798 'Materiels.groupes_metier_id =' => $GMV, 800 'Materiels.groupes_metier_id =' => $GMV,
799 'Materiels.status =' => 'CREATED', 801 'Materiels.status =' => 'CREATED',
800 'Materiels.status !=' => 'ARCHIVED' 802 'Materiels.status !=' => 'ARCHIVED'
@@ -804,13 +806,13 @@ class MaterielsController extends AppController { @@ -804,13 +806,13 @@ class MaterielsController extends AppController {
804 'nom =' => 'N/A' 806 'nom =' => 'N/A'
805 ]) 807 ])
806 ->first()['id']) 808 ->first()['id'])
807 - $condition = [ 809 + $conditions = [
808 'Materiels.groupes_metier_id =' => $GTV, 810 'Materiels.groupes_metier_id =' => $GTV,
809 'Materiels.status =' => 'CREATED', 811 'Materiels.status =' => 'CREATED',
810 'Materiels.status !=' => 'ARCHIVED' 812 'Materiels.status !=' => 'ARCHIVED'
811 ]; 813 ];
812 else 814 else
813 - $condition = [ 815 + $conditions = [
814 'Materiels.id =' => 0 816 'Materiels.id =' => 0
815 ]; 817 ];
816 } 818 }
@@ -823,12 +825,12 @@ class MaterielsController extends AppController { @@ -823,12 +825,12 @@ class MaterielsController extends AppController {
823 'Utilisateur', 825 'Utilisateur',
824 'Responsable' 826 'Responsable'
825 ])) 827 ]))
826 - $condition = [ 828 + $conditions = [
827 'Materiels.nom_responsable =' => $this->request->getQuery('MY'), 829 'Materiels.nom_responsable =' => $this->request->getQuery('MY'),
828 'Materiels.status !=' => 'ARCHIVED' 830 'Materiels.status !=' => 'ARCHIVED'
829 ]; 831 ];
830 else 832 else
831 - $condition = [ 833 + $conditions = [
832 'Materiels.nom_responsable =' => $this->request->getQuery('MY') 834 'Materiels.nom_responsable =' => $this->request->getQuery('MY')
833 ]; 835 ];
834 } 836 }
@@ -837,8 +839,8 @@ class MaterielsController extends AppController { @@ -837,8 +839,8 @@ class MaterielsController extends AppController {
837 if (in_array($this->getUserRole(), [ 839 if (in_array($this->getUserRole(), [
838 'Utilisateur', 840 'Utilisateur',
839 'Responsable' 841 'Responsable'
840 - ]) && $condition == '')  
841 - $condition = [ 842 + ]) && $conditions == '')
  843 + $conditions = [
842 'Materiels.status !=' => 'ARCHIVED' 844 'Materiels.status !=' => 'ARCHIVED'
843 ]; 845 ];
844 846
@@ -854,8 +856,9 @@ class MaterielsController extends AppController { @@ -854,8 +856,9 @@ class MaterielsController extends AppController {
854 * 21 = 20+ 856 * 21 = 20+
855 */ 857 */
856 $age = $this->request->getQuery('age'); 858 $age = $this->request->getQuery('age');
857 - // Par défaut, TOUS les ages  
858 - if (is_null($age)) $age = 0; 859 + // Par défaut, 0-5 ans
  860 + if (is_null($age)) $age = 5;
  861 + // Si age==0 on ne fait rien (car on prend TOUS les materiels)
859 if ($age>0) { 862 if ($age>0) {
860 $today_year = (new FrozenDate('now'))->year; 863 $today_year = (new FrozenDate('now'))->year;
861 // ex: si on est en 2020 : 864 // ex: si on est en 2020 :
@@ -873,16 +876,22 @@ class MaterielsController extends AppController { @@ -873,16 +876,22 @@ class MaterielsController extends AppController {
873 //debug("$year_min a $year_max"); 876 //debug("$year_min a $year_max");
874 // $year_min <= year(date_acquisition) <= $year_max 877 // $year_min <= year(date_acquisition) <= $year_max
875 //$condition['date_acquisition !='] = 'null'; // Date non nulle sinon ça plante !!! 878 //$condition['date_acquisition !='] = 'null'; // Date non nulle sinon ça plante !!!
876 - //$condition['date_acquisition IS NOT'] = 'NULL'; // Date non nulle sinon ça plante !!! 879 + //$conditions['date_acquisition IS NOT'] = 'NULL'; // Date non nulle sinon ça plante !!!
  880 + /*
877 // Pour faire NON EXCLUSIF, faire ceci : 881 // Pour faire NON EXCLUSIF, faire ceci :
878 $condition['year(date_acquisition) <='] = $year_max; // <= 2015 882 $condition['year(date_acquisition) <='] = $year_max; // <= 2015
879 $condition['year(date_acquisition) >='] = $year_min; // >= 2010 883 $condition['year(date_acquisition) >='] = $year_min; // >= 2010
880 - /*  
881 - // Pour bien faire EXCLUSIF, faire ceci :  
882 - $condition['year(date_acquisition) <='] = $year_max; // <= 2015  
883 - $condition['year(date_acquisition) >'] = $year_min; // > 2010  
884 */ 884 */
  885 + // Pour bien faire EXCLUSIF, faire ceci :
  886 + $conditions['year(date_acquisition) <='] = $year_max; // <= 2015
  887 + $conditions['year(date_acquisition) >'] = $year_min; // > 2010
  888 + }
  889 + // Age inconnu (date nulle)
  890 + /*
  891 + elseif ($age==-1) {
  892 + $conditions['date_acquisition IS'] = 'NULL';
885 } 893 }
  894 + */
886 895
887 // Nb lignes par page 896 // Nb lignes par page
888 $limit = $this->request->getQuery('aff'); 897 $limit = $this->request->getQuery('aff');
@@ -907,15 +916,60 @@ class MaterielsController extends AppController { @@ -907,15 +916,60 @@ class MaterielsController extends AppController {
907 ]; 916 ];
908 917
909 // TOUS les materiels 918 // TOUS les materiels
  919 + /*
910 $this->set('nbMateriels', $this->Materiels->find('all', [ 920 $this->set('nbMateriels', $this->Materiels->find('all', [
911 'conditions' => $condition 921 'conditions' => $condition
912 ])->count()); 922 ])->count());
  923 + */
  924 + $materiels = $this->Materiels
  925 + //->find('all')
  926 + ->find()
  927 + ->where($conditions);
  928 + if ($age==-1) $materiels = $materiels
  929 + ->where(function (QueryExpression $exp, Query $q) {
  930 + return $exp->isNull('date_acquisition');
  931 + }
  932 + );
  933 + $this->set('nbMateriels', $materiels->count());
  934 +
  935 + /*
  936 + $this->set('nbMateriels',
  937 + $this->Materiels
  938 + //->find('all')
  939 + ->find()
  940 + ->where($conditions)
  941 + ->count()
  942 + );
  943 + */
913 944
914 // Seulement le nombre de materiels demandés par paginate 945 // Seulement le nombre de materiels demandés par paginate
915 //debug($condition); 946 //debug($condition);
  947 + /*
916 $materiels = $this->paginate($this->Materiels->find('all', [ 948 $materiels = $this->paginate($this->Materiels->find('all', [
917 - 'conditions' => $condition 949 + 'conditions' => $conditions
918 ])); 950 ]));
  951 + */
  952 + # WHERE (population) IS NOT NULL
  953 + /*
  954 + $materiels = $this->Materiels
  955 + ->find()
  956 + ->where(function (QueryExpression $exp, Query $q) {
  957 + return $exp->isNotNull('date_acquisition');
  958 + }
  959 + );
  960 + $materiels = $this->paginate($materiels
  961 + ->where($conditions)
  962 + );
  963 + */
  964 +
  965 + // Paginated materiels
  966 + /*
  967 + $materiels = $this->paginate($this->Materiels
  968 + ->find()
  969 + ->where($conditions)
  970 + );
  971 + */
  972 + $materiels = $this->paginate($materiels);
919 $this->set(compact('materiels')); 973 $this->set(compact('materiels'));
920 974
921 // Pas bien..., mais pratique : 975 // Pas bien..., mais pratique :
src/Template/Materiels/index.ctp
@@ -187,6 +187,7 @@ $displayNbLinesSelector = function($form, $request) { @@ -187,6 +187,7 @@ $displayNbLinesSelector = function($form, $request) {
187 //echo $this->Form->control('aff_par_defaut', [ 187 //echo $this->Form->control('aff_par_defaut', [
188 echo $form->control('aff_par_defaut', [ 188 echo $form->control('aff_par_defaut', [
189 'label' => 'Nombre lignes', 189 'label' => 'Nombre lignes',
  190 + 'onchange' => "updateUrlWithSelectedValue('aff-par-defaut', 'aff')",
190 'options' => [ 191 'options' => [
191 '20' => 20, 192 '20' => 20,
192 '30' => 30, 193 '30' => 30,
@@ -204,14 +205,20 @@ $displayAgeSelector = function($form, $request) { @@ -204,14 +205,20 @@ $displayAgeSelector = function($form, $request) {
204 //echo '<div class="col-lg-2 col-md-3 col-sm-4">'; 205 //echo '<div class="col-lg-2 col-md-3 col-sm-4">';
205 echo $form->control('age_selector', [ 206 echo $form->control('age_selector', [
206 'label' => 'Age', 207 'label' => 'Age',
  208 + 'onchange' => "updateUrlWithSelectedValue('age-selector', 'age')",
207 'options' => [ 209 'options' => [
208 '0' => 'Tous', 210 '0' => 'Tous',
209 - '5' => '0-5 ans', 211 + '5' => 'Récents (5 ans max)',
210 '10' => '5-10 ans', 212 '10' => '5-10 ans',
211 '15' => '10-15 ans', 213 '15' => '10-15 ans',
212 '20' => '15-20 ans', 214 '20' => '15-20 ans',
  215 + //'20plus' => '+ 20 ans',
213 '21' => '+ 20 ans', 216 '21' => '+ 20 ans',
214 - ] 217 + //'unknown' => 'inconnu',
  218 + '-1' => 'inconnu',
  219 + ],
  220 + // Inutile car géré via javascript
  221 + //'default' => '5',
215 ]); 222 ]);
216 //echo '</div>'; 223 //echo '</div>';
217 }; // displayNbLinesSelector() 224 }; // displayNbLinesSelector()
@@ -267,6 +274,7 @@ $displayActionButtonsForSelectedOrAllElements = function($form, $SELECTED_STATUS @@ -267,6 +274,7 @@ $displayActionButtonsForSelectedOrAllElements = function($form, $SELECTED_STATUS
267 }; 274 };
268 275
269 276
  277 +
270 /* 278 /*
271 * Couleurs en fonction du statut du matos 279 * Couleurs en fonction du statut du matos
272 * 280 *
@@ -276,7 +284,8 @@ $displayColorLegend = function() { @@ -276,7 +284,8 @@ $displayColorLegend = function() {
276 // VALIDATED => vert 284 // VALIDATED => vert
277 // TBA => orange 285 // TBA => orange
278 // ARCHIVED => rouge 286 // ARCHIVED => rouge
279 - echo "<p><i><b><u>Couleur</u> :</b> bleu=créé ; vert=validé ; orange=à sortir ; rouge=archivé (couleur date rouge = fin garantie)</i></p>"; 287 + //echo "<p><i><b><u>Couleur</u> :</b> <div>bleu=à valider</div> ; vert=validé ; orange=à sortir ; rouge=archivé (couleur date rouge = fin garantie)</i></p>";
  288 + echo "<p><i><b><u>Couleur</u> :</b> <i style='color:blue'>bleu=à valider</i> ; <i style='color:green'>vert=validé</i> ; <i style='color:orange'>orange=à sortir</i> ; <i style='color:red'>rouge=archivé</i> ; couleur date rouge = <i style='color:red'>fin garantie</i></i></p>";
280 }; 289 };
281 290
282 291
@@ -483,35 +492,37 @@ echo $this-&gt;Form-&gt;create(&#39;materiels&#39;, [ @@ -483,35 +492,37 @@ echo $this-&gt;Form-&gt;create(&#39;materiels&#39;, [
483 // <!-- AFFICHAGE DES MATERIELS --> 492 // <!-- AFFICHAGE DES MATERIELS -->
484 493
485 if ($nbMateriels == 0) echo 'Aucun matériel'; 494 if ($nbMateriels == 0) echo 'Aucun matériel';
486 -  
487 else { 495 else {
488 - // $form2 = $this->Form;  
489 - // /echo $this->Form->create('materiels', ['url' => '/materiels/execActions']);  
490 - if ($SELECTED_STATUS) echo $this->Form->hidden('what', [  
491 - 'value' => $SELECTED_STATUS  
492 - ]);  
493 - ?>  
494 - <table style="border-collapse: separate; border-spacing: 0;">  
495 - <thead>  
496 - <tr>  
497 - <?php if ($SELECTED_STATUS) { echo '<th></th>'; }?>  
498 - <th class="actions"><?= __('') ?></th>  
499 - <th><?= $this->Paginator->sort('designation','Désignation') ?></th>  
500 - <th><?= $this->Paginator->sort('numero_laboratoire', 'N° interne (labo)') ?></th>  
501 - <th><?= $this->paginator->sort('hors_service', ' ') ?></th>  
502 - <th><?= $this->Paginator->sort('categorie_id', 'Catégorie') ?></th>  
503 - <th><?= $this->Paginator->sort('organisme_id', 'Org.') ?></th>  
504 - <th><?= $this->Paginator->sort('numero_inventaire_organisme', 'N° Invent. Org.') ?></th>  
505 - <th><?= $this->Paginator->sort('nom_responsable', 'Nom de l\'utilisateur') ?></th>  
506 - <th><?= $this->Paginator->sort('status', 'Statut') ?></th>  
507 - <th><?= $this->Paginator->sort('date_acquisition', 'Date Achat') ?></th>  
508 - <?= "<th>".$this->Paginator->sort('etiquette', 'Et')."</th>" ?>  
509 - <?php if ($METRO) echo "<th>".$this->Paginator->sort('metrologie', 'Metro')."</th>" ?>  
510 - </tr>  
511 - </thead>  
512 - <tbody>  
513 -  
514 - <?php 496 +
  497 +// $form2 = $this->Form;
  498 +// /echo $this->Form->create('materiels', ['url' => '/materiels/execActions']);
  499 +if ($SELECTED_STATUS) echo $this->Form->hidden('what', ['value'=>$SELECTED_STATUS]);
  500 +?>
  501 +<table style="border-collapse: separate; border-spacing: 0;">
  502 +
  503 + <!-- HEAD (Titres) -->
  504 + <thead>
  505 + <tr>
  506 + <?php if ($SELECTED_STATUS) { echo '<th></th>'; }?>
  507 + <th class="actions"><?= __('') ?></th>
  508 + <th><?= $this->Paginator->sort('designation','Désignation') ?></th>
  509 + <th><?= $this->Paginator->sort('numero_laboratoire', 'N° interne (labo)') ?></th>
  510 + <th><?= $this->paginator->sort('hors_service', ' ') ?></th>
  511 + <th><?= $this->Paginator->sort('categorie_id', 'Catégorie') ?></th>
  512 + <th><?= $this->Paginator->sort('organisme_id', 'Org.') ?></th>
  513 + <th><?= $this->Paginator->sort('numero_inventaire_organisme', 'N° Invent. Org.') ?></th>
  514 + <th><?= $this->Paginator->sort('nom_responsable', "Nom de l'utilisateur") ?></th>
  515 + <th><?= $this->Paginator->sort('status', 'Statut') ?></th>
  516 + <th><?= $this->Paginator->sort('date_acquisition', 'Date Achat') ?></th>
  517 + <th><?= $this->Paginator->sort('etiquette', 'Et') ?></th>
  518 + <?php if ($METRO) echo "<th>".$this->Paginator->sort('metrologie', 'Metro')."</th>" ?>
  519 + </tr>
  520 + </thead>
  521 +
  522 + <!-- BODY (Lignes matériels) -->
  523 + <tbody>
  524 +
  525 + <?php
515 // Pour changer la couleur du nom du matos si la garantie est passée 526 // Pour changer la couleur du nom du matos si la garantie est passée
516 $time = Time::now(); // On récupère la date et l'heure actuelles 527 $time = Time::now(); // On récupère la date et l'heure actuelles
517 $today = new date("$time->year-$time->month-$time->day"); // On extrait la date pour la vérification de fin de garantie 528 $today = new date("$time->year-$time->month-$time->day"); // On extrait la date pour la vérification de fin de garantie
@@ -646,8 +657,11 @@ echo $this-&gt;element(&#39;menu_index&#39;, [ @@ -646,8 +657,11 @@ echo $this-&gt;element(&#39;menu_index&#39;, [
646 657
647 <script type="text/javascript"> 658 <script type="text/javascript">
648 659
649 -// Pour changer l'url lorsque le nombre d'éléments souhaités est modifié  
650 -$(document).ready(function () { 660 +/*
  661 +// Pour changer l'url lorsque le nombre de lignes souhaité est modifié
  662 +//$(document).ready(function () {
  663 +$(document).ready(onSelectNbLines);
  664 +function onSelectNbLines() {
651 $("#aff-par-defaut").bind("change", function (event) { 665 $("#aff-par-defaut").bind("change", function (event) {
652 var nbr=$("#aff-par-defaut :selected").val(); 666 var nbr=$("#aff-par-defaut :selected").val();
653 var urlDeBase = window.location.href.split("?"); 667 var urlDeBase = window.location.href.split("?");
@@ -674,7 +688,9 @@ $(document).ready(function () { @@ -674,7 +688,9 @@ $(document).ready(function () {
674 urlDecoupeeBis[param][1] = nbr; //urlDecoupeeBis[i][0] c'est le nom du parametre, et urlDecoupeeBis[i][1] c'est la valeur associée 688 urlDecoupeeBis[param][1] = nbr; //urlDecoupeeBis[i][0] c'est le nom du parametre, et urlDecoupeeBis[i][1] c'est la valeur associée
675 var url = ""; 689 var url = "";
676 for(i=0; i<urlDecoupee.length; ++i) { //... on reconstruit une url propre ... 690 for(i=0; i<urlDecoupee.length; ++i) { //... on reconstruit une url propre ...
677 - if(/^\?[a-zA-A0-9]*/.test(urlDecoupeeBis[0][0])) { 691 + */
  692 + //////if(/^\?[a-zA-A0-9]*/.test(urlDecoupeeBis[0][0])) {
  693 + /*
678 if(i!=0) url += "&"; 694 if(i!=0) url += "&";
679 // Sauf pour le 1er parametre, qui lui commence par un "?" 695 // Sauf pour le 1er parametre, qui lui commence par un "?"
680 } else url += "&"; 696 } else url += "&";
@@ -686,57 +702,128 @@ $(document).ready(function () { @@ -686,57 +702,128 @@ $(document).ready(function () {
686 else window.location.href = window.location.href + '&aff=' + nbr; 702 else window.location.href = window.location.href + '&aff=' + nbr;
687 703
688 }); 704 });
689 -});  
690 - 705 +}
  706 +//);
  707 +*/
691 708
692 -$(document).ready(function () { 709 +// Pour changer l'url lorsque l'age est modifié
  710 +//$(document).ready(function () {
  711 +/*
  712 +$(document).ready(onSelectAge);
  713 +function onSelectAge() {
693 $("#age-selector").bind("change", function (event) { 714 $("#age-selector").bind("change", function (event) {
694 - var nbr=$("#age-selector :selected").val();  
695 - var urlDeBase = window.location.href.split("?");  
696 - var urlDecoupee = window.location.search.split("&"), i, j; // On sépare la chaine des paramètres en fonction du &  
697 - var urlDecoupeeBis = new Array();  
698 - var param = 0;  
699 - var bool = false;  
700 - //console.log(nbr); 715 +*/
  716 +//$(document).ready($("#age-selector").onchange = onSelectAge);
  717 +//function changeAge(select_name, param_name) {
  718 +function updateUrlWithSelectedValue(select_name, param_name) {
  719 + //$("#age-selector").bind("change", function (event) {
701 720
702 - for(i=0; i<urlDecoupee.length; ++i) {  
703 - urlDecoupeeBis[i] = urlDecoupee[i].split("="); // On sépare les parametres de leurs valeurs  
704 - for(j=0; j<urlDecoupeeBis[i].length; ++j){  
705 - if(urlDecoupeeBis[i][0] == "age" || urlDecoupeeBis[i][0] == "?age") {  
706 - //console.info('toto'); 721 + // Exemple pour http://labinvent.devv/materiels/index/CREATED?aff=30&age=5&page=3 :
  722 +
  723 + // 5
  724 + //var param_val=$("#age-selector :selected").val();
  725 + selected_elem = "#" + select_name + " :selected";
  726 + var param_val = $(selected_elem).val();
  727 +
  728 + // Array [ "http://labinvent.devv/materiels/CREATED", "aff=30&age=15&page=3" ]
  729 + // Array [ "http://labinvent.devv/materiels/CREATED" ] s'il n'y a aucun argument (pas de chaine commençant par "?...")
  730 + var urlDeBase = window.location.href.split("?");
  731 +
  732 + // Array [ "?aff=30", "age=15", "page=3" ]
  733 + // Array [ "" ] si pas d'argument passé
  734 + var args = window.location.search.split("&");
  735 +
  736 + var i; //, j;
  737 + //var param = 0;
  738 + //var bool = false;
  739 + var argsBis = new Array();
  740 +
  741 + //console.log(age, args);
  742 +
  743 + for(i=0; i<args.length; ++i) {
  744 + // On sépare les parametres de leurs valeurs
  745 + // ex:
  746 + argsBis[i] = args[i].split("=");
  747 + /*
  748 + for(j=0; j<argsBis[i].length; ++j){
  749 + if(argsBis[i][0] == "age" || argsBis[i][0] == "?age") {
707 bool = true; 750 bool = true;
708 param = i; // Si le parametre "age" est trouvé, on le récupère 751 param = i; // Si le parametre "age" est trouvé, on le récupère
709 break; 752 break;
710 } 753 }
711 } 754 }
  755 + */
712 } 756 }
  757 + // Resultat :
  758 + /*
  759 + 0: Array [ "?aff", "30" ]
  760 + 1: Array [ "age", "20" ]
  761 + 2: Array [ "page", "3" ]
  762 + */
  763 + //console.log(argsBis);
713 764
714 - if(bool) { // Si le parametre recherché a ete trouvé, ...  
715 - //console.log("coucouT");  
716 - urlDecoupeeBis[param][1] = nbr; //urlDecoupeeBis[i][0] c'est le nom du parametre, et urlDecoupeeBis[i][1] c'est la valeur associée  
717 - var url = "";  
718 - for(i=0; i<urlDecoupee.length; ++i) { //... on reconstruit une url propre ...  
719 - if(/^\?[a-zA-A0-9]*/.test(urlDecoupeeBis[0][0])) {  
720 - if(i!=0) url += "&";  
721 - // Sauf pour le 1er parametre, qui lui commence par un "?"  
722 - } else url += "&";  
723 - url += urlDecoupeeBis[i][0]+"="+urlDecoupeeBis[i][1];  
724 - // On reforme les parametres "&nom=valeur" en les concatenant  
725 - }  
726 - window.location.href = urlDeBase[0]+url; // ... et on fait la redirection  
727 - } else if(urlDecoupee[0]=="") window.location.href = window.location.href + '?age=' + nbr; // Sinon on ajoute juste le parametre en fin d'url  
728 - else window.location.href = window.location.href + '&age=' + nbr;  
729 -  
730 - });  
731 -});  
732 -  
733 -  
734 -// Pour lire l'url et actualiser l'option sélectionnée  
735 -$(document).ready(function () {  
736 - var affichage = parseInt($_GET('aff')); 765 + //if(bool) { // Si le parametre recherché a ete trouvé
  766 + //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 = "";
  768 + for(i=0; i<args.length; ++i) { //... on reconstruit une url propre ...
  769 + // 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 + // On ne conserve pas non plus l'argument 'age' car on va l'ajouter en tête des arguments
  771 + arg_name = argsBis[i][0];
  772 + // Si "?arg" on supprime le ?
  773 + if (arg_name.startsWith('?')) arg_name = arg_name.substring(1);
  774 + //if (['page','age'].includes(arg_name)) continue;
  775 + if (['page', param_name].includes(arg_name)) continue;
  776 + /*
  777 + if (argsBis[i][0] == 'page') continue;
  778 + if (argsBis[i][0] == 'age') continue;
  779 + */
  780 + //if(/^\?[a-zA-A0-9]*/.test(argsBis[0][0])) {
  781 + // if(i!=0) oldargs += "&";
  782 + // Sauf pour le 1er parametre, qui lui commence par un "?"
  783 + //}
  784 + //else oldargs += "&";
  785 + /*
  786 + // "&arg=valeur", sauf pour le 1er paramètre (pas de '&')
  787 + if (i > 0) oldargs += "&";
  788 + oldargs += arg_name + "=" + argsBis[i][1];
  789 + */
  790 + oldargs += '&' + arg_name + "=" + argsBis[i][1];
  791 + // On reforme les parametres "&nom=valeur" en les concatenant
  792 + }
  793 + //window.location.href = urlDeBase[0]+oldargs; // ... et on fait la redirection
  794 + //}
  795 + //else if(args[0]=="") window.location.href = window.location.href + '?age=' + age; // Sinon on ajoute juste le parametre en fin d'url
  796 + //else window.location.href = window.location.href + '&age=' + age;
  797 + //console.log(urlDeBase[0]);
  798 + //console.log(urlDeBase[0] + '?age='+age + oldargs);
  799 + //new_url = urlDeBase[0] + '?age='+age + oldargs;
  800 + new_url = urlDeBase[0] + '?'+param_name+'='+param_val+ oldargs;
  801 + //if (oldargs) new_url += oldargs;
  802 + window.location.href = new_url;
  803 +
  804 + //});
  805 +}
  806 +//);
  807 +
  808 +
  809 +//Pour lire l'url et actualiser l'age sélectionné
  810 +$(document).ready(selectAge);
  811 +// Pour lire l'url et actualiser le nombre de lignes sélectionné
  812 +$(document).ready(selectNbLines);
  813 +
  814 +//$(document).ready(function () {
  815 +function selectNbLines() {
  816 + var nblines = parseInt($_GET('aff'));
  817 + //document.getElementById('aff-par-defaut').value = affichage;
  818 + if ( [20,30,50,100,200].includes(nblines) )
  819 + $("#aff-par-defaut").val(nblines);
  820 + else
  821 + $("#aff-par-defaut").val(<?=$configuration->aff_par_defaut?>);
  822 + /*
737 switch(affichage) { 823 switch(affichage) {
738 case 20 : 824 case 20 :
739 - document.getElementById('aff-par-defaut').selectedIndex = 0; 825 + //document.getElementById('aff-par-defaut').selectedIndex = 0;
  826 + document.getElementById('aff-par-defaut').value = 20;
740 break; 827 break;
741 case 30 : 828 case 30 :
742 document.getElementById('aff-par-defaut').selectedIndex = 1; 829 document.getElementById('aff-par-defaut').selectedIndex = 1;
@@ -749,46 +836,58 @@ $(document).ready(function () { @@ -749,46 +836,58 @@ $(document).ready(function () {
749 break; 836 break;
750 case 150 : 837 case 150 :
751 document.getElementById('aff-par-defaut').selectedIndex = 4; 838 document.getElementById('aff-par-defaut').selectedIndex = 4;
  839 + //document.getElementById('aff-par-defaut').value = 20;
752 break; 840 break;
753 case 200 : 841 case 200 :
754 document.getElementById('aff-par-defaut').selectedIndex = 5; 842 document.getElementById('aff-par-defaut').selectedIndex = 5;
755 break; 843 break;
756 default : // Par défaut, lorsque le parametre "aff" n'existe pas, au premier affichage 844 default : // Par défaut, lorsque le parametre "aff" n'existe pas, au premier affichage
757 - $("#aff-par-defaut").val(<?php echo $configuration->aff_par_defaut ?>); 845 + $("#aff-par-defaut").val(<S echo $configuration->aff_par_defaut S>);
758 // On récupère la valeur dans la BD directement, mais en PHP, faut pas déconner 846 // On récupère la valeur dans la BD directement, mais en PHP, faut pas déconner
759 break; 847 break;
760 } 848 }
761 -});  
762 -  
763 -  
764 -//Pour lire l'url et actualiser l'option sélectionnée  
765 -$(document).ready(function () {  
766 - var affichage = parseInt($_GET('age'));  
767 - switch(affichage) {  
768 - case 0 :  
769 - document.getElementById('age-selector').selectedIndex = 0;  
770 - break;  
771 - case 5 :  
772 - document.getElementById('age-selector').selectedIndex = 1;  
773 - break;  
774 - case 10 :  
775 - document.getElementById('age-selector').selectedIndex = 2;  
776 - break;  
777 - case 15 :  
778 - document.getElementById('age-selector').selectedIndex = 3;  
779 - break;  
780 - case 20 :  
781 - document.getElementById('age-selector').selectedIndex = 4;  
782 - break;  
783 - case 21 :  
784 - document.getElementById('age-selector').selectedIndex = 5;  
785 - break;  
786 - default : // Par défaut, lorsque le parametre "aff" n'existe pas, au premier affichage  
787 - $("#age-selector").val(0);  
788 - // On récupère la valeur dans la BD directement, mais en PHP, faut pas déconner  
789 - break; 849 + */
  850 +}
  851 +//);
  852 +
  853 +//$(document).ready(function () {
  854 +function selectAge() {
  855 + var age = parseInt($_GET('age'));
  856 + /*
  857 + if ( [0,5,10,15,20,21,-1].includes(age) )
  858 + $("#aff-par-defaut").val(age);
  859 + else
  860 + $("#aff-par-defaut").val(5);
  861 + */
  862 + switch(age) {
  863 + // TOUS
  864 + case 0 : $("#age-selector")[0].selectedIndex = 0; break;
  865 + //case 0 : document.getElementById('age-selector').selectedIndex = 0; break;
  866 + // 5 ans max
  867 + case 5 : $("#age-selector")[0].selectedIndex = 1; break;
  868 + //case 5 : document.getElementById('age-selector').selectedIndex = 1; break;
  869 + // 5-10 ans
  870 + case 10 : $("#age-selector")[0].selectedIndex = 2; break;
  871 + //case 10 : document.getElementById('age-selector').selectedIndex = 2; break;
  872 + // 10-15
  873 + case 15 : document.getElementById('age-selector').selectedIndex = 3; break;
  874 + //case 15 : $("#age-selector").selectedIndex = 3; break;
  875 + // 15-20
  876 + case 20 : document.getElementById('age-selector').selectedIndex = 4; break;
  877 + //case 20 : $("#age-selector").selectedIndex = 4; break;
  878 + //case '20plus' :
  879 + case 21 : document.getElementById('age-selector').selectedIndex = 5; break;
  880 + //case 21 : $("#age-selector").selectedIndex = 5; break;
  881 + //case 'unknown' :
  882 + case -1 : document.getElementById('age-selector').selectedIndex = 6; break;
  883 + //case -1 : $("#age-selector").selectedIndex = 6; break;
  884 + // Par défaut, lorsque le parametre "age" n'existe pas => 0-5 ans
  885 + default : document.getElementById('age-selector').selectedIndex = 1;
  886 + //default : $("#age-selector").selectedIndex = 1; break;
  887 + //default : $("#age-selector").val(5);
790 } 888 }
791 -}); 889 +}
  890 +//);
792 891
793 892
794 893
webroot/css/inventirap.css
@@ -367,12 +367,14 @@ ul.pagination .disabled:hover a { @@ -367,12 +367,14 @@ ul.pagination .disabled:hover a {
367 } 367 }
368 .paginator .prev { 368 .paginator .prev {
369 border-left: 1px solid #ccc; 369 border-left: 1px solid #ccc;
  370 + /* Propriété « -moz-border-radius » inconnue. Déclaration abandonnée.
370 -moz-border-radius: 4px 0 0 4px; 371 -moz-border-radius: 4px 0 0 4px;
  372 + */
371 -webkit-border-radius: 4px 0 0 4px; 373 -webkit-border-radius: 4px 0 0 4px;
372 border-radius: 4px 0 0 4px; 374 border-radius: 4px 0 0 4px;
373 } 375 }
374 .paginator .next { 376 .paginator .next {
375 - -moz-border-radius: 0 4px 4px 0; 377 + /*-moz-border-radius: 0 4px 4px 0;*/
376 -webkit-border-radius: 0 4px 4px 0; 378 -webkit-border-radius: 0 4px 4px 0;
377 border-radius: 0 4px 4px 0; 379 border-radius: 0 4px 4px 0;
378 } 380 }
@@ -462,7 +464,7 @@ form .input { @@ -462,7 +464,7 @@ form .input {
462 form .input:hover { 464 form .input:hover {
463 background: rgb(242,242,242); 465 background: rgb(242,242,242);
464 -webkit-border-radius: 4px; 466 -webkit-border-radius: 4px;
465 - -moz-border-radius: 4px; 467 + /*-moz-border-radius: 4px;*/
466 border-radius: 4px; 468 border-radius: 4px;
467 } 469 }
468 form .error:hover { 470 form .error:hover {
@@ -551,15 +553,15 @@ form .submit input[type=submit]:hover { @@ -551,15 +553,15 @@ form .submit input[type=submit]:hover {
551 /* Form errors */ 553 /* Form errors */
552 form .error { 554 form .error {
553 background: #FFDACC; 555 background: #FFDACC;
554 - -moz-border-radius: 4px; 556 + /*-moz-border-radius: 4px;*/
555 -webkit-border-radius: 4px; 557 -webkit-border-radius: 4px;
556 border-radius: 4px; 558 border-radius: 4px;
557 font-weight: normal; 559 font-weight: normal;
558 } 560 }
559 form .error-message { 561 form .error-message {
560 - -moz-border-radius: none;  
561 - -webkit-border-radius: none;  
562 - border-radius: none; 562 + /*-moz-border-radius: none;*/
  563 + /*-webkit-border-radius: none;*/
  564 + /*border-radius: none;*/
563 border: none; 565 border: none;
564 background: none; 566 background: none;
565 margin: 0; 567 margin: 0;
@@ -570,7 +572,7 @@ form .error, @@ -570,7 +572,7 @@ form .error,
570 form .error-message { 572 form .error-message {
571 color: #9E2424; 573 color: #9E2424;
572 -webkit-box-shadow: none; 574 -webkit-box-shadow: none;
573 - -moz-box-shadow: none; 575 + /*-moz-box-shadow: none;*/
574 -ms-box-shadow: none; 576 -ms-box-shadow: none;
575 -o-box-shadow: none; 577 -o-box-shadow: none;
576 box-shadow: none; 578 box-shadow: none;
@@ -609,10 +611,10 @@ p.error, @@ -609,10 +611,10 @@ p.error,
609 color: #404040; 611 color: #404040;
610 text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); 612 text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
611 -webkit-border-radius: 4px; 613 -webkit-border-radius: 4px;
612 - -moz-border-radius: 4px; 614 + /*-moz-border-radius: 4px;*/
613 border-radius: 4px; 615 border-radius: 4px;
614 -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25); 616 -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
615 - -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25); 617 + /*-moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);*/
616 box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25); 618 box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
617 } 619 }
618 .success, 620 .success,
@@ -704,12 +706,12 @@ input[type=submit], @@ -704,12 +706,12 @@ input[type=submit],
704 color:#333; 706 color:#333;
705 border:1px solid #bbb; 707 border:1px solid #bbb;
706 -webkit-border-radius: 4px; 708 -webkit-border-radius: 4px;
707 - -moz-border-radius: 4px; 709 + /*-moz-border-radius: 4px;*/
708 border-radius: 4px; 710 border-radius: 4px;
709 text-decoration: none; 711 text-decoration: none;
710 text-shadow: #fff 0px 1px 0px; 712 text-shadow: #fff 0px 1px 0px;
711 min-width: 0; 713 min-width: 0;
712 - -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3), 0px 1px 1px rgba(0, 0, 0, 0.2); 714 + /*-moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3), 0px 1px 1px rgba(0, 0, 0, 0.2);*/
713 -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3), 0px 1px 1px rgba(0, 0, 0, 0.2); 715 -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3), 0px 1px 1px rgba(0, 0, 0, 0.2);
714 box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3), 0px 1px 1px rgba(0, 0, 0, 0.2); 716 box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3), 0px 1px 1px rgba(0, 0, 0, 0.2);
715 -webkit-user-select: none; 717 -webkit-user-select: none;
@@ -732,7 +734,7 @@ input[type=submit]:active, @@ -732,7 +734,7 @@ input[type=submit]:active,
732 background-image: -o-linear-gradient(top, #dfdfdf, #eee); 734 background-image: -o-linear-gradient(top, #dfdfdf, #eee);
733 background-image: linear-gradient(top, #dfdfdf, #eee); 735 background-image: linear-gradient(top, #dfdfdf, #eee);
734 text-shadow: #eee 0px 1px 0px; 736 text-shadow: #eee 0px 1px 0px;
735 - -moz-box-shadow: inset 0 1px 4px rgba(0, 0, 0, 0.3); 737 + /*-moz-box-shadow: inset 0 1px 4px rgba(0, 0, 0, 0.3);*/
736 -webkit-box-shadow: inset 0 1px 4px rgba(0, 0, 0, 0.3); 738 -webkit-box-shadow: inset 0 1px 4px rgba(0, 0, 0, 0.3);
737 box-shadow: inset 0 1px 4px rgba(0, 0, 0, 0.3); 739 box-shadow: inset 0 1px 4px rgba(0, 0, 0, 0.3);
738 border-color: #aaa; 740 border-color: #aaa;
@@ -751,7 +753,7 @@ pre { @@ -751,7 +753,7 @@ pre {
751 color: #000; 753 color: #000;
752 background: #f0f0f0; 754 background: #f0f0f0;
753 padding: 15px; 755 padding: 15px;
754 - -moz-box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3); 756 + /*-moz-box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);*/
755 -webkit-box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3); 757 -webkit-box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
756 box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3); 758 box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
757 } 759 }
@@ -764,14 +766,14 @@ pre { @@ -764,14 +766,14 @@ pre {
764 top: 5px; 766 top: 5px;
765 right: 5px; 767 right: 5px;
766 background: rgba(255, 255, 255, 0.3); 768 background: rgba(255, 255, 255, 0.3);
767 - -moz-border-radius: 4px; 769 + /*-moz-border-radius: 4px;*/
768 -webkit-border-radius: 4px; 770 -webkit-border-radius: 4px;
769 border-radius: 4px; 771 border-radius: 4px;
770 padding: 5px 6px; 772 padding: 5px 6px;
771 color: #000; 773 color: #000;
772 display: block; 774 display: block;
773 float: left; 775 float: left;
774 - -moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.25), 0 1px 0 rgba(255, 255, 255, 0.5); 776 + /*-moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.25), 0 1px 0 rgba(255, 255, 255, 0.5);*/
775 -webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.25), 0 1px 0 rgba(255, 255, 255, 0.5); 777 -webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.25), 0 1px 0 rgba(255, 255, 255, 0.5);
776 box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.25), 0 1px 0 rgba(255, 255, 255, 0.5); 778 box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.25), 0 1px 0 rgba(255, 255, 255, 0.5);
777 text-shadow: 0 1px 1px rgba(255, 255, 255, 0.8); 779 text-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);
@@ -797,7 +799,7 @@ pre { @@ -797,7 +799,7 @@ pre {
797 line-height: 140%; 799 line-height: 140%;
798 overflow: auto; 800 overflow: auto;
799 position: relative; 801 position: relative;
800 - -moz-border-radius: 4px; 802 + /*-moz-border-radius: 4px;*/
801 -webkit-border-radius: 4px; 803 -webkit-border-radius: 4px;
802 border-radius: 4px; 804 border-radius: 4px;
803 } 805 }
@@ -805,7 +807,7 @@ pre { @@ -805,7 +807,7 @@ pre {
805 text-shadow: none; 807 text-shadow: none;
806 background: rgba(255, 255, 255, 0.7); 808 background: rgba(255, 255, 255, 0.7);
807 padding: 5px; 809 padding: 5px;
808 - -moz-border-radius: 10px; 810 + /*-moz-border-radius: 10px;*/
809 -webkit-border-radius: 10px; 811 -webkit-border-radius: 10px;
810 border-radius: 10px; 812 border-radius: 10px;
811 margin: 0px 4px 10px 2px; 813 margin: 0px 4px 10px 2px;
@@ -814,7 +816,7 @@ pre { @@ -814,7 +816,7 @@ pre {
814 line-height: 14px; 816 line-height: 14px;
815 display: inline-block; 817 display: inline-block;
816 text-decoration: none; 818 text-decoration: none;
817 - -moz-box-shadow: inset 0px 1px 0 rgba(0, 0, 0, 0.3); 819 + /*-moz-box-shadow: inset 0px 1px 0 rgba(0, 0, 0, 0.3);*/
818 -webkit-box-shadow: inset 0px 1px 0 rgba(0, 0, 0, 0.3); 820 -webkit-box-shadow: inset 0px 1px 0 rgba(0, 0, 0, 0.3);
819 box-shadow: inset 0px 1px 0 rgba(0, 0, 0, 0.3); 821 box-shadow: inset 0px 1px 0 rgba(0, 0, 0, 0.3);
820 } 822 }
@@ -838,7 +840,7 @@ pre { @@ -838,7 +840,7 @@ pre {
838 margin: 0 0 4px 0; 840 margin: 0 0 4px 0;
839 font-family: monospace; 841 font-family: monospace;
840 border: 1px solid #bbb; 842 border: 1px solid #bbb;
841 - -moz-border-radius: 4px; 843 + /*-moz-border-radius: 4px;*/
842 -wekbkit-border-radius: 4px; 844 -wekbkit-border-radius: 4px;
843 border-radius: 4px; 845 border-radius: 4px;
844 background: #dcdcdc; 846 background: #dcdcdc;
webroot/css/responsive.css
@@ -12,7 +12,7 @@ @@ -12,7 +12,7 @@
12 12
13 #footer { 13 #footer {
14 clear: both; 14 clear: both;
15 - padding: auto; 15 + /*padding: auto;*/
16 text-align: left; 16 text-align: left;
17 border-top: 1px solid #CCC; 17 border-top: 1px solid #CCC;
18 margin-right: 0px; 18 margin-right: 0px;
webroot/css/smoothness.css
@@ -337,13 +337,13 @@ @@ -337,13 +337,13 @@
337 */ 337 */
338 /* IE/Win - Fix animation bug - #4615 */ 338 /* IE/Win - Fix animation bug - #4615 */
339 .ui-accordion { width: 100%; } 339 .ui-accordion { width: 100%; }
340 -.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; } 340 +.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; /*zoom: 1;*/ }
341 .ui-accordion .ui-accordion-li-fix { display: inline; } 341 .ui-accordion .ui-accordion-li-fix { display: inline; }
342 .ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; } 342 .ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; }
343 .ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em .7em; } 343 .ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em .7em; }
344 .ui-accordion-icons .ui-accordion-header a { padding-left: 2.2em; } 344 .ui-accordion-icons .ui-accordion-header a { padding-left: 2.2em; }
345 .ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; } 345 .ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; }
346 -.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; zoom: 1; } 346 +.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; /*zoom: 1;*/ }
347 .ui-accordion .ui-accordion-content-active { display: block; } 347 .ui-accordion .ui-accordion-content-active { display: block; }
348 /* 348 /*
349 * jQuery UI Autocomplete 1.8.12 349 * jQuery UI Autocomplete 1.8.12
@@ -381,7 +381,7 @@ @@ -381,7 +381,7 @@
381 .ui-menu .ui-menu-item { 381 .ui-menu .ui-menu-item {
382 margin:0; 382 margin:0;
383 padding: 0; 383 padding: 0;
384 - zoom: 1; 384 + /*zoom: 1;*/
385 float: left; 385 float: left;
386 clear: left; 386 clear: left;
387 width: 100%; 387 width: 100%;
@@ -391,7 +391,7 @@ @@ -391,7 +391,7 @@
391 display:block; 391 display:block;
392 padding:.2em .4em; 392 padding:.2em .4em;
393 line-height:1.5; 393 line-height:1.5;
394 - zoom:1; 394 + /*zoom:1;*/
395 } 395 }
396 .ui-menu .ui-menu-item a.ui-state-hover, 396 .ui-menu .ui-menu-item a.ui-state-hover,
397 .ui-menu .ui-menu-item a.ui-state-active { 397 .ui-menu .ui-menu-item a.ui-state-active {
@@ -407,7 +407,7 @@ @@ -407,7 +407,7 @@
407 * 407 *
408 * http://docs.jquery.com/UI/Button#theming 408 * http://docs.jquery.com/UI/Button#theming
409 */ 409 */
410 -.ui-button { display: inline-block; position: relative; padding: 0; margin-right: .1em; text-decoration: none !important; cursor: pointer; text-align: center; zoom: 1; overflow: visible; } /* the overflow property removes extra width in IE */ 410 +.ui-button { display: inline-block; position: relative; padding: 0; margin-right: .1em; text-decoration: none !important; cursor: pointer; text-align: center; /*zoom: 1;*/ overflow: visible; } /* the overflow property removes extra width in IE */
411 .ui-button-icon-only { width: 2.2em; } /* to make room for the icon, a width needs to be set here */ 411 .ui-button-icon-only { width: 2.2em; } /* to make room for the icon, a width needs to be set here */
412 button.ui-button-icon-only { width: 2.4em; } /* button elements seem to need a little more width */ 412 button.ui-button-icon-only { width: 2.4em; } /* button elements seem to need a little more width */
413 .ui-button-icons-only { width: 3.4em; } 413 .ui-button-icons-only { width: 3.4em; }
@@ -451,7 +451,7 @@ button.ui-button::-moz-focus-inner { border: 0; padding: 0; } /* reset extra pad @@ -451,7 +451,7 @@ button.ui-button::-moz-focus-inner { border: 0; padding: 0; } /* reset extra pad
451 .ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; } 451 .ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; }
452 .ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; } 452 .ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; }
453 .ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; } 453 .ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; }
454 -.ui-dialog .ui-dialog-content { position: relative; border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; } 454 +.ui-dialog .ui-dialog-content { position: relative; border: 0; padding: .5em 1em; background: none; overflow: auto; /*zoom: 1;*/ }
455 .ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; } 455 .ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; }
456 .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { float: right; } 456 .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { float: right; }
457 .ui-dialog .ui-dialog-buttonpane button { margin: .5em .4em .5em 0; cursor: pointer; } 457 .ui-dialog .ui-dialog-buttonpane button { margin: .5em .4em .5em 0; cursor: pointer; }
@@ -489,7 +489,7 @@ button.ui-button::-moz-focus-inner { border: 0; padding: 0; } /* reset extra pad @@ -489,7 +489,7 @@ button.ui-button::-moz-focus-inner { border: 0; padding: 0; } /* reset extra pad
489 * 489 *
490 * http://docs.jquery.com/UI/Tabs#theming 490 * http://docs.jquery.com/UI/Tabs#theming
491 */ 491 */
492 -.ui-tabs { position: relative; padding: .2em; zoom: 1; } /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */ 492 +.ui-tabs { position: relative; padding: .2em; /*zoom: 1;*/ } /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
493 .ui-tabs .ui-tabs-nav { margin: 0; padding: .2em .2em 0; } 493 .ui-tabs .ui-tabs-nav { margin: 0; padding: .2em .2em 0; }
494 .ui-tabs .ui-tabs-nav li { list-style: none; float: left; position: relative; top: 1px; margin: 0 .2em 1px 0; border-bottom: 0 !important; padding: 0; white-space: nowrap; } 494 .ui-tabs .ui-tabs-nav li { list-style: none; float: left; position: relative; top: 1px; margin: 0 .2em 1px 0; border-bottom: 0 !important; padding: 0; white-space: nowrap; }
495 .ui-tabs .ui-tabs-nav li a { float: left; padding: .5em 1em; text-decoration: none; } 495 .ui-tabs .ui-tabs-nav li a { float: left; padding: .5em 1em; text-decoration: none; }