documents as $documents) :
//et si le document est la photo liée, on l'affiche, pour cela
if($documents->photo) {
//on récupère le doc
$photo = $documents;
//on reconstitue le nom a partir des paramètres (idmat_nom_id.extension)
$nomPhoto = $photo->materiel_id . "_" . $photo->nom . "_" . $photo->id . "." .$photo->type_doc;
//Et si la photo n'est pas vide on l'affiche
if(!empty($photo)) {
echo $this->Html->image('photos/'.$nomPhoto, [
//si il y a une erreur sur le nom affiche le texte alternatif
'alt' => 'Photo du matériel',
'style' => 'max-width: 300px; text-align: center;'
]);
}
}
endforeach ;
// Url transformed in QrCode
$this->request->session()->write("qrUrl", $this->request->env('SERVER_NAME') . $this->request->env('REQUEST_URI'));
$this->requestAction('/QrCodes/creer/');
echo $this->Html->image('qrcodes/' . $this->request->session()
->read("filename"), [
'alt' => 'QrCode : ' . $materiel->numero_laboratoire,
'style' => 'float: right'
]);
?>
status, ['CREATED','VALIDATED']) ) {
if ($IS_CREATED || $IS_VALIDATED) {
if ($USER_IS_ADMIN_OR_MORE || $USER_IS_UTILISATEUR_AND_CREATOR_OR_OWNER || $USER_IS_RESPONSABLE_AND_SAME_GROUP || $USER_IS_RESPONSABLE_AND_CREATOR_OR_OWNER)/*
//in_array($role, ['Administration','Administration Plus','Super Administrateur'])
||
(
//$role == 'Utilisateur'
//&& in_array($username, [$materiel->nom_createur, $materiel->nom_responsable])
)
||
(
$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
)
)
)
*/
echo $this->Html->link(__('
Editer ce matériel'), [
'action' => 'edit',
$materiel->id
], [
'escape' => false,
'onclick' => 'return true;',
'style' => 'margin-right: 10px'
]);
}
/*
* // TOBEARCHIVED+
* else {
* //if (in_array($role, ['Administration Plus','Super Administrateur'])) {
* if ($USER_IS_ADMIN_OR_MORE) {
* echo $this->Html->link(
* __('
Editer ce matériel'),
* ['action' => 'edit', $materiel->id],
* ['escape' => false, 'onclick' => 'return true;', 'style' => 'margin-right: 10px']
* );
* }
* }
*/
// VALIDATED
// if ($materiel->status == 'VALIDATED') {
if ($IS_VALIDATED) {
// BOUTON NOUVEAU SUIVI
echo $this->Html->link('
Nouv. Suivi', [
'controller' => 'suivis',
'action' => 'add',
$materiel->id
], [
'title' => 'Faire un nouveau suivi de ce matériel',
'style' => 'margin-right: 10px',
'escape' => false
]); // End link
// BOUTON NOUVEL EMPRUNT
echo $this->Html->link('
Nouv. Emprunt', [
'controller' => 'emprunts',
'action' => 'add',
$materiel->id
], [
'title' => 'Faire un nouvel emprunt de ce matériel',
'style' => 'margin-right: 10px',
'escape' => false
]); // End link
}
// BOUTON "Lier un Doc"
if ($USER_IS_ADMIN_OR_MORE || $USER_IS_UTILISATEUR_AND_CREATOR_OR_OWNER || $USER_IS_RESPONSABLE_AND_SAME_GROUP || $USER_IS_RESPONSABLE_AND_CREATOR_OR_OWNER) {
/*
* if (
* in_array($role, ['Administration','Administration Plus','Super Administrateur'])
* ||
* (
* $role == 'Utilisateur'
* && in_array($username, [$materiel->nom_createur,$materiel->nom_responsable])
* )
* || (
* $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
* )
* )
* )
* ) {
*/
echo $this->Html->link('
Lier un Doc.', [
'controller' => 'documents',
'action' => 'add',
$materiel->id,
'mat'
], [
'title' => 'Attacher un Doc. à ce matériel',
'style' => 'margin-right: 10px',
'escape' => false
]);
// BOUTON "photo"
if ($materiel->photo_id != null) {
echo $this->Html->link('
Remplacer la photo.', [
'controller' => 'documents',
'action' => 'add',
$materiel->id,
'mat',
'photo'
], [
'title' => 'Remplacer la photo de ce matériel',
'style' => 'margin-right: 10px',
'escape' => false
]);
} else {
echo $this->Html->link('
Lier une photo.', [
'controller' => 'documents',
'action' => 'add',
$materiel->id,
'mat',
'photo'
], [
'title' => 'Attacher une photo à ce matériel',
'style' => 'margin-right: 10px',
'escape' => false
]);
}
} // BOUTON Lier un doc
// Doc admission et sortie (admin+)
if ($USER_IS_ADMIN_OR_MORE) {
// if (in_array($role, ['Administration','Administration Plus','Super Administrateur'])) {
// Doc admission (admin only)
if ($IS_CREATED || $IS_VALIDATED) {
// if (($materiel->status == 'VALIDATED') || ($materiel->status == 'CREATED')) {
echo $this->Html->link('
Doc. admission', [
'controller' => 'documents',
'action' => 'admission',
$materiel->numero_laboratoire
], [
'title' => 'Voir le document d\'admission',
'style' => 'margin-right: 10px',
'escape' => false
]);
}
// Doc sortie (admin only)
else if ($IS_ARCHIVED || $IS_TOBEARCHIVED) {
// else if (($materiel->status == 'ARCHIVED') || ($materiel->status == 'TOBEARCHIVED')) {
echo $this->Html->link('
Doc. sortie', [
'controller' => 'documents',
'action' => 'sortie',
$materiel->numero_laboratoire
], [
'title' => 'Voir le document de sortie',
'style' => 'margin-right: 10px',
'escape' => false
]);
}
}
echo "
";
// BOUTON changement statut
if ($USER_IS_ADMIN_OR_MORE || $USER_IS_RESPONSABLE_AND_SAME_GROUP) {
/*
* if (
* in_array($role, ['Administration','Administration Plus','Super Administrateur'])
* || (
* $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
* )
* )
* )
* ) {
*/
// 2) Bouton de changement de statut : Valider, Demander archivage, ou Archiver
// switch ($materiel->status) {
switch ($status) {
// case "CREATED" :
case $CREATED:
// Bouton VALIDER
echo $this->Html->link('
Valider', [
'action' => 'statusValidated',
$materiel->id,
'view'
], [
'title' => 'Valider le matériel',
'style' => 'margin-right: 10px; color: red',
'escape' => false
]);
break;
// case "VALIDATED" or more :
case $VALIDATED:
case $TOBEARCHIVED:
case $ARCHIVED:
// Bouton DE-VALIDER (invalider)
echo $this->Html->link('
Dé-valider', [
'action' => 'statusCreated',
$materiel->id,
'view'
], [
'title' => 'dé-valider le matériel (le repasser au statut Créé)',
// 'style' => 'margin-right: 10px; background: red; color: white',
'style' => 'margin-right: 10px; color: red',
'escape' => false
]);
if ($status == $VALIDATED) {
// Bouton TBA
echo $this->Html->link('
Demander sortie', [
'action' => 'statusToBeArchived',
$materiel->id,
'view'
], [
'title' => 'Demander la sortie de l\'inventaire',
'style' => 'margin-right: 10px; color: red',
'escape' => false
]);
} else if ($status == $TOBEARCHIVED) {
// Bouton ARCHIVER
// if ($role != 'Responsable' && $role != 'Super Administrateur') {
if ($role != 'Responsable') {
echo $this->Html->link('
Sortie inventaire', [
'action' => 'statusArchived',
$materiel->id,
'view'
], [
'title' => 'Sortir définitivement de l\'inventaire',
'style' => 'margin-right: 10px; color: red',
'escape' => false,
'confirm' => 'Êtes-vous sur de bien vouloir archiver ' . $materiel->designation . ' ?'
]);
}
}
break;
} // switch
} // BOUTON changement statut
// BOUTON Copier
echo $this->Html->link('
Copier ce matériel', [
'controller' => 'materiels',
'action' => 'add',
$materiel->id
], [
'title' => 'Copier ce matériel',
'style' => 'margin-right: 10px; margin-top: 10px; display: inline-block',
'escape' => false
]);
// BOUTON ETIQUETTE (si imprimante disponible)
if ($IS_VALIDATED && $configuration->hasPrinter && in_array($role, [
'Administration',
'Administration Plus',
'Super Administrateur'
])) {
// echo "
";
// echo '
';
// - Bouton "Imprimer sur un ruban"
$action = 'Impr. étiquette';
echo $this->Html->link(' ' . $action, [
'action' => 'printLabelRuban',
h($materiel->id),
'view'
], [
'title' => 'Imprimer sur un ruban 12mm',
'style' => 'margin-right: 10px',
'escape' => false,
'onclick' => 'return true;'
]);
// - Bouton "Etiquette posée"
echo $this->Html->link(' ' . (h($materiel->etiquette) ? "Etiquette NON posée sur le matériel" : "Etiquette posée sur le matériel"), [
'controller' => 'materiels',
'action' => h($materiel->etiquette) ? 'setLabelIsNotPlaced' : 'setLabelIsPlaced',
h($materiel->id),
'view'
], [
'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",
'style' => 'margin-left: 0px; margin-right: 10px',
'escape' => false
]);
// echo '
';
} // BOUTON ETIQUETTE
// BOUTON "Voir fiche matériel"
echo "
";
echo "
";
// echo '
';
echo $this->Html->link(' Fiche PDF du matériel', [
'controller' => 'documents',
'action' => 'ficheMateriel',
$materiel->numero_laboratoire
], [
'title' => 'Voir la fiche du materiel',
'style' => 'margin-right: 10px; background: green; color: white',
'escape' => false
]);
// echo '
';
// FIN DIV BOUTONS
?>