Commit 727b4dd08f270214b2d77e4c22474d0c88bbf620
Exists in
master
and in
3 other branches
Merge branch 'master' into dev
Conflicts: src/Controller/AppController.php src/Controller/DocumentsController.php src/Model/Table/DocumentsTable.php src/Template/Documents/edit.ctp src/Template/Layout/Formules/add.ctp src/Template/Layout/Formules/edit.ctp src/Template/Layout/Formules/index.ctp src/Template/Layout/Formules/view.ctp src/Template/Materiels/index.ctp src/Template/Pages/tools_menu_sm.ctp src/Template/Suivis/add.ctp src/Template/Suivis/view.ctp
Showing
8 changed files
with
64 additions
and
34 deletions
Show diff stats
README-LABINVENT.md
... | ... | @@ -47,20 +47,9 @@ Logiciel testé et validé sur les configurations suivantes : |
47 | 47 | |
48 | 48 | VERSION ACTUELLE |
49 | 49 | |
50 | -Date: 23/01/2018 | |
51 | -Version: 2.8.0.7 | |
52 | - Nombreux bugfixes : | |
53 | - - phase installation, structure BD, ... | |
54 | - - Export des matériels : | |
55 | - - Num cde : vide !!! | |
56 | - - autres champs vides : Fournisseur - Etop - num serie - Nom utilisateur | |
57 | - - Fiche PDF du matériel: plusieurs champs manquants | |
58 | - - Bug affichage résultat recherche (contenu ne correspond pas aux colonnes, et certains contenus sont absents!!) | |
59 | - - Listes export : supprimer champ id | |
60 | - - Bug étiquette : organisme ne s'affiche plus | |
61 | - - Bug doc admission | |
62 | - | |
63 | -ATTENTION : Mise à jour de la base de données requise (cf database/update) | |
50 | +Date: 02/02/2018 | |
51 | +Version: 2.8.1.0 | |
52 | + Modif format étiquette | |
64 | 53 | |
65 | 54 | Version majeure en cours (2.8): https://projects.irap.omp.eu/versions/162 |
66 | 55 | ... | ... |
src/Controller/AppController.php
... | ... | @@ -635,6 +635,8 @@ class DocumentsController extends AppController |
635 | 635 | $this->set(compact('suivi', 'unite', 'fiche', 'symbole', 'mesures')); |
636 | 636 | $this->set('fpdf', new FPDF('P', 'mm', 'A4')); |
637 | 637 | } |
638 | + | |
639 | + | |
638 | 640 | |
639 | 641 | /* |
640 | 642 | * Envoi de mail - cette fonction sera appelée si l'on clique sur le bouton envelloppe d'un document sur la page vue d'un matériel |
... | ... | @@ -682,6 +684,5 @@ class DocumentsController extends AppController |
682 | 684 | $document->suivi_id |
683 | 685 | ]); |
684 | 686 | } |
685 | - | |
686 | 687 | } |
687 | 688 | } | ... | ... |
src/Model/Table/DocumentsTable.php
... | ... | @@ -71,12 +71,11 @@ class DocumentsTable extends AppTable |
71 | 71 | |
72 | 72 | $validator->allowEmpty('suivi_id'); |
73 | 73 | |
74 | - //le nom du doc ne doit pas contenir de termes non alphanumérique, cela crée des problèmes pour les dl | |
75 | 74 | $validator->add('nom', 'alphaNumeric', [ |
76 | - 'rule' => 'alphaNumeric', | |
77 | - 'message' => __('Le nom du document ne doit contenir que des chiffres et des lettres.'), | |
78 | - ]); | |
79 | - | |
75 | + 'rule' => 'alphaNumeric', | |
76 | + 'message' => __('Le nom du document ne doit contenir que des chiffres et des lettres.'), | |
77 | + ]); | |
78 | + | |
80 | 79 | return $validator; |
81 | 80 | } |
82 | 81 | |
... | ... | @@ -204,10 +203,8 @@ class DocumentsTable extends AppTable |
204 | 203 | } |
205 | 204 | $nom=$id."_".$entity->get('nom')."_".$entity->get('id'). '.' . $extension; |
206 | 205 | if ($entity->get('photo')) { |
207 | - //move_uploaded_file($file['tmp_name'], 'img' . DS . 'photos' . DS . $entity->get('id') . '.' . $extension); | |
208 | 206 | move_uploaded_file($file['tmp_name'], 'img' . DS . 'photos' . DS . $nom ); |
209 | 207 | } else { |
210 | - //move_uploaded_file($file['tmp_name'], 'files' . DS . $entity->get('id') . '.' . $extension); | |
211 | 208 | move_uploaded_file($file['tmp_name'], 'files' . DS . $nom ); |
212 | 209 | } |
213 | 210 | } | ... | ... |
src/Template/Documents/edit.ctp
... | ... | @@ -25,6 +25,7 @@ |
25 | 25 | } |
26 | 26 | |
27 | 27 | //On met le nom du doc en read only vu qu'il apparait dans le nom du fichier sur le serveur |
28 | + | |
28 | 29 | //et une opération pour remodifier ces fichiers peut être lourd en complexité |
29 | 30 | echo $this->Form->input('nom', ['readonly' => true]); |
30 | 31 | ... | ... |
src/Template/Materiels/index.ctp
... | ... | @@ -200,8 +200,6 @@ if (in_array($materiel->status, [ |
200 | 200 | $materiel ->nom_responsable |
201 | 201 | ]))) ||($role == 'Responsable' && ((isset($priviledgedUser->groupes_metier_id) && $priviledgedUser->groupes_metier_id != $idGmNa && $materiel->groupes_metier_id == $priviledgedUser->groupes_metier_id) || (isset($priviledgedUser->groupe_thematique_id) && $priviledgedUser->groupe_thematique_id != $idGtNa && $materiel->groupes_thematique_id == $priviledgedUser->groupe_thematique_id)))) { |
202 | 202 | ?> |
203 | - | |
204 | - | |
205 | 203 | <?= $this->Html->link(__('<i class="icon-pencil"></i>'), ['action' => 'edit', $materiel->id], ['title' => 'Editer', 'style' => 'margin: 0 2px', 'escape' => false ]) ?> |
206 | 204 | <?php } endif; ?> |
207 | 205 | ... | ... |
src/Template/Suivis/add.ctp
... | ... | @@ -131,6 +131,8 @@ echo $this->element('menu_form', [ |
131 | 131 | document.getElementById('typedemesure').innerHTML = ""; |
132 | 132 | $('#listes').hide(); |
133 | 133 | } |
134 | + //gère l'affichage dynamique après choix du type de suivi | |
135 | + | |
134 | 136 | if( domaineId == "Panne"){ |
135 | 137 | document.getElementById('frequence').innerHTML = ""; |
136 | 138 | $("#frequence").hide(); | ... | ... |
webroot/js/Verifications_dates_materiels.js
... | ... | @@ -22,20 +22,46 @@ $(document).ready(function () { |
22 | 22 | * Event calcul date fin de garantie |
23 | 23 | */ |
24 | 24 | /* On formatte COMME IL FAUT les dates des formulaires */ |
25 | + /* EP deactivated, works but no more necessary ?*/ | |
25 | 26 | $('.datepicker').each(function(){ |
26 | 27 | this.value = this.value.replace(/\//g, "-"); |
27 | 28 | this.value = twoToFour(this.value); |
28 | 29 | }); |
29 | - | |
30 | 30 | |
31 | 31 | /* Puis si nécessaire on update la date de fin de gurantie au chargement de la page */ |
32 | - if ($("#date-fin-garantie")[0].value != "") dateUpdate(); | |
32 | + if ($("#date-fin-garantie")[0].value != "") date_fin_garantie_update(); | |
33 | 33 | |
34 | 34 | /* Et enfin les events purs */ |
35 | - $("#date-reception").change( function(event) { dateUpdate(); }); | |
36 | - $("#duree-garantie").bind("change", function(event) { dateUpdate(); }); | |
37 | - $("#unite-duree-garantie").bind("change", function(event) { dateUpdate(); }); | |
38 | - $("#date-fin-garantie").bind("change", function(event) { $("#duree-garantie")[0].value = "" }); | |
35 | + /* | |
36 | + $("#date-reception").change( | |
37 | + function(event) { date_fin_garantie_update(); } | |
38 | + ); | |
39 | + */ | |
40 | + $("#date-reception").change( | |
41 | + function(event) { | |
42 | + if(!checkDate(this.value)) { | |
43 | + alert("Les dates doivent être de la forme dd-mm-YYYY"); | |
44 | + event.preventDefault(); | |
45 | + } | |
46 | + else { | |
47 | + date_fin_garantie_update(); | |
48 | + } | |
49 | + } | |
50 | + ); | |
51 | + $("#duree-garantie").bind("change", function(event) { date_fin_garantie_update(); }); | |
52 | + $("#unite-duree-garantie").bind("change", function(event) { date_fin_garantie_update(); }); | |
53 | + /*$("#date-fin-garantie").bind("change", function(event) { $("#duree-garantie")[0].value = "" });*/ | |
54 | + $("#date-fin-garantie").change( | |
55 | + function(event) { | |
56 | + if(!checkDate(this.value)) { | |
57 | + alert("Les dates doivent être de la forme dd-mm-YYYY"); | |
58 | + event.preventDefault(); | |
59 | + } | |
60 | + else { | |
61 | + $("#duree-garantie")[0].value = ""; | |
62 | + } | |
63 | + } | |
64 | + ); | |
39 | 65 | |
40 | 66 | /** |
41 | 67 | * Event - à la validation, on vérifie les dates |
... | ... | @@ -49,6 +75,7 @@ $(document).ready(function () { |
49 | 75 | // event.preventDefault(); |
50 | 76 | // } |
51 | 77 | |
78 | + /* EP deactivated, works but no more necessary | |
52 | 79 | $bool = false; |
53 | 80 | $('.datepicker').each(function(){ |
54 | 81 | if(this.value != "" && $bool == false) { |
... | ... | @@ -60,17 +87,20 @@ $(document).ready(function () { |
60 | 87 | } |
61 | 88 | } |
62 | 89 | }); |
90 | + */ | |
63 | 91 | |
64 | 92 | d1 = toDate($("#date-acquisition")[0].value); /* Date de la commande */ |
65 | 93 | d2 = toDate($("#date-reception")[0].value); /* Date de réception */ |
66 | 94 | d3 = toDate($("#date-fin-garantie")[0].value); /* Date fin de garantie */ |
67 | 95 | |
96 | + /* EP deactivated, works but no more necessary | |
68 | 97 | if($("#date-reception")[0].value != undefined){ |
69 | 98 | if(d1 > d2) { |
70 | 99 | alert("Les dates ne correspondent pas, la date de réception doit être supérieure à la date de commande."); |
71 | 100 | event.preventDefault(); |
72 | 101 | } |
73 | 102 | } |
103 | + */ | |
74 | 104 | |
75 | 105 | if($("#date-reception")[0].value != undefined){ |
76 | 106 | if(d2 > d3) { |
... | ... | @@ -79,18 +109,19 @@ $(document).ready(function () { |
79 | 109 | } |
80 | 110 | } |
81 | 111 | |
82 | - }); | |
112 | + }); /* On SUBMIT */ | |
83 | 113 | }); |
84 | 114 | |
85 | 115 | /** |
86 | 116 | * Fonction qui vérifie que la date en parametre soit bien au format dd-mm-YYYY ou d-m-YYYY |
87 | 117 | */ |
88 | 118 | function checkDate(str) { |
89 | - return str.match(/^(\d{1,2})-(\d{1,2})-(\d{4})$/); | |
119 | + //return str.match(/^(\d{1,2})-(\d{1,2})-(\d{4})$/); | |
120 | + return str.match(/^(\d{2})-(\d{2})-(\d{4})$/); | |
90 | 121 | } |
91 | 122 | |
92 | 123 | /** |
93 | - * Fonction qui passe l'années de deux à quatres chiffres | |
124 | + * Fonction qui passe l'année de deux à quatres chiffres | |
94 | 125 | */ |
95 | 126 | function twoToFour(str) { |
96 | 127 | if (str.match(/^(\d{1,2})-(\d{1,2})-(\d{2})$/)) { |
... | ... | @@ -104,8 +135,18 @@ function twoToFour(str) { |
104 | 135 | /** |
105 | 136 | * Fonction de mise à jour de la date de fin de guarantie |
106 | 137 | */ |
107 | -function dateUpdate() { | |
138 | +function date_fin_garantie_update() { | |
108 | 139 | if ($("#date-reception").val() != "" && $("#duree-garantie").val() != "") { |
140 | + /* EP added this : | |
141 | + $('.datepicker').each(function(){ | |
142 | + this.value = this.value.replace(/\//g, "-"); | |
143 | + this.value = twoToFour(this.value); | |
144 | + }); | |
145 | + */ | |
146 | + $("#date-reception").each(function(){ | |
147 | + this.value = twoToFour(this.value); | |
148 | + }); | |
149 | + | |
109 | 150 | var url = document.URL; |
110 | 151 | var reg = new RegExp("(materiels).*$", "g"); |
111 | 152 | var dateUrl = url.replace(reg, "Materiels/getDateGarantie/"); | ... | ... |