Commit 2e1d0b2f456eca73ddd6484bb9e15554becfe6ae
1 parent
adae3474
Exists in
master
and in
1 other branch
Ajout "Voir matériels à commander" (configurable) sur accueil Gestion
et bugfixes : - Bugfix : cocher les boutons "A valider", et "En commande" quand activés - Bugfix : sur la page accueil des gestionnaires, correction des liens vers les matos => v5.1.1-3.7.9
Showing
10 changed files
with
151 additions
and
113 deletions
Show diff stats
CHANGELOG
... | ... | @@ -334,15 +334,26 @@ Commencer à implémenter le nouveau workflow v5 : |
334 | 334 | |
335 | 335 | ======= TODO ======= |
336 | 336 | |
337 | + bugfix droits edit/delete dans Element/buttons_edit_del.ctp | |
337 | 338 | |
338 | - Relance auto lors de suivis périodiques | |
339 | + bugfix droits edit/delete dans liste des documents attachés | |
339 | 340 | |
341 | + Pouvoir modifier le champ "n° inventaire Tutelle" sur un matos validé | |
342 | + (Service fait CNRS ----> je récupère le n° inventaire "Tutelle" sur GESLAB (SIFAC ?) et je complète la fiche INVENTIRAP | |
343 | + | |
340 | 344 | Envoi mail à l'utilisateur du matériel lors de livraison |
345 | + | |
346 | + Définir (dans le fichier de conf) la liste des infos qui ne doivent pas pouvoir être modifiées une fois le matériel : | |
347 | + - en commande (lot1) | |
348 | + - validé (lot2) | |
349 | + | |
350 | + Détail lieu stockage demandé seulement si > 10K€ | |
341 | 351 | |
342 | 352 | Procédures pour les utilisateurs et les gestionnaires désormais configurable via le fichier de conf |
343 | 353 | |
344 | 354 | TESTS !!!! |
345 | 355 | |
356 | + Relance auto lors de suivis périodiques | |
346 | 357 | |
347 | 358 | |
348 | 359 | |
... | ... | @@ -350,6 +361,11 @@ Commencer à implémenter le nouveau workflow v5 : |
350 | 361 | |
351 | 362 | ======= CHANGES ======= |
352 | 363 | |
364 | +------- | |
365 | +08/09/2021 v5.1.1-3.7.9 | |
366 | + - (e) Ajouter lien "Voir les matériels à commander" (configurable) sur page accueil Gestionnaires (le mettre avant "voir les matos à valider") | |
367 | + - (b) Bugfix : cocher les boutons "A valider", et "En commande" quand activés | |
368 | + - (b) Bugfix : sur la page accueil des gestionnaires, correction des liens vers les matos | |
353 | 369 | |
354 | 370 | ------- |
355 | 371 | 08/09/2021 v5.1.0-3.7.9 |
... | ... | @@ -358,7 +374,7 @@ Commencer à implémenter le nouveau workflow v5 : |
358 | 374 | |
359 | 375 | ------- |
360 | 376 | 08/09/2021 v5.0.2-3.7.9 |
361 | - - (b) Bugfix lien vers doc utilisateurs | |
377 | + - (b) Bugfix : lien vers doc utilisateurs | |
362 | 378 | |
363 | 379 | ------- |
364 | 380 | 07/09/2021 v5.0.1-3.7.9 | ... | ... |
README.md
config/app_labinvent_mandatory_fields.default.yml
... | ... | @@ -100,19 +100,28 @@ MANDATORY_FIELDS_LOT1: |
100 | 100 | |
101 | 101 | #'fournisseur' |
102 | 102 | |
103 | - # Devis joint : c'est un champ virtuel, il n'existe pas physiquement (sauf dans la table Documents) | |
104 | - DEVIS: 'Devis' | |
105 | - | |
106 | 103 | # Utilisé par la Gestion pour remplir le champ eotp |
107 | 104 | budgets: 'Budgets' |
108 | 105 | |
109 | 106 | # INFOS ADMINISTRATIVES |
110 | 107 | # - EOTP : obligatoire seulement dans LOT2 |
111 | 108 | #'eotp' => 'Entité(s) dépensière(s) (budget(s))', // ligne budgétaire (sur quel(s) budget(s)) ou entité(s) dépensière(s) |
112 | - | |
109 | + | |
110 | + | |
111 | + # CHAMPS VIRTUELS | |
112 | + # - Devis joint : c'est un champ virtuel, il n'existe pas physiquement (sauf dans la table Documents) | |
113 | + DEVIS: 'Devis' | |
114 | + | |
113 | 115 | # ******* END OF MANDATORY_FIELDS_LOT1 ******** |
114 | 116 | |
115 | 117 | |
118 | +# Liste des champs qui ne peuvent plus être modifiés après la demande d'achat (commande) | |
119 | +UNEDITABLE_FIELDS_LOT1: [] | |
120 | + | |
121 | + | |
122 | + | |
123 | + | |
124 | + | |
116 | 125 | |
117 | 126 | |
118 | 127 | # ************************************* |
... | ... | @@ -148,11 +157,53 @@ MANDATORY_FIELDS_LOT2: |
148 | 157 | eotp: 'Entité(s) dépensière(s) (budget(s))' |
149 | 158 | |
150 | 159 | numero_commande: 'Num. BC' |
151 | - numero_inventaire_organisme: "N° inventaire de l'organisme" | |
160 | + | |
161 | + # PROBLEME : | |
162 | + # On ne peut pas exiger ce numéro au moment de la livraison | |
163 | + # car le gestionnaire n'a cette info que lorsque "Service fait CNRS" (il récupère alors le n° inventaire "Tutelle" sur GESLAB) | |
164 | + #numero_inventaire_organisme: "N° inventaire de l'organisme" | |
152 | 165 | |
153 | 166 | # ******* END OF $MANDATORY_FIELDS_LOT2 ******** |
154 | 167 | |
155 | 168 | |
169 | +# Liste des champs qui ne peuvent plus être modifiés après la validation (livraison) | |
170 | +#UNEDITABLE_FIELDS_LOT2: [] | |
171 | +UNEDITABLE_FIELDS_LOT2: | |
172 | + | |
173 | + # Champs généraux : | |
174 | + | |
175 | + sur_categorie_id: | |
176 | + | |
177 | + categorie_id: | |
178 | + | |
179 | + materiel_administratif: | |
180 | + | |
181 | + materiel_technique: | |
182 | + | |
183 | + site_id: | |
184 | + | |
185 | + date_acquisition: | |
186 | + | |
187 | + date_reception: | |
188 | + | |
189 | + organisme_id: | |
190 | + | |
191 | + prix_ht: | |
192 | + | |
193 | + gestionnaire_id: | |
194 | + | |
195 | + # Champs administratifs : | |
196 | + | |
197 | + eotp: | |
198 | + | |
199 | + numero_commande: | |
200 | + | |
201 | + numero_inventaire_organisme: | |
202 | + | |
203 | + numero_inventaire_old: | |
204 | + | |
205 | + | |
206 | + | |
156 | 207 | |
157 | 208 | |
158 | 209 | # Astuce utilisable : | ... | ... |
src/Controller/AppController.php
... | ... | @@ -46,6 +46,9 @@ use Cake\Utility\Inflector; |
46 | 46 | class AppController extends Controller |
47 | 47 | { |
48 | 48 | |
49 | + // Bouton "Commander" disponible ? | |
50 | + private static $HAS_ORDER_BUTTON = null; | |
51 | + | |
49 | 52 | // Si DEBUG, affiche plus d'infos |
50 | 53 | protected $DEBUG=false; |
51 | 54 | //protected $DEBUG=true; |
... | ... | @@ -356,6 +359,19 @@ class AppController extends Controller |
356 | 359 | 'delete' => ['Suppression','supprimé'], |
357 | 360 | ]; |
358 | 361 | |
362 | + | |
363 | + // Les matos peuvent-ils être commandés (bouton commander) ? | |
364 | + // vrai par défaut (sauf si explicité dans la config) | |
365 | + public static function hasOrderButton() { | |
366 | + // OPTIM : si déjà lu, on relit pas | |
367 | + if (! is_null(self::$HAS_ORDER_BUTTON)) return self::$HAS_ORDER_BUTTON; | |
368 | + // Pas encore lu, on lit | |
369 | + $has_order_button = Configure::read('HAS_ORDER_BUTTON'); | |
370 | + if (is_null($has_order_button)) $has_order_button = true; | |
371 | + self::$HAS_ORDER_BUTTON = $has_order_button; | |
372 | + return $has_order_button; | |
373 | + } | |
374 | + | |
359 | 375 | protected function setActionsNounAndPastVerb(array $actionsNounAndPastVerb) { |
360 | 376 | /* Non, finalement on fait ça dans le get() |
361 | 377 | // Si genre féminin, on féminise tous les verbes en ajoutant 'e' à la fin (ajouté-e, modifié-e, ...) | ... | ... |
src/Controller/DocumentsController.php
src/Controller/MaterielsController.php
... | ... | @@ -28,10 +28,6 @@ use Cake\Core\Configure; |
28 | 28 | */ |
29 | 29 | class MaterielsController extends AppController { |
30 | 30 | |
31 | - // Bouton "Commander" disponible ? | |
32 | - private static $HAS_ORDER_BUTTON = null; | |
33 | - | |
34 | - | |
35 | 31 | // - ATTRIBUTS CONSTANTES |
36 | 32 | |
37 | 33 | /* |
... | ... | @@ -375,7 +371,8 @@ class MaterielsController extends AppController { |
375 | 371 | public function getNameFieldLabel() { |
376 | 372 | return 'designation'; |
377 | 373 | } |
378 | - | |
374 | + | |
375 | + /* moved to AppController | |
379 | 376 | // Les matos peuvent-ils être commandés (bouton commander) ? |
380 | 377 | // vrai par défaut (sauf si explicité dans la config) |
381 | 378 | public static function hasOrderButton() { |
... | ... | @@ -387,6 +384,7 @@ class MaterielsController extends AppController { |
387 | 384 | self::$HAS_ORDER_BUTTON = $has_order_button; |
388 | 385 | return $has_order_button; |
389 | 386 | } |
387 | + */ | |
390 | 388 | |
391 | 389 | |
392 | 390 | /* |
... | ... | @@ -3220,7 +3218,7 @@ class MaterielsController extends AppController { |
3220 | 3218 | */ |
3221 | 3219 | public function statusValidated($id = null, $from = 'index') |
3222 | 3220 | { |
3223 | - $this->_statusSetTo('VALIDATED', 'Le matériel a bien été validé', $id, $from); | |
3221 | + $this->_statusSetTo('VALIDATED', "Le matériel a bien été validé (n'oubliez pas de saisir le n° inventaire 'tutelle' une fois le 'service fait')", $id, $from); | |
3224 | 3222 | /* |
3225 | 3223 | * (EP) moved to statusSetTo() |
3226 | 3224 | * if (in_array($_SESSION['Auth']['User']['sn'][0], TableRegistry::get('Users') | ... | ... |
src/Controller/PagesController.php
... | ... | @@ -275,6 +275,11 @@ class PagesController extends AppController |
275 | 275 | // Finalement, on affiche la $page demandée (avec render()) |
276 | 276 | $this->set('page', $this->page); |
277 | 277 | $this->set(compact('subpage')); |
278 | + | |
279 | + // - Page d'ACCUEIL | |
280 | + if ($this->page=='home') { | |
281 | + $this->set('HAS_ORDER_BUTTON',self::hasOrderButton()); | |
282 | + } | |
278 | 283 | |
279 | 284 | // - Page des LOGS |
280 | 285 | // /pages/logs?level=info | ... | ... |
src/Template/Materiels/add_edit.ctp
... | ... | @@ -190,19 +190,20 @@ $administrationData = array( |
190 | 190 | $myReadonlyFields = array(); |
191 | 191 | if ($IS_VALIDATED) |
192 | 192 | // can only modify some fields |
193 | - $myReadonlyFields = array_merge(array( | |
194 | - 'sur_categorie_id', | |
195 | - 'categorie_id', | |
196 | - 'materiel_administratif', | |
197 | - 'materiel_technique', | |
198 | - 'site_id', | |
199 | - 'date_acquisition', | |
200 | - 'date_reception', | |
201 | - 'organisme_id', | |
202 | - 'prix_ht', | |
203 | - 'gestionnaire_id' | |
204 | - ), | |
205 | - $administrationData | |
193 | + $myReadonlyFields = array_merge( | |
194 | + array( | |
195 | + 'sur_categorie_id', | |
196 | + 'categorie_id', | |
197 | + 'materiel_administratif', | |
198 | + 'materiel_technique', | |
199 | + 'site_id', | |
200 | + 'date_acquisition', | |
201 | + 'date_reception', | |
202 | + 'organisme_id', | |
203 | + 'prix_ht', | |
204 | + 'gestionnaire_id' | |
205 | + ), | |
206 | + $administrationData | |
206 | 207 | ); |
207 | 208 | else if ($IS_ARCHIVED_OR_TOBE) $myReadonlyFields = array('*','status'); |
208 | 209 | if ($IS_VALIDATED && $materiel->sous_categorie_id) |
... | ... | @@ -216,6 +217,7 @@ if ($IS_VALIDATED && $materiel->numero_serie) |
216 | 217 | $myReadonlyFields |
217 | 218 | ); |
218 | 219 | } // EDIT only |
220 | +debug($myReadonlyFields); | |
219 | 221 | |
220 | 222 | |
221 | 223 | // Création des 2 boutons submit du formulaire (Enregistrer et Cancel) |
... | ... | @@ -432,7 +434,7 @@ if (isset($cpMateriel)) { |
432 | 434 | // ADD only |
433 | 435 | //////'default' => $materiel->sur_categorie_id, |
434 | 436 | // EDIT only |
435 | - 'readonly' => $IS_ADD ? false : $isReadonlyField('sur_categorie_id', $myReadonlyFields), | |
437 | + //'readonly' => $IS_ADD ? false : $isReadonlyField('sur_categorie_id', $myReadonlyFields), | |
436 | 438 | 'disabled' => $IS_ADD ? false : $isReadonlyField('sur_categorie_id', $myReadonlyFields) |
437 | 439 | ]); |
438 | 440 | // - CATEGORIE |
... | ... | @@ -983,7 +985,7 @@ if (isset($cpMateriel)) { |
983 | 985 | */ |
984 | 986 | |
985 | 987 | if ($IS_EDIT || ($IS_ADD && $USER_IS_ADMIN_OR_MORE)) { |
986 | - $DISABLED = $IS_ADD ? false : !$USER_IS_ADMIN_OR_MORE; | |
988 | + //$DISABLED = $IS_ADD ? false : !$USER_IS_ADMIN_OR_MORE; | |
987 | 989 | echo '<div style="border-top: 1px solid #CCC; border-bottom: 1px solid #CCC; margin-bottom: 0; background: #EEE;"><span style="font-size: 9px; color: red;">Partie administrative</span>'; |
988 | 990 | |
989 | 991 | //(EDIT only) |
... | ... | @@ -1004,20 +1006,24 @@ if (isset($cpMateriel)) { |
1004 | 1006 | * 'Super Administrateur' |
1005 | 1007 | * ])) { |
1006 | 1008 | */ |
1007 | - echo $this->Form->control('eotp', [ | |
1009 | + $fname = 'eotp'; | |
1010 | + echo $this->Form->control($fname, [ | |
1008 | 1011 | 'label' => 'Entité(s) dépensière(s) (voir champ Budgets juste au-dessus)', |
1009 | 1012 | //'label' => 'Entité(s) dépensière(s) (i.e. sur quel(s) budget(s) ?)', |
1010 | 1013 | //'label' => 'Centre(s) financier(s) / EOTP', |
1011 | 1014 | // EDIT only |
1012 | - 'disabled' => $DISABLED, | |
1015 | + //'disabled' => $DISABLED, | |
1016 | + 'disabled' => $IS_ADD ? false : $isReadonlyField($fname, $myReadonlyFields), | |
1013 | 1017 | 'placeholder' => 'Si plusieurs, séparer avec virgule' |
1014 | 1018 | ]); |
1015 | 1019 | |
1016 | 1020 | // - Numéro BC |
1017 | 1021 | // On peut entrer le numero bon commande si le materiel est technique et qu'on est responsable du groupe |
1018 | - $BC_DISABLED = $DISABLED; | |
1022 | + $fname = 'numero_commande'; | |
1023 | + //$BC_DISABLED = $DISABLED; | |
1024 | + $BC_DISABLED = $IS_ADD ? false : $isReadonlyField($fname, $myReadonlyFields); | |
1019 | 1025 | if ($IS_EDIT && $USER_IS_RESPONSABLE_AND_SAME_GROUP_AS_MATERIEL && $materiel->materiel_administratif==0) $BC_DISABLED = False; |
1020 | - echo $this->Form->control('numero_commande', [ | |
1026 | + echo $this->Form->control($fname, [ | |
1021 | 1027 | 'label' => 'Numéro BC', |
1022 | 1028 | // EDIT only |
1023 | 1029 | 'disabled' => $BC_DISABLED |
... | ... | @@ -1045,14 +1051,14 @@ if (isset($cpMateriel)) { |
1045 | 1051 | echo $this->Form->control('numero_inventaire_organisme', [ |
1046 | 1052 | 'label' => 'N° inventaire comptable/tutelles', |
1047 | 1053 | // EDIT only |
1048 | - 'disabled' => $DISABLED | |
1054 | + //'disabled' => $DISABLED | |
1049 | 1055 | ]); |
1050 | 1056 | |
1051 | 1057 | // Num inventaire (ancien) |
1052 | 1058 | echo $this->Form->control('numero_inventaire_old', [ |
1053 | 1059 | 'label' => 'Ancien N° inventaire', |
1054 | 1060 | // EDIT only |
1055 | - 'disabled' => $DISABLED | |
1061 | + //'disabled' => $DISABLED | |
1056 | 1062 | ]); |
1057 | 1063 | |
1058 | 1064 | echo '</div>'; | ... | ... |
src/Template/Materiels/index.ctp
... | ... | @@ -199,22 +199,23 @@ $displayStatusButtons = function($HAS_ORDER_BUTTON, $SELECTED_STATUS, $params, $ |
199 | 199 | ?> |
200 | 200 | <div class="actions" style="width: 100%; float: none; padding: 0 0;"> |
201 | 201 | <?php |
202 | - | |
203 | 202 | echo '<p>'; |
204 | 203 | echo "Afficher les matériels : "; |
205 | 204 | echo '</br>'; |
206 | 205 | echo '</br>'; |
207 | - $b_all = $b_cre = $b_val = $b_toarc = $b_arc = ''; | |
206 | + $b_all = $b_cre = $b_tbo = $b_val = $b_tba = $b_arc = ''; | |
208 | 207 | $SELECTED = '<i class="icon-ok"></i>'; |
209 | 208 | //if (isset($SELECTED_STATUS)) { |
210 | 209 | if ($SELECTED_STATUS) { |
211 | 210 | if ($SELECTED_STATUS == 'CREATED') |
212 | 211 | $b_cre = $SELECTED; |
213 | - else if ($SELECTED_STATUS == 'VALIDATED') | |
212 | + elseif ($SELECTED_STATUS == 'TOBEORDERED') | |
213 | + $b_tbo = $SELECTED; | |
214 | + elseif ($SELECTED_STATUS == 'VALIDATED') | |
214 | 215 | $b_val = $SELECTED; |
215 | - else if ($SELECTED_STATUS == 'TOBEARCHIVED') | |
216 | - $b_toarc = $SELECTED; | |
217 | - else if ($SELECTED_STATUS == 'ARCHIVED') | |
216 | + elseif ($SELECTED_STATUS == 'TOBEARCHIVED') | |
217 | + $b_tba = $SELECTED; | |
218 | + elseif ($SELECTED_STATUS == 'ARCHIVED') | |
218 | 219 | $b_arc = $SELECTED; |
219 | 220 | } else $b_all = $SELECTED; |
220 | 221 | |
... | ... | @@ -228,9 +229,9 @@ $displayStatusButtons = function($HAS_ORDER_BUTTON, $SELECTED_STATUS, $params, $ |
228 | 229 | 'TOUS' => [$b_all, 'TOUS', 'Tous les matériels', 5], |
229 | 230 | 'CREATED' => [$b_cre, 'À VALIDER', 'Seulement les matériels créés (à valider)', 5] |
230 | 231 | ]; |
231 | - if ($HAS_ORDER_BUTTON) $statuses['TOBEORDERED'] = [$b_cre, 'EN COMMANDE', 'Seulement les matériels commandés (à valider)', 5]; | |
232 | + if ($HAS_ORDER_BUTTON) $statuses['TOBEORDERED'] = [$b_tbo, 'EN COMMANDE', 'Seulement les matériels commandés (à valider)', 5]; | |
232 | 233 | $statuses['VALIDATED'] = [$b_val, 'VALIDÉS', "Seulement les matériels validés", 5]; |
233 | - $statuses['TOBEARCHIVED'] = [$b_toarc, 'À SORTIR', "Seulement les matériels à archiver", 5]; | |
234 | + $statuses['TOBEARCHIVED'] = [$b_tba, 'À SORTIR', "Seulement les matériels à archiver", 5]; | |
234 | 235 | $statuses['ARCHIVED'] = [$b_arc, 'ARCHIVÉS', "Seulement les matériels sortis de l'inventaire", 0]; |
235 | 236 | |
236 | 237 | // https://book.cakephp.org/3/en/views/helpers/html.html#creating-links |
... | ... | @@ -259,72 +260,6 @@ $displayStatusButtons = function($HAS_ORDER_BUTTON, $SELECTED_STATUS, $params, $ |
259 | 260 | ]); |
260 | 261 | } |
261 | 262 | |
262 | - /* | |
263 | - //echo $this->Html->link($b_all . ' Tous', [ | |
264 | - echo $html->link($b_all . ' TOUS', [ | |
265 | - //'action' => 'index', | |
266 | - //'?' => $params | |
267 | - '?' => array_merge($params, ['status'=>null]) | |
268 | - ], [ | |
269 | - 'title' => 'Tous', | |
270 | - 'style' => 'margin-right: 5px', | |
271 | - 'escape' => false | |
272 | - ]); | |
273 | - | |
274 | - $status = 'CREATED'; | |
275 | - echo $html->link($b_cre . ' A valider', [ | |
276 | - //'action' => 'index', | |
277 | - //'CREATED', | |
278 | - // https://book.cakephp.org/3/en/views/helpers/html.html#creating-links | |
279 | - //'?' => ['height' => 400, 'width' => 500] | |
280 | - //'?' => $params + ['status'=>'CREATED'] | |
281 | - '?' => array_merge($params, ['status'=>$status]) | |
282 | - //'?' => null | |
283 | - //[$args], | |
284 | - //"http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] | |
285 | - ], [ | |
286 | - 'title' => 'Liste des matériels créés', | |
287 | - 'style' => 'margin-right: 5px', | |
288 | - 'escape' => false | |
289 | - ]); | |
290 | - | |
291 | - $status = 'VALIDATED'; | |
292 | - echo $html->link($b_val . ' Validés', [ | |
293 | - //'action' => 'index', | |
294 | - //'VALIDATED', | |
295 | - //'?' => $params | |
296 | - '?' => array_merge($params, ['status'=>$status]) | |
297 | - ], [ | |
298 | - 'title' => "Liste des materiels qu'on peut archiver", | |
299 | - 'style' => 'margin-right: 5px', | |
300 | - 'escape' => false | |
301 | - ]); | |
302 | - | |
303 | - $status = 'TOBEARCHIVED'; | |
304 | - echo $html->link($b_toarc . ' A sortir', [ | |
305 | - //'action' => 'index', | |
306 | - //'TOBEARCHIVED', | |
307 | - //'?' => $params | |
308 | - '?' => array_merge($params, ['status'=>$status]) | |
309 | - ], [ | |
310 | - 'title' => "A sortir de l'inventaire", | |
311 | - 'style' => 'margin-right: 5px', | |
312 | - 'escape' => false | |
313 | - ]); | |
314 | - | |
315 | - $status = 'ARCHIVED'; | |
316 | - echo $html->link($b_arc . ' Archivés', [ | |
317 | - //'action' => 'index', | |
318 | - //'ARCHIVED', | |
319 | - //'?' => $params | |
320 | - '?' => array_merge($params, ['status'=>$status]) | |
321 | - ], [ | |
322 | - 'title' => "Sortis de l'inventaire", | |
323 | - 'style' => 'margin-right: 0px', | |
324 | - 'escape' => false | |
325 | - ]); | |
326 | - */ | |
327 | - | |
328 | 263 | echo '</p>'; |
329 | 264 | |
330 | 265 | // ACTIONS : buttons "Tout selectionner", "Tout decocher" | ... | ... |
src/Template/Pages/home_app.ctp
... | ... | @@ -4,6 +4,7 @@ |
4 | 4 | //debug($this->viewVars); |
5 | 5 | $configuration = $configuration; |
6 | 6 | $USER_IS_RESPONSABLE = $USER_IS_RESPONSABLE; |
7 | +$HAS_ORDER_BUTTON = $HAS_ORDER_BUTTON; | |
7 | 8 | |
8 | 9 | |
9 | 10 | $lab_name = $configuration->labPresent; |
... | ... | @@ -162,16 +163,25 @@ if (in_array($role, [ |
162 | 163 | echo $TABLE_START; |
163 | 164 | echo $SEP; |
164 | 165 | |
165 | - echo '<tr><td> ' . $this->Html->link('Voir les matériels à valider', [ | |
166 | + //http://labinvent21.devv/materiels?status=TOBEORDERED | |
167 | + | |
168 | +if ($HAS_ORDER_BUTTON) echo '<tr><td> ' . $this->Html->link('Voir les matériels à Commander', [ | |
169 | + 'controller' => 'materiels', | |
170 | + 'action' => 'index', | |
171 | + 'status' => 'TOBEORDERED' | |
172 | + ]) . ' </td></tr>'; | |
173 | + | |
174 | + | |
175 | + echo '<tr><td> ' . $this->Html->link('Voir les matériels à Valider', [ | |
166 | 176 | 'controller' => 'materiels', |
167 | 177 | 'action' => 'index', |
168 | - 'CREATED' | |
178 | + 'status' => 'CREATED' | |
169 | 179 | ]) . ' </td></tr>'; |
170 | 180 | |
171 | - echo '<tr><td> ' . $this->Html->link('Voir les matériels à sortir de l\'inventaire', [ | |
181 | + echo '<tr><td> ' . $this->Html->link("Voir les matériels à Sortir de l'inventaire", [ | |
172 | 182 | 'controller' => 'materiels', |
173 | 183 | 'action' => 'index', |
174 | - 'TOBEARCHIVED' | |
184 | + 'status' => 'TOBEARCHIVED' | |
175 | 185 | ]) . ' </td></tr>'; |
176 | 186 | |
177 | 187 | echo $TABLE_END; | ... | ... |