Blame view

src/Template/Materiels/index.ctp 10.4 KB
64fba1a2   Alexandre   Base du projet : ...
1
<div class="materiels index">
4260780b   Alexandre   Migration vue, co...
2
<?php echo '<h2><i class="icon-list"></i> Liste des matériels ('.$nbMateriels.')</h2>'; ?>
5d0d680d   Alexandre   Version: 2.2.0
3
4
5
6
7
8
9
10
11
12
13
14

<div class="actions" style="width: 100%; float: none; padding: 0 0; ">
<?php 
echo '<p>';
echo $this->Html->link ( '<i class="icon-plus"></i> Nouveau Matériel',
		[
				'action' => 'add'
		], [
				'title' => 'Ajouter un matériel',
				'escape' => false
		]);
echo '</p>';
04a6b875   Alexandre   Version: 2.4.2.0
15
16

if(in_array($role, ['Administration', 'Administration Plus', 'Super Administrateur'])) {
5d0d680d   Alexandre   Version: 2.2.0
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
echo '<p>';
echo "Afficher les matériels : ";
echo '</br>';
echo '</br>';
$b_all = $b_cre = $b_val = $b_toarc = $b_arc = '';
$SELECTED = '<i class="icon-ok"></i>';
if (isset ( $STATUS )) {
	if ($STATUS == 'CREATED')
		$b_cre = $SELECTED;
		else if ($STATUS == 'VALIDATED')
			$b_val = $SELECTED;
			else if ($STATUS == 'TOBEARCHIVED')
				$b_toarc = $SELECTED;
				else if ($STATUS == 'ARCHIVED')
					$b_arc = $SELECTED;
} else
	$b_all = $SELECTED;

	// Affichage des boutons en haut de la page
	echo $this->Html->link ( $b_all . ' Tous', [
			'action' => 'index'
	], [
			'title' => 'Tous',
			'style' => 'margin-right: 5px',
			'escape' => false
	] );
	echo $this->Html->link ( $b_cre . ' A valider', [
			'action' => 'index',
			'CREATED'
	], [
			'title' => 'Liste des matériels créés',
			'style' => 'margin-right: 5px',
			'escape' => false
	] );
	echo $this->Html->link ( $b_val . ' Validés', [
			'action' => 'index',
			'VALIDATED'
	], [
			'title' => 'Liste des materiels que l\'on peut archiver',
			'style' => 'margin-right: 5px',
			'escape' => false
	]);
	echo $this->Html->link ( $b_toarc . ' A sortir', [
			'action' => 'index',
			'TOBEARCHIVED'
	], [
			'title' => 'A sortir de l\'inventaire',
			'style' => 'margin-right: 5px',
			'escape' => false
	]);
	echo $this->Html->link ( $b_arc . ' Archivés', [
			'action' => 'index',
			'ARCHIVED'
	], [
			'title' => 'A sortir de l\'inventaire',
			'style' => 'margin-right: 5px',
			'escape' => false
	]);
	echo '</p>';

		// ACTIONS : buttons "Tout selectionner", "Tout decocher"
		// - show only with "A valider" and "A sortir"
		if (isset ( $STATUS ) && $nbMateriels != 0) {
			echo $this->Html->link ( '<i class="icon-check"></i> Tout cocher', '#all', [
					'onclick' => 'selectAll()',
					'title' => 'Sélectionner tous les matériels',
					'style' => ': 400px; margin-right: 50px',
					'escape' => false
			]);
			echo $this->Html->link ( '<i class="icon-check-empty"></i> Tout décocher', '#none', [
					'onclick' => 'selectNone()',
					'title' => 'Sélectionner aucun matériel',
					'style' => 'margin-right: 50px',
					'escape' => false
			]);
		}
04a6b875   Alexandre   Version: 2.4.2.0
93
	}
5d0d680d   Alexandre   Version: 2.2.0
94
95
96
97
98
99
100
101
102
103
104
105
?>
</div>

<?php if ($nbMateriels != 0) { ?>

<?= $this->Form->create('materiels', ['url' => '/materiels/execActions']) ?>
	
	<?php if(isset($STATUS)) {
		echo $this->Form->hidden ( 'what', ['value' => $STATUS]);
	}
	?>
	
6c4edfa3   Alexandre   First Commit LabI...
106
107
108
    <table cellpadding="0" cellspacing="0">
        <thead>
            <tr>
5d0d680d   Alexandre   Version: 2.2.0
109
                <?php if (isset($STATUS)) { echo '<th></th>'; }?>
64fba1a2   Alexandre   Base du projet : ...
110
111
112
113
114
115
116
117
118
119
                <th><?= $this->Paginator->sort('designation','Désignation') ?></th>
                <th><?= $this->Paginator->sort('numero_laboratoire', 'N° interne (labo)') ?></th>
                <th><?= $this->Paginator->sort('categorie_id', 'Catégorie') ?></th>
                <th><?= $this->Paginator->sort('organisme_id', 'Org.') ?></th>
                <th><?= $this->Paginator->sort('numero_inventaire_organisme', 'N° Invent. Org.') ?></th>
                <th><?= $this->Paginator->sort('nom_responsable', 'Responsable') ?></th>
                <th><?= $this->Paginator->sort('status', 'Statut') ?></th>
                <th><?= $this->Paginator->sort('date_acquisition', 'Date Achat') ?></th>
                <th><?= $this->Paginator->sort('etiquette', 'Et') ?></th>
                <th class="actions"><?= __('') ?></th>
a97b5772   Alexandre   Migration fonctio...
120
121
                <th class="actions"><?= __('') ?></th>
                <th class="actions"><?= __('') ?></th>
6c4edfa3   Alexandre   First Commit LabI...
122
123
124
125
126
            </tr>
        </thead>
        <tbody>
            <?php foreach ($materiels as $materiel): ?>
            <tr>
5d0d680d   Alexandre   Version: 2.2.0
127
128
129
130
131
132
133
134
135
136
            	<?php if (isset($STATUS)) {
            	 echo '<td class="smallText">'.$this->Form->checkbox($materiel->id, ['style' => 'margin: 3px','id' => $materiel->id]).'</td>' ;
 				}
 				?>
 				<td class="smallText"><?= $materiel->has('designation') ? $this->Html->link($materiel->designation, ['controller' => 'Materiels', 'action' => 'view', $materiel->id]) : '' ?></td>
                <td class="smallText"><?= h($materiel->numero_laboratoire) ?></td>
                <td class="smallText"><?= $materiel->has('category') ? h($materiel->category->nom) : '' ?></td>
                <td class="smallText"><?= $materiel->has('organisme') ? h($materiel->organisme->nom) : '' ?></td>
                <td class="smallText"><?= h($materiel->numero_inventaire_organisme) ?></td>
                <td class="smallText"><?= h($materiel->nom_responsable) ?></td>
f7804bf9   Alexandre   Version: 2.2.5.1
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
                <?php 
                if (h($materiel->status) == 'CREATED') {
                	$statut = 'C';
                }
                if (h($materiel->status) == 'VALIDATED') {
                	$statut = 'V';
                }
                if (h($materiel->status) == 'TOBEARCHIVED') {
                	$statut = 'TBA';
                }
                if (h($materiel->status) == 'ARCHIVED') {
                	$statut = 'A';
                }
                ?>
                <td class="smallText"><?= $statut ?></td>
5d0d680d   Alexandre   Version: 2.2.0
152
153
                <td class="smallText"><?= h($materiel->date_acquisition) ?></td>
                <td class="smallText"><?php if (h($materiel->etiquette) == '1') { echo 'Y'; } else { echo 'N'; } ?></td>
64fba1a2   Alexandre   Base du projet : ...
154
155

                <td class="actions" style="padding: 6px 0;">
04a6b875   Alexandre   Version: 2.4.2.0
156
157
158
                <?php if (in_array($materiel->status, ['CREATED', 'VALIDATED'])): 
                	  if(($role == 'Utilisateur' && (in_array($username, [$materiel->nom_createur, $materiel->nom_responsable]))) || (in_array($role, ['Responsable', 'Administration', 'Administration Plus', 'Super Administrateur']))) {
				?>
64fba1a2   Alexandre   Base du projet : ...
159
                    <?= $this->Html->link(__('<i class="icon-pencil"></i>'), ['action' => 'edit', $materiel->id], ['title' => 'Editer', 'style' => 'margin: 0 2px', 'escape' => false ]) ?>
04a6b875   Alexandre   Version: 2.4.2.0
160
                <?php } endif; ?>
a97b5772   Alexandre   Migration fonctio...
161
                </td>
04a6b875   Alexandre   Version: 2.4.2.0
162
                
a97b5772   Alexandre   Migration fonctio...
163
                <td class="actions" style="padding: 6px 0;">
64fba1a2   Alexandre   Base du projet : ...
164
                    <?php 
04a6b875   Alexandre   Version: 2.4.2.0
165
166
                    if(in_array($role, ['Responsable', 'Administration', 'Administration Plus', 'Super Administrateur'])) {
                    	
a97b5772   Alexandre   Migration fonctio...
167
                    if(h($materiel->status) == 'CREATED') {
63a22db6   Alexandre   Version: 2.2.5.0
168
                    	echo $this->Html->link('<i class="icon-ok-sign"></i>',
a97b5772   Alexandre   Migration fonctio...
169
170
                    			['action' => 'statusValidated', $materiel->id],
                    			['title' => 'Valider', 'style' => 'margin: 0 2px', 'escape' => false,
63a22db6   Alexandre   Version: 2.2.5.0
171
                    			'confirm' => 'Êtes-vous sur de vouloir validé '.$materiel->designation.' ?']);
a97b5772   Alexandre   Migration fonctio...
172
173
                    } 
                    else if (h($materiel->status) == 'VALIDATED' && h($materiel->nom_responsable) == $username) {
63a22db6   Alexandre   Version: 2.2.5.0
174
                    	echo $this->Html->link('<i class="icon-inbox"></i>',
a97b5772   Alexandre   Migration fonctio...
175
176
                    			['action' => 'statusToBeArchived', $materiel->id],
                    			['title' => 'Demander la sortie de l\'inventaire', 'style' => 'margin: 0 2px', 'escape' => false,
63a22db6   Alexandre   Version: 2.2.5.0
177
                    			'confirm' => 'Êtes-vous sur de vouloir faire une demande d\'archive '.$materiel->designation.' ?']);
a97b5772   Alexandre   Migration fonctio...
178
179
                    	
                    }
04a6b875   Alexandre   Version: 2.4.2.0
180
                    else if (h($materiel->status) == 'TOBEARCHIVED' && $role != 'Responsable'){
63a22db6   Alexandre   Version: 2.2.5.0
181
                    	echo $this->Html->link('<i class="icon-inbox"></i>',
a97b5772   Alexandre   Migration fonctio...
182
183
                    			['action' => 'statusArchived', $materiel->id],
                    			['title' => 'Sortir de l\'inventaire', 'style' => 'margin: 0 2px', 'escape' => false,
63a22db6   Alexandre   Version: 2.2.5.0
184
                    			'confirm' => 'Êtes-vous sur de vouloir archivé '.$materiel->designation.' ?']);
a97b5772   Alexandre   Migration fonctio...
185
                    }
04a6b875   Alexandre   Version: 2.4.2.0
186
187
                    
                    }
a97b5772   Alexandre   Migration fonctio...
188
                   
64fba1a2   Alexandre   Base du projet : ...
189
                    ?>
a97b5772   Alexandre   Migration fonctio...
190
191
192
193
                </td>
                <td class="actions" style="padding: 6px 0;">
                   <?php 
                   if (h($materiel->status) == 'CREATED') {
04a6b875   Alexandre   Version: 2.4.2.0
194
195
196
                   	if($role != 'Utilisateur' || in_array($username, [$materiel->nom_createur, $materiel->nom_responsable])) {
                   		echo $this->Html->link(__('<i class="icon-trash"></i>'), ['action' => 'delete', $materiel->id], ['title' => 'Supprimer', 'style' => 'margin: 0 2px', 'escape' => false, 'confirm' => __('Êtes-vous sur de vouloir supprimer # {0}?', $materiel->designation)]);
                    }
a97b5772   Alexandre   Migration fonctio...
197
198
                   }
                   ?>
6c4edfa3   Alexandre   First Commit LabI...
199
200
201
202
203
                </td>
            </tr>
            <?php endforeach; ?>
        </tbody>
    </table>
64fba1a2   Alexandre   Base du projet : ...
204
    
5d0d680d   Alexandre   Version: 2.2.0
205
206
207
208
209
210
211
212
213
214
215
216
217
    <?php 
		if (isset ( $STATUS )) {
			switch ($STATUS) {
				case 'CREATED' :
					$action = 'Valider les';
					break;
				case 'VALIDATED' :
					$action = "Demander l'archivage des";
					break;
				case 'TOBEARCHIVED' :
					$action = "Sortir les";
					break;
			}
4260780b   Alexandre   Migration vue, co...
218

5d0d680d   Alexandre   Version: 2.2.0
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
			if ($STATUS != 'ARCHIVED') {
				echo $this->Form->submit ( $action . ' matériels cochés', [
							'name' => 'updateSelectedStatus',
							'id' => 'updateSelectedStatus',
							'style' => 'margin: 0px' 
				]);
				echo "<br /><br />" ;
			}
				echo $this->Form->submit ( 'Exporter la liste des matériels cochés', [
					'name' => 'export',
					'id' => 'export',
					'style' => 'margin: 0px;' 
				]);
			echo "<br /><br />" ;
		}
		
		
04a6b875   Alexandre   Version: 2.4.2.0
236
		if(in_array($role, ['Responsable', 'Administration', 'Administration Plus', 'Super Administrateur'])):
5d0d680d   Alexandre   Version: 2.2.0
237
238
239
240
241
		echo $this->Form->submit('Exporter la liste complete (toutes les pages)', [
				'name' => 'exportAll',
				'id' => 'exportAll',
				'style' => 'margin: 0px;' 
		]);
04a6b875   Alexandre   Version: 2.4.2.0
242
		endif;
5d0d680d   Alexandre   Version: 2.2.0
243
244
    ?>
		
64fba1a2   Alexandre   Base du projet : ...
245
    <div class="paging" style="color: black;">
4260780b   Alexandre   Migration vue, co...
246
      		<?= $this->Paginator->counter(['format' => 'Page {{page}} sur {{pages}}']) ?>
64fba1a2   Alexandre   Base du projet : ...
247
248
249
250
251
    		<?= $this->Paginator->first('<< ' . __(''), ['class' => 'prev']) ?>
            <?= $this->Paginator->prev('< ' . __(''), ['class' => 'prev disabled']) ?>
            <?= $this->Paginator->numbers(['separator' => '']) ?>
            <?= $this->Paginator->next(__('') . ' >', ['class' => 'next disabled']) ?>
            <?= $this->Paginator->last(__('') . ' >>', ['class' => 'next']) ?>
6c4edfa3   Alexandre   First Commit LabI...
252
    </div>
5d0d680d   Alexandre   Version: 2.2.0
253
254
255
256
    <?= $this->Form->end()?>
    <?php 
	} else { echo 'Aucun matériel'; }
    ?>
6c4edfa3   Alexandre   First Commit LabI...
257
</div>
4260780b   Alexandre   Migration vue, co...
258
259
260
261
262
263
264
265


    	<div class="actions">
			<?php echo $this->element('menu') ?>
			<?php echo $this->element('menu_index', 
			[ 'pluralHumanName' => 'Matériels',
			'singularHumanName' => 'Matériel' ]) ?>
		</div>