Commit 7511858e6faba33f171cc3f69525ea02ebfccaa4

Authored by Etienne Pallier
1 parent e51ef87b

Vue détaillée Materiel (materiels/view) :

- Bugfix : un utilisateur doit voir le bouton "fiche pdf"
- Reformatage/Nettoyage/ajout commentaires : c'était carrément ILLISIBLE
Showing 1 changed file with 627 additions and 565 deletions   Show diff stats
src/Template/Materiels/view.ctp
... ... @@ -5,382 +5,433 @@ use Cake\ORM\TableRegistry;
5 5 ?>
6 6  
7 7 <div class="materiels view">
8   - <h2>
9   - <?php
10   - if (h($materiel->status) == 'ARCHIVED')
11   - echo '<i class="icon-inbox"></i> ';
12   - $panne = '';
13   - if (h($materiel->hors_service)) {
14   - $panne = ' (HORS SERVICE)';
15   - }
16   - ?>
17 8  
  9 + <h2>
  10 + <?php
  11 + if (h($materiel->status) == 'ARCHIVED') echo '<i class="icon-inbox"></i> ';
  12 + $panne = h($materiel->hors_service) ? ' (HORS SERVICE)' : '';
  13 + ?>
18 14 <?=h($materiel->designation) . $panne?>
19   - <span style="font-size: 70%; color: grey;">
20   - <?=h($materiel->numero_laboratoire)?>
21   - <?php
22 15  
23   - if (h($materiel->status) == 'ARCHIVED')
24   - echo ' (Archivé)';
25   - ?>
  16 + <span style="font-size: 70%; color: grey;">
  17 + <?=h($materiel->numero_laboratoire)?>
  18 + <?php
  19 + if (h($materiel->status) == 'ARCHIVED') echo ' (Archivé)';
  20 + ?>
26 21 </span>
27   - </h2>
28   - <br>
29   - <div style="text-align: center;">
  22 + </h2>
  23 + <br/>
  24 +
  25 + <div id="materiel_images" style="text-align: center;">
30 26 <?php
31   - if (isset($imgMateriel)) {
32   - echo $this->Html->image('photos/' . $imgMateriel, [
33   - 'alt' => 'Photo matériel',
34   - 'style' => 'max-width: 300px; text-align: center;'
35   - ]);
36   - }
37   - // Url transformé en QrCode
38   - $this->request->session()->write("qrUrl", $this->request->env('SERVER_NAME') . $this->request->env('REQUEST_URI'));
39   - $this->requestAction('/QrCodes/creer/');
40   - echo $this->Html->image('qrcodes/' . $this->request->session()->read("filename"), [
41   - 'alt' => 'QrCode : ' . $materiel->numero_laboratoire,
42   - 'style' => 'float: right'
43   - ]);
44   - echo '</div>';
45   - ?>
46   - <br>
47   - <div class="actions"
48   - style="margin-bottom: 20px; width: 100%; float: none; padding: 10px 0;">
  27 + if (isset($imgMateriel)) {
  28 + echo $this->Html->image('photos/' . $imgMateriel, [
  29 + 'alt' => 'Photo matériel',
  30 + 'style' => 'max-width: 300px; text-align: center;'
  31 + ]);
  32 + }
  33 + // Url transformed in QrCode
  34 + $this->request->session()->write("qrUrl", $this->request->env('SERVER_NAME') . $this->request->env('REQUEST_URI'));
  35 + $this->requestAction('/QrCodes/creer/');
  36 + echo $this->Html->image('qrcodes/' . $this->request->session()->read("filename"), [
  37 + 'alt' => 'QrCode : ' . $materiel->numero_laboratoire,
  38 + 'style' => 'float: right'
  39 + ]);
  40 + ?>
  41 + </div>
  42 + <br/>
  43 +
  44 + <div id="boutons" class="actions" style="margin-bottom: 20px; width: 100%; float: none; padding: 10px 0;">
  45 +
49 46 <?php
50   - if (in_array($materiel->status, [
51   - 'CREATED',
52   - 'VALIDATED'
53   - ])) {
54   - if (($role == 'Utilisateur' && (in_array($username, [
55   - $materiel->nom_createur,
56   - $materiel->nom_responsable
57   - ]))) || (in_array($role, [
58   - 'Administration',
59   - 'Administration Plus',
60   - 'Super Administrateur'
61   - ])) || ($role == 'Responsable' && ((isset($userConnected->groupes_metier_id) && $userConnected->groupes_metier_id != $idGmNa && $materiel->groupes_metier_id == $userConnected->groupes_metier_id) || (isset($userConnected->groupe_thematique_id) && $userConnected->groupe_thematique_id != $idGtNa && $materiel->groupes_thematique_id == $userConnected->groupe_thematique_id)))) {
62   - echo $this->Html->link(__('<i class="icon-pencil"></i> Editer ce matériel'), [
63   - 'action' => 'edit',
64   - $materiel->id
65   - ], [
66   - 'escape' => false,
67   - 'onclick' => 'return true;',
68   - 'style' => 'margin-right: 10px'
69   - ]);
70   - }
71   - } else {
72   - if (in_array($role, [
73   - 'Administration Plus',
74   - 'Super Administrateur'
75   - ])) {
76   - echo $this->Html->link(__('<i class="icon-pencil"></i> Editer ce matériel'), [
77   - 'action' => 'edit',
78   - $materiel->id
79   - ], [
80   - 'escape' => false,
81   - 'onclick' => 'return true;',
82   - 'style' => 'margin-right: 10px'
83   - ]);
84   - }
85   - }
86   - if ($materiel->status == 'VALIDATED') {
87   - // BOUTON NOUVEAU SUIVI
88   - echo $this->Html->link('<i class="icon-plus"></i> Nouv. Suivi', [
89   - 'controller' => 'suivis',
90   - 'action' => 'add',
91   - $materiel->id
92   - ], [
93   - 'title' => 'Faire un nouveau suivi de ce matériel',
94   - 'style' => 'margin-right: 10px',
95   - 'escape' => false
96   - ]); // End link
97   - // BOUTON NOUVEL EMPRUNT
98   - echo $this->Html->link('<i class="icon-plus"></i> Nouv. Emprunt', [
99   - 'controller' => 'emprunts',
100   - 'action' => 'add',
101   - $materiel->id
102   - ], [
103   - 'title' => 'Faire un nouvel emprunt de ce matériel',
104   - 'style' => 'margin-right: 10px',
105   - 'escape' => false
106   - ]); // End link
107   - }
108   - if (($role == 'Utilisateur' && (in_array($username, [
109   - $materiel->nom_createur,
110   - $materiel->nom_responsable
111   - ]))) || (in_array($role, [
112   - 'Administration',
113   - 'Administration Plus',
114   - 'Super Administrateur'
115   - ])) || ($role == 'Responsable' && ((isset($userConnected->groupes_metier_id) && $userConnected->groupes_metier_id != $idGmNa && $materiel->groupes_metier_id == $userConnected->groupes_metier_id) || (isset($userConnected->groupe_thematique_id) && $userConnected->groupe_thematique_id != $idGtNa && $materiel->groupes_thematique_id == $userConnected->groupe_thematique_id)))) {
116   - echo $this->Html->link('<i class="icon-file"></i> Lier un Doc.', [
117   - 'controller' => 'documents',
118   - 'action' => 'add',
119   - $materiel->id,
120   - 'mat'
121   - ], [
122   - 'title' => 'Attacher un Doc. à ce matériel',
123   - 'style' => 'margin-right: 10px',
124   - 'escape' => false
125   - ]);
126   - if ($materiel->photo_id != null) {
127   - echo $this->Html->link('<i class="icon-file"></i> Remplacer la photo.', [
128   - 'controller' => 'documents',
129   - 'action' => 'add',
130   - $materiel->id,
131   - 'mat',
132   - 'photo'
133   - ], [
134   - 'title' => 'Remplacer la photo de ce matériel',
135   - 'style' => 'margin-right: 10px',
136   - 'escape' => false
137   - ]);
138   - } else {
139   - echo $this->Html->link('<i class="icon-file"></i> Lier une photo.', [
140   - 'controller' => 'documents',
141   - 'action' => 'add',
142   - $materiel->id,
143   - 'mat',
144   - 'photo'
145   - ], [
146   - 'title' => 'Attacher une photo à ce matériel',
147   - 'style' => 'margin-right: 10px',
148   - 'escape' => false
149   - ]);
150   - }
151   - }
152   - if (in_array($role, [
153   - 'Administration',
154   - 'Administration Plus',
155   - 'Super Administrateur'
156   - ])) {
157   - if (($materiel->status == 'VALIDATED') || ($materiel->status == 'CREATED')) {
158   - echo $this->Html->link('<i class="icon-file"></i> Doc. admission', [
159   - 'controller' => 'documents',
160   - 'action' => 'admission',
161   - $materiel->numero_laboratoire
162   - ], [
163   - 'title' => 'Voir le document d\'admission',
164   - 'style' => 'margin-right: 10px',
165   - 'escape' => false
166   - ]);
167   - } // Doc sortie (admin only)
168   -else if (($materiel->status == 'ARCHIVED') || ($materiel->status == 'TOBEARCHIVED')) {
169   - echo $this->Html->link('<i class="icon-file"></i> Doc. sortie', [
170   - 'controller' => 'documents',
171   - 'action' => 'sortie',
172   - $materiel->numero_laboratoire
173   - ], [
174   - 'title' => 'Voir le document de sortie',
175   - 'style' => 'margin-right: 10px',
176   - 'escape' => false
177   - ]);
178   - }
179   - }
180   - if (in_array($role, [
181   - 'Administration',
182   - 'Administration Plus',
183   - 'Super Administrateur'
184   - ]) || ($role == 'Responsable' && ((isset($userConnected->groupes_metier_id) && $userConnected->groupes_metier_id != $idGmNa && $materiel->groupes_metier_id == $userConnected->groupes_metier_id) || (isset($userConnected->groupe_thematique_id) && $userConnected->groupe_thematique_id != $idGtNa && $materiel->groupes_thematique_id == $userConnected->groupe_thematique_id)))) {
185   - // 2) Bouton de changement de statut : Valider, Demander archivage, ou Archiver
186   - switch ($materiel->status) {
187   - case "CREATED" :
188   - echo $this->Html->link('<i class="icon-ok-sign"></i> Valider', [
189   - 'action' => 'statusValidated',
190   - $materiel->id,
191   - 'view'
192   - ], [
193   - 'title' => 'Valider le matériel',
194   - 'style' => 'margin-right: 10px',
195   - 'escape' => false
196   - ]);
197   - break;
198   - case "VALIDATED" :
199   - echo $this->Html->link('<i class="icon-ok-sign"></i> Demander sortie', [
200   - 'action' => 'statusToBeArchived',
201   - $materiel->id,
202   - 'view'
203   - ], [
204   - 'title' => 'Demander la sortie de l\'inventaire',
205   - 'style' => 'margin-right: 10px',
206   - 'escape' => false
207   - ]);
208   - break;
209   - case "TOBEARCHIVED" :
210   - if ($role != 'Responsable' && $role != 'Super Administrateur') {
211   - echo $this->Html->link('<i class="icon-ok-sign"></i> Sortie inventaire', [
212   - 'action' => 'statusArchived',
213   - $materiel->id,
214   - 'view'
215   - ], [
216   - 'title' => 'Sortir définitivement de l\'inventaire',
217   - 'style' => 'margin-right: 10px',
218   - 'escape' => false,
219   - 'confirm' => 'Êtes-vous sur de bien vouloir archiver ' . $materiel->designation . ' ?'
220   - ]);
221   - }
222   - break;
223   - } // switch
224   - }
225   - echo $this->Html->link('<i class="icon-pencil"></i> Copier ce matériel', [
226   - 'controller' => 'materiels',
227   - 'action' => 'add',
228   - $materiel->id
  47 + // CREATED or VALIDATED
  48 + if ( in_array($materiel->status, ['CREATED','VALIDATED']) ) {
  49 + if (
  50 + in_array($role, ['Administration','Administration Plus','Super Administrateur'])
  51 + ||
  52 + (
  53 + $role == 'Utilisateur'
  54 + && in_array($username, [$materiel->nom_createur, $materiel->nom_responsable])
  55 + )
  56 + ||
  57 + (
  58 + $role == 'Responsable'
  59 + && (
  60 + (
  61 + isset($userConnected->groupes_metier_id)
  62 + && $userConnected->groupes_metier_id != $idGmNa
  63 + && $materiel->groupes_metier_id == $userConnected->groupes_metier_id
  64 + )
  65 + ||
  66 + (
  67 + isset($userConnected->groupe_thematique_id)
  68 + && $userConnected->groupe_thematique_id != $idGtNa
  69 + && $materiel->groupes_thematique_id == $userConnected->groupe_thematique_id
  70 + )
  71 + )
  72 + )
  73 + )
  74 + echo $this->Html->link(
  75 + __('<i class="icon-pencil"></i> Editer ce matériel'),
  76 + [ 'action' => 'edit', $materiel->id ],
  77 + [ 'escape' => false, 'onclick' => 'return true;', 'style' => 'margin-right: 10px' ]
  78 + );
  79 + }
  80 +
  81 + // TOBEARCHIVED+
  82 + else {
  83 + if (in_array($role, ['Administration Plus','Super Administrateur'])) {
  84 + echo $this->Html->link(
  85 + __('<i class="icon-pencil"></i> Editer ce matériel'),
  86 + ['action' => 'edit', $materiel->id],
  87 + ['escape' => false, 'onclick' => 'return true;', 'style' => 'margin-right: 10px']
  88 + );
  89 + }
  90 + }
  91 +
  92 + // VALIDATED
  93 + if ($materiel->status == 'VALIDATED') {
  94 +
  95 + // BOUTON NOUVEAU SUIVI
  96 + echo $this->Html->link(
  97 + '<i class="icon-plus"></i> Nouv. Suivi',
  98 + ['controller' => 'suivis','action' => 'add',$materiel->id],
  99 + ['title' => 'Faire un nouveau suivi de ce matériel','style' => 'margin-right: 10px','escape' => false]
  100 + ); // End link
  101 +
  102 + // BOUTON NOUVEL EMPRUNT
  103 + echo $this->Html->link('<i class="icon-plus"></i> Nouv. Emprunt', [
  104 + 'controller' => 'emprunts',
  105 + 'action' => 'add',
  106 + $materiel->id
  107 + ], [
  108 + 'title' => 'Faire un nouvel emprunt de ce matériel',
  109 + 'style' => 'margin-right: 10px',
  110 + 'escape' => false
  111 + ]); // End link
  112 + }
  113 +
  114 + // BOUTON "Lier un Doc"
  115 + if (
  116 + in_array($role, ['Administration','Administration Plus','Super Administrateur'])
  117 + ||
  118 + (
  119 + $role == 'Utilisateur'
  120 + && in_array($username, [$materiel->nom_createur,$materiel->nom_responsable])
  121 + )
  122 + || (
  123 + $role == 'Responsable'
  124 + && (
  125 + (
  126 + isset($userConnected->groupes_metier_id)
  127 + && $userConnected->groupes_metier_id != $idGmNa
  128 + && $materiel->groupes_metier_id == $userConnected->groupes_metier_id
  129 + )
  130 + ||
  131 + (
  132 + isset($userConnected->groupe_thematique_id)
  133 + && $userConnected->groupe_thematique_id != $idGtNa
  134 + && $materiel->groupes_thematique_id == $userConnected->groupe_thematique_id
  135 + )
  136 + )
  137 + )
  138 + ) {
  139 + echo $this->Html->link('<i class="icon-file"></i> Lier un Doc.', [
  140 + 'controller' => 'documents',
  141 + 'action' => 'add',
  142 + $materiel->id,
  143 + 'mat'
  144 + ], [
  145 + 'title' => 'Attacher un Doc. à ce matériel',
  146 + 'style' => 'margin-right: 10px',
  147 + 'escape' => false
  148 + ]);
  149 +
  150 + // BOUTON "photo"
  151 + if ($materiel->photo_id != null) {
  152 + echo $this->Html->link('<i class="icon-file"></i> Remplacer la photo.', [
  153 + 'controller' => 'documents',
  154 + 'action' => 'add',
  155 + $materiel->id,
  156 + 'mat',
  157 + 'photo'
  158 + ], [
  159 + 'title' => 'Remplacer la photo de ce matériel',
  160 + 'style' => 'margin-right: 10px',
  161 + 'escape' => false
  162 + ]);
  163 + } else {
  164 + echo $this->Html->link('<i class="icon-file"></i> Lier une photo.', [
  165 + 'controller' => 'documents',
  166 + 'action' => 'add',
  167 + $materiel->id,
  168 + 'mat',
  169 + 'photo'
  170 + ], [
  171 + 'title' => 'Attacher une photo à ce matériel',
  172 + 'style' => 'margin-right: 10px',
  173 + 'escape' => false
  174 + ]);
  175 + }
  176 +
  177 + } // BOUTON Lier un doc
  178 +
  179 +
  180 + // Doc admission et sortie (admin+)
  181 + if (in_array($role, ['Administration','Administration Plus','Super Administrateur'])) {
  182 +
  183 + // Doc admission (admin only)
  184 + if (($materiel->status == 'VALIDATED') || ($materiel->status == 'CREATED')) {
  185 + echo $this->Html->link('<i class="icon-file"></i> Doc. admission', [
  186 + 'controller' => 'documents',
  187 + 'action' => 'admission',
  188 + $materiel->numero_laboratoire
  189 + ], [
  190 + 'title' => 'Voir le document d\'admission',
  191 + 'style' => 'margin-right: 10px',
  192 + 'escape' => false
  193 + ]);
  194 + }
  195 +
  196 + // Doc sortie (admin only)
  197 + else if (($materiel->status == 'ARCHIVED') || ($materiel->status == 'TOBEARCHIVED')) {
  198 + echo $this->Html->link('<i class="icon-file"></i> Doc. sortie', [
  199 + 'controller' => 'documents',
  200 + 'action' => 'sortie',
  201 + $materiel->numero_laboratoire
  202 + ], [
  203 + 'title' => 'Voir le document de sortie',
  204 + 'style' => 'margin-right: 10px',
  205 + 'escape' => false
  206 + ]);
  207 + }
  208 + }
  209 +
  210 +
  211 + // BOUTON changement statut
  212 + if (
  213 + in_array($role, ['Administration','Administration Plus','Super Administrateur'])
  214 + || (
  215 + $role == 'Responsable'
  216 + && (
  217 + (
  218 + isset($userConnected->groupes_metier_id)
  219 + && $userConnected->groupes_metier_id != $idGmNa
  220 + && $materiel->groupes_metier_id == $userConnected->groupes_metier_id
  221 + )
  222 + ||
  223 + (
  224 + isset($userConnected->groupe_thematique_id)
  225 + && $userConnected->groupe_thematique_id != $idGtNa
  226 + && $materiel->groupes_thematique_id == $userConnected->groupe_thematique_id
  227 + )
  228 + )
  229 + )
  230 + ) {
  231 + // 2) Bouton de changement de statut : Valider, Demander archivage, ou Archiver
  232 + switch ($materiel->status) {
  233 + case "CREATED" :
  234 + echo $this->Html->link('<i class="icon-ok-sign"></i> Valider', [
  235 + 'action' => 'statusValidated',
  236 + $materiel->id,
  237 + 'view'
  238 + ], [
  239 + 'title' => 'Valider le matériel',
  240 + 'style' => 'margin-right: 10px',
  241 + 'escape' => false
  242 + ]);
  243 + break;
  244 + case "VALIDATED" :
  245 + echo $this->Html->link('<i class="icon-ok-sign"></i> Demander sortie', [
  246 + 'action' => 'statusToBeArchived',
  247 + $materiel->id,
  248 + 'view'
229 249 ], [
230   - 'title' => 'Copier ce matériel',
231   - 'style' => 'margin-right: 10px; margin-top: 10px; display: inline-block',
  250 + 'title' => 'Demander la sortie de l\'inventaire',
  251 + 'style' => 'margin-right: 10px',
232 252 'escape' => false
233 253 ]);
234   - // BOUTON ETIQUETTE POSEE
235   - if ($configuration->hasPrinter && in_array($role, [
236   - 'Administration',
237   - 'Administration Plus',
238   - 'Super Administrateur'
239   - ])) {
240   - echo '<div class="actions" style="margin-bottom: 20px; width: 100%; float: none; padding: 10px 0;">';
241   - $action = 'Impr. étiquette';
242   - echo $this->Html->link('<i class="icon-print"></i> ' . $action, [
243   - 'action' => 'printLabelRuban',
244   - h($materiel->id),
  254 + break;
  255 + case "TOBEARCHIVED" :
  256 + if ($role != 'Responsable' && $role != 'Super Administrateur') {
  257 + echo $this->Html->link('<i class="icon-ok-sign"></i> Sortie inventaire', [
  258 + 'action' => 'statusArchived',
  259 + $materiel->id,
245 260 'view'
246 261 ], [
247   - 'title' => 'Imprimer sur un ruban 12mm',
  262 + 'title' => 'Sortir définitivement de l\'inventaire',
248 263 'style' => 'margin-right: 10px',
249 264 'escape' => false,
250   - 'onclick' => 'return true;'
251   - ]); // End link
252   - echo $this->Html->link('<i class="icon-file"></i> ' . (h($materiel->etiquette) ? "Etiquette NON posée sur le matériel" : "Etiquette posée sur le matériel"), [
253   - 'controller' => 'materiels',
254   - 'action' => h($materiel->etiquette) ? 'setLabelIsNotPlaced' : 'setLabelIsPlaced',
255   - h($materiel->id),
256   - 'view'
257   - ], [
258   - 'title' => h($materiel->etiquette) ? "En cliquant sur ce bouton, vous déclarez que l'étiquette n'a PAS été posée sur le matériel" : "En cliquant sur ce bouton, vous certifiez que l'étiquette a bien été posée sur le matériel",
259   - 'style' => 'margin-left: 0px; margin-right: 10px',
260   - 'escape' => false
261   - ]); // End link
262   - echo '</div>';
263   - echo $this->Html->link('<i class="icon-file"></i> Fiche PDF du matériel', [
264   - 'controller' => 'documents',
265   - 'action' => 'ficheMateriel',
266   - $materiel->numero_laboratoire
267   - ], [
268   - 'title' => 'Voir la fiche du materiel',
269   - 'style' => 'margin-right: 10px; background: green; color: white',
270   - 'escape' => false
  265 + 'confirm' => 'Êtes-vous sur de bien vouloir archiver ' . $materiel->designation . ' ?'
271 266 ]);
272 267 }
273   - ?>
274   - </div>
275   - <h3 id="t_informations" style="cursor: pointer;">
276   - <i class="icon-chevron-down" style="font-size: 14px;"
277   - id="i_informations"></i> <span
278   - style="text-decoration: underline;">Informations</span>
279   - </h3>
280   - <div id="informations" style="margin-bottom: 20px;">
281   - <table>
282   - <tr>
283   - <th style="width: 250px;"></th>
284   - <th></th>
285   - </tr>
  268 + break;
  269 + } // switch
  270 + } // BOUTON changement statut
286 271  
  272 + // BOUTON Copier
  273 + echo $this->Html->link('<i class="icon-pencil"></i> Copier ce matériel', [
  274 + 'controller' => 'materiels',
  275 + 'action' => 'add',
  276 + $materiel->id
  277 + ], [
  278 + 'title' => 'Copier ce matériel',
  279 + 'style' => 'margin-right: 10px; margin-top: 10px; display: inline-block',
  280 + 'escape' => false
  281 + ]);
  282 +
  283 + // BOUTON ETIQUETTE (si imprimante disponible)
  284 + if ($configuration->hasPrinter && in_array($role, [
  285 + 'Administration',
  286 + 'Administration Plus',
  287 + 'Super Administrateur'
  288 + ])) {
  289 + echo '<div id="etiquette" class="actions" style="margin-bottom: 20px; width: 100%; float: none; padding: 10px 0;">';
  290 + // - Bouton "Imprimer sur un ruban"
  291 + $action = 'Impr. étiquette';
  292 + echo $this->Html->link('<i class="icon-print"></i> ' . $action, [
  293 + 'action' => 'printLabelRuban',
  294 + h($materiel->id),
  295 + 'view'
  296 + ], [
  297 + 'title' => 'Imprimer sur un ruban 12mm',
  298 + 'style' => 'margin-right: 10px',
  299 + 'escape' => false,
  300 + 'onclick' => 'return true;'
  301 + ]);
  302 + // - Bouton "Etiquette posée"
  303 + echo $this->Html->link('<i class="icon-file"></i> ' . (h($materiel->etiquette) ? "Etiquette NON posée sur le matériel" : "Etiquette posée sur le matériel"), [
  304 + 'controller' => 'materiels',
  305 + 'action' => h($materiel->etiquette) ? 'setLabelIsNotPlaced' : 'setLabelIsPlaced',
  306 + h($materiel->id),
  307 + 'view'
  308 + ], [
  309 + 'title' => h($materiel->etiquette) ? "En cliquant sur ce bouton, vous déclarez que l'étiquette n'a PAS été posée sur le matériel" : "En cliquant sur ce bouton, vous certifiez que l'étiquette a bien été posée sur le matériel",
  310 + 'style' => 'margin-left: 0px; margin-right: 10px',
  311 + 'escape' => false
  312 + ]);
  313 + echo '</div>';
  314 + } // BOUTON ETIQUETTE
287 315  
288   - <?php
289   - // Pour changer la couleur de la date de garantie si elle est passée - Ajout par Thibault Ajas le 02/05/2017
290   - $time = Time::now(); // On récupère la date et l'heure actuelles
291   - $today = new date("$time->year-$time->month-$time->day"); // On extrait la date pour la vérification de fin de garantie
292   - $today = $today->format('Ydm'); // On formatte la date initialement en 31-12-2000 en un format qui pourra etre comparé : 20001231
293   - if ($materiel->date_fin_garantie !== NULL) {
294   - $timeFin = new time($materiel->date_fin_garantie);
295   - $dateFin = new date("$timeFin->year-$timeFin->month-$timeFin->day");
296   - $dateFin = $dateFin->format('Ydm');
297   - }
298   - if ($materiel->date_fin_garantie !== NULL)
299   - $style = ($today >= $dateFin) ? 'style="color: #FF0000"' : '';
300   - else
301   - $style = '';
302   - ?>
  316 + // BOUTON "Voir fiche matériel"
  317 + echo '<div id="fiche pdf" style="margin-bottom: 20px; width: 100%; float: none; padding: 10px 0;">';
  318 + echo $this->Html->link('<i class="icon-file"></i> Fiche PDF du matériel', [
  319 + 'controller' => 'documents',
  320 + 'action' => 'ficheMateriel',
  321 + $materiel->numero_laboratoire
  322 + ], [
  323 + 'title' => 'Voir la fiche du materiel',
  324 + 'style' => 'margin-right: 10px; background: green; color: white',
  325 + 'escape' => false
  326 + ]);
  327 + echo '</div>';
303 328  
  329 + // FIN DIV BOUTONS
  330 + ?>
  331 + </div>
304 332  
305   - <?php
306   - $type = "";
307   - if (h($materiel->materiel_administratif) == 1 && h($materiel->materiel_technique) == 1) {
308   - $type = 'Administratif et technique';
309   - } else if (h($materiel->materiel_administratif) == 1) {
310   - $type = 'Administratif';
311   - } else if (h($materiel->materiel_technique) == 1) {
312   - $type = 'Technique';
313   - }
314   - echo '<tr><td><strong>' . __('Description') . ' </strong></td><td>' . nl2br($materiel->description) . '</td></tr>';
315   - // La variable-fonction $displayElement est définie dans le fichier src/Controller/AppController.php
316   - $displayElement(__('Materiel inventorié'), $type);
317   - $displayElement(__('Organisme'), $materiel->has('organisme') ? h($materiel->organisme->nom) : '');
318   - $displayElement(__('Domaine'), $materiel->has('sur_category') ? h($materiel->sur_category->nom) : '');
319   - $displayElement(__('Catégorie'), $materiel->has('category') ? h($materiel->category->nom) : '');
320   - $displayElement(__('Sous-Catégorie'), $materiel->has('sous_category') ? h($materiel->sous_category->nom) : '');
321   - if (h($materiel->etiquette) == 0) {
322   - $etiq = "Non";
323   - } else {
324   - $etiq = "Oui";
325   - }
326   - $displayElement(__('Etiquette posée'), $etiq);
327   - $displayElement(__('N° de série'), $materiel->numero_serie);
328   - $displayElement(__($configuration->nom_groupe_thematique), $materiel->has('groupes_thematique') ? $this->Html->link($materiel->groupes_thematique->nom, [
329   - 'controller' => 'GroupesThematiques',
330   - 'action' => 'view',
331   - $materiel->groupes_thematique->id
332   - ]) : '');
333   - $displayElement(__($configuration->nom_groupe_metier), $materiel->has('groupes_metier') ? $this->Html->link($materiel->groupes_metier->nom, [
334   - 'controller' => 'GroupesMetiers',
335   - 'action' => 'view',
336   - $materiel->groupes_metier->id
337   - ]) : '');
338   - if ($configuration->metrologie == 1) {
339   - if (h($materiel->metrologie) == 0) {
340   - $metro = "Non";
341   - } else {
342   - $metro = "Oui";
343   - }
344   - $displayElement(__('Métrologie'), $metro);
345   - }
346   - $displayElement(__('Date d\'achat'), h($materiel->date_acquisition));
347   - $displayElement(__('Date de reception'), h($materiel->date_reception));
348   - if (! empty(h($materiel->duree_garntie))) {
349   - $displayElement(__('Duree garantie'), h($materiel->duree_garantie) . ' ' . h($materiel->unite_duree_garantie));
350   - }
351   - $displayElement(__('Date fin de garantie'), h($materiel->date_fin_garantie), $style);
352   - $displayElement(__('Statut'), h($materiel->status));
353   - if ($materiel->status == 'ARCHIVED') {
354   - $displayElement(__('Date d\'archivage'), h($materiel->date_archivage));
355   - }
356   - $displayElement(__('Prix (HT)'), h($materiel->prix_ht) . ' €');
357   - $displayElement(__('Fournisseur'), $materiel->has('fournisseur') ? $materiel->fournisseur->nom : '');
358   - $displayElement(__('Lieu de stockage'), $materiel->has('site') ? h($materiel->site->nom) : '');
359   - $displayElement(__('Détail lieu de stockage'), h($materiel->lieu_detail));
360   - $displayElement(__('Nom du propriétaire'), $this->Html->link(h($materiel->nom_responsable), 'mailto:' . h($materiel->email_responsable)));
361   - $displayElement(__('N. interne (labo)'), h($materiel->numero_laboratoire));
362   - $gestionnaire = TableRegistry::get('Users')->find()->where([
363   - 'id =' => $materiel->gestionnaire_id
364   - ]);
365   - $displayElement(__('Nom du gestionnaire de référence'), h($gestionnaire->first()['nom']));
366   - if ($role == 'Super Administrateur') {
367   - $displayElement(__('Date création'), h($materiel->created));
368   - $displayElement(__('Nom du créateur'), h($materiel->nom_createur));
369   - $displayElement(__('Date modification'), h($materiel->modified));
370   - $displayElement(__('Nom du modificateur'), h($materiel->nom_modificateur));
371   - }
372   - ?>
  333 +
  334 + <!-- INFORMATIONS -->
  335 +
  336 + <h3 id="t_informations" style="cursor: pointer;">
  337 + <i class="icon-chevron-down" style="font-size: 14px;" id="i_informations"></i>
  338 + <span style="text-decoration: underline;">Informations</span>
  339 + </h3>
  340 +
  341 + <div id="informations" style="margin-bottom: 20px;">
  342 + <table>
  343 + <tr>
  344 + <th style="width: 250px;"></th>
  345 + <th></th>
  346 + </tr>
  347 + <?php
  348 + // Pour changer la couleur de la date de garantie si elle est passée - Ajout par Thibault Ajas le 02/05/2017
  349 + $time = Time::now(); // On récupère la date et l'heure actuelles
  350 + $today = new date("$time->year-$time->month-$time->day"); // On extrait la date pour la vérification de fin de garantie
  351 + $today = $today->format('Ydm'); // On formatte la date initialement en 31-12-2000 en un format qui pourra etre comparé : 20001231
  352 + if ($materiel->date_fin_garantie !== NULL) {
  353 + $timeFin = new time($materiel->date_fin_garantie);
  354 + $dateFin = new date("$timeFin->year-$timeFin->month-$timeFin->day");
  355 + $dateFin = $dateFin->format('Ydm');
  356 + }
  357 + $style = '';
  358 + if ( $materiel->date_fin_garantie !== NULL && $today >= $dateFin ) $style = 'style="color: #FF0000"';
  359 + ?>
  360 + <?php
  361 + $type = "";
  362 + if (h($materiel->materiel_administratif) == 1 && h($materiel->materiel_technique) == 1) {
  363 + $type = 'Administratif et technique';
  364 + } else if (h($materiel->materiel_administratif) == 1) {
  365 + $type = 'Administratif';
  366 + } else if (h($materiel->materiel_technique) == 1) {
  367 + $type = 'Technique';
  368 + }
  369 + echo '<tr><td><strong>' . __('Description') . ' </strong></td><td>' . nl2br($materiel->description) . '</td></tr>';
  370 + // La variable-fonction $displayElement est définie dans le fichier src/Controller/AppController.php
  371 + $displayElement(__('Materiel inventorié'), $type);
  372 + $displayElement(__('Organisme'), $materiel->has('organisme') ? h($materiel->organisme->nom) : '');
  373 + $displayElement(__('Domaine'), $materiel->has('sur_category') ? h($materiel->sur_category->nom) : '');
  374 + $displayElement(__('Catégorie'), $materiel->has('category') ? h($materiel->category->nom) : '');
  375 + $displayElement(__('Sous-Catégorie'), $materiel->has('sous_category') ? h($materiel->sous_category->nom) : '');
  376 + if (h($materiel->etiquette) == 0) {
  377 + $etiq = "Non";
  378 + } else {
  379 + $etiq = "Oui";
  380 + }
  381 + $displayElement(__('Etiquette posée'), $etiq);
  382 + $displayElement(__('N° de série'), $materiel->numero_serie);
  383 + $displayElement(__($configuration->nom_groupe_thematique), $materiel->has('groupes_thematique') ? $this->Html->link($materiel->groupes_thematique->nom, [
  384 + 'controller' => 'GroupesThematiques',
  385 + 'action' => 'view',
  386 + $materiel->groupes_thematique->id
  387 + ]) : '');
  388 + $displayElement(__($configuration->nom_groupe_metier), $materiel->has('groupes_metier') ? $this->Html->link($materiel->groupes_metier->nom, [
  389 + 'controller' => 'GroupesMetiers',
  390 + 'action' => 'view',
  391 + $materiel->groupes_metier->id
  392 + ]) : '');
  393 + if ($configuration->metrologie == 1) {
  394 + if (h($materiel->metrologie) == 0) {
  395 + $metro = "Non";
  396 + } else {
  397 + $metro = "Oui";
  398 + }
  399 + $displayElement(__('Métrologie'), $metro);
  400 + }
  401 + $displayElement(__('Date d\'achat'), h($materiel->date_acquisition));
  402 + $displayElement(__('Date de reception'), h($materiel->date_reception));
  403 + if (! empty(h($materiel->duree_garntie))) {
  404 + $displayElement(__('Duree garantie'), h($materiel->duree_garantie) . ' ' . h($materiel->unite_duree_garantie));
  405 + }
  406 + $displayElement(__('Date fin de garantie'), h($materiel->date_fin_garantie), $style);
  407 + $displayElement(__('Statut'), h($materiel->status));
  408 + if ($materiel->status == 'ARCHIVED') {
  409 + $displayElement(__('Date d\'archivage'), h($materiel->date_archivage));
  410 + }
  411 + $displayElement(__('Prix (HT)'), h($materiel->prix_ht) . ' €');
  412 + $displayElement(__('Fournisseur'), $materiel->has('fournisseur') ? $materiel->fournisseur->nom : '');
  413 + $displayElement(__('Lieu de stockage'), $materiel->has('site') ? h($materiel->site->nom) : '');
  414 + $displayElement(__('Détail lieu de stockage'), h($materiel->lieu_detail));
  415 + $displayElement(__('Nom du propriétaire'), $this->Html->link(h($materiel->nom_responsable), 'mailto:' . h($materiel->email_responsable)));
  416 + $displayElement(__('N. interne (labo)'), h($materiel->numero_laboratoire));
  417 + $gestionnaire = TableRegistry::get('Users')->find()->where([
  418 + 'id =' => $materiel->gestionnaire_id
  419 + ]);
  420 + $displayElement(__('Nom du gestionnaire de référence'), h($gestionnaire->first()['nom']));
  421 + if ($role == 'Super Administrateur') {
  422 + $displayElement(__('Date création'), h($materiel->created));
  423 + $displayElement(__('Nom du créateur'), h($materiel->nom_createur));
  424 + $displayElement(__('Date modification'), h($materiel->modified));
  425 + $displayElement(__('Nom du modificateur'), h($materiel->nom_modificateur));
  426 + }
  427 + ?>
373 428 </table>
374   - </div>
  429 + </div> <!-- INFORMATIONS -->
375 430  
376 431  
  432 + <!-- PARTIE ADMIN -->
377 433 <?php
378   - // Partie admin
379   - if (in_array($role, [
380   - 'Administration',
381   - 'Administration Plus',
382   - 'Super Administrateur'
383   - ])) {
  434 + if (in_array($role, ['Administration','Administration Plus','Super Administrateur'])) {
384 435 echo '<h3 id="t_informations_admin" style="cursor: pointer;">';
385 436 echo '<i class="icon-chevron-down" style="font-size: 14px;" id="i_informations_admin"></i>';
386 437 echo '<span style="text-decoration: underline;"> Informations administratives</span>';
... ... @@ -399,226 +450,237 @@ else if (($materiel-&gt;status == &#39;ARCHIVED&#39;) || ($materiel-&gt;status == &#39;TOBEARCHIVE
399 450 ?>
400 451  
401 452  
402   - <h3 id="t_suivis" style="cursor: pointer;">
403   - <i class="icon-chevron-down" style="font-size: 14px;" id="i_suivis"></i>
404   - <span style="text-decoration: underline;">Suivi(s) du matériel (<?=count($materiel->suivis)?>)</span>
405   - </h3>
406   - <div id="suivis" style="margin-bottom: 20px;">
407   -
408   - <?php
409   -
410   - if (! empty($materiel->suivis)) {
411   - ?>
  453 + <!-- SUIVIS -->
  454 + <h3 id="t_suivis" style="cursor: pointer;">
  455 + <i class="icon-chevron-down" style="font-size: 14px;" id="i_suivis"></i>
  456 + <span style="text-decoration: underline;">Suivi(s) du matériel (<?=count($materiel->suivis)?>)</span>
  457 + </h3>
  458 + <div id="suivis" style="margin-bottom: 20px;">
  459 + <?php if (! empty($materiel->suivis)) { ?>
412 460 <table>
413   - <tr>
414   - <th class="actions"><?=__('')?></th>
415   - <th><?=__('N°')?></th>
416   - <th><?=__('Type d\'intervention')?></th>
417   - <th><?=__('Intitulé')?></th>
418   - <th><?=__('Etat metrologique')?></th>
419   - <th><?=__('Date prochain contrôle')?></th>
420   - <th><?=__('Statut')?></th>
421   - </tr>
422   - <?php
423   -
424   - foreach ($materiel->suivis as $suivis) :
425   - ?>
426   - <tr>
427   - <td class="actions"
428   - style="padding: 6px 0; text-align: left;">
  461 + <tr>
  462 + <th class="actions"><?=__('')?></th>
  463 + <th><?=__('N°')?></th>
  464 + <th><?=__('Type d\'intervention')?></th>
  465 + <th><?=__('Intitulé')?></th>
  466 + <th><?=__('Etat metrologique')?></th>
  467 + <th><?=__('Date prochain contrôle')?></th>
  468 + <th><?=__('Statut')?></th>
  469 + </tr>
  470 + <?php foreach ($materiel->suivis as $suivis) :?>
  471 + <tr>
  472 + <td class="actions" style="padding: 6px 0; text-align: left;">
429 473 <?php
430   - if (($role == 'Utilisateur' && (in_array($username, [
431   - $materiel->nom_createur,
432   - $materiel->nom_responsable
433   - ]))) || (in_array($role, [
434   - 'Administration',
435   - 'Administration Plus',
436   - 'Super Administrateur'
437   - ])) || ($role == 'Responsable' && ((isset($userConnected->groupes_metier_id) && $userConnected->groupes_metier_id != $idGmNa && $materiel->groupes_metier_id == $userConnected->groupes_metier_id) || (isset($userConnected->groupe_thematique_id) && $userConnected->groupe_thematique_id != $idGtNa && $materiel->groupes_thematique_id == $userConnected->groupe_thematique_id)))) {
438   - ?>
439   - <?=$this->Html->link(__('<i class="icon-pencil"></i>'), ['controller' => 'Suivis','action' => 'edit',$suivis->id], ['escape' => false,'style' => 'margin:0'])?>
440   - <?=$this->Form->postLink(__('<i class="icon-trash"></i>'), ['controller' => 'Suivis','action' => 'delete',$suivis->id], ['escape' => false,'style' => 'margin:0','confirm' => __('Êtes-vous sur de vouloir supprimer # {0}?', $suivis->id)])?>
441   - <?php
442   - }
443   - ?>
  474 + if (
  475 + in_array($role, ['Administration','Administration Plus','Super Administrateur'])
  476 + ||
  477 + (
  478 + $role == 'Utilisateur'
  479 + && in_array($username, [$materiel->nom_createur,$materiel->nom_responsable])
  480 + )
  481 + || (
  482 + $role == 'Responsable'
  483 + && (
  484 + (
  485 + isset($userConnected->groupes_metier_id)
  486 + && $userConnected->groupes_metier_id != $idGmNa
  487 + && $materiel->groupes_metier_id == $userConnected->groupes_metier_id
  488 + )
  489 + ||
  490 + (
  491 + isset($userConnected->groupe_thematique_id)
  492 + && $userConnected->groupe_thematique_id != $idGtNa
  493 + && $materiel->groupes_thematique_id == $userConnected->groupe_thematique_id
  494 + )
  495 + )
  496 + )
  497 + ) {
  498 + echo $this->Html->link(__('<i class="icon-pencil"></i>'), ['controller' => 'Suivis','action' => 'edit',$suivis->id], ['escape' => false,'style' => 'margin:0']);
  499 + echo $this->Form->postLink(__('<i class="icon-trash"></i>'), ['controller' => 'Suivis','action' => 'delete',$suivis->id], ['escape' => false,'style' => 'margin:0','confirm' => __('Êtes-vous sur de vouloir supprimer # {0}?', $suivis->id)]);
  500 + }
  501 + ?>
444 502 </td>
445   - <td><?=$this->Html->link('Suivi ' . $suivis->id, ['controller' => 'suivis','action' => 'view',$suivis->id])?></td>
446   - <td><?=$typeSuivis->find()->where(['id =' => h($suivis->type_suivi_id)])->first()['nom'];?></td>
447   - <td><?=h($suivis->intitule)?></td>
448   - <td><?=h($suivis->conforme)?></td>
449   - <td><?=h($suivis->date_prochain_controle)?></td>
450   - <td><?=h($suivis->statut)?></td>
451   - </tr>
452   - <?php
453   - endforeach
454   - ;
455   - ?>
  503 + <td><?=$this->Html->link('Suivi ' . $suivis->id, ['controller' => 'suivis','action' => 'view',$suivis->id])?></td>
  504 + <td><?=$typeSuivis->find()->where(['id =' => h($suivis->type_suivi_id)])->first()['nom'];?></td>
  505 + <td><?=h($suivis->intitule)?></td>
  506 + <td><?=h($suivis->conforme)?></td>
  507 + <td><?=h($suivis->date_prochain_controle)?></td>
  508 + <td><?=h($suivis->statut)?></td>
  509 + </tr>
  510 + <?php endforeach;?>
456 511 </table>
457   - <?php
458   - } else {
459   - echo 'Aucun suivi pour ce matériel.';
460   - }
461   - ?>
  512 + <?php
  513 + } else {
  514 + echo 'Aucun suivi pour ce matériel.';
  515 + }
  516 + ?>
462 517 </div>
463   - <h3 id="t_emprunts" style="cursor: pointer;">
464   - <i class="icon-chevron-down" style="font-size: 14px;"
465   - id="i_emprunts"></i> <span style="text-decoration: underline;">Emprunt(s) du matériel (<?=count($materiel->emprunts)?>)</span>
466   - </h3>
467   - <div id="emprunts" style="margin-bottom: 20px;">
468   -
469   - <?php
470   -
471   - if (! empty($materiel->emprunts)) {
472   - ?>
473   - <table>
474   - <tr>
475   - <th class="actions"><?=__('')?></th>
476   - <th><?=__('N°')?></th>
477   - <th><?=__('Emprunteur')?></th>
478   - <th><?=__('Type d\'Emprunt')?></th>
479   - <th><?=__('Où')?></th>
480   - <th><?=__('Date de l\'emprunt')?></th>
481   - <th><?=__('Date de retour')?></th>
482   - </tr>
483   - <?php
484   - foreach ($materiel->emprunts as $emprunts) :
485   - $type = 'Externe';
486   - $lieu = $emprunts['laboratoire'];
487   - if ($emprunts['emprunt_interne'] == 1) {
488   - $type = 'Interne';
489   - $lieu = $sites->find()->where([
490   - 'id =' => h($emprunts->site_id)
491   - ])->first()['nom'] . '-' . h($emprunts->e_lieu_detail);
492   - }
493   - ?>
494   - <tr>
495   - <td class="actions"
496   - style="padding: 6px 0; text-align: left;">
497   - <?php
498   - if (($role == 'Utilisateur' && (in_array($username, [
499   - $materiel->nom_createur,
500   - $materiel->nom_responsable
501   - ]))) || (in_array($role, [
502   - 'Administration',
503   - 'Administration Plus',
504   - 'Super Administrateur'
505   - ])) || ($role == 'Responsable' && ((isset($userConnected->groupes_metier_id) && $userConnected->groupes_metier_id != $idGmNa && $materiel->groupes_metier_id == $userConnected->groupes_metier_id) || (isset($userConnected->groupe_thematique_id) && $userConnected->groupe_thematique_id != $idGtNa && $materiel->groupes_thematique_id == $userConnected->groupe_thematique_id)))) {
506   - ?>
507   - <?=$this->Html->link(__('<i class="icon-pencil"></i>'), ['controller' => 'Emprunts','action' => 'edit',$emprunts->id], ['escape' => false,'style' => 'margin:0'])?>
508   - <?=$this->Form->postLink(__('<i class="icon-trash"></i>'), ['controller' => 'Emprunts','action' => 'delete',$emprunts->id], ['escape' => false,'style' => 'margin:0','confirm' => __('Êtes-vous sur de vouloir supprimer # {0}?', $emprunts->id)])?>
509   - <?php
510   - }
511   - ?>
512   - </td>
513   - <td><?=$this->Html->link('Emprunt ' . $emprunts->id, ['controller' => 'emprunts','action' => 'view',$emprunts->id])?></td>
514   - <td><?=h($emprunts->nom_emprunteur)?></td>
515   - <td><?=h($type)?></td>
516   - <td><?=h($lieu)?></td>
517   - <td><?=h($emprunts->date_emprunt)?></td>
518   - <td><?=h($emprunts->date_retour_emprunt)?></td>
519   - </tr>
520   - <?php
521   - endforeach
522   - ;
523   - ?>
524   - </table>
525   - <?php
526   - } else {
527   - echo 'Aucun emprunt pour ce matériel.';
528   - }
529   - ?>
530   - </div>
531   -
  518 +
532 519  
  520 + <!-- EMPRUNTS -->
  521 + <h3 id="t_emprunts" style="cursor: pointer;">
  522 + <i class="icon-chevron-down" style="font-size: 14px;" id="i_emprunts"></i>
  523 + <span style="text-decoration: underline;">Emprunt(s) du matériel (<?=count($materiel->emprunts)?>)</span>
  524 + </h3>
  525 + <div id="emprunts" style="margin-bottom: 20px;">
  526 + <?php if (! empty($materiel->emprunts)) { ?>
  527 + <table>
  528 + <tr>
  529 + <th class="actions"><?=__('')?></th>
  530 + <th><?=__('N°')?></th>
  531 + <th><?=__('Emprunteur')?></th>
  532 + <th><?=__('Type d\'Emprunt')?></th>
  533 + <th><?=__('Où')?></th>
  534 + <th><?=__('Date de l\'emprunt')?></th>
  535 + <th><?=__('Date de retour')?></th>
  536 + </tr>
  537 + <?php foreach ($materiel->emprunts as $emprunts) :
  538 + $type = 'Externe';
  539 + $lieu = $emprunts['laboratoire'];
  540 + if ($emprunts['emprunt_interne'] == 1) {
  541 + $type = 'Interne';
  542 + $lieu = $sites->find()->where([
  543 + 'id =' => h($emprunts->site_id)
  544 + ])->first()['nom'] . '-' . h($emprunts->e_lieu_detail);
  545 + }
  546 + ?>
  547 + <tr>
  548 + <td class="actions" style="padding: 6px 0; text-align: left;">
  549 + <?php
  550 + if (
  551 + in_array($role, ['Administration','Administration Plus','Super Administrateur'])
  552 + ||
  553 + (
  554 + $role == 'Utilisateur'
  555 + && in_array($username, [$materiel->nom_createur,$materiel->nom_responsable])
  556 + )
  557 + || (
  558 + $role == 'Responsable'
  559 + && (
  560 + (
  561 + isset($userConnected->groupes_metier_id)
  562 + && $userConnected->groupes_metier_id != $idGmNa
  563 + && $materiel->groupes_metier_id == $userConnected->groupes_metier_id
  564 + )
  565 + ||
  566 + (
  567 + isset($userConnected->groupe_thematique_id)
  568 + && $userConnected->groupe_thematique_id != $idGtNa
  569 + && $materiel->groupes_thematique_id == $userConnected->groupe_thematique_id
  570 + )
  571 + )
  572 + )
  573 + ) {
  574 + echo $this->Html->link(__('<i class="icon-pencil"></i>'), ['controller' => 'Emprunts','action' => 'edit',$emprunts->id], ['escape' => false,'style' => 'margin:0']);
  575 + echo $this->Form->postLink(__('<i class="icon-trash"></i>'), ['controller' => 'Emprunts','action' => 'delete',$emprunts->id], ['escape' => false,'style' => 'margin:0','confirm' => __('Êtes-vous sur de vouloir supprimer # {0}?', $emprunts->id)]);
  576 + }
  577 + ?>
  578 + </td>
  579 + <td><?=$this->Html->link('Emprunt ' . $emprunts->id, ['controller' => 'emprunts','action' => 'view',$emprunts->id])?></td>
  580 + <td><?=h($emprunts->nom_emprunteur)?></td>
  581 + <td><?=h($type)?></td>
  582 + <td><?=h($lieu)?></td>
  583 + <td><?=h($emprunts->date_emprunt)?></td>
  584 + <td><?=h($emprunts->date_retour_emprunt)?></td>
  585 + </tr>
  586 + <?php endforeach;?>
  587 + </table>
533 588 <?php
534   - $nbFic = count($materiel->documents);
535   - ?>
  589 + } else {
  590 + echo 'Aucun emprunt pour ce matériel.';
  591 + }
  592 + ?>
  593 + </div> <!-- EMPRUNTS -->
536 594  
537 595  
538   - <h3 id="t_fichiers" style="cursor: pointer;">
539   - <i class="icon-chevron-down" style="font-size: 14px;"
540   - id="i_fichiers"></i> <span style="text-decoration: underline;">Fichier(s) lié(s) au matériel (<?=$nbFic?>)</span>
541   - </h3>
542   - <div id="fichiers" style="margin-bottom: 20px;">
543   -
544   - <?php
545   -
546   - if ($nbFic != 0) {
547   - ?>
548   - <table>
549   - <tr>
550   - <th class="actions"><?=__('')?></th>
551   - <th><?=__('Nom')?></th>
552   - <th><?=__('Type')?></th>
553   - <th><?=__('Miniature')?></th>
554   - </tr>
555   - <?php
556   - foreach ($materiel->documents as $documents) :
557   - if ($documents->photo) {
558   - $p = 'Oui';
559   - } else {
560   - $p = '';
561   - }
562   - $type = $typeDocuments->find()->where([
563   - 'id =' => h($documents->type_document_id)
564   - ])->first()['nom'];
565   - ?>
566   - <tr>
567   - <td class="actions"
568   - style="padding: 6px 0; text-align: left;">
569   - <?php
570   - if ($documents->photo) {
571   - echo $this->Html->link(__('<i class="icon-download-alt"></i>'), '/webroot/img/photos/' . $documents->id . '.' . $documents->type_doc, [
572   - 'title' => 'Télécharger',
573   - 'style' => 'margin:0',
574   - 'escape' => false
575   - ]);
576   - } else {
577   - echo $this->Html->link(__('<i class="icon-download-alt"></i>'), '/webroot/files/' . $documents->id . '.' . $documents->type_doc, [
578   - 'title' => 'Télécharger',
579   - 'style' => 'margin:0',
580   - 'escape' => false
581   - ]);
582   - }
583   - if (($role == 'Utilisateur' && (in_array($username, [
584   - $materiel->nom_createur,
585   - $materiel->nom_responsable
586   - ]))) || (in_array($role, [
587   - 'Administration',
588   - 'Administration Plus',
589   - 'Super Administrateur'
590   - ])) || ($role == 'Responsable' && ((isset($userConnected->groupes_metier_id) && $userConnected->groupes_metier_id != $idGmNa && $materiel->groupes_metier_id == $userConnected->groupes_metier_id) || (isset($userConnected->groupe_thematique_id) && $userConnected->groupe_thematique_id != $idGtNa && $materiel->groupes_thematique_id == $userConnected->groupe_thematique_id)))) {
591   - ?>
592   - <?=$this->Html->link(__('<i class="icon-pencil"></i>'), ['controller' => 'Documents','action' => 'edit',$documents->id], ['escape' => false,'style' => 'margin:0'])?>
593   - <?=$this->Form->postLink(__('<i class="icon-trash"></i>'), ['controller' => 'Documents','action' => 'delete',$documents->id], ['escape' => false,'style' => 'margin:0','confirm' => __('Êtes-vous sur de vouloir supprimer # {0}?', $documents->id)])?>
  596 + <!-- FICHIERS liés -->
  597 + <?php $nbFic = count($materiel->documents); ?>
  598 + <h3 id="t_fichiers" style="cursor: pointer;">
  599 + <i class="icon-chevron-down" style="font-size: 14px;" id="i_fichiers"></i>
  600 + <span style="text-decoration: underline;">Fichier(s) lié(s) au matériel (<?=$nbFic?>)</span>
  601 + </h3>
  602 + <div id="fichiers" style="margin-bottom: 20px;">
  603 + <?php if ($nbFic != 0) { ?>
  604 + <table>
  605 + <tr>
  606 + <th class="actions"><?=__('')?></th>
  607 + <th><?=__('Nom')?></th>
  608 + <th><?=__('Type')?></th>
  609 + <th><?=__('Miniature')?></th>
  610 + </tr>
  611 + <?php
  612 + foreach ($materiel->documents as $documents) :
  613 + $p = ($documents->photo) ? 'Oui' : '';
  614 + $type = $typeDocuments->find()->where([
  615 + 'id =' => h($documents->type_document_id)
  616 + ])->first()['nom'];
  617 + ?>
  618 + <tr>
  619 + <td class="actions" style="padding: 6px 0; text-align: left;">
  620 + <?php
  621 + if ($documents->photo) {
  622 + echo $this->Html->link(__('<i class="icon-download-alt"></i>'), '/webroot/img/photos/' . $documents->id . '.' . $documents->type_doc, [
  623 + 'title' => 'Télécharger',
  624 + 'style' => 'margin:0',
  625 + 'escape' => false
  626 + ]);
  627 + } else {
  628 + echo $this->Html->link(__('<i class="icon-download-alt"></i>'), '/webroot/files/' . $documents->id . '.' . $documents->type_doc, [
  629 + 'title' => 'Télécharger',
  630 + 'style' => 'margin:0',
  631 + 'escape' => false
  632 + ]);
  633 + }
  634 + if (
  635 + in_array($role, ['Administration','Administration Plus','Super Administrateur'])
  636 + ||
  637 + (
  638 + $role == 'Utilisateur'
  639 + && in_array($username, [$materiel->nom_createur,$materiel->nom_responsable])
  640 + )
  641 + ||
  642 + (
  643 + $role == 'Responsable'
  644 + && (
  645 + (
  646 + isset($userConnected->groupes_metier_id)
  647 + && $userConnected->groupes_metier_id != $idGmNa
  648 + && $materiel->groupes_metier_id == $userConnected->groupes_metier_id
  649 + )
  650 + ||
  651 + (
  652 + isset($userConnected->groupe_thematique_id)
  653 + && $userConnected->groupe_thematique_id != $idGtNa
  654 + && $materiel->groupes_thematique_id == $userConnected->groupe_thematique_id
  655 + )
  656 + )
  657 + )
  658 + ) {
  659 + echo $this->Html->link(__('<i class="icon-pencil"></i>'), ['controller' => 'Documents','action' => 'edit',$documents->id], ['escape' => false,'style' => 'margin:0']);
  660 + echo $this->Form->postLink(__('<i class="icon-trash"></i>'), ['controller' => 'Documents','action' => 'delete',$documents->id], ['escape' => false,'style' => 'margin:0','confirm' => __('Êtes-vous sur de vouloir supprimer # {0}?', $documents->id)]);
  661 + }
  662 + ?>
  663 + </td>
  664 + <td><?=$this->Html->link($documents->nom, ['controller' => 'documents','action' => 'view',$documents->id])?></td>
  665 + <td><?=$type?></td>
  666 + <td><?=$p?></td>
  667 + </tr>
594 668 <?php
595   - }
596   - ?>
597   - </td>
598   - <td><?=$this->Html->link($documents->nom, ['controller' => 'documents','action' => 'view',$documents->id])?></td>
599   - <td><?=$type?></td>
600   - <td><?=$p?></td>
601   - </tr>
602   - <?php
603   - endforeach
604   - ;
605   - ?>
606   - </table>
607   - <?php
608   - } else {
609   - echo 'Aucun fichier pour ce matériel.';
610   - }
611   - ?>
612   - </div>
613   - </div>
614   - <div class="actions">
615   - <?php
  669 + endforeach;
  670 + ?>
  671 + </table>
  672 + <?php } else echo 'Aucun fichier pour ce matériel.'; ?>
  673 + </div> <!-- FICHIERS liés -->
616 674  
617   - echo $this->element('menu')?>
618   - <?php
619   - echo $this->element('menu_view', [
620   - 'pluralHumanName' => 'Matériels',
621   - 'singularHumanName' => 'Matériel',
622   - 'lien' => $materiel->id
623   - ])?>
624   - </div>
625 675 \ No newline at end of file
  676 +</div> <!-- "materiels view" -->
  677 +
  678 +
  679 + <!-- MENU -->
  680 + <div class="actions">
  681 + <?php echo $this->element('menu')?>
  682 + <?php echo $this->element('menu_view', [
  683 + 'pluralHumanName' => 'Matériels',
  684 + 'singularHumanName' => 'Matériel',
  685 + 'lien' => $materiel->id
  686 + ])?>
  687 + </div>
626 688 \ No newline at end of file
... ...