From bb6d5bedd2a20615056410a061341bd6c7a26a10 Mon Sep 17 00:00:00 2001 From: Alexandre Cases Date: Wed, 27 Apr 2016 10:45:03 +0200 Subject: [PATCH] Migration des vues "index" et "view" pour les matériels, les suivis et les emprunts. --- src/Controller/AppController.php | 34 +++++++++++++++++++++++++++++++--- src/Controller/PagesController.php | 3 +-- src/Template/Emprunts/index.ctp | 2 +- src/Template/Emprunts/view.ctp | 111 ++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------------------------- src/Template/Layout/default.ctp | 1 + src/Template/Materiels/index.ctp | 2 +- src/Template/Materiels/view.ctp | 225 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------------------------------------------------------------------------------------------------------------------------- src/Template/Suivis/index.ctp | 2 +- src/Template/Suivis/view.ctp | 122 ++++++++++++++++++++++++++++++++++++++++++-------------------------------------------------------------------------------- 9 files changed, 212 insertions(+), 290 deletions(-) diff --git a/src/Controller/AppController.php b/src/Controller/AppController.php index 7be7d5b..5519f45 100755 --- a/src/Controller/AppController.php +++ b/src/Controller/AppController.php @@ -44,21 +44,49 @@ class AppController extends Controller $this->loadComponent('RequestHandler'); $this->loadComponent('Flash'); $this->loadComponent('Auth', [ + 'authorize' => ['Controller'], 'loginRedirect' => [ 'controller' => 'Pages', - 'action' => 'display' + 'action' => 'home' ], 'logoutRedirect' => [ 'controller' => 'Pages', - 'action' => 'display', + 'action' => 'home', ] ]); } + + + /** + * @param $user + * + * Give authorization in general + * + * @return boolean + */ + public function isAuthorized($user) + { + // Super-Admin peuvent accéder à chaque action + if (isset($user['role']) && $user['role'] === 'Super Administrateur') { + return true; + } + // + if ($this->request->action === 'display') { + return true; + } + // Par défaut refuser + return false; + } + + /** + * {@inheritDoc} + * @see \Cake\Controller\Controller::beforeFilter() + */ public function beforeFilter(Event $event) { - //On donne seulement le droit d'afficher la page d'acceuil à l'utilisateur non connecté $this->Auth->allow(['display', 'add']); + $this->Auth->config('authError', "Désolé, vous n'êtes pas autorisés à accéder à cette zone."); } diff --git a/src/Controller/PagesController.php b/src/Controller/PagesController.php index 98ca848..194a1c8 100755 --- a/src/Controller/PagesController.php +++ b/src/Controller/PagesController.php @@ -62,8 +62,7 @@ class PagesController extends AppController throw new NotFoundException(); } } - - + } diff --git a/src/Template/Emprunts/index.ctp b/src/Template/Emprunts/index.ctp index 68418d8..85e5070 100755 --- a/src/Template/Emprunts/index.ctp +++ b/src/Template/Emprunts/index.ctp @@ -32,7 +32,7 @@ Html->link(__(''), ['action' => 'view', $emprunt->id], ['title' => 'Visualiser', 'style' => 'margin: 0 2px', 'escape' => false ]) ?> Html->link(__(''), ['action' => 'edit', $emprunt->id], ['title' => 'Editer', 'style' => 'margin: 0 2px', 'escape' => false ]) ?> - Form->postLink(__(''), ['action' => 'delete', $emprunt->id], ['title' => 'Supprimer', 'style' => 'margin: 0 2px', 'escape' => false ], ['confirm' => __('Êtes-vous sur de vouloir supprimer # {0}?', $emprunt->id)]) ?> + Form->postLink(__(''), ['action' => 'delete', $emprunt->id], ['title' => 'Supprimer', 'style' => 'margin: 0 2px', 'escape' => false, 'confirm' => __('Êtes-vous sur de vouloir supprimer # {0}?', $emprunt->id)]) ?> diff --git a/src/Template/Emprunts/view.ctp b/src/Template/Emprunts/view.ctp index 3a1318a..d6495c7 100755 --- a/src/Template/Emprunts/view.ctp +++ b/src/Template/Emprunts/view.ctp @@ -1,70 +1,47 @@ +'.$nom.' '.$valeur.''; +} +?> + + + +
+

Détail emprunt

+ + + + + Html->link(__(' Editer cet emprunt'), + ['action' => 'edit', $emprunt->id], + ['escape' => false,'onclick' => 'return true;'] + ); + echo $this->Form->postLink(__(' Supprimer cet emprunt'), + ['action' => 'delete', $emprunt->id], + ['style'=>'margin-left: 110px', 'escape' => false, 'confirm' => __('Êtes-vous sur de vouloir supprimer # {0}?', $emprunt->id)] + ); + + displayElement(__('Materiel concerné'), $emprunt->has('materiel') ? $this->Html->link($emprunt->materiel->designation, ['controller' => 'Materiels', 'action' => 'view', $emprunt->materiel->id]) : ''); + displayElement(__('Numéro interne (labo)'), $emprunt->has('materiel') ? h($emprunt->materiel->numero_laboratoire) : ''); + displayElement(__('Type d\'emprunt'), $emprunt->emprunt_interne ? __('Interne') : __('Externe')); + displayElement(__('Date Emprunt'), strftime("%e %B %Y", strtotime(h($emprunt->date_emprunt)))); + displayElement(__('Date Retour Emprunt'), strftime("%e %B %Y", strtotime(h($emprunt->date_retour_emprunt)))); + displayElement(__('Lieu de stockage'), h($emprunt->e_lieu_stockage).'-'.h($emprunt->e_lieu_detail)); + displayElement(__('Responsable'), h($emprunt->nom_emprunteur)); + displayElement(__('Email'), h($emprunt->email_emprunteur)); + if ($emprunt->emprunt_interne != 1) { + displayElement(__('Tel'), h($emprunt->tel)); + } + displayElement(__('Commentaire'), h($emprunt->commentaire)); + displayElement(__('Date création'), h($emprunt->created)); + displayElement(__('Nom du créateur'), h($emprunt->nom_createur)); + displayElement(__('Date modification'), h($emprunt->modified)); + displayElement(__('Nom du modificateur'), h($emprunt->nom_modificateur)); + ?> + -
-

id) ?>

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
has('materiel') ? $this->Html->link($emprunt->materiel->id, ['controller' => 'Materiels', 'action' => 'view', $emprunt->materiel->id]) : '' ?>
laboratoire) ?>
e_lieu_stockage) ?>
e_lieu_detail) ?>
nom_emprunteur) ?>
email_emprunteur) ?>
tel) ?>
commentaire) ?>
nom_createur) ?>
nom_modificateur) ?>
Number->format($emprunt->id) ?>
date_emprunt) ?>
date_retour_emprunt) ?>
created) ?>
modified) ?>
emprunt_interne ? __('Yes') : __('No'); ?>
diff --git a/src/Template/Layout/default.ctp b/src/Template/Layout/default.ctp index c0790d9..3409e76 100755 --- a/src/Template/Layout/default.ctp +++ b/src/Template/Layout/default.ctp @@ -64,6 +64,7 @@ $cakeDescription = 'Labinvent 2.0'; Flash->render()?> + Flash->render('auth') ?>
fetch('content')?>
diff --git a/src/Template/Materiels/index.ctp b/src/Template/Materiels/index.ctp index d887710..5e2773d 100755 --- a/src/Template/Materiels/index.ctp +++ b/src/Template/Materiels/index.ctp @@ -37,7 +37,7 @@ //A implementer --> bouton suppression caché si matériel validé ?> - Form->postLink(__(''), ['action' => 'delete', $materiel->id], ['title' => 'Supprimer', 'style' => 'margin: 0 2px', 'escape' => false ], ['confirm' => __('Êtes-vous sur de vouloir supprimer # {0}?', $materiel->id)]) ?> + Form->postLink(__(''), ['action' => 'delete', $materiel->id], ['title' => 'Supprimer', 'style' => 'margin: 0 2px', 'escape' => false, 'confirm' => __('Êtes-vous sur de vouloir supprimer # {0}?', $materiel->id)]) ?> diff --git a/src/Template/Materiels/view.ctp b/src/Template/Materiels/view.ctp index 56442f5..db6a338 100755 --- a/src/Template/Materiels/view.ctp +++ b/src/Template/Materiels/view.ctp @@ -1,139 +1,94 @@ -
-

id) ?>

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +'; +} +?> + +
+ +

+ status) == 'ARCHIVED') echo ' '; ?> + designation) ?> + + numero_laboratoire) ?> + status) == 'ARCHIVED') echo ' (Archivé)'; ?> + +

+ + Html->link(__(' Editer ce matériel'), + ['action' => 'edit', $materiel->id], + ['escape' => false,'onclick' => 'return true;'] + ); + echo $this->Form->postLink(__(' Supprimer ce matériel'), + ['action' => 'delete', $materiel->id], + ['style'=>'margin-left: 110px', 'escape' => false, 'confirm' => __('Êtes-vous sur de vouloir supprimer # {0}?', $materiel->id)] + ); + ?> + + +

+ + Informations +

+
+
designation) ?>
has('sur_category') ? $this->Html->link($materiel->sur_category->id, ['controller' => 'SurCategories', 'action' => 'view', $materiel->sur_category->id]) : '' ?>
has('category') ? $this->Html->link($materiel->category->id, ['controller' => 'Categories', 'action' => 'view', $materiel->category->id]) : '' ?>
has('sous_category') ? $this->Html->link($materiel->sous_category->id, ['controller' => 'SousCategories', 'action' => 'view', $materiel->sous_category->id]) : '' ?>
numero_laboratoire) ?>
status) ?>
fournisseur) ?>
eotp) ?>
numero_commande) ?>
code_comptable) ?>
numero_serie) ?>
has('groupes_thematique') ? $this->Html->link($materiel->groupes_thematique->id, ['controller' => 'GroupesThematiques', 'action' => 'view', $materiel->groupes_thematique->id]) : '' ?>
has('groupes_metier') ? $this->Html->link($materiel->groupes_metier->id, ['controller' => 'GroupesMetiers', 'action' => 'view', $materiel->groupes_metier->id]) : '' ?>
numero_inventaire_organisme) ?>
numero_inventaire_old) ?>
lieu_stockage) ?>
lieu_detail) ?>
nom_responsable) ?>
email_responsable) ?>
nom_createur) ?>
nom_modificateur) ?>
has('organisme') ? $this->Html->link($materiel->organisme->id, ['controller' => 'Organismes', 'action' => 'view', $materiel->organisme->id]) : '' ?>
has('site') ? $this->Html->link($materiel->site->id, ['controller' => 'Sites', 'action' => 'view', $materiel->site->id]) : '' ?>
Number->format($materiel->id) ?>
Number->format($materiel->prix_ht) ?>
date_acquisition) ?>
date_archivage) ?>
created) ?>
modified) ?>
date_reception) ?>
materiel_administratif ? __('Yes') : __('No'); ?>
materiel_technique ? __('Yes') : __('No'); ?>
etiquette ? __('Yes') : __('No'); ?>
'.$nom.' '.$valeur.'
+ + + materiel_administratif) == 1 && h($materiel->materiel_technique) == 1) { + $type = 'Administratif et technique'; + } + else if (h($materiel->materiel_administratif) == 1) { + $type = 'Administratif'; + } + else if (h($materiel->materiel_technique) == 1) { + $type = 'Technique'; + } + + displayElement(__('Description'), h($materiel->description)); + displayElement(__('Materiel inventorié'), $type); + displayElement(__('Organisme'), $materiel->has('organisme') ? h($materiel->organisme->nom) : ''); + displayElement(__('N. Inventaire Organisme'), h($materiel->numero_inventaire_organisme)); + displayElement(__('Domaine'), $materiel->has('sur_category') ? h($materiel->sur_category->nom) : ''); + displayElement(__('Catégorie'), $materiel->has('category') ? h($materiel->category->nom) : ''); + displayElement(__('Sous-Catégorie'), $materiel->has('sous_category') ? h($materiel->sous_category->nom) : ''); + displayElement(__('Date de reception'), date("d-m-Y", strtotime(h($materiel->date_reception)))); + if(h($materiel->etiquette) == 0) { + $etiq="Non"; + }else { + $etiq="Oui"; + } + displayElement(__('Etiquette posée'), $etiq); + displayElement(__('Groupe thématique'), $materiel->has('groupes_thematique') ? $this->Html->link($materiel->groupes_thematique->nom, ['controller' => 'GroupesThematiques', 'action' => 'view', $materiel->groupes_thematique->id]) : ''); + displayElement(__('Groupe métier'), $materiel->has('groupes_metier') ? $this->Html->link($materiel->groupes_metier->nom, ['controller' => 'GroupesMetiers', 'action' => 'view', $materiel->groupes_metier->id]) : ''); + displayElement(__('Date d\'achat'), date("d-m-Y", strtotime(h($materiel->date_acquisition)))); + displayElement(__('Statut'), h($materiel->status)); + + displayElement(__('Prix (HT)'), h($materiel->prix_ht).' €'); + displayElement(__('Fournisseur'), h($materiel->fournisseur)); + displayElement(__('CentreFinancier/EOTP'), h($materiel->eotp)); + displayElement(__('N° commande'), h($materiel->numero_commande)); + displayElement(__('Code comptable'), h($materiel->code_comptable)); + displayElement(__('N° de série'), h($materiel->numero_serie)); + + displayElement(__('Lieu de stockage'), $materiel->has('site') ? h($materiel->site->nom) : ''); + displayElement(__('Responsable'), h($materiel->nom_responsable)); + displayElement(__('N. interne (labo)'), h($materiel->numero_laboratoire)); + displayElement(__('N. inventaire (ancien)'), h($materiel->numero_inventaire_old)); + + displayElement(__('Date création'), h($materiel->created)); + displayElement(__('Nom du créateur'), h($materiel->nom_createur)); + displayElement(__('Date modification'), h($materiel->modified)); + displayElement(__('Nom du modificateur'), h($materiel->nom_modificateur)); + + ?> +
+
+

Text->autoParagraph(h($materiel->description)); ?> diff --git a/src/Template/Suivis/index.ctp b/src/Template/Suivis/index.ctp index c5db536..f1be5d0 100755 --- a/src/Template/Suivis/index.ctp +++ b/src/Template/Suivis/index.ctp @@ -26,7 +26,7 @@ Html->link(__(''), ['action' => 'view', $suivi->id], ['title' => 'Visualiser', 'style' => 'margin: 0 2px', 'escape' => false ]) ?> Html->link(__(''), ['action' => 'edit', $suivi->id], ['title' => 'Editer', 'style' => 'margin: 0 2px', 'escape' => false ]) ?> - Form->postLink(__(''), ['action' => 'delete', $suivi->id], ['title' => 'Supprimer', 'style' => 'margin: 0 2px', 'escape' => false ], ['confirm' => __('Êtes-vous sur de vouloir supprimer # {0}?', $suivi->id)]) ?> + Form->postLink(__(''), ['action' => 'delete', $suivi->id], ['title' => 'Supprimer', 'style' => 'margin: 0 2px', 'escape' => false, 'confirm' => __('Êtes-vous sur de vouloir supprimer # {0}?', $suivi->id)]) ?> diff --git a/src/Template/Suivis/view.ctp b/src/Template/Suivis/view.ctp index 9510db7..353356f 100755 --- a/src/Template/Suivis/view.ctp +++ b/src/Template/Suivis/view.ctp @@ -1,83 +1,45 @@ +'.$nom.' '.$valeur.''; +} +?> -
-

id) ?>

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +
+

Détail suivi

+
has('materiel') ? $this->Html->link($suivi->materiel->id, ['controller' => 'Materiels', 'action' => 'view', $suivi->materiel->id]) : '' ?>
type_intervention) ?>
organisme) ?>
commentaire) ?>
nom_createur) ?>
nom_modificateur) ?>
Number->format($suivi->id) ?>
Number->format($suivi->frequence) ?>
date_controle) ?>
date_prochain_controle) ?>
created) ?>
modified) ?>
+ + + + Html->link(__(' Editer ce suivi'), + ['action' => 'edit', $suivi->id], + ['escape' => false,'onclick' => 'return true;'] + ); + echo $this->Form->postLink(__(' Supprimer ce suivi'), + ['action' => 'delete', $suivi->id], + ['style'=>'margin-left: 140px', 'escape' => false, 'confirm' => __('Êtes-vous sur de vouloir supprimer # {0}?', $suivi->id)] + ); + + displayElement(__('Materiel'), $suivi->has('materiel') ? $this->Html->link($suivi->materiel->designation, ['controller' => 'Materiels', 'action' => 'view', $suivi->materiel->id]) : ''); + displayElement(__('Numéro interne (labo)'), $suivi->has('materiel') ? h($suivi->materiel->numero_laboratoire) : ''); + displayElement(__('Date Intervention'), strftime("%e %B %Y", strtotime(h($suivi->date_controle)))); + displayElement(__('Date Prochaine Intervention'), strftime("%e %B %Y", strtotime(h($suivi->date_prochain_controle)))); + displayElement(__('Type d\'intervention'), h($suivi->type_intervention)); + displayElement(__('Fournisseur'), h($suivi->organisme)); + displayElement(__('Fréquence'), h($suivi->frequence)); + displayElement(__('Commentaire'), h($suivi->commentaire)); + displayElement(__('Date création'), h($suivi->created)); + displayElement(__('Nom du créateur'), h($suivi->nom_createur)); + displayElement(__('Date modification'), h($suivi->modified)); + displayElement(__('Nom du modificateur'), h($suivi->nom_modificateur)); + + ?> + +
- + +
-- libgit2 0.21.2