Commit cf634daa4f8973a29e9fd15ec031f1b77195c8fc
Exists in
master
and in
3 other branches
v2.6.2
Showing
16 changed files
with
670 additions
and
202 deletions
Show diff stats
README-LABINVENT.md
@@ -53,13 +53,20 @@ Logiciel testé et validé sur les configurations suivantes : | @@ -53,13 +53,20 @@ Logiciel testé et validé sur les configurations suivantes : | ||
53 | 53 | ||
54 | VERSION ACTUELLE | 54 | VERSION ACTUELLE |
55 | 55 | ||
56 | +<<<<<<< HEAD | ||
56 | Date: 09/05/2017 | 57 | Date: 09/05/2017 |
57 | Version: 2.6.0 | 58 | Version: 2.6.0 |
58 | - Le nom des matériels sont en rouge dans la liste losrque la date de garantie à été dépassée, ainsi que la date elle-même dans leur fiche détaillée | 59 | - Le nom des matériels sont en rouge dans la liste losrque la date de garantie à été dépassée, ainsi que la date elle-même dans leur fiche détaillée |
60 | +======= | ||
61 | +Date: 12/05/2017 | ||
62 | +Version: 2.6.2 | ||
63 | +- L'ajout d'un gestionnaire du matériel est désormais obligatoire à l'ajout d'un matériel | ||
64 | +- Bugfixes d'affichage de certaines pages (ACLs, Imprimantes notamment) | ||
65 | +>>>>>>> dev-IRAP | ||
59 | - Petits bugfixes divers | 66 | - Petits bugfixes divers |
60 | - ATTENTION : Mise à jour de la base de données requise | 67 | - ATTENTION : Mise à jour de la base de données requise |
61 | 68 | ||
62 | -Version majeure en cours (2.5): https://projects.irap.omp.eu/versions/99 | 69 | +Version majeure en cours (2.6): https://projects.irap.omp.eu/versions/99 |
63 | 70 | ||
64 | ROADMAP: https://projects.irap.omp.eu/projects/labinvent/roadmap | 71 | ROADMAP: https://projects.irap.omp.eu/projects/labinvent/roadmap |
65 | 72 | ||
@@ -69,11 +76,25 @@ CHANGEMENTS IMPORTANTS (MILESTONES) | @@ -69,11 +76,25 @@ CHANGEMENTS IMPORTANTS (MILESTONES) | ||
69 | 76 | ||
70 | Liste complète des évolutions: https://gitlab.irap.omp.eu/epallier/labinvent/commits/master | 77 | Liste complète des évolutions: https://gitlab.irap.omp.eu/epallier/labinvent/commits/master |
71 | 78 | ||
79 | +<<<<<<< HEAD | ||
80 | +======= | ||
81 | +09/05/2017 Version: 2.6.1 | ||
82 | + Début d'amélioration et de modification de la fonctionnalité d'envoi de mails | ||
83 | + Petits bugfixes divers | ||
84 | + | ||
85 | +09/05/2017 Version: 2.6.0 | ||
86 | + Le nom des matériels sont en rouge dans la liste losrque la date de garantie à été dépassée, ainsi que la date elle-même dans leur fiche détaillée | ||
87 | + Petits bugfixes divers | ||
88 | + | ||
89 | +>>>>>>> dev-IRAP | ||
72 | 25/04/2017 Version: 2.5.6 | 90 | 25/04/2017 Version: 2.5.6 |
73 | On peut maintenant configurer et choisir sur la page le nombre de materiels affichés (20 par défaut) | 91 | On peut maintenant configurer et choisir sur la page le nombre de materiels affichés (20 par défaut) |
74 | Petits bugfixes divers | 92 | Petits bugfixes divers |
75 | Amélioration du script et de la doc d'installation | 93 | Amélioration du script et de la doc d'installation |
94 | +<<<<<<< HEAD | ||
76 | ATTENTION : Mise à jour de la base de données requise | 95 | ATTENTION : Mise à jour de la base de données requise |
96 | +======= | ||
97 | +>>>>>>> dev-IRAP | ||
77 | 98 | ||
78 | 03/04/2017 Version: 2.5.5.1 | 99 | 03/04/2017 Version: 2.5.5.1 |
79 | petits bugfixes divers | 100 | petits bugfixes divers |
database/labinvent_2.1_12-05-16.sql
@@ -172,6 +172,7 @@ CREATE TABLE IF NOT EXISTS `materiels` ( | @@ -172,6 +172,7 @@ CREATE TABLE IF NOT EXISTS `materiels` ( | ||
172 | `lieu_detail` varchar(45) DEFAULT NULL, | 172 | `lieu_detail` varchar(45) DEFAULT NULL, |
173 | `nom_responsable` varchar(45) DEFAULT NULL, | 173 | `nom_responsable` varchar(45) DEFAULT NULL, |
174 | `email_responsable` varchar(45) DEFAULT NULL, | 174 | `email_responsable` varchar(45) DEFAULT NULL, |
175 | + `nom_gestionnaire` VARCHAR(45) NOT NULL, | ||
175 | `nom_createur` varchar(45) DEFAULT NULL COMMENT 'nom du createur de la fiche', | 176 | `nom_createur` varchar(45) DEFAULT NULL COMMENT 'nom du createur de la fiche', |
176 | `nom_modificateur` varchar(45) DEFAULT NULL COMMENT 'nom du modificateur de la fiche', | 177 | `nom_modificateur` varchar(45) DEFAULT NULL COMMENT 'nom du modificateur de la fiche', |
177 | `created` datetime DEFAULT NULL COMMENT 'date et heure de creation de la fiche', | 178 | `created` datetime DEFAULT NULL COMMENT 'date et heure de creation de la fiche', |
@@ -345,7 +346,7 @@ CREATE TABLE IF NOT EXISTS `configurations` ( | @@ -345,7 +346,7 @@ CREATE TABLE IF NOT EXISTS `configurations` ( | ||
345 | `hasPrinter` tinyint(1) DEFAULT NULL, | 346 | `hasPrinter` tinyint(1) DEFAULT NULL, |
346 | `nom_groupe_thematique` varchar(50) DEFAULT 'Groupe thematique', | 347 | `nom_groupe_thematique` varchar(50) DEFAULT 'Groupe thematique', |
347 | `nom_groupe_metier` varchar(50) DEFAULT 'Groupe metier', | 348 | `nom_groupe_metier` varchar(50) DEFAULT 'Groupe metier', |
348 | - `envoi_mail_management_dev` tinyint(1) DEFAULT NULL, | 349 | + `envoi_mail_management_dev` tinyint(1) NOT NULL DEFAULT 1, |
349 | `sender_mail` varchar(500) DEFAULT 'labinvent@irap.omp.eu', | 350 | `sender_mail` varchar(500) DEFAULT 'labinvent@irap.omp.eu', |
350 | `emailGuest1` varchar(45) DEFAULT NULL, | 351 | `emailGuest1` varchar(45) DEFAULT NULL, |
351 | `emailGuest2` varchar(45) DEFAULT NULL, | 352 | `emailGuest2` varchar(45) DEFAULT NULL, |
@@ -462,7 +463,10 @@ Insert into `configurations`( | @@ -462,7 +463,10 @@ Insert into `configurations`( | ||
462 | `labPresent`, | 463 | `labPresent`, |
463 | `labUmr`, | 464 | `labUmr`, |
464 | `hasPrinter`, | 465 | `hasPrinter`, |
466 | +<<<<<<< HEAD | ||
465 | `envoi_mail_management_dev` | 467 | `envoi_mail_management_dev` |
468 | +======= | ||
469 | +>>>>>>> dev-IRAP | ||
466 | `emailGuest1`, | 470 | `emailGuest1`, |
467 | `emailGuest2`, | 471 | `emailGuest2`, |
468 | `emailGuest3`) | 472 | `emailGuest3`) |
@@ -481,7 +485,10 @@ values ( | @@ -481,7 +485,10 @@ values ( | ||
481 | 'du ', | 485 | 'du ', |
482 | '', | 486 | '', |
483 | '0', | 487 | '0', |
488 | +<<<<<<< HEAD | ||
484 | '0', | 489 | '0', |
490 | +======= | ||
491 | +>>>>>>> dev-IRAP | ||
485 | '', | 492 | '', |
486 | '', | 493 | '', |
487 | ''); | 494 | ''); |
@@ -490,4 +497,4 @@ values ( | @@ -490,4 +497,4 @@ values ( | ||
490 | 497 | ||
491 | /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; | 498 | /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; |
492 | /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; | 499 | /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; |
493 | -/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; | ||
494 | \ No newline at end of file | 500 | \ No newline at end of file |
501 | +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; |
@@ -0,0 +1,34 @@ | @@ -0,0 +1,34 @@ | ||
1 | +#!/bin/bash | ||
2 | + | ||
3 | +# Pour Mac OS recent (10.10, Yosemite), la syntaxe du SED est differente | ||
4 | +# Il faut donc faire une copie de ce fichier et transformer les instructions sed a l'interieur | ||
5 | +# Pour cela, il suffit d'executer ces 2 lignes : | ||
6 | +# cp ce_script.sh ce_script_macosx.sh | ||
7 | +# sed -e "s/ -i / -i '' /" -i '' ce_script_macosx.sh | ||
8 | + | ||
9 | +if [ ! -f ../../config/app.php ] ; then | ||
10 | +echo "Vous devez executer ce script depuis le dossier database/update/" | ||
11 | +exit 1 | ||
12 | +fi | ||
13 | + | ||
14 | + | ||
15 | +# Get login, pass, dbname, and hostname | ||
16 | +username=$(grep "/\*d\*/'username'" ../../config/app.php | cut -d"'" -f4) | ||
17 | +password=$(grep "/\*d\*/'password'" ../../config/app.php | cut -d"'" -f4) | ||
18 | +database=$(grep "/\*d\*/'database'" ../../config/app.php | cut -d"'" -f4) | ||
19 | +host=$(grep "/\*d\*/'host'" ../../config/app.php | cut -d"'" -f4) | ||
20 | + | ||
21 | + | ||
22 | +cp -p ./script_sql/db-update-2017-05-12.sql ./script_sql/db-update-2017-05-12-build.sql | ||
23 | + | ||
24 | +# Execute sql update script | ||
25 | +sed -e "s/database/$database/" -i ./script_sql/db-update-2017-05-12-build.sql | ||
26 | +mysql --user=$username --password=$password -h $host < ./script_sql/db-update-2017-05-12-build.sql | ||
27 | + | ||
28 | +# Delete cakephp cache | ||
29 | +sudo rm ../../tmp/cache/models/* | ||
30 | +sudo rm ../../tmp/cache/persistent/* | ||
31 | + | ||
32 | +sudo chmod -R 777 ../../tmp | ||
33 | +sudo chmod -R 777 ../../vendor | ||
34 | +sudo chmod -R 777 ../../webroot |
src/Controller/AppController.php
@@ -19,6 +19,7 @@ use Cake\Event\Event; | @@ -19,6 +19,7 @@ use Cake\Event\Event; | ||
19 | use Cake\ORM\TableRegistry; | 19 | use Cake\ORM\TableRegistry; |
20 | use Cake\Mailer\Email; | 20 | use Cake\Mailer\Email; |
21 | use Cake\Core\Configure; | 21 | use Cake\Core\Configure; |
22 | +use PhpParser\Node\Expr\Include_; | ||
22 | 23 | ||
23 | /** | 24 | /** |
24 | * Application Controller | 25 | * Application Controller |
@@ -273,6 +274,7 @@ class AppController extends Controller | @@ -273,6 +274,7 @@ class AppController extends Controller | ||
273 | } | 274 | } |
274 | 275 | ||
275 | } | 276 | } |
277 | + | ||
276 | public function sendEmailToManagement($idObj = null) { | 278 | public function sendEmailToManagement($idObj = null) { |
277 | 279 | ||
278 | $configuration = TableRegistry::get('Configurations')->find()->where(['id =' => 1])->first(); | 280 | $configuration = TableRegistry::get('Configurations')->find()->where(['id =' => 1])->first(); |
@@ -400,4 +402,132 @@ class AppController extends Controller | @@ -400,4 +402,132 @@ class AppController extends Controller | ||
400 | } | 402 | } |
401 | } | 403 | } |
402 | 404 | ||
405 | + // Les fonctions suivantes sont en cours de developpement | ||
406 | + /** | ||
407 | + * Envoi un mail avec un sujet, contenant un message à destination d'une liste de mails, selon l'action effectuée. | ||
408 | + * @param idObj -> ID du matériel concerné | ||
409 | + * @param nomObj -> A utiliser uniquement dans le cadre d'un supression de matériel | ||
410 | + */ | ||
411 | +// public function sendEmail($idObj = null, $nomObj = null) { | ||
412 | +// /* | ||
413 | +// * $_SESSION['Auth']['User'] pour retrouver TOUTES les infos de la session courante (tout est du string) : | ||
414 | +// * nom[sn] | ||
415 | +// * prennom[givenname] | ||
416 | +// * mail[mail] | ||
417 | +// * login[xxx] | ||
418 | +// * mdp[userpassword] | ||
419 | +// */ | ||
420 | + | ||
421 | +// $configuration = TableRegistry::get('Configurations')->find()->where(['id =' => 1])->first(); | ||
422 | +// $action = $this->request->params['action']; // add or edit or delete or ... | ||
423 | + | ||
424 | +// if($idObj != null || $nomObj != null) { | ||
425 | + | ||
426 | +// if($idObj != null) $materiel = TableRegistry::get('Materiels')->find()->where(['id =' => $idObj])->first(); | ||
427 | + | ||
428 | +// Switch ($action) { | ||
429 | +// case 'add': | ||
430 | +// $subject = "Ajout d'un matériel"; | ||
431 | +// $actionneur = $materiel->nom_createur; | ||
432 | +// $nom_materiel = $materiel->designation; | ||
433 | +// $msg = "$actionneur a ajouté le matériel $nom_materiel"; | ||
434 | +// break; | ||
435 | +// case 'edit': | ||
436 | +// $subject = "Modification d'un matériel"; | ||
437 | +// $actionneur= $materiel->nom_modificateur; | ||
438 | +// $nom_materiel = $materiel->designation; | ||
439 | +// $msg = "$actionneur a modifié le matériel $nom_materiel"; | ||
440 | +// break; | ||
441 | +// case 'delete': | ||
442 | +// $subject = "Suppression d'un matériel"; | ||
443 | +// $actionneur= $_SESSION['Auth']['User']['givenname'].' '.$_SESSION['Auth']['User']['sn']; | ||
444 | +// $nom_materiel = $nomObj; | ||
445 | +// $msg = "$actionneur a supprimé le matériel $nom_materiel"; | ||
446 | +// break; | ||
447 | +// case 'statusValidated': | ||
448 | +// $subject = "Validation d'un matériel"; | ||
449 | +// $actionneur= $_SESSION['Auth']['User']['givenname'].' '.$_SESSION['Auth']['User']['sn']; | ||
450 | +// $nom_materiel = $materiel->designation; | ||
451 | +// $msg = "$actionneur a validé le matériel $nom_materiel"; | ||
452 | +// break; | ||
453 | +// case 'statusToBeArchived': | ||
454 | +// $subject = "Demande d'archivage d'un matériel"; | ||
455 | +// $actionneur= $_SESSION['Auth']['User']['givenname'].' '.$_SESSION['Auth']['User']['sn']; | ||
456 | +// $nom_materiel = $materiel->designation; | ||
457 | +// $msg = "$actionneur a demandé l'archivage du matériel $nom_materiel"; | ||
458 | +// break; | ||
459 | +// case 'statusArchived': | ||
460 | +// $subject = "Archivage d'un matériel"; | ||
461 | +// $actionneur= $_SESSION['Auth']['User']['givenname'].' '.$_SESSION['Auth']['User']['sn']; | ||
462 | +// $nom_materiel = $materiel->designation; | ||
463 | +// $msg = "$actionneur a archivé le matériel $nom_materiel"; | ||
464 | +// break; | ||
465 | +// case 'setLabelIsPlaced': | ||
466 | +// $subject = "Etiquette posée sur un matériel"; | ||
467 | +// $msg = "Etiquette posée sur le matériel $nom_materiel"; | ||
468 | +// break; | ||
469 | +// default: | ||
470 | +// $subject = "Action \"$action\" sur un matériel"; | ||
471 | +// $actionneur= $_SESSION['Auth']['User']['givenname'].' '.$_SESSION['Auth']['User']['sn']; | ||
472 | +// $nom_materiel = $materiel->designation; | ||
473 | +// $msg = "$actionneur a effectué l'action \"$action\" sur le matériel $nom_materiel"; | ||
474 | +// break; | ||
475 | +// } | ||
476 | + | ||
477 | +// $mailList = array(); | ||
478 | + | ||
479 | +// //Envoi mail responsable | ||
480 | +// $mailsResp = TableRegistry::get('Users')->find()->select('email')->where(['role =' => 'Responsable', 'groupes_metier_id =' => $materiel->groupes_metier_id])->orWhere(['role =' => 'Responsable', 'groupe_thematique_id =' => $materiel->groupes_thematique_id])->toArray(); | ||
481 | +// for($i = 0; $i < sizeof($mailsResp); $i++) { | ||
482 | +// $mailList[$i] = $mailsResp[$i]['email']; | ||
483 | +// } | ||
484 | + | ||
485 | +// //Envoi mail administratif | ||
486 | +// $mailsAdmin = TableRegistry::get('Users')->find()->select('email')->where(['role =' => 'Administration'])->toArray(); | ||
487 | +// $size = sizeof($mailList); | ||
488 | +// $sizeMax = sizeof($mailList) + sizeof($mailsAdmin); | ||
489 | +// $taille = "$size | $sizeMax"; | ||
490 | +// for($i = $size; $i < $sizeMax; $i++) { | ||
491 | +// $mailList[$i] = $mailsAdmin[$i]['email']; | ||
492 | +// } | ||
493 | + | ||
494 | +// // envoi de mail aux adresses spécifiés dans la config | ||
495 | +// for($i = 0; $i < 11; $i++) { | ||
496 | +// $mailList[$i + sizeof($mailList) + sizeof($mailsAdmin)] = 'emailGuest'.$i; | ||
497 | +// } | ||
498 | + | ||
499 | +// $j = 0; | ||
500 | +// foreach($mailList as $mail) { | ||
501 | +// $j += 1; | ||
502 | +// $this->sendEmailTo($subject, $msg, $mail, $configuration); | ||
503 | +// } | ||
504 | +// } | ||
505 | +// } | ||
506 | + | ||
507 | +// private function sendEmailTo($subject, $msg, $mail, $config) { | ||
508 | + | ||
509 | +// if ($mail != null && !$config->test) { | ||
510 | +// if (filter_var($mail, FILTER_VALIDATE_EMAIL)) { | ||
511 | +// $email = new Email(); | ||
512 | + | ||
513 | +// $etiquetteFrom = explode("@", $config->sender_mail); | ||
514 | + | ||
515 | +// if($config->envoi_mail_management_dev) { // <-- Si la case est cochée | ||
516 | +// $email->transport('dev') | ||
517 | +// ->from([$config->sender_mail => $etiquetteFrom[0]]) | ||
518 | +// ->to($mail) | ||
519 | +// ->subject("[LabInvent] ".$subject) | ||
520 | +// ->send($msg); | ||
521 | +// } else { // <-- Si la case n'est pas cochée | ||
522 | +// $email->transport('default') | ||
523 | +// ->from([$config->sender_mail => $etiquetteFrom[0]]) | ||
524 | +// ->to($mail) | ||
525 | +// ->subject("[LabInvent] ".$subject) | ||
526 | +// ->send($msg); | ||
527 | +// } | ||
528 | +// } | ||
529 | + | ||
530 | +// } | ||
531 | +// } | ||
532 | + | ||
403 | } | 533 | } |
src/Controller/MaterielsController.php
@@ -277,8 +277,8 @@ class MaterielsController extends AppController | @@ -277,8 +277,8 @@ class MaterielsController extends AppController | ||
277 | * | 277 | * |
278 | * @return \Cake\Network\Response|void Redirects on successful add, renders view otherwise. | 278 | * @return \Cake\Network\Response|void Redirects on successful add, renders view otherwise. |
279 | */ | 279 | */ |
280 | - public function add() | ||
281 | - { | 280 | + public function add() { |
281 | + | ||
282 | $materiel = $this->Materiels->newEntity(); | 282 | $materiel = $this->Materiels->newEntity(); |
283 | if ($this->request->is('post')) { | 283 | if ($this->request->is('post')) { |
284 | $materiel = $this->Materiels->patchEntity($materiel, $this->request->data); | 284 | $materiel = $this->Materiels->patchEntity($materiel, $this->request->data); |
@@ -291,7 +291,9 @@ class MaterielsController extends AppController | @@ -291,7 +291,9 @@ class MaterielsController extends AppController | ||
291 | $this->sendEmailToCreate($materiel->id); | 291 | $this->sendEmailToCreate($materiel->id); |
292 | } | 292 | } |
293 | 293 | ||
294 | - $message = $materiel->get('nom_createur').' a ajouté le matériel "'.$materiel->get('designation').'" ('.$materiel->numero_laboratoire.')'; | 294 | + $message = $materiel->get('nom_createur').' à ajouté le matériel "'.$materiel->get('designation').'" ('.$materiel->numero_laboratoire.')'; |
295 | + $subject = 'Ajout de matériel'; | ||
296 | + $listMails = []; | ||
295 | 297 | ||
296 | //Envoi mail responsable | 298 | //Envoi mail responsable |
297 | $mailsResp = TableRegistry::get('Users')->find()->select('email')->where(['role =' => 'Responsable', 'groupes_metier_id =' => $materiel->get('groupes_metier_id')])->orWhere(['role =' => 'Responsable', 'groupe_thematique_id =' => $materiel->get('groupes_thematique_id')])->toArray(); | 299 | $mailsResp = TableRegistry::get('Users')->find()->select('email')->where(['role =' => 'Responsable', 'groupes_metier_id =' => $materiel->get('groupes_metier_id')])->orWhere(['role =' => 'Responsable', 'groupe_thematique_id =' => $materiel->get('groupes_thematique_id')])->toArray(); |
@@ -316,9 +318,14 @@ class MaterielsController extends AppController | @@ -316,9 +318,14 @@ class MaterielsController extends AppController | ||
316 | if(!$configuration['envoi_mail_management_dev']){ // Si false, on envoie les mails, sinon on les envoie pas | 318 | if(!$configuration['envoi_mail_management_dev']){ // Si false, on envoie les mails, sinon on les envoie pas |
317 | $this->sendEmailTo('Ajout d\'un matériel', $message, $mails); | 319 | $this->sendEmailTo('Ajout d\'un matériel', $message, $mails); |
318 | } | 320 | } |
319 | - | 321 | + |
322 | +// $this->sendEmail($materiel->id); | ||
320 | 323 | ||
324 | +<<<<<<< HEAD | ||
321 | return $this->redirect(['action' => 'view', $materiel->id]); | 325 | return $this->redirect(['action' => 'view', $materiel->id]); |
326 | +======= | ||
327 | + return $this->redirect(['action' => 'view', $materiel->id]); | ||
328 | +>>>>>>> dev-IRAP | ||
322 | } else { | 329 | } else { |
323 | $this->Flash->error(__('Le matériel n\'a pas pu être ajouté.')); | 330 | $this->Flash->error(__('Le matériel n\'a pas pu être ajouté.')); |
324 | } | 331 | } |
@@ -402,7 +409,7 @@ class MaterielsController extends AppController | @@ -402,7 +409,7 @@ class MaterielsController extends AppController | ||
402 | } | 409 | } |
403 | $mail_responsable = TableRegistry::get('Users')->find()->select('email')->where(['username =' => $this->LdapAuth->user($this->request->session()->read('authType'))[0]])->first()['email']; | 410 | $mail_responsable = TableRegistry::get('Users')->find()->select('email')->where(['username =' => $this->LdapAuth->user($this->request->session()->read('authType'))[0]])->first()['email']; |
404 | 411 | ||
405 | - //Fonction utilisé dans la vue, déclaré ici pour éviter les problèmes de tests | 412 | + //Fonction utilisée dans la vue, déclaré ici pour éviter les problèmes de tests |
406 | $isReadonlyField = function ($fieldName, $myReadonlyFields) { | 413 | $isReadonlyField = function ($fieldName, $myReadonlyFields) { |
407 | if (! empty ( $myReadonlyFields ) && $myReadonlyFields [0] == '*') { | 414 | if (! empty ( $myReadonlyFields ) && $myReadonlyFields [0] == '*') { |
408 | $modifiableFields = $myReadonlyFields; | 415 | $modifiableFields = $myReadonlyFields; |
@@ -1013,7 +1020,7 @@ class MaterielsController extends AppController | @@ -1013,7 +1020,7 @@ class MaterielsController extends AppController | ||
1013 | fclose($csv_file); | 1020 | fclose($csv_file); |
1014 | 1021 | ||
1015 | exit(); | 1022 | exit(); |
1016 | - //Sans le exit() ca ne fonctionne pas pour de petite liste, et dans tous les cas une ligne en javascript est écris si il n'y a pas exit() | 1023 | + //Sans le exit() ça ne fonctionne pas pour des petites listes, et dans tout les cas une ligne en javascript est écrite si il n'y a pas exit() |
1017 | 1024 | ||
1018 | //La redirection suivante fonctionne parfaitement, mais inutile à cause du exit() | 1025 | //La redirection suivante fonctionne parfaitement, mais inutile à cause du exit() |
1019 | /* | 1026 | /* |
@@ -1041,7 +1048,7 @@ class MaterielsController extends AppController | @@ -1041,7 +1048,7 @@ class MaterielsController extends AppController | ||
1041 | $this->Flash->success(__('L\'étiquette a bien été éditer.')); | 1048 | $this->Flash->success(__('L\'étiquette a bien été éditer.')); |
1042 | // Envoi email seulement si etiquette posée | 1049 | // Envoi email seulement si etiquette posée |
1043 | if ($printed) { | 1050 | if ($printed) { |
1044 | - $this->sendEmailToManagement($id); | 1051 | +// $this->sendEmailToManagement($id); |
1045 | } | 1052 | } |
1046 | } | 1053 | } |
1047 | else { | 1054 | else { |
src/Model/Table/MaterielsTable.php
@@ -194,6 +194,8 @@ class MaterielsTable extends AppTable | @@ -194,6 +194,8 @@ class MaterielsTable extends AppTable | ||
194 | 194 | ||
195 | $validator | 195 | $validator |
196 | ->notEmpty('site_id', 'Ce champ doit être rempli'); | 196 | ->notEmpty('site_id', 'Ce champ doit être rempli'); |
197 | +// ->allowEmpty('site_id'); | ||
198 | +// A passer en non commenté pour lorsque le matos est validé | ||
197 | 199 | ||
198 | $validator | 200 | $validator |
199 | ->allowEmpty('lieu_detail') | 201 | ->allowEmpty('lieu_detail') |
@@ -206,6 +208,9 @@ class MaterielsTable extends AppTable | @@ -206,6 +208,9 @@ class MaterielsTable extends AppTable | ||
206 | $validator | 208 | $validator |
207 | ->allowEmpty('email_responsable') | 209 | ->allowEmpty('email_responsable') |
208 | ->email('email_responsable'); | 210 | ->email('email_responsable'); |
211 | + | ||
212 | + $validator | ||
213 | + ->notEmpty('nom_gestionnaire', 'Ce champ doit être rempli'); | ||
209 | 214 | ||
210 | $validator | 215 | $validator |
211 | ->allowEmpty('nom_createur'); | 216 | ->allowEmpty('nom_createur'); |
src/Template/Layout/default.ctp
@@ -94,7 +94,7 @@ $cakeDescription = 'Labinvent 2'; | @@ -94,7 +94,7 @@ $cakeDescription = 'Labinvent 2'; | ||
94 | </i></td> | 94 | </i></td> |
95 | <td id="version"> | 95 | <td id="version"> |
96 | <!-- VERSION M.m.f.b (version (M)ajeure, version (m)ineure, numero de nouvelle (f)onctionnalite, numero de (b)ugfix) --> | 96 | <!-- VERSION M.m.f.b (version (M)ajeure, version (m)ineure, numero de nouvelle (f)onctionnalite, numero de (b)ugfix) --> |
97 | - <font color="black">VERSION 2.5.5.0 (01/07/2016)</font> | 97 | + <font color="black">VERSION 2.6.2 (12/05/2017)</font> |
98 | </td> | 98 | </td> |
99 | </tr> | 99 | </tr> |
100 | </table> | 100 | </table> |
src/Template/Materiels/add.ctp
1 | <?php | 1 | <?php |
2 | +use Cake\ORM\TableRegistry; | ||
3 | + | ||
2 | if(isset($cpMateriel)) { | 4 | if(isset($cpMateriel)) { |
3 | $Designation = $cpMateriel->designation; | 5 | $Designation = $cpMateriel->designation; |
4 | $Sur_categ_id = $cpMateriel->sur_categorie_id; | 6 | $Sur_categ_id = $cpMateriel->sur_categorie_id; |
@@ -132,6 +134,16 @@ else { | @@ -132,6 +134,16 @@ else { | ||
132 | 'readonly' => true, | 134 | 'readonly' => true, |
133 | 'default' => $mail_responsable | 135 | 'default' => $mail_responsable |
134 | ]); | 136 | ]); |
137 | + | ||
138 | + // Modif BD : | ||
139 | + // ALTER TABLE `materiels` ADD `nom_gestionnaire` VARCHAR( 45 ) CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL AFTER `email_responsable` ; | ||
140 | + echo $this->Form->input('nom_gestionnaire', [ | ||
141 | + 'label' => 'Nom du gestionnaire de référence du matériel', | ||
142 | + 'empty' => 'Choisir un utilisateur', | ||
143 | + 'default' => $username, | ||
144 | + 'options' => TableRegistry::get('Users')->find('list', [ 'keyField' => 'nom', 'valueField' => 'nom'])->where(['role =' => 'Administration']) | ||
145 | + ]); | ||
146 | + | ||
135 | echo $this->Form->input('fournisseur', ['label' => 'Fournisseur', 'default' => $Fournisseur]); | 147 | echo $this->Form->input('fournisseur', ['label' => 'Fournisseur', 'default' => $Fournisseur]); |
136 | echo $this->Form->input('organisme_id', ['options' => $organismes, 'style' => 'width: 380px', 'empty' => 'Choisir un organisme', 'default' => $Organisme_id]); | 148 | echo $this->Form->input('organisme_id', ['options' => $organismes, 'style' => 'width: 380px', 'empty' => 'Choisir un organisme', 'default' => $Organisme_id]); |
137 | echo $this->Form->input('prix_ht', ['label' => 'Prix HT (€)', 'default' => $Prix_ht]); | 149 | echo $this->Form->input('prix_ht', ['label' => 'Prix HT (€)', 'default' => $Prix_ht]); |
src/Template/Materiels/edit.ctp
1 | <?php | 1 | <?php |
2 | 2 | ||
3 | 3 | ||
4 | +use Cake\ORM\TableRegistry; | ||
5 | + | ||
4 | $administrationData = array ( | 6 | $administrationData = array ( |
5 | 'eotp', | 7 | 'eotp', |
6 | 'numero_commande', | 8 | 'numero_commande', |
@@ -224,7 +226,18 @@ if ($IS_VALIDATED) | @@ -224,7 +226,18 @@ if ($IS_VALIDATED) | ||
224 | 'readonly' => true, | 226 | 'readonly' => true, |
225 | 'default' => $mail_responsable | 227 | 'default' => $mail_responsable |
226 | ]); | 228 | ]); |
227 | - | 229 | + |
230 | + $res = TableRegistry::get('Users')->find()->where(['username' => $username, 'role' => 'Administration'])->first(); | ||
231 | + $administrateurs = TableRegistry::get('Users')->find('list', [ 'keyField' => 'nom', 'valueField' => 'nom'])->where(['role =' => 'Administration']); | ||
232 | + // Condition pour vérifier que se soit un admin qui est connecté : (!is_null($res)) ? | ||
233 | + echo $this->Form->input('nom_gestionnaire', [ | ||
234 | + 'label' => 'Nom du gestionnaire de référence du matériel', | ||
235 | + 'disabled' => $isReadonlyField('nom_responsable', $myReadonlyFields), | ||
236 | + 'empty' => 'Choisir un gestionnaire', | ||
237 | + 'options' => $administrateurs | ||
238 | + ]); | ||
239 | + | ||
240 | + | ||
228 | 241 | ||
229 | echo $this->Form->input('fournisseur', [ | 242 | echo $this->Form->input('fournisseur', [ |
230 | 'label' => 'Fournisseur', | 243 | 'label' => 'Fournisseur', |
@@ -405,6 +418,5 @@ $(document).ready(function () { | @@ -405,6 +418,5 @@ $(document).ready(function () { | ||
405 | } | 418 | } |
406 | }); | 419 | }); |
407 | }); | 420 | }); |
408 | - | ||
409 | 421 | ||
410 | </script> | 422 | </script> |
src/Template/Materiels/view.ctp
@@ -374,6 +374,7 @@ if (h ( $materiel->status ) == 'ARCHIVED') | @@ -374,6 +374,7 @@ if (h ( $materiel->status ) == 'ARCHIVED') | ||
374 | $displayElement ( __ ( 'Détail lieu de stockage' ), h ( $materiel->lieu_detail ) ); | 374 | $displayElement ( __ ( 'Détail lieu de stockage' ), h ( $materiel->lieu_detail ) ); |
375 | 375 | ||
376 | $displayElement ( __ ( 'Nom du propriétaire' ), $this->Html->link ( h ( $materiel->nom_responsable ), 'mailto:' . h ( $materiel->email_responsable ) ) ); | 376 | $displayElement ( __ ( 'Nom du propriétaire' ), $this->Html->link ( h ( $materiel->nom_responsable ), 'mailto:' . h ( $materiel->email_responsable ) ) ); |
377 | + $displayElement ( __ ( 'Nom du gestionnaire de référence' ), h ( $materiel->nom_gestionnaire ) ); | ||
377 | $displayElement ( __ ( 'N. interne (labo)' ), h ( $materiel->numero_laboratoire ) ); | 378 | $displayElement ( __ ( 'N. interne (labo)' ), h ( $materiel->numero_laboratoire ) ); |
378 | 379 | ||
379 | if ($role == 'Super Administrateur') { | 380 | if ($role == 'Super Administrateur') { |
src/Template/Pages/acls.ctp
1 | +<<<<<<< HEAD | ||
1 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0//EN" "http://www.w3.org/Math/DTD/mathml2/xhtml-math11-f.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><!--This file was converted to xhtml by LibreOffice - see http://cgit.freedesktop.org/libreoffice/core/tree/filter/source/xslt for the code.--><head profile="http://dublincore.org/documents/dcmi-terms/"><meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8"/><title xml:lang="en-US">- no title specified</title><meta name="DCTERMS.title" content="" xml:lang="en-US"/><meta name="DCTERMS.language" content="en-US" scheme="DCTERMS.RFC4646"/><meta name="DCTERMS.source" content="http://xml.openoffice.org/odf2xhtml"/><meta name="DCTERMS.creator" content="Etienne Pallier"/><meta name="DCTERMS.issued" content="2014-01-21T19:49:00" scheme="DCTERMS.W3CDTF"/><meta name="DCTERMS.modified" content="2016-06-24T15:39:15.489669761" scheme="DCTERMS.W3CDTF"/><meta name="DCTERMS.provenance" content="" xml:lang="en-US"/><meta name="DCTERMS.subject" content="," xml:lang="en-US"/><link rel="schema.DC" href="http://purl.org/dc/elements/1.1/" hreflang="en"/><link rel="schema.DCTERMS" href="http://purl.org/dc/terms/" hreflang="en"/><link rel="schema.DCTYPE" href="http://purl.org/dc/dcmitype/" hreflang="en"/><link rel="schema.DCAM" href="http://purl.org/dc/dcam/" hreflang="en"/><style type="text/css"> | 2 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0//EN" "http://www.w3.org/Math/DTD/mathml2/xhtml-math11-f.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><!--This file was converted to xhtml by LibreOffice - see http://cgit.freedesktop.org/libreoffice/core/tree/filter/source/xslt for the code.--><head profile="http://dublincore.org/documents/dcmi-terms/"><meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8"/><title xml:lang="en-US">- no title specified</title><meta name="DCTERMS.title" content="" xml:lang="en-US"/><meta name="DCTERMS.language" content="en-US" scheme="DCTERMS.RFC4646"/><meta name="DCTERMS.source" content="http://xml.openoffice.org/odf2xhtml"/><meta name="DCTERMS.creator" content="Etienne Pallier"/><meta name="DCTERMS.issued" content="2014-01-21T19:49:00" scheme="DCTERMS.W3CDTF"/><meta name="DCTERMS.modified" content="2016-06-24T15:39:15.489669761" scheme="DCTERMS.W3CDTF"/><meta name="DCTERMS.provenance" content="" xml:lang="en-US"/><meta name="DCTERMS.subject" content="," xml:lang="en-US"/><link rel="schema.DC" href="http://purl.org/dc/elements/1.1/" hreflang="en"/><link rel="schema.DCTERMS" href="http://purl.org/dc/terms/" hreflang="en"/><link rel="schema.DCTYPE" href="http://purl.org/dc/dcmitype/" hreflang="en"/><link rel="schema.DCAM" href="http://purl.org/dc/dcam/" hreflang="en"/><style type="text/css"> |
2 | @page { } | 3 | @page { } |
3 | table { border-collapse:collapse; border-spacing:0; empty-cells:show } | 4 | table { border-collapse:collapse; border-spacing:0; empty-cells:show } |
@@ -117,7 +118,396 @@ | @@ -117,7 +118,396 @@ | ||
117 | </style></head><body dir="ltr" style="max-width:29.7cm;margin-top:1cm; margin-bottom:1cm; margin-left:1cm; margin-right:1.45cm; writing-mode:lr-tb; "><p class="P46">ACL (Access Control List)</p><p class="P11">(Etienne Pallier – 24/<span class="T22">06</span>/201<span class="T23">6</span>)</p><p class="P1"> </p><p class="P1"> </p><p class="P1"> </p><p class="P1">I – Cycle de vie du statut du matériel</p><p class="P1"> </p><p class="Standard"><span class="T5">Créer</span><span class="T2"> un matériel ==</span><span class="T9">> passe alors en statut </span><span class="T7">CREATED ==> </span><span class="T1">peut alors être éventuellement supprimé (mais ne pourra plus être supprimé ensuite)</span></p><p class="Standard"><span class="T7">Valider</span><span class="T9"> un matériel CREATED ==> passe alors en statut </span><span class="T7">VALIDATED </span><span class="T9">(</span><span class="T11">resp et </span><span class="T9">admin only)</span></p><p class="P4"><span class="T7">Demander l'Archivage</span><span class="T9"> d'un materiel VALIDATED ==> passe alors en statut </span><span class="T7">TOBEARCHIVED</span><span class="T9"> (resp et admin only)</span></p><p class="P4"><span class="T7">Sortir</span><span class="T9"> de l'inventaire (Valider une demande d'archivage d'un matériel TOBEARCHIVED) ==> statut </span><span class="T7">ARCHIVED</span><span class="T9"> (admin only)</span></p><p class="P4"><span class="T7">Désarchiver</span><span class="T9"> un matériel ==> repasse de TOBEARCHIVED ou ARCHIVED à </span><span class="T7">VALIDATED</span><span class="T9"> (admin only) </span></p><p class="P4"> </p><p class="P5">En résumé : </p><p class="P4"> </p><p class="P3">CREATED ==> VALIDATED ==> TOBEARCHIVED ==> ARCHIVED</p><p class="P2"><span class="T12"> </span><span class="T8">I /\ I I</span></p><p class="P2"><span class="T12"> </span><span class="T8">V I ------------------------ I --------------------------------- I (adminplus only)</span></p><p class="P3">DELETED</p><p class="P2"> </p><p class="P2"> </p><p class="P2"> </p><p class="P1">II - Droits des utilisateurs selon leur profil</p><p class="P1"> </p><p class="P1">A – Globalement (principes généraux)</p><p class="P1"> </p><p class="P6">Un utilisateur non logué ne doit RIEN pouvoir faire. Seulement se loguer, c'est tout. Il n'a accès qu'à la page d'accueil (de login).</p><p class="P6">Une fois logué, un utilisateur a des droits différents selon son profil, globalement :</p><p class="P14"><span class="T2">- un </span><span class="T5">USER</span><span class="T2"> ne peut que créer un matériel, un suivi, ou un emprunt, consulter, et modifier (uniquement ce qu'il a créé lui-même)</span></p><p class="P18"><span class="T2">- un </span><span class="T5">RESPONSABLE</span><span class="T2"> a tous les droits sauf accès à certains champs et certaines vues réservées à l'administration (ADMIN). Il ne peut pas non plus archiver un matériel, mais seulement demander l'archivage (comme un USER)(uniquement ce </span><span class="T3">lié à son groupe métier ou thématiques</span><span class="T2">)</span></p><p class="P14"><span class="T2">- un </span><span class="T5">ADMIN</span><span class="T2">(istratif) a tous les droits (y-compris champs réservés à l'administration)</span></p><p class="P14"><span class="T2">- un </span><span class="T5">ADMINPLUS</span><span class="T2"> (administratif Plus) a tous les droits de ADMIN et en plus il peut modifier un matériel quelque soit son statut (y-compris TOBEARCHIVED et ARCHIVED), notamment il peut modifier le statut du matériel (pour le rétrograder)</span></p><p class="P14"><span class="T2">- un </span><span class="T5">SUPERADMIN</span><span class="T2"> a tous les droits : ceux d'ADMINPLUS et certains droits supplémentaires pour lui permettre des corrections d'erreur et la configuration de l'application (notamment l'administration des utilisateurs...)</span></p><p class="P15"> </p><p class="Standard"><span class="T2">Concernant les informations internes permettant de savoir </span><span class="T5">qui a fait quoi</span><span class="T2"> (mises en place en février 2014), elles ne sont bien sûr pas modifiables puisque gérées automatiquement par le système, mais sont visibles par tous excepté le profil USER.</span></p><p class="P1"/><p class="P7">B - sur la table MATERIEL</p><table border="0" cellspacing="0" cellpadding="0" class="Tableau2"><colgroup><col width="170"/><col width="170"/><col width="170"/><col width="170"/><col width="170"/><col width="170"/><col width="170"/></colgroup><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A1"><p class="Table_20_Contents"> </p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_A1"><p class="P41">ALL (TOUS)</p><p class="P43">(droits par defaut)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_A1"><p class="P40"><span class="T5">U</span><span class="T6">tilisateur </span><span class="T5"> </span><span class="T2">(quelconque)</span></p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_A1"><p class="P42">Responsable</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_A1"><p class="P42">Administration</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_A1"><p class="P42">Administration Plus</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_G1"><p class="P42">Super-Administrateur</p></td></tr><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Read (un seul ou une liste)</p><p class="P45">(view ou index)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P25">Y</p><p class="Table_20_Contents"><span class="T14">champs caches:</span><span class="T13"> donnees admin</span></p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P36">idem ALL</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P36">idem ALL</p></td><td rowspan="3" style="text-align:left;width:3.893cm; " class="Tableau2_E4"><p class="P23"><span class="T16">(idem Responsable </span><span class="T15">+ donnees admin</span><span class="T16">)</span></p><p class="P37"> </p><p class="P23"><span class="T13">En mode edit (update), si VALIDATED, on ajoute aux donnees </span><span class="T14">readonly</span><span class="T13"> les </span><span class="T14">donnees admin</span></p></td><td rowspan="2" style="text-align:left;width:3.893cm; " class="Tableau2_F3"><p class="P37">idem Admin</p></td><td rowspan="11" style="text-align:left;width:3.893cm; " class="Tableau2_G12"><p class="P37">idem Adminplus</p></td></tr><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Create (1)</p><p class="P45">(add)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P26">Y</p><p class="P39"><span class="T14">champs caches</span><span class="T13">:</span></p><p class="P34">donnees admin + statut + etiquette </p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P36">Idem ALL</p><p class="P39"><span class="T14">champs readonly </span><span class="T13">:</span></p><p class="P34">nom_responsable</p></td><td rowspan="2" style="text-align:left;width:3.893cm; " class="Tableau2_D4"><p class="P36">idem ALL</p><p class="P36">(+ etiquette)</p></td></tr><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Update (1)</p><p class="P45">(edit)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P26">Y</p><p class="P33">ssi</p><p class="P39"><span class="T15">CREATED</span><span class="T16"> (tous les champs) </span></p><p class="P39"><span class="T13">ou </span><span class="T14">VALIDATED</span><span class="T13"> (quelques champs visibles sont </span><span class="T14">readonly</span><span class="T13">) (1)</span></p><p class="P34"> </p><p class="P39"><span class="T14">champs caches</span><span class="T13">:</span></p><p class="P34">donnees admin + statut + etiquette</p></td><td rowspan="2" style="text-align:left;width:3.893cm; " class="Tableau2_C5"><p class="P36">idem ALL</p><p class="P22"><span class="T16">ssi </span><span class="T15">createur</span></p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P37">idem Admin</p><p class="P23"><span class="T16">(</span><span class="T15">tous les statuts</span><span class="T16">)</span></p><p class="P23"><span class="T16">(+ champ </span><span class="T15">statut</span><span class="T16">)</span></p><p class="P23"> </p><p class="P23"><span class="T16">TOBEARCHIVED ou ARCHIVED: </span><span class="T15">seulement le statut</span></p></td></tr><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Delete</p><p class="P45">(delete)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P26">Y</p><p class="P29">ssi CREATED</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P37">idem ALL</p></td><td rowspan="3" style="text-align:left;width:3.893cm; " class="Tableau2_E7"><p class="P37">idem Responsable</p></td><td rowspan="4" style="text-align:left;width:3.893cm; " class="Tableau2_F8"><p class="P37">idem Admin</p></td></tr><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Valider</p><p class="P45">(statusValidated)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P25">N</p><p class="P28">(resp+)</p></td><td rowspan="7" style="text-align:left;width:3.893cm; " class="Tableau2_C12"><p class="P36">idem ALL</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P37">Y</p><p class="P30">ssi</p><p class="P30">CREATED</p><p class="P37"> </p></td></tr><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Demander archivage</p><p class="P45">(statusToBeArchived)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P25">N</p><p class="P28">(resp+)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P37">Y</p><p class="P30">ssi</p><p class="P30">VALIDATED</p></td></tr><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Sortir de l'inventaire</p><p class="P45"><span class="T12"> </span>(statusArchived)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P26">N</p><p class="P29">(admin+)</p></td><td rowspan="2" style="text-align:left;width:3.893cm; " class="Tableau2_D9"><p class="P37">idem ALL</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P35">Y</p><p class="P28">ssi</p><p class="P28">TOBEARCHIVED</p></td></tr><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Desarchiver (2)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P26">N</p><p class="P29">(adminplus+)</p></td><td rowspan="2" style="text-align:left;width:3.893cm; " class="Tableau2_E10"><p class="P37">idem Responsable</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P37">Y</p><p class="P30">ssi</p><p class="P30">ARCHIVED ou</p><p class="P30">TOBEARCHIVED</p></td></tr><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Exporter</p><p class="P45">(csv)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P26">N</p><p class="P29">(resp+)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P37">Y</p></td><td rowspan="3" style="text-align:left;width:3.893cm; " class="Tableau2_F12"><p class="P37">idem Admin</p></td></tr><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Montee de statut group<span class="T24">é</span>e</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P26">N</p><p class="P29">(admin+)</p></td><td rowspan="2" style="text-align:left;width:3.893cm; " class="Tableau2_D12"><p class="P37">idem ALL</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P38">Y</p></td></tr><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Edition (4)</p><p class="P44">DOCUMENTS</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E12"><p class="P26">N</p><p class="P29">(admin+)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E12"><p class="P37">Y</p><p class="P31">- admission : ssi VALIDATED</p><p class="P31">- sortie : ssi TOBEARCHIVED ou ARCHIVED</p></td></tr><tr class="Tableau213"><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P68">Fiche Matériel </p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E13"><p class="P62">Y <span class="T25">(sans partie admin)</span></p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_C13"><p class="P49">Y <span class="T25">(sans partie admin)</span></p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_D13"><p class="P49">Y <span class="T25">(sans partie admin)</span></p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E13"><p class="P62">Y</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_F13"><p class="P49">Y</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_G13"><p class="P49">Y <span class="T25">(sans partie admin)</span></p></td></tr></table><p class="P7"> </p><p class="P7"> </p><p class="P6"> </p><p class="P10">Par défaut, le superadmin a TOUS les droits</p><p class="P10"> </p><p class="Standard"><span class="T15">Conventions d'écriture </span><span class="T16">: </span></p><p class="P14"><span class="T16">- r</span><span class="T15">esp+</span><span class="T16"> = possible pour un </span><span class="T15">Responsable et plus </span><span class="T16">(responsable, admin, adminplus, et superadmin)</span></p><p class="P14"><span class="T16">- </span><span class="T15">admin+</span><span class="T16"> = possible pour un </span><span class="T15">Admin</span><span class="T16"> </span><span class="T15">et plus </span><span class="T16">(admin, adminplus, et superadmin)</span></p><p class="P16">- ...</p><p class="P16"> </p><p class="Standard"><span class="T15">Notes </span><span class="T16">:</span></p><p class="P9"> </p><ol><li><p class="P47" style="margin-left:0cm;"><span class="WW8Num8z0" style="display:block;float:left;min-width:0,635cm;">(1)</span><span class="T15">Droits en modification (edit) </span><span class="T16">:</span><span class="odfLiEnd"></span> </p></li></ol><p class="P16">- Un simple « user » ne doit pas pouvoir modifier le responsable, ni le statut, ni l'étiquette, ni les données admin d'un matériel (en mode Création comme Modification)</p><p class="P16">- Un «responsable » ne doit pas pouvoir modifier le statut, ni les données admin d'un matériel (en mode Création comme Modification)</p><p class="P16">- Les données admin ne sont accessibles qu'aux profils admin+</p><p class="P14"><span class="T16">- Le champ "</span><span class="T15">status</span><span class="T16">" n'est modifiable que par les profils adminplus+</span></p><p class="P14"><span class="T16">- Tout le monde peut modifier un matériel </span><span class="T15">VALIDATED </span><span class="T16">(</span><span class="T15">user </span><span class="T16">ne peut modifier que </span><span class="T15">ses</span><span class="T16"> matériels, </span><span class="T17">resp ne peut modifier que les matériels de son groupe thématique ou métier</span><span class="T16">),</span></p><p class="P14"><span class="T16">MAIS PAS</span><span class="T15"> certains champs</span><span class="T16"> qui sont </span><span class="T15">readonly</span><span class="T16"> (</span><span class="T18">sur_categorie_id', 'categorie_id', 'materiel_administratif', 'materiel_technique', 'date_acquisition', 'nom_responsable', 'fournisseur', 'organisme', 'prix_ht')</span></p><p class="P14"><span class="T16">Les seuls champs qu'on peut éditer sont donc : (</span><span class="T18">designation, sous_categorie, materiel_administratif, materiel_technique, description, etiquette, lieu_stockage, lieu_detail, numero_serie, groupes_thematique, groupes_metier),</span><span class="T16"><br/>- Seuls les profils </span><span class="T15">adminplus+</span><span class="T16"> peuvent modifier un matériel </span><span class="T15">TOBEARCHIVED, ou ARCHIVED </span><span class="T16">mais </span><span class="T15">UNIQUEMENT le champ "status" </span><span class="T16">(pour pouvoir rétrograder à CREATED ou VALIDATED)</span></p><p class="P14"><span class="T16">- Le seul moyen de modifier COMPLÈTEMENT un matériel VALIDATED, TOBEARCHIVED, ou ARCHIVED, <br/>c'est de </span><span class="T15">changer son statut</span><span class="T16">, en le rétrogradant à CREATED (seuls les profils adminplus+ peuvent le faire)</span></p><p class="P16"> </p><ol><li><p class="P47" style="margin-left:0cm;"><span class="WW8Num8z0" style="display:block;float:left;min-width:0,635cm;">(2)</span><span class="T15">Désarchiver </span><span class="T16">: consiste à rétrograder un matériel ARCHIVED ou TOBEARCHIVED dans le statut VALIDATED ou CREATED (adminplus+ only) ; utile en cas d'erreur</span><span class="odfLiEnd"></span> </p></li></ol><p class="P8"> </p><ol><li><p class="P47" style="margin-left:0cm;"><span class="WW8Num8z0" style="display:block;float:left;min-width:0,635cm;">(3)</span><span class="T15">Montée de statut groupée : </span><span class="T16">seul ADMIN peut (exporter tout ou partie de la liste des matériels, et) </span><span class="T15">augmenter (+1) le statut d'un groupe de matériels</span><span class="T16">, depuis la vue « index » (vue spéciale pour ADMIN, avec des cases à cocher et boutons pour exporter ou faire évoluer le statut)</span><span class="odfLiEnd"></span> </p></li></ol><p class="P8"> </p><ol><li><p class="P48" style="margin-left:0cm;"><span class="WW8Num8z0" style="display:block;float:left;min-width:0,635cm;">(4)</span>Edition des documents :<span class="odfLiEnd"/> </p></li></ol><p class="P16">Admission : quand on "VALIDE" un matériel "CREATED", le statut passe en VALIDATED et le document d'admission est automatiquement édité</p><p class="P16">Sortie : quand on "ARCHIVE" un document "TOBEARCHIVED", le statut passe en ARCHIVED et le document de sortie est automatiquement édité</p><p class="P16">De plus :</p><p class="P16">- Bouton "Doc admission" affiché à partir du statut "VALIDATED"</p><p class="P16">- Bouton "Doc Sortie" affiché à partir du statut TOBEARCHIVED (et donc aussi pour ARCHIVED)</p><p class="P16">Enfin, Le doc de sortie doit être couplée avec la liste des matériels a archiver (TOBEARCHIVED) quand il y a une demande de sortie.</p><p class="P16"> </p><p class="P17"> </p><p class="P1">C - sur les différentes VUES liées au matériel</p><p class="Standard"> </p><p class="P6"><span class="T4">Page accueil </span>:</p><p class="P6"><span> Administration <span class="T20">& Administration Plus </span>voit un menu avec 2 options :</span></p><ul><li><ul><li><ul><li><p class="P51" style="margin-left:0cm;"><span class="WW8Num2z0" style="display:block;float:left;min-width:0,635cm;">.</span>« Voir les matériels à valider »<span class="odfLiEnd"/> </p></li><li><p class="P52" style="margin-left:0cm;"><span class="WW8Num2z0" style="display:block;float:left;min-width:0,635cm;">.</span>« Voir les matériels à sortir de l'inventaire »<span class="odfLiEnd"/> </p></li></ul></li></ul><p class="P52" style="margin-left:0cm;"><span class="WW8Num2z0" style="display:block;float:left;min-width:0cm"><!-- --></span><span class="T21">Responsable </span>voit un menu avec <span class="T21">3</span> options :<span class="odfLiEnd"/> </p><ul><li><ul><li><p class="P52" style="margin-left:0cm;"><span class="WW8Num2z0" style="display:block;float:left;min-width:0,635cm;">.</span>« Voir les matériels <span class="T21">de mon groupe métier</span> »<span class="odfLiEnd"/> </p></li><li><p class="P52" style="margin-left:0cm;"><span class="WW8Num2z0" style="display:block;float:left;min-width:0,635cm;">.</span>« Voir les matériels <span class="T21">de mon groupe métier à valider</span> »<span class="odfLiEnd"/> </p></li><li><p class="P52" style="margin-left:0cm;"><span class="WW8Num2z0" style="display:block;float:left;min-width:0,635cm;">.</span>« <span class="T21">Voir les suivis des matériels donc je suis responsable »</span><span class="odfLiEnd"/> </p></li></ul></li></ul></li></ul><p class="P1">Page Outils :</p><p class="P6">User n'a pas accès à cette page</p><p class="P6">Les autres ont quelques options</p><p class="P6">superadmin a ces options en plus :</p><ul><li><p class="P53" style="margin-left:0cm;"><span class="WW8Num4z0" style="display:block;float:left;min-width:0,635cm;">.</span>Configuration générale de l'application<span class="odfLiEnd"></span> </p></li><li><p class="P53" style="margin-left:0cm;"><span class="WW8Num4z0" style="display:block;float:left;min-width:0,635cm;">.</span>Gérer les utilisateurs <span class="T20">privilégiés</span><span class="odfLiEnd"/> </p></li><li><p class="P53" style="margin-left:0cm;"><span class="WW8Num4z0" style="display:block;float:left;min-width:0,635cm;">.</span>Passer en mode debug<span class="odfLiEnd"/> </p></li><li><p class="P54" style="margin-left:0cm;"><span class="WW8Num4z0" style="display:block;float:left;min-width:0,635cm;">.</span>Passer en mode install<span class="odfLiEnd"/> </p></li></ul><p class="P6"> </p><p class="Standard"><span class="T5">Vue materiel/index (liste) </span><span class="T2">: limiter aux </span><span class="T5">matériels actifs</span><span class="T2"> (non archivés)</span></p><ul><li><ul><li><p class="P55" style="margin-left:0cm;"><span class="WW8Num1z0" style="display:block;float:left;min-width:0,635cm;">.</span>Admin<span class="T20">+ </span>voit des boutons pour filtrer par « tous », « à valider », « validés », « à sortir », « archivés »<span class="odfLiEnd"/> </p></li></ul></li></ul><p class="P6"> </p><p class="Standard"><span class="T5">Vue materiel/find </span><span class="T2">: limiter aux </span><span class="T5">matériels actifs</span><span class="T2"> (non archivés)</span></p><p class="P6"><span> Seul le<span class="T20">s</span> profil<span class="T20">s</span> Admin<span class="T20">+ </span>voit TOUS les matériels (y-compris archivés)</span></p><p class="P6"> </p><p class="P6"><span class="T4">Vue materiel/view </span>:</p><p class="P6"><span> boutons « Imprimer Etiquettes » : <span class="T20">resp+</span></span></p><p class="P6"> </p><p class="P6"><span class="T4">Vue materiel/edit </span>:</p><ul><li><p class="P56" style="margin-left:0cm;"><span class="WW8Num5z0" style="display:block;float:left;min-width:0,635cm;">.</span>Etiquette O/N (admin<span class="T20">+)</span><span class="odfLiEnd"/> </p></li><li><p class="P56" style="margin-left:0cm;"><span class="WW8Num5z0" style="display:block;float:left;min-width:0,635cm;">.</span>Statut (<span class="T20">superadmin+)</span><span class="odfLiEnd"/> </p></li><li><p class="P56" style="margin-left:0cm;"><span class="WW8Num5z0" style="display:block;float:left;min-width:0,635cm;">.</span>Informations administratives (admin<span class="T20">+)</span><span class="odfLiEnd"/> </p></li></ul><p class="P6"> </p><p class="P6"> </p><p class="P1"> </p><p class="P19">D - sur un SUIVI et un EMPRUNT</p><p class="P1"> </p><ul><li><p class="P57" style="margin-left:0cm;"><span class="WW8Num3z0" style="display:block;float:left;min-width:0,635cm;">.</span>Dans tous les cas, on ne doit pas pouvoir emprunter ou suivre un materiel non validé (CREATED)<span class="odfLiEnd"/> </p></li><li><p class="P57" style="margin-left:0cm;"><span class="WW8Num3z0" style="display:block;float:left;min-width:0,635cm;">.</span>User a les droits C, R, U (si créateur), D (si créateur)<span class="odfLiEnd"/> </p></li><li><p class="P57" style="margin-left:0cm;"><span class="WW8Num3z0" style="display:block;float:left;min-width:0,635cm;">.</span>Resp+ a les droits C, R, U, D<span class="odfLiEnd"/> </p></li></ul><p class="P4"><span class="T9">Un USER peut modifier/supprimer un emprunt dont il est soit le créateur soit l'emprunteur</span><span class="T19">.</span></p><p class="P12">Un USER qui créé un emprunt ne doit pas pouvoir changer le nom de l'emprunteur (par défaut, c'est lui). Ainsi, il pourra modifier/supprimer cette fiche au besoin plus tard. Par défaut donc, pour un user, emprunt.emprunteur=creator, materiel.responsable=creator</p><p class="P13">Tout le monde peut rechercher un suivi,</p><p class="P5"> </p><p class="P5"> </p><p class="P3">E - sur les UTILISATEURS</p><p class="P4"><span class="T9">Par défaut, superadmin a tous les droits, et les autres profils n'ont que le droit de lecture (</span><span class="T7">view </span><span class="T9">et </span><span class="T7">index</span><span class="T9">)</span></p><p class="P5"> </p><p class="P5"> </p><p class="P3">F - sur tous les autres objets métiers</p><p class="P5">Voici la liste des autres objets métiers :</p><ul><li><p class="P58" style="margin-left:0cm;"><span class="WW8Num7z0" style="display:block;float:left;min-width:0,635cm;">.</span>Catégories (et domaines et sous-catégories)<span class="odfLiEnd"/> </p></li></ul><ul><li><p class="P59" style="margin-left:0cm;"><span class="WW8Num6z0" style="display:block;float:left;min-width:0,635cm;">.</span>Groupes thématiques<span class="odfLiEnd"/> </p></li><li><p class="P59" style="margin-left:0cm;"><span class="WW8Num6z0" style="display:block;float:left;min-width:0,635cm;">.</span>Groupes métiers<span class="odfLiEnd"/> </p></li></ul><p class="P4"><span class="T9">Par défaut, pour tous ces objets, superadmin a tous les droits, admin</span><span class="T10">plus</span><span class="T9"> a tous les droits sauf « delete », et les autres profils n'ont que le droit de lecture (</span><span class="T7">view </span><span class="T9">et </span><span class="T7">index</span><span class="T9">)</span></p> | 118 | </style></head><body dir="ltr" style="max-width:29.7cm;margin-top:1cm; margin-bottom:1cm; margin-left:1cm; margin-right:1.45cm; writing-mode:lr-tb; "><p class="P46">ACL (Access Control List)</p><p class="P11">(Etienne Pallier – 24/<span class="T22">06</span>/201<span class="T23">6</span>)</p><p class="P1"> </p><p class="P1"> </p><p class="P1"> </p><p class="P1">I – Cycle de vie du statut du matériel</p><p class="P1"> </p><p class="Standard"><span class="T5">Créer</span><span class="T2"> un matériel ==</span><span class="T9">> passe alors en statut </span><span class="T7">CREATED ==> </span><span class="T1">peut alors être éventuellement supprimé (mais ne pourra plus être supprimé ensuite)</span></p><p class="Standard"><span class="T7">Valider</span><span class="T9"> un matériel CREATED ==> passe alors en statut </span><span class="T7">VALIDATED </span><span class="T9">(</span><span class="T11">resp et </span><span class="T9">admin only)</span></p><p class="P4"><span class="T7">Demander l'Archivage</span><span class="T9"> d'un materiel VALIDATED ==> passe alors en statut </span><span class="T7">TOBEARCHIVED</span><span class="T9"> (resp et admin only)</span></p><p class="P4"><span class="T7">Sortir</span><span class="T9"> de l'inventaire (Valider une demande d'archivage d'un matériel TOBEARCHIVED) ==> statut </span><span class="T7">ARCHIVED</span><span class="T9"> (admin only)</span></p><p class="P4"><span class="T7">Désarchiver</span><span class="T9"> un matériel ==> repasse de TOBEARCHIVED ou ARCHIVED à </span><span class="T7">VALIDATED</span><span class="T9"> (admin only) </span></p><p class="P4"> </p><p class="P5">En résumé : </p><p class="P4"> </p><p class="P3">CREATED ==> VALIDATED ==> TOBEARCHIVED ==> ARCHIVED</p><p class="P2"><span class="T12"> </span><span class="T8">I /\ I I</span></p><p class="P2"><span class="T12"> </span><span class="T8">V I ------------------------ I --------------------------------- I (adminplus only)</span></p><p class="P3">DELETED</p><p class="P2"> </p><p class="P2"> </p><p class="P2"> </p><p class="P1">II - Droits des utilisateurs selon leur profil</p><p class="P1"> </p><p class="P1">A – Globalement (principes généraux)</p><p class="P1"> </p><p class="P6">Un utilisateur non logué ne doit RIEN pouvoir faire. Seulement se loguer, c'est tout. Il n'a accès qu'à la page d'accueil (de login).</p><p class="P6">Une fois logué, un utilisateur a des droits différents selon son profil, globalement :</p><p class="P14"><span class="T2">- un </span><span class="T5">USER</span><span class="T2"> ne peut que créer un matériel, un suivi, ou un emprunt, consulter, et modifier (uniquement ce qu'il a créé lui-même)</span></p><p class="P18"><span class="T2">- un </span><span class="T5">RESPONSABLE</span><span class="T2"> a tous les droits sauf accès à certains champs et certaines vues réservées à l'administration (ADMIN). Il ne peut pas non plus archiver un matériel, mais seulement demander l'archivage (comme un USER)(uniquement ce </span><span class="T3">lié à son groupe métier ou thématiques</span><span class="T2">)</span></p><p class="P14"><span class="T2">- un </span><span class="T5">ADMIN</span><span class="T2">(istratif) a tous les droits (y-compris champs réservés à l'administration)</span></p><p class="P14"><span class="T2">- un </span><span class="T5">ADMINPLUS</span><span class="T2"> (administratif Plus) a tous les droits de ADMIN et en plus il peut modifier un matériel quelque soit son statut (y-compris TOBEARCHIVED et ARCHIVED), notamment il peut modifier le statut du matériel (pour le rétrograder)</span></p><p class="P14"><span class="T2">- un </span><span class="T5">SUPERADMIN</span><span class="T2"> a tous les droits : ceux d'ADMINPLUS et certains droits supplémentaires pour lui permettre des corrections d'erreur et la configuration de l'application (notamment l'administration des utilisateurs...)</span></p><p class="P15"> </p><p class="Standard"><span class="T2">Concernant les informations internes permettant de savoir </span><span class="T5">qui a fait quoi</span><span class="T2"> (mises en place en février 2014), elles ne sont bien sûr pas modifiables puisque gérées automatiquement par le système, mais sont visibles par tous excepté le profil USER.</span></p><p class="P1"/><p class="P7">B - sur la table MATERIEL</p><table border="0" cellspacing="0" cellpadding="0" class="Tableau2"><colgroup><col width="170"/><col width="170"/><col width="170"/><col width="170"/><col width="170"/><col width="170"/><col width="170"/></colgroup><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A1"><p class="Table_20_Contents"> </p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_A1"><p class="P41">ALL (TOUS)</p><p class="P43">(droits par defaut)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_A1"><p class="P40"><span class="T5">U</span><span class="T6">tilisateur </span><span class="T5"> </span><span class="T2">(quelconque)</span></p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_A1"><p class="P42">Responsable</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_A1"><p class="P42">Administration</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_A1"><p class="P42">Administration Plus</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_G1"><p class="P42">Super-Administrateur</p></td></tr><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Read (un seul ou une liste)</p><p class="P45">(view ou index)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P25">Y</p><p class="Table_20_Contents"><span class="T14">champs caches:</span><span class="T13"> donnees admin</span></p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P36">idem ALL</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P36">idem ALL</p></td><td rowspan="3" style="text-align:left;width:3.893cm; " class="Tableau2_E4"><p class="P23"><span class="T16">(idem Responsable </span><span class="T15">+ donnees admin</span><span class="T16">)</span></p><p class="P37"> </p><p class="P23"><span class="T13">En mode edit (update), si VALIDATED, on ajoute aux donnees </span><span class="T14">readonly</span><span class="T13"> les </span><span class="T14">donnees admin</span></p></td><td rowspan="2" style="text-align:left;width:3.893cm; " class="Tableau2_F3"><p class="P37">idem Admin</p></td><td rowspan="11" style="text-align:left;width:3.893cm; " class="Tableau2_G12"><p class="P37">idem Adminplus</p></td></tr><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Create (1)</p><p class="P45">(add)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P26">Y</p><p class="P39"><span class="T14">champs caches</span><span class="T13">:</span></p><p class="P34">donnees admin + statut + etiquette </p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P36">Idem ALL</p><p class="P39"><span class="T14">champs readonly </span><span class="T13">:</span></p><p class="P34">nom_responsable</p></td><td rowspan="2" style="text-align:left;width:3.893cm; " class="Tableau2_D4"><p class="P36">idem ALL</p><p class="P36">(+ etiquette)</p></td></tr><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Update (1)</p><p class="P45">(edit)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P26">Y</p><p class="P33">ssi</p><p class="P39"><span class="T15">CREATED</span><span class="T16"> (tous les champs) </span></p><p class="P39"><span class="T13">ou </span><span class="T14">VALIDATED</span><span class="T13"> (quelques champs visibles sont </span><span class="T14">readonly</span><span class="T13">) (1)</span></p><p class="P34"> </p><p class="P39"><span class="T14">champs caches</span><span class="T13">:</span></p><p class="P34">donnees admin + statut + etiquette</p></td><td rowspan="2" style="text-align:left;width:3.893cm; " class="Tableau2_C5"><p class="P36">idem ALL</p><p class="P22"><span class="T16">ssi </span><span class="T15">createur</span></p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P37">idem Admin</p><p class="P23"><span class="T16">(</span><span class="T15">tous les statuts</span><span class="T16">)</span></p><p class="P23"><span class="T16">(+ champ </span><span class="T15">statut</span><span class="T16">)</span></p><p class="P23"> </p><p class="P23"><span class="T16">TOBEARCHIVED ou ARCHIVED: </span><span class="T15">seulement le statut</span></p></td></tr><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Delete</p><p class="P45">(delete)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P26">Y</p><p class="P29">ssi CREATED</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P37">idem ALL</p></td><td rowspan="3" style="text-align:left;width:3.893cm; " class="Tableau2_E7"><p class="P37">idem Responsable</p></td><td rowspan="4" style="text-align:left;width:3.893cm; " class="Tableau2_F8"><p class="P37">idem Admin</p></td></tr><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Valider</p><p class="P45">(statusValidated)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P25">N</p><p class="P28">(resp+)</p></td><td rowspan="7" style="text-align:left;width:3.893cm; " class="Tableau2_C12"><p class="P36">idem ALL</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P37">Y</p><p class="P30">ssi</p><p class="P30">CREATED</p><p class="P37"> </p></td></tr><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Demander archivage</p><p class="P45">(statusToBeArchived)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P25">N</p><p class="P28">(resp+)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P37">Y</p><p class="P30">ssi</p><p class="P30">VALIDATED</p></td></tr><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Sortir de l'inventaire</p><p class="P45"><span class="T12"> </span>(statusArchived)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P26">N</p><p class="P29">(admin+)</p></td><td rowspan="2" style="text-align:left;width:3.893cm; " class="Tableau2_D9"><p class="P37">idem ALL</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P35">Y</p><p class="P28">ssi</p><p class="P28">TOBEARCHIVED</p></td></tr><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Desarchiver (2)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P26">N</p><p class="P29">(adminplus+)</p></td><td rowspan="2" style="text-align:left;width:3.893cm; " class="Tableau2_E10"><p class="P37">idem Responsable</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P37">Y</p><p class="P30">ssi</p><p class="P30">ARCHIVED ou</p><p class="P30">TOBEARCHIVED</p></td></tr><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Exporter</p><p class="P45">(csv)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P26">N</p><p class="P29">(resp+)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P37">Y</p></td><td rowspan="3" style="text-align:left;width:3.893cm; " class="Tableau2_F12"><p class="P37">idem Admin</p></td></tr><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Montee de statut group<span class="T24">é</span>e</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P26">N</p><p class="P29">(admin+)</p></td><td rowspan="2" style="text-align:left;width:3.893cm; " class="Tableau2_D12"><p class="P37">idem ALL</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P38">Y</p></td></tr><tr><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Edition (4)</p><p class="P44">DOCUMENTS</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E12"><p class="P26">N</p><p class="P29">(admin+)</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E12"><p class="P37">Y</p><p class="P31">- admission : ssi VALIDATED</p><p class="P31">- sortie : ssi TOBEARCHIVED ou ARCHIVED</p></td></tr><tr class="Tableau213"><td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P68">Fiche Matériel </p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E13"><p class="P62">Y <span class="T25">(sans partie admin)</span></p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_C13"><p class="P49">Y <span class="T25">(sans partie admin)</span></p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_D13"><p class="P49">Y <span class="T25">(sans partie admin)</span></p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_E13"><p class="P62">Y</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_F13"><p class="P49">Y</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_G13"><p class="P49">Y <span class="T25">(sans partie admin)</span></p></td></tr></table><p class="P7"> </p><p class="P7"> </p><p class="P6"> </p><p class="P10">Par défaut, le superadmin a TOUS les droits</p><p class="P10"> </p><p class="Standard"><span class="T15">Conventions d'écriture </span><span class="T16">: </span></p><p class="P14"><span class="T16">- r</span><span class="T15">esp+</span><span class="T16"> = possible pour un </span><span class="T15">Responsable et plus </span><span class="T16">(responsable, admin, adminplus, et superadmin)</span></p><p class="P14"><span class="T16">- </span><span class="T15">admin+</span><span class="T16"> = possible pour un </span><span class="T15">Admin</span><span class="T16"> </span><span class="T15">et plus </span><span class="T16">(admin, adminplus, et superadmin)</span></p><p class="P16">- ...</p><p class="P16"> </p><p class="Standard"><span class="T15">Notes </span><span class="T16">:</span></p><p class="P9"> </p><ol><li><p class="P47" style="margin-left:0cm;"><span class="WW8Num8z0" style="display:block;float:left;min-width:0,635cm;">(1)</span><span class="T15">Droits en modification (edit) </span><span class="T16">:</span><span class="odfLiEnd"></span> </p></li></ol><p class="P16">- Un simple « user » ne doit pas pouvoir modifier le responsable, ni le statut, ni l'étiquette, ni les données admin d'un matériel (en mode Création comme Modification)</p><p class="P16">- Un «responsable » ne doit pas pouvoir modifier le statut, ni les données admin d'un matériel (en mode Création comme Modification)</p><p class="P16">- Les données admin ne sont accessibles qu'aux profils admin+</p><p class="P14"><span class="T16">- Le champ "</span><span class="T15">status</span><span class="T16">" n'est modifiable que par les profils adminplus+</span></p><p class="P14"><span class="T16">- Tout le monde peut modifier un matériel </span><span class="T15">VALIDATED </span><span class="T16">(</span><span class="T15">user </span><span class="T16">ne peut modifier que </span><span class="T15">ses</span><span class="T16"> matériels, </span><span class="T17">resp ne peut modifier que les matériels de son groupe thématique ou métier</span><span class="T16">),</span></p><p class="P14"><span class="T16">MAIS PAS</span><span class="T15"> certains champs</span><span class="T16"> qui sont </span><span class="T15">readonly</span><span class="T16"> (</span><span class="T18">sur_categorie_id', 'categorie_id', 'materiel_administratif', 'materiel_technique', 'date_acquisition', 'nom_responsable', 'fournisseur', 'organisme', 'prix_ht')</span></p><p class="P14"><span class="T16">Les seuls champs qu'on peut éditer sont donc : (</span><span class="T18">designation, sous_categorie, materiel_administratif, materiel_technique, description, etiquette, lieu_stockage, lieu_detail, numero_serie, groupes_thematique, groupes_metier),</span><span class="T16"><br/>- Seuls les profils </span><span class="T15">adminplus+</span><span class="T16"> peuvent modifier un matériel </span><span class="T15">TOBEARCHIVED, ou ARCHIVED </span><span class="T16">mais </span><span class="T15">UNIQUEMENT le champ "status" </span><span class="T16">(pour pouvoir rétrograder à CREATED ou VALIDATED)</span></p><p class="P14"><span class="T16">- Le seul moyen de modifier COMPLÈTEMENT un matériel VALIDATED, TOBEARCHIVED, ou ARCHIVED, <br/>c'est de </span><span class="T15">changer son statut</span><span class="T16">, en le rétrogradant à CREATED (seuls les profils adminplus+ peuvent le faire)</span></p><p class="P16"> </p><ol><li><p class="P47" style="margin-left:0cm;"><span class="WW8Num8z0" style="display:block;float:left;min-width:0,635cm;">(2)</span><span class="T15">Désarchiver </span><span class="T16">: consiste à rétrograder un matériel ARCHIVED ou TOBEARCHIVED dans le statut VALIDATED ou CREATED (adminplus+ only) ; utile en cas d'erreur</span><span class="odfLiEnd"></span> </p></li></ol><p class="P8"> </p><ol><li><p class="P47" style="margin-left:0cm;"><span class="WW8Num8z0" style="display:block;float:left;min-width:0,635cm;">(3)</span><span class="T15">Montée de statut groupée : </span><span class="T16">seul ADMIN peut (exporter tout ou partie de la liste des matériels, et) </span><span class="T15">augmenter (+1) le statut d'un groupe de matériels</span><span class="T16">, depuis la vue « index » (vue spéciale pour ADMIN, avec des cases à cocher et boutons pour exporter ou faire évoluer le statut)</span><span class="odfLiEnd"></span> </p></li></ol><p class="P8"> </p><ol><li><p class="P48" style="margin-left:0cm;"><span class="WW8Num8z0" style="display:block;float:left;min-width:0,635cm;">(4)</span>Edition des documents :<span class="odfLiEnd"/> </p></li></ol><p class="P16">Admission : quand on "VALIDE" un matériel "CREATED", le statut passe en VALIDATED et le document d'admission est automatiquement édité</p><p class="P16">Sortie : quand on "ARCHIVE" un document "TOBEARCHIVED", le statut passe en ARCHIVED et le document de sortie est automatiquement édité</p><p class="P16">De plus :</p><p class="P16">- Bouton "Doc admission" affiché à partir du statut "VALIDATED"</p><p class="P16">- Bouton "Doc Sortie" affiché à partir du statut TOBEARCHIVED (et donc aussi pour ARCHIVED)</p><p class="P16">Enfin, Le doc de sortie doit être couplée avec la liste des matériels a archiver (TOBEARCHIVED) quand il y a une demande de sortie.</p><p class="P16"> </p><p class="P17"> </p><p class="P1">C - sur les différentes VUES liées au matériel</p><p class="Standard"> </p><p class="P6"><span class="T4">Page accueil </span>:</p><p class="P6"><span> Administration <span class="T20">& Administration Plus </span>voit un menu avec 2 options :</span></p><ul><li><ul><li><ul><li><p class="P51" style="margin-left:0cm;"><span class="WW8Num2z0" style="display:block;float:left;min-width:0,635cm;">.</span>« Voir les matériels à valider »<span class="odfLiEnd"/> </p></li><li><p class="P52" style="margin-left:0cm;"><span class="WW8Num2z0" style="display:block;float:left;min-width:0,635cm;">.</span>« Voir les matériels à sortir de l'inventaire »<span class="odfLiEnd"/> </p></li></ul></li></ul><p class="P52" style="margin-left:0cm;"><span class="WW8Num2z0" style="display:block;float:left;min-width:0cm"><!-- --></span><span class="T21">Responsable </span>voit un menu avec <span class="T21">3</span> options :<span class="odfLiEnd"/> </p><ul><li><ul><li><p class="P52" style="margin-left:0cm;"><span class="WW8Num2z0" style="display:block;float:left;min-width:0,635cm;">.</span>« Voir les matériels <span class="T21">de mon groupe métier</span> »<span class="odfLiEnd"/> </p></li><li><p class="P52" style="margin-left:0cm;"><span class="WW8Num2z0" style="display:block;float:left;min-width:0,635cm;">.</span>« Voir les matériels <span class="T21">de mon groupe métier à valider</span> »<span class="odfLiEnd"/> </p></li><li><p class="P52" style="margin-left:0cm;"><span class="WW8Num2z0" style="display:block;float:left;min-width:0,635cm;">.</span>« <span class="T21">Voir les suivis des matériels donc je suis responsable »</span><span class="odfLiEnd"/> </p></li></ul></li></ul></li></ul><p class="P1">Page Outils :</p><p class="P6">User n'a pas accès à cette page</p><p class="P6">Les autres ont quelques options</p><p class="P6">superadmin a ces options en plus :</p><ul><li><p class="P53" style="margin-left:0cm;"><span class="WW8Num4z0" style="display:block;float:left;min-width:0,635cm;">.</span>Configuration générale de l'application<span class="odfLiEnd"></span> </p></li><li><p class="P53" style="margin-left:0cm;"><span class="WW8Num4z0" style="display:block;float:left;min-width:0,635cm;">.</span>Gérer les utilisateurs <span class="T20">privilégiés</span><span class="odfLiEnd"/> </p></li><li><p class="P53" style="margin-left:0cm;"><span class="WW8Num4z0" style="display:block;float:left;min-width:0,635cm;">.</span>Passer en mode debug<span class="odfLiEnd"/> </p></li><li><p class="P54" style="margin-left:0cm;"><span class="WW8Num4z0" style="display:block;float:left;min-width:0,635cm;">.</span>Passer en mode install<span class="odfLiEnd"/> </p></li></ul><p class="P6"> </p><p class="Standard"><span class="T5">Vue materiel/index (liste) </span><span class="T2">: limiter aux </span><span class="T5">matériels actifs</span><span class="T2"> (non archivés)</span></p><ul><li><ul><li><p class="P55" style="margin-left:0cm;"><span class="WW8Num1z0" style="display:block;float:left;min-width:0,635cm;">.</span>Admin<span class="T20">+ </span>voit des boutons pour filtrer par « tous », « à valider », « validés », « à sortir », « archivés »<span class="odfLiEnd"/> </p></li></ul></li></ul><p class="P6"> </p><p class="Standard"><span class="T5">Vue materiel/find </span><span class="T2">: limiter aux </span><span class="T5">matériels actifs</span><span class="T2"> (non archivés)</span></p><p class="P6"><span> Seul le<span class="T20">s</span> profil<span class="T20">s</span> Admin<span class="T20">+ </span>voit TOUS les matériels (y-compris archivés)</span></p><p class="P6"> </p><p class="P6"><span class="T4">Vue materiel/view </span>:</p><p class="P6"><span> boutons « Imprimer Etiquettes » : <span class="T20">resp+</span></span></p><p class="P6"> </p><p class="P6"><span class="T4">Vue materiel/edit </span>:</p><ul><li><p class="P56" style="margin-left:0cm;"><span class="WW8Num5z0" style="display:block;float:left;min-width:0,635cm;">.</span>Etiquette O/N (admin<span class="T20">+)</span><span class="odfLiEnd"/> </p></li><li><p class="P56" style="margin-left:0cm;"><span class="WW8Num5z0" style="display:block;float:left;min-width:0,635cm;">.</span>Statut (<span class="T20">superadmin+)</span><span class="odfLiEnd"/> </p></li><li><p class="P56" style="margin-left:0cm;"><span class="WW8Num5z0" style="display:block;float:left;min-width:0,635cm;">.</span>Informations administratives (admin<span class="T20">+)</span><span class="odfLiEnd"/> </p></li></ul><p class="P6"> </p><p class="P6"> </p><p class="P1"> </p><p class="P19">D - sur un SUIVI et un EMPRUNT</p><p class="P1"> </p><ul><li><p class="P57" style="margin-left:0cm;"><span class="WW8Num3z0" style="display:block;float:left;min-width:0,635cm;">.</span>Dans tous les cas, on ne doit pas pouvoir emprunter ou suivre un materiel non validé (CREATED)<span class="odfLiEnd"/> </p></li><li><p class="P57" style="margin-left:0cm;"><span class="WW8Num3z0" style="display:block;float:left;min-width:0,635cm;">.</span>User a les droits C, R, U (si créateur), D (si créateur)<span class="odfLiEnd"/> </p></li><li><p class="P57" style="margin-left:0cm;"><span class="WW8Num3z0" style="display:block;float:left;min-width:0,635cm;">.</span>Resp+ a les droits C, R, U, D<span class="odfLiEnd"/> </p></li></ul><p class="P4"><span class="T9">Un USER peut modifier/supprimer un emprunt dont il est soit le créateur soit l'emprunteur</span><span class="T19">.</span></p><p class="P12">Un USER qui créé un emprunt ne doit pas pouvoir changer le nom de l'emprunteur (par défaut, c'est lui). Ainsi, il pourra modifier/supprimer cette fiche au besoin plus tard. Par défaut donc, pour un user, emprunt.emprunteur=creator, materiel.responsable=creator</p><p class="P13">Tout le monde peut rechercher un suivi,</p><p class="P5"> </p><p class="P5"> </p><p class="P3">E - sur les UTILISATEURS</p><p class="P4"><span class="T9">Par défaut, superadmin a tous les droits, et les autres profils n'ont que le droit de lecture (</span><span class="T7">view </span><span class="T9">et </span><span class="T7">index</span><span class="T9">)</span></p><p class="P5"> </p><p class="P5"> </p><p class="P3">F - sur tous les autres objets métiers</p><p class="P5">Voici la liste des autres objets métiers :</p><ul><li><p class="P58" style="margin-left:0cm;"><span class="WW8Num7z0" style="display:block;float:left;min-width:0,635cm;">.</span>Catégories (et domaines et sous-catégories)<span class="odfLiEnd"/> </p></li></ul><ul><li><p class="P59" style="margin-left:0cm;"><span class="WW8Num6z0" style="display:block;float:left;min-width:0,635cm;">.</span>Groupes thématiques<span class="odfLiEnd"/> </p></li><li><p class="P59" style="margin-left:0cm;"><span class="WW8Num6z0" style="display:block;float:left;min-width:0,635cm;">.</span>Groupes métiers<span class="odfLiEnd"/> </p></li></ul><p class="P4"><span class="T9">Par défaut, pour tous ces objets, superadmin a tous les droits, admin</span><span class="T10">plus</span><span class="T9"> a tous les droits sauf « delete », et les autres profils n'ont que le droit de lecture (</span><span class="T7">view </span><span class="T9">et </span><span class="T7">index</span><span class="T9">)</span></p> |
118 | 119 | ||
119 | <div class="actions"> | 120 | <div class="actions"> |
121 | +======= | ||
122 | +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0//EN" "http://www.w3.org/Math/DTD/mathml2/xhtml-math11-f.dtd"> | ||
123 | +<html xmlns="http://www.w3.org/1999/xhtml"> <!--This file was converted to xhtml by LibreOffice - see http://cgit.freedesktop.org/libreoffice/core/tree/filter/source/xslt for the code.--> | ||
124 | + <head profile="http://dublincore.org/documents/dcmi-terms/"> | ||
125 | + <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8"/> | ||
126 | + <title xml:lang="en-US">- no title specified</title> | ||
127 | + <meta name="DCTERMS.title" content="" xml:lang="en-US"/> | ||
128 | + <meta name="DCTERMS.language" content="en-US" scheme="DCTERMS.RFC4646"/> | ||
129 | + <meta name="DCTERMS.source" content="http://xml.openoffice.org/odf2xhtml"/> | ||
130 | + <meta name="DCTERMS.creator" content="Etienne Pallier"/> | ||
131 | + <meta name="DCTERMS.issued" content="2014-01-21T19:49:00" scheme="DCTERMS.W3CDTF"/> | ||
132 | + <meta name="DCTERMS.modified" content="2016-06-24T15:39:15.489669761" scheme="DCTERMS.W3CDTF"/> | ||
133 | + <meta name="DCTERMS.provenance" content="" xml:lang="en-US"/> | ||
134 | + <meta name="DCTERMS.subject" content="," xml:lang="en-US"/> | ||
135 | + <link rel="schema.DC" href="http://purl.org/dc/elements/1.1/" hreflang="en"/> | ||
136 | + <link rel="schema.DCTERMS" href="http://purl.org/dc/terms/" hreflang="en"/> | ||
137 | + <link rel="schema.DCTYPE" href="http://purl.org/dc/dcmitype/" hreflang="en"/> | ||
138 | + <link rel="schema.DCAM" href="http://purl.org/dc/dcam/" hreflang="en"/> | ||
139 | + <style type="text/css"> | ||
140 | + @page { } | ||
141 | + table { border-collapse:collapse; border-spacing:0; empty-cells:show } | ||
142 | + td, th { vertical-align:top; font-size:12pt;} | ||
143 | + h1, h2, h3, h4, h5, h6 { clear:both } | ||
144 | + ol, ul { margin:0; padding:0;} | ||
145 | + li { list-style: none; margin:0; padding:0;} | ||
146 | + <!-- "li span.odfLiEnd" - IE 7 issue --> | ||
147 | + li span. { clear: both; line-height:0; width:0; height:0; margin:0; padding:0; } | ||
148 | + span.footnodeNumber { padding-right:1em; } | ||
149 | + span.annotation_style_by_filter { font-size:95%; font-family:Arial; background-color:#fff000; margin:0; border:0; padding:0; } | ||
150 | + * { margin:0;} | ||
151 | + .P1 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; font-weight:bold; } | ||
152 | + .P10 { font-size:10pt; font-family:Times New Roman; writing-mode:lr-tb; font-style:italic; font-weight:bold; } | ||
153 | + .P11 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; text-align:center ! important; font-style:italic; } | ||
154 | + .P12 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; } | ||
155 | + .P13 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; } | ||
156 | + .P14 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; margin-left:1.251cm; margin-right:0cm; text-indent:0cm; } | ||
157 | + .P15 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; margin-left:1.251cm; margin-right:0cm; text-indent:0cm; } | ||
158 | + .P16 { font-size:9pt; font-family:Times New Roman; writing-mode:lr-tb; margin-left:1.251cm; margin-right:0cm; text-indent:0cm; } | ||
159 | + .P17 { font-size:12pt; font-family:Times; writing-mode:lr-tb; margin-left:1.251cm; margin-right:0cm; text-indent:0cm; } | ||
160 | + .P18 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; margin-left:1.251cm; margin-right:0cm; text-indent:0cm; } | ||
161 | + .P19 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; font-weight:bold; } | ||
162 | + .P2 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; font-weight:bold; } | ||
163 | + .P22 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; text-align:center ! important; } | ||
164 | + .P23 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; text-align:center ! important; } | ||
165 | + .P25 { font-size:9pt; font-family:Times New Roman; writing-mode:lr-tb; text-align:center ! important; font-weight:bold; } | ||
166 | + .P26 { font-size:9pt; font-family:Times New Roman; writing-mode:lr-tb; text-align:center ! important; font-weight:bold; } | ||
167 | + .P28 { font-size:9pt; font-family:Times New Roman; writing-mode:lr-tb; text-align:center ! important; font-style:italic; font-weight:bold; } | ||
168 | + .P29 { font-size:9pt; font-family:Times New Roman; writing-mode:lr-tb; text-align:center ! important; font-style:italic; font-weight:bold; } | ||
169 | + .P3 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; font-weight:bold; } | ||
170 | + .P30 { font-size:9pt; font-family:Times New Roman; writing-mode:lr-tb; text-align:center ! important; font-style:italic; font-weight:bold; } | ||
171 | + .P31 { font-size:9pt; font-family:Times New Roman; writing-mode:lr-tb; font-style:italic; font-weight:bold; } | ||
172 | + .P33 { font-size:9pt; font-family:Times New Roman; writing-mode:lr-tb; text-align:center ! important; font-style:italic; } | ||
173 | + .P34 { font-size:9pt; font-family:Times New Roman; writing-mode:lr-tb; font-style:italic; } | ||
174 | + .P35 { font-size:9pt; font-family:Times New Roman; writing-mode:lr-tb; text-align:center ! important; } | ||
175 | + .P36 { font-size:9pt; font-family:Times New Roman; writing-mode:lr-tb; text-align:center ! important; } | ||
176 | + .P37 { font-size:9pt; font-family:Times New Roman; writing-mode:lr-tb; text-align:center ! important; } | ||
177 | + .P38 { font-size:9pt; font-family:Times New Roman; writing-mode:lr-tb; text-align:center ! important; } | ||
178 | + .P39 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; } | ||
179 | + .P4 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; } | ||
180 | + .P40 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; text-align:center ! important; } | ||
181 | + .P41 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; text-align:center ! important; font-style:italic; font-weight:bold; } | ||
182 | + .P42 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; text-align:center ! important; font-weight:bold; } | ||
183 | + .P43 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; text-align:center ! important; font-weight:normal; } | ||
184 | + .P44 { font-size:11pt; font-family:Times New Roman; writing-mode:lr-tb; text-align:center ! important; font-weight:bold; } | ||
185 | + .P45 { font-size:11pt; font-family:Times New Roman; writing-mode:lr-tb; text-align:center ! important; font-weight:normal; } | ||
186 | + .P46 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; text-align:center ! important; font-weight:bold; } | ||
187 | + .P47 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; } | ||
188 | + .P48 { font-size:9pt; font-family:Times New Roman; writing-mode:lr-tb; font-weight:bold; } | ||
189 | + .P49 { font-size:9pt; font-family:Times New Roman; writing-mode:lr-tb; text-align:center ! important; font-weight:bold; } | ||
190 | + .P5 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; } | ||
191 | + .P51 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; } | ||
192 | + .P52 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; } | ||
193 | + .P53 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; } | ||
194 | + .P54 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; } | ||
195 | + .P55 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; } | ||
196 | + .P56 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; } | ||
197 | + .P57 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; } | ||
198 | + .P58 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; } | ||
199 | + .P59 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; } | ||
200 | + .P6 { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; } | ||
201 | + .P62 { font-size:9pt; font-family:Times New Roman; writing-mode:lr-tb; text-align:center ! important; font-weight:bold; } | ||
202 | + .P68 { font-size:11pt; font-family:Times New Roman; writing-mode:lr-tb; text-align:center ! important; font-weight:bold; } | ||
203 | + .P7 { font-size:9pt; font-family:Times New Roman; writing-mode:lr-tb; font-weight:bold; } | ||
204 | + .P8 { font-size:9pt; font-family:Times New Roman; writing-mode:lr-tb; } | ||
205 | + .P9 { font-size:9pt; font-family:Times New Roman; writing-mode:lr-tb; } | ||
206 | + .Standard { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; } | ||
207 | + .Table_20_Contents { font-size:12pt; font-family:Times New Roman; writing-mode:lr-tb; } | ||
208 | + .Tableau2 { width:27.25cm; float:none; writing-mode:lr-tb; } | ||
209 | + .Tableau2_A1 { background-color:#cccccc; padding:0.097cm; border-left-width:thin; border-left-style:solid; border-left-color:#000000; border-right-style:none; border-top-width:thin; border-top-style:solid; border-top-color:#000000; border-bottom-width:thin; border-bottom-style:solid; border-bottom-color:#000000; } | ||
210 | + .Tableau2_A2 { background-color:#dddddd; padding:0.097cm; border-left-width:thin; border-left-style:solid; border-left-color:#000000; border-right-style:none; border-top-style:none; border-bottom-width:thin; border-bottom-style:solid; border-bottom-color:#000000; } | ||
211 | + .Tableau2_C12 { padding:0.097cm; border-left-width:thin; border-left-style:solid; border-left-color:#000000; border-right-style:none; border-top-style:none; border-bottom-width:thin; border-bottom-style:solid; border-bottom-color:#000000; } | ||
212 | + .Tableau2_C13 { padding:0.097cm; border-left-width:thin; border-left-style:solid; border-left-color:#000000; border-right-style:none; border-top-style:none; border-bottom-width:thin; border-bottom-style:solid; border-bottom-color:#000000; } | ||
213 | + .Tableau2_C5 { padding:0.097cm; border-left-width:thin; border-left-style:solid; border-left-color:#000000; border-right-style:none; border-top-style:none; border-bottom-width:thin; border-bottom-style:solid; border-bottom-color:#000000; } | ||
214 | + .Tableau2_D12 { padding:0.097cm; border-left-width:thin; border-left-style:solid; border-left-color:#000000; border-right-style:none; border-top-style:none; border-bottom-width:thin; border-bottom-style:solid; border-bottom-color:#000000; } | ||
215 | + .Tableau2_D13 { padding:0.097cm; border-left-width:thin; border-left-style:solid; border-left-color:#000000; border-right-style:none; border-top-style:none; border-bottom-width:thin; border-bottom-style:solid; border-bottom-color:#000000; } | ||
216 | + .Tableau2_D4 { padding:0.097cm; border-left-width:thin; border-left-style:solid; border-left-color:#000000; border-right-style:none; border-top-style:none; border-bottom-width:thin; border-bottom-style:solid; border-bottom-color:#000000; } | ||
217 | + .Tableau2_D9 { padding:0.097cm; border-left-width:thin; border-left-style:solid; border-left-color:#000000; border-right-style:none; border-top-style:none; border-bottom-width:thin; border-bottom-style:solid; border-bottom-color:#000000; } | ||
218 | + .Tableau2_E10 { padding:0.097cm; border-left-width:thin; border-left-style:solid; border-left-color:#000000; border-right-style:none; border-top-style:none; border-bottom-width:thin; border-bottom-style:solid; border-bottom-color:#000000; } | ||
219 | + .Tableau2_E11 { padding:0.097cm; border-left-width:thin; border-left-style:solid; border-left-color:#000000; border-right-style:none; border-top-style:none; border-bottom-width:thin; border-bottom-style:solid; border-bottom-color:#000000; } | ||
220 | + .Tableau2_E12 { padding:0.097cm; border-left-width:thin; border-left-style:solid; border-left-color:#000000; border-right-style:none; border-top-style:none; border-bottom-width:thin; border-bottom-style:solid; border-bottom-color:#000000; } | ||
221 | + .Tableau2_E13 { padding:0.097cm; border-left-width:thin; border-left-style:solid; border-left-color:#000000; border-right-style:none; border-top-style:none; border-bottom-width:thin; border-bottom-style:solid; border-bottom-color:#000000; } | ||
222 | + .Tableau2_E4 { padding:0.097cm; border-left-width:thin; border-left-style:solid; border-left-color:#000000; border-right-style:none; border-top-style:none; border-bottom-width:thin; border-bottom-style:solid; border-bottom-color:#000000; } | ||
223 | + .Tableau2_E7 { padding:0.097cm; border-left-width:thin; border-left-style:solid; border-left-color:#000000; border-right-style:none; border-top-style:none; border-bottom-width:thin; border-bottom-style:solid; border-bottom-color:#000000; } | ||
224 | + .Tableau2_F12 { padding:0.097cm; border-left-width:thin; border-left-style:solid; border-left-color:#000000; border-right-style:none; border-top-style:none; border-bottom-width:thin; border-bottom-style:solid; border-bottom-color:#000000; } | ||
225 | + .Tableau2_F13 { padding:0.097cm; border-left-width:thin; border-left-style:solid; border-left-color:#000000; border-right-style:none; border-top-style:none; border-bottom-width:thin; border-bottom-style:solid; border-bottom-color:#000000; } | ||
226 | + .Tableau2_F3 { padding:0.097cm; border-left-width:thin; border-left-style:solid; border-left-color:#000000; border-right-style:none; border-top-style:none; border-bottom-width:thin; border-bottom-style:solid; border-bottom-color:#000000; } | ||
227 | + .Tableau2_F8 { padding:0.097cm; border-left-width:thin; border-left-style:solid; border-left-color:#000000; border-right-style:none; border-top-style:none; border-bottom-width:thin; border-bottom-style:solid; border-bottom-color:#000000; } | ||
228 | + .Tableau2_G1 { background-color:#cccccc; padding:0.097cm; border-width:thin; border-style:solid; border-color:#000000; } | ||
229 | + .Tableau2_G12 { padding:0.097cm; border-left-width:thin; border-left-style:solid; border-left-color:#000000; border-right-width:thin; border-right-style:solid; border-right-color:#000000; border-top-style:none; border-bottom-width:thin; border-bottom-style:solid; border-bottom-color:#000000; } | ||
230 | + .Tableau2_G13 { padding:0.097cm; border-left-width:thin; border-left-style:solid; border-left-color:#000000; border-right-width:thin; border-right-style:solid; border-right-color:#000000; border-top-style:none; border-bottom-width:thin; border-bottom-style:solid; border-bottom-color:#000000; } | ||
231 | + .Tableau2_A { width:3.893cm; } | ||
232 | + .Tableau2_G { width:3.893cm; } | ||
233 | + .T1 { font-style:italic; font-weight:bold; } | ||
234 | + .T13 { font-size:9pt; font-style:italic; } | ||
235 | + .T14 { font-size:9pt; font-style:italic; font-weight:bold; } | ||
236 | + .T15 { font-size:9pt; font-weight:bold; } | ||
237 | + .T16 { font-size:9pt; } | ||
238 | + .T17 { font-size:9pt; } | ||
239 | + .T18 { font-size:9pt; } | ||
240 | + .T25 { font-weight:normal; } | ||
241 | + .T4 { font-weight:bold; } | ||
242 | + .T5 { font-weight:bold; } | ||
243 | + .T6 { font-weight:bold; } | ||
244 | + .T7 { font-weight:bold; } | ||
245 | + .WW8Num1z0 { font-family:Symbol; } | ||
246 | + .WW8Num2z0 { font-family:Symbol; } | ||
247 | + .WW8Num3z0 { font-family:Symbol; } | ||
248 | + .WW8Num4z0 { font-family:Symbol; } | ||
249 | + .WW8Num5z0 { font-family:Symbol; } | ||
250 | + .WW8Num6z0 { font-family:Symbol; font-size:12pt; } | ||
251 | + .WW8Num7z0 { font-family:Symbol; } | ||
252 | + .WW8Num8z0 { font-family:Symbol; font-size:9pt; font-weight:normal; } | ||
253 | + <!-- ODF styles with no properties representable as CSS --> | ||
254 | + .Tableau2.13 .T10 .T11 .T12 .T19 .T2 .T20 .T21 .T22 .T23 .T24 .T3 .T8 .T9 .WW8Num8z1 .WW8Num8z2 .WW8Num8z3 .WW8Num8z4 .WW8Num8z5 .WW8Num8z6 .WW8Num8z7 .WW8Num8z8 .WW8Num9z0 .WW8Num9z1 .WW8Num9z2 .WW8Num9z3 .WW8Num9z4 .WW8Num9z5 .WW8Num9z6 .WW8Num9z7 .WW8Num9z8 { } | ||
255 | + </style> | ||
256 | + </head> | ||
257 | + <body dir="ltr"> | ||
258 | + <!-- style="max-width:29.7cm;margin-top:1cm; margin-bottom:1cm; margin-left:1cm; margin-right:1.45cm; writing-mode:lr-tb; " --> | ||
259 | + <!-- Cette propiété fait TOTALEMENT bugguer le design du site --> | ||
260 | + <div class="index"> | ||
261 | + <p class="P46">ACL (Access Control List)</p> | ||
262 | + <p class="P11">(Etienne Pallier – 24/<span class="T22">06</span>/201<span class="T23">6</span>)</p> | ||
263 | + <p class="P1"> </p> | ||
264 | + <p class="P1"> </p> | ||
265 | + <p class="P1"> </p> | ||
266 | + <p class="P1">I – Cycle de vie du statut du matériel</p> | ||
267 | + <p class="P1"> </p> | ||
268 | + <p class="Standard"><span class="T5">Créer</span><span class="T2"> un matériel ==</span><span class="T9">> passe alors en statut </span><span class="T7">CREATED ==> </span><span class="T1">peut alors être éventuellement supprimé (mais ne pourra plus être supprimé ensuite)</span></p><p class="Standard"><span class="T7">Valider</span><span class="T9"> un matériel CREATED ==> passe alors en statut </span><span class="T7">VALIDATED </span><span class="T9">(</span><span class="T11">resp et </span><span class="T9">admin only)</span></p> | ||
269 | + <p class="P4"><span class="T7">Demander l'Archivage</span><span class="T9"> d'un materiel VALIDATED ==> passe alors en statut </span><span class="T7">TOBEARCHIVED</span><span class="T9"> (resp et admin only)</span></p> | ||
270 | + <p class="P4"><span class="T7">Sortir</span><span class="T9"> de l'inventaire (Valider une demande d'archivage d'un matériel TOBEARCHIVED) ==> statut </span><span class="T7">ARCHIVED</span><span class="T9"> (admin only)</span></p> | ||
271 | + <p class="P4"><span class="T7">Désarchiver</span><span class="T9"> un matériel ==> repasse de TOBEARCHIVED ou ARCHIVED à </span><span class="T7">VALIDATED</span><span class="T9"> (admin only) </span></p> | ||
272 | + <p class="P4"> </p> | ||
273 | + <p class="P5">En résumé : </p> | ||
274 | + <p class="P4"> </p> | ||
275 | + <p class="P3">CREATED ==> VALIDATED ==> TOBEARCHIVED ==> ARCHIVED</p> | ||
276 | + <p class="P2"><span class="T12"> </span><span class="T8">I /\ I I</span></p> | ||
277 | + <p class="P2"><span class="T12"> </span><span class="T8">V I ------------------------ I --------------------------------- I (adminplus only)</span></p> | ||
278 | + <p class="P3">DELETED</p> | ||
279 | + <p class="P2"> </p> | ||
280 | + <p class="P2"> </p> | ||
281 | + <p class="P2"> </p> | ||
282 | + <p class="P1">II - Droits des utilisateurs selon leur profil</p> | ||
283 | + <p class="P1"> </p> | ||
284 | + <p class="P1">A – Globalement (principes généraux)</p> | ||
285 | + | ||
286 | + <p class="P1"> </p> | ||
287 | + <p class="P6">Un utilisateur non logué ne doit RIEN pouvoir faire. Seulement se loguer, c'est tout. Il n'a accès qu'à la page d'accueil (de login).</p> | ||
288 | + <p class="P6">Une fois logué, un utilisateur a des droits différents selon son profil, globalement :</p> | ||
289 | + <p class="P14"><span class="T2">- un </span><span class="T5">USER</span><span class="T2"> ne peut que créer un matériel, un suivi, ou un emprunt, consulter, et modifier (uniquement ce qu'il a créé lui-même)</span></p> | ||
290 | + <p class="P18"><span class="T2">- un </span><span class="T5">RESPONSABLE</span><span class="T2"> a tous les droits sauf accès à certains champs et certaines vues réservées à l'administration (ADMIN). Il ne peut pas non plus archiver un matériel, mais seulement demander l'archivage (comme un USER)(uniquement ce </span><span class="T3">lié à son groupe métier ou thématiques</span><span class="T2">)</span></p> | ||
291 | + <p class="P14"><span class="T2">- un </span><span class="T5">ADMIN</span><span class="T2">(istratif) a tous les droits (y-compris champs réservés à l'administration)</span></p> | ||
292 | + <p class="P14"><span class="T2">- un </span><span class="T5">ADMINPLUS</span><span class="T2"> (administratif Plus) a tous les droits de ADMIN et en plus il peut modifier un matériel quelque soit son statut (y-compris TOBEARCHIVED et ARCHIVED), notamment il peut modifier le statut du matériel (pour le rétrograder)</span></p> | ||
293 | + <p class="P14"><span class="T2">- un </span><span class="T5">SUPERADMIN</span><span class="T2"> a tous les droits : ceux d'ADMINPLUS et certains droits supplémentaires pour lui permettre des corrections d'erreur et la configuration de l'application (notamment l'administration des utilisateurs...)</span></p> | ||
294 | + <p class="P15"> </p> | ||
295 | + <p class="Standard"><span class="T2">Concernant les informations internes permettant de savoir </span><span class="T5">qui a fait quoi</span><span class="T2"> (mises en place en février 2014), elles ne sont bien sûr pas modifiables puisque gérées automatiquement par le système, mais sont visibles par tous excepté le profil USER.</span></p> | ||
296 | + <p class="P1"> </p> | ||
297 | + <p class="P7">B - sur la table MATERIEL</p> | ||
298 | + <table border="0" cellspacing="0" cellpadding="0" class="Tableau2"><colgroup><col width="170"/><col width="170"/><col width="170"/><col width="170"/><col width="170"/><col width="170"/><col width="170"/></colgroup> | ||
299 | + <tr> | ||
300 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_A1"><p class="Table_20_Contents"> </p></td> | ||
301 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_A1"><p class="P41">ALL (TOUS)</p><p class="P43">(droits par defaut)</p></td> | ||
302 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_A1"><p class="P40"><span class="T5">U</span><span class="T6">tilisateur </span><span class="T5"> </span><span class="T2">(quelconque)</span></p></td> | ||
303 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_A1"><p class="P42">Responsable</p></td> | ||
304 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_A1"><p class="P42">Administration</p></td> | ||
305 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_A1"><p class="P42">Administration Plus</p></td> | ||
306 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_G1"><p class="P42">Super-Administrateur</p></td> | ||
307 | + </tr> | ||
308 | + <tr> | ||
309 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Read (un seul ou une liste)</p><p class="P45">(view ou index)</p></td> | ||
310 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P25">Y</p><p class="Table_20_Contents"><span class="T14">champs caches:</span><span class="T13"> donnees admin</span></p></td> | ||
311 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P36">idem ALL</p></td> | ||
312 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P36">idem ALL</p></td> | ||
313 | + <td rowspan="3" style="text-align:left;width:3.893cm; " class="Tableau2_E4"><p class="P23"><span class="T16">(idem Responsable </span><span class="T15">+ donnees admin</span><span class="T16">)</span></p><p class="P37"> </p><p class="P23"><span class="T13">En mode edit (update), si VALIDATED, on ajoute aux donnees </span><span class="T14">readonly</span><span class="T13"> les </span><span class="T14">donnees admin</span></p></td> | ||
314 | + <td rowspan="2" style="text-align:left;width:3.893cm; " class="Tableau2_F3"><p class="P37">idem Admin</p></td> | ||
315 | + <td rowspan="11" style="text-align:left;width:3.893cm; " class="Tableau2_G12"><p class="P37">idem Adminplus</p></td> | ||
316 | + </tr> | ||
317 | + <tr> | ||
318 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Create (1)</p><p class="P45">(add)</p></td> | ||
319 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P26">Y</p><p class="P39"><span class="T14">champs caches</span><span class="T13">:</span></p><p class="P34">donnees admin + statut + etiquette </p></td> | ||
320 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P36">Idem ALL</p><p class="P39"><span class="T14">champs readonly </span><span class="T13">:</span></p><p class="P34">nom_responsable</p></td> | ||
321 | + <td rowspan="2" style="text-align:left;width:3.893cm; " class="Tableau2_D4"><p class="P36">idem ALL</p><p class="P36">(+ etiquette)</p></td> | ||
322 | + </tr> | ||
323 | + <tr> | ||
324 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Update (1)</p><p class="P45">(edit)</p></td> | ||
325 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P26">Y</p><p class="P33">ssi</p><p class="P39"><span class="T15">CREATED</span><span class="T16"> (tous les champs) </span></p><p class="P39"><span class="T13">ou </span><span class="T14">VALIDATED</span><span class="T13"> (quelques champs visibles sont </span><span class="T14">readonly</span><span class="T13">) (1)</span></p><p class="P34"> </p><p class="P39"><span class="T14">champs caches</span><span class="T13">:</span></p><p class="P34">donnees admin + statut + etiquette</p></td> | ||
326 | + <td rowspan="2" style="text-align:left;width:3.893cm; " class="Tableau2_C5"><p class="P36">idem ALL</p><p class="P22"><span class="T16">ssi </span><span class="T15">createur</span></p></td> | ||
327 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P37">idem Admin</p><p class="P23"><span class="T16">(</span><span class="T15">tous les statuts</span><span class="T16">)</span></p><p class="P23"><span class="T16">(+ champ </span><span class="T15">statut</span><span class="T16">)</span></p><p class="P23"> </p><p class="P23"><span class="T16">TOBEARCHIVED ou ARCHIVED: </span><span class="T15">seulement le statut</span></p></td> | ||
328 | + </tr> | ||
329 | + <tr> | ||
330 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Delete</p><p class="P45">(delete)</p></td> | ||
331 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P26">Y</p><p class="P29">ssi CREATED</p></td> | ||
332 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P37">idem ALL</p></td><td rowspan="3" style="text-align:left;width:3.893cm; " class="Tableau2_E7"><p class="P37">idem Responsable</p></td> | ||
333 | + <td rowspan="4" style="text-align:left;width:3.893cm; " class="Tableau2_F8"><p class="P37">idem Admin</p></td> | ||
334 | + </tr> | ||
335 | + <tr> | ||
336 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Valider</p><p class="P45">(statusValidated)</p></td> | ||
337 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P25">N</p><p class="P28">(resp+)</p></td> | ||
338 | + <td rowspan="7" style="text-align:left;width:3.893cm; " class="Tableau2_C12"><p class="P36">idem ALL</p></td> | ||
339 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P37">Y</p><p class="P30">ssi</p><p class="P30">CREATED</p><p class="P37"> </p></td> | ||
340 | + </tr> | ||
341 | + <tr> | ||
342 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Demander archivage</p><p class="P45">(statusToBeArchived)</p></td> | ||
343 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P25">N</p><p class="P28">(resp+)</p></td> | ||
344 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P37">Y</p><p class="P30">ssi</p><p class="P30">VALIDATED</p></td> | ||
345 | + </tr> | ||
346 | + <tr> | ||
347 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Sortir de l'inventaire</p><p class="P45"><span class="T12"> </span>(statusArchived)</p></td> | ||
348 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P26">N</p><p class="P29">(admin+)</p></td> | ||
349 | + <td rowspan="2" style="text-align:left;width:3.893cm; " class="Tableau2_D9"><p class="P37">idem ALL</p></td> | ||
350 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P35">Y</p><p class="P28">ssi</p><p class="P28">TOBEARCHIVED</p></td> | ||
351 | + </tr> | ||
352 | + <tr> | ||
353 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Desarchiver (2)</p></td> | ||
354 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P26">N</p><p class="P29">(adminplus+)</p></td> | ||
355 | + <td rowspan="2" style="text-align:left;width:3.893cm; " class="Tableau2_E10"><p class="P37">idem Responsable</p></td> | ||
356 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P37">Y</p><p class="P30">ssi</p><p class="P30">ARCHIVED ou</p><p class="P30">TOBEARCHIVED</p></td> | ||
357 | + </tr> | ||
358 | + <tr> | ||
359 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Exporter</p><p class="P45">(csv)</p></td> | ||
360 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P26">N</p><p class="P29">(resp+)</p></td> | ||
361 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P37">Y</p></td> | ||
362 | + <td rowspan="3" style="text-align:left;width:3.893cm; " class="Tableau2_F12"><p class="P37">idem Admin</p></td> | ||
363 | + </tr> | ||
364 | + <tr> | ||
365 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Montee de statut group<span class="T24">é</span>e</p></td> | ||
366 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P26">N</p><p class="P29">(admin+)</p></td> | ||
367 | + <td rowspan="2" style="text-align:left;width:3.893cm; " class="Tableau2_D12"><p class="P37">idem ALL</p></td> | ||
368 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E11"><p class="P38">Y</p></td> | ||
369 | + </tr> | ||
370 | + <tr> | ||
371 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P44">Edition (4)</p><p class="P44">DOCUMENTS</p></td> | ||
372 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E12"><p class="P26">N</p><p class="P29">(admin+)</p></td> | ||
373 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E12"><p class="P37">Y</p><p class="P31">- admission : ssi VALIDATED</p><p class="P31">- sortie : ssi TOBEARCHIVED ou ARCHIVED</p></td> | ||
374 | + </tr> | ||
375 | + <tr class="Tableau213"> | ||
376 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_A2"><p class="P68">Fiche Matériel </p></td> | ||
377 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E13"><p class="P62">Y <span class="T25">(sans partie admin)</span></p></td> | ||
378 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_C13"><p class="P49">Y <span class="T25">(sans partie admin)</span></p></td> | ||
379 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_D13"><p class="P49">Y <span class="T25">(sans partie admin)</span></p></td> | ||
380 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_E13"><p class="P62">Y</p></td><td style="text-align:left;width:3.893cm; " class="Tableau2_F13"><p class="P49">Y</p></td> | ||
381 | + <td style="text-align:left;width:3.893cm; " class="Tableau2_G13"><p class="P49">Y <span class="T25">(sans partie admin)</span></p></td> | ||
382 | + </tr> | ||
383 | + </table> | ||
384 | + <p class="P7"> </p> | ||
385 | + <p class="P7"> </p> | ||
386 | + <p class="P6"> </p> | ||
387 | + <p class="P10">Par défaut, le superadmin a TOUS les droits</p> | ||
388 | + <p class="P10"> </p> | ||
389 | + <p class="Standard"><span class="T15">Conventions d'écriture </span><span class="T16">: </span></p> | ||
390 | + <p class="P14"><span class="T16">- r</span><span class="T15">esp+</span><span class="T16"> = possible pour un </span><span class="T15">Responsable et plus </span><span class="T16">(responsable, admin, adminplus, et superadmin)</span></p> | ||
391 | + <p class="P14"><span class="T16">- </span><span class="T15">admin+</span><span class="T16"> = possible pour un </span><span class="T15">Admin</span><span class="T16"> </span><span class="T15">et plus </span><span class="T16">(admin, adminplus, et superadmin)</span></p> | ||
392 | + <p class="P16">- ...</p><p class="P16"> </p><p class="Standard"><span class="T15">Notes </span><span class="T16">:</span></p> | ||
393 | + <p class="P9"> </p> | ||
394 | + <ol> | ||
395 | + <li><p class="P47" style="margin-left:0cm;"><span class="WW8Num8z0" style="display:block;float:left;min-width:0,635cm;">(1)</span><span class="T15">Droits en modification (edit) </span><span class="T16">:</span><span class="odfLiEnd"></span> </p></li> | ||
396 | + </ol> | ||
397 | + <p class="P16">- Un simple « user » ne doit pas pouvoir modifier le responsable, ni le statut, ni l'étiquette, ni les données admin d'un matériel (en mode Création comme Modification)</p><p class="P16">- Un «responsable » ne doit pas pouvoir modifier le statut, ni les données admin d'un matériel (en mode Création comme Modification)</p> | ||
398 | + <p class="P16">- Les données admin ne sont accessibles qu'aux profils admin+</p> | ||
399 | + <p class="P14"><span class="T16">- Le champ "</span><span class="T15">status</span><span class="T16">" n'est modifiable que par les profils adminplus+</span></p> | ||
400 | + <p class="P14"><span class="T16">- Tout le monde peut modifier un matériel </span><span class="T15">VALIDATED </span><span class="T16">(</span><span class="T15">user </span><span class="T16">ne peut modifier que </span><span class="T15">ses</span><span class="T16"> matériels, </span><span class="T17">resp ne peut modifier que les matériels de son groupe thématique ou métier</span><span class="T16">),</span></p> | ||
401 | + <p class="P14"><span class="T16">MAIS PAS</span><span class="T15"> certains champs</span><span class="T16"> qui sont </span><span class="T15">readonly</span><span class="T16"> (</span><span class="T18">sur_categorie_id', 'categorie_id', 'materiel_administratif', 'materiel_technique', 'date_acquisition', 'nom_responsable', 'fournisseur', 'organisme', 'prix_ht')</span></p> | ||
402 | + <p class="P14"><span class="T16">Les seuls champs qu'on peut éditer sont donc : (</span><span class="T18">designation, sous_categorie, materiel_administratif, materiel_technique, description, etiquette, lieu_stockage, lieu_detail, numero_serie, groupes_thematique, groupes_metier),</span><span class="T16"><br/>- Seuls les profils </span><span class="T15">adminplus+</span><span class="T16"> peuvent modifier un matériel </span><span class="T15">TOBEARCHIVED, ou ARCHIVED </span><span class="T16">mais </span><span class="T15">UNIQUEMENT le champ "status" </span><span class="T16">(pour pouvoir rétrograder à CREATED ou VALIDATED)</span></p> | ||
403 | + <p class="P14"><span class="T16">- Le seul moyen de modifier COMPLÈTEMENT un matériel VALIDATED, TOBEARCHIVED, ou ARCHIVED, <br/>c'est de </span><span class="T15">changer son statut</span><span class="T16">, en le rétrogradant à CREATED (seuls les profils adminplus+ peuvent le faire)</span></p><p class="P16"> </p> | ||
404 | + <ol> | ||
405 | + <li><p class="P47" style="margin-left:0cm;"><span class="WW8Num8z0" style="display:block;float:left;min-width:0,635cm;">(2)</span><span class="T15">Désarchiver </span><span class="T16">: consiste à rétrograder un matériel ARCHIVED ou TOBEARCHIVED dans le statut VALIDATED ou CREATED (adminplus+ only) ; utile en cas d'erreur</span><span class="odfLiEnd"></span> </p></li> | ||
406 | + </ol> | ||
407 | + <p class="P8"> </p> | ||
408 | + <ol> | ||
409 | + <li><p class="P47" style="margin-left:0cm;"><span class="WW8Num8z0" style="display:block;float:left;min-width:0,635cm;">(3)</span><span class="T15">Montée de statut groupée : </span><span class="T16">seul ADMIN peut (exporter tout ou partie de la liste des matériels, et) </span><span class="T15">augmenter (+1) le statut d'un groupe de matériels</span><span class="T16">, depuis la vue « index » (vue spéciale pour ADMIN, avec des cases à cocher et boutons pour exporter ou faire évoluer le statut)</span><span class="odfLiEnd"></span> </p></li> | ||
410 | + </ol> | ||
411 | + <p class="P8"> </p> | ||
412 | + <ol> | ||
413 | + <li><p class="P48" style="margin-left:0cm;"><span class="WW8Num8z0" style="display:block;float:left;min-width:0,635cm;">(4)</span>Edition des documents :<span class="odfLiEnd"></span> </p></li> | ||
414 | + </ol> | ||
415 | + <p class="P16">Admission : quand on "VALIDE" un matériel "CREATED", le statut passe en VALIDATED et le document d'admission est automatiquement édité</p> | ||
416 | + <p class="P16">Sortie : quand on "ARCHIVE" un document "TOBEARCHIVED", le statut passe en ARCHIVED et le document de sortie est automatiquement édité</p> | ||
417 | + <p class="P16">De plus :</p> | ||
418 | + <p class="P16">- Bouton "Doc admission" affiché à partir du statut "VALIDATED"</p> | ||
419 | + <p class="P16">- Bouton "Doc Sortie" affiché à partir du statut TOBEARCHIVED (et donc aussi pour ARCHIVED)</p> | ||
420 | + <p class="P16">Enfin, Le doc de sortie doit être couplée avec la liste des matériels a archiver (TOBEARCHIVED) quand il y a une demande de sortie.</p> | ||
421 | + <p class="P16"> </p> | ||
422 | + <p class="P17"> </p> | ||
423 | + <p class="P1">C - sur les différentes VUES liées au matériel</p> | ||
424 | + <p class="Standard"> </p> | ||
425 | + <p class="P6"><span class="T4">Page accueil </span>:</p> | ||
426 | + <p class="P6"><span> Administration <span class="T20">& Administration Plus </span>voit un menu avec 2 options :</span></p> | ||
427 | + <ul> | ||
428 | + <li> | ||
429 | + <ul> | ||
430 | + <li> | ||
431 | + <ul> | ||
432 | + <li><p class="P51" style="margin-left:0cm;"><span class="WW8Num2z0" style="display:block;float:left;min-width:0,635cm;">.</span>« Voir les matériels à valider »<span class="odfLiEnd"></span> </p></li> | ||
433 | + <li><p class="P52" style="margin-left:0cm;"><span class="WW8Num2z0" style="display:block;float:left;min-width:0,635cm;">.</span>« Voir les matériels à sortir de l'inventaire »<span class="odfLiEnd"></span> </p></li> | ||
434 | + </ul> | ||
435 | + </li> | ||
436 | + </ul> | ||
437 | + <p class="P52" style="margin-left:0cm;"><span class="WW8Num2z0" style="display:block;float:left;min-width:0cm"><!-- --></span><span class="T21">Responsable </span>voit un menu avec <span class="T21">3</span> options :<span class="odfLiEnd"></span> </p> | ||
438 | + <ul> | ||
439 | + <li> | ||
440 | + <ul> | ||
441 | + <li><p class="P52" style="margin-left:0cm;"><span class="WW8Num2z0" style="display:block;float:left;min-width:0,635cm;">.</span>« Voir les matériels <span class="T21">de mon groupe métier</span> »<span class="odfLiEnd"></span> </p></li> | ||
442 | + <li><p class="P52" style="margin-left:0cm;"><span class="WW8Num2z0" style="display:block;float:left;min-width:0,635cm;">.</span>« Voir les matériels <span class="T21">de mon groupe métier à valider</span> »<span class="odfLiEnd"></span> </p></li> | ||
443 | + <li><p class="P52" style="margin-left:0cm;"><span class="WW8Num2z0" style="display:block;float:left;min-width:0,635cm;">.</span>« <span class="T21">Voir les suivis des matériels donc je suis responsable »</span><span class="odfLiEnd"></span> </p></li> | ||
444 | + </ul> | ||
445 | + </li> | ||
446 | + </ul> | ||
447 | + </li> | ||
448 | + </ul> | ||
449 | + <p class="P1">Page Outils :</p> | ||
450 | + <p class="P6">User n'a pas accès à cette page</p> | ||
451 | + <p class="P6">Les autres ont quelques options</p> | ||
452 | + <p class="P6">superadmin a ces options en plus :</p> | ||
453 | + <ul> | ||
454 | + <li><p class="P53" style="margin-left:0cm;"><span class="WW8Num4z0" style="display:block;float:left;min-width:0,635cm;">.</span>Configuration générale de l'application<span class="odfLiEnd"></span> </p></li> | ||
455 | + <li><p class="P53" style="margin-left:0cm;"><span class="WW8Num4z0" style="display:block;float:left;min-width:0,635cm;">.</span>Gérer les utilisateurs <span class="T20">privilégiés</span><span class="odfLiEnd"></span> </p></li> | ||
456 | + <li><p class="P53" style="margin-left:0cm;"><span class="WW8Num4z0" style="display:block;float:left;min-width:0,635cm;">.</span>Passer en mode debug<span class="odfLiEnd"></span> </p></li> | ||
457 | + <li><p class="P54" style="margin-left:0cm;"><span class="WW8Num4z0" style="display:block;float:left;min-width:0,635cm;">.</span>Passer en mode install<span class="odfLiEnd"></span> </p></li> | ||
458 | + </ul> | ||
459 | + <p class="P6"> </p> | ||
460 | + <p class="Standard"><span class="T5">Vue materiel/index (liste) </span><span class="T2">: limiter aux </span><span class="T5">matériels actifs</span><span class="T2"> (non archivés)</span></p> | ||
461 | + <ul> | ||
462 | + <li> | ||
463 | + <ul> | ||
464 | + <li><p class="P55" style="margin-left:0cm;"><span class="WW8Num1z0" style="display:block;float:left;min-width:0,635cm;">.</span>Admin<span class="T20">+ </span>voit des boutons pour filtrer par « tous », « à valider », « validés », « à sortir », « archivés »<span class="odfLiEnd"></span> </p></li> | ||
465 | + </ul> | ||
466 | + </li> | ||
467 | + </ul> | ||
468 | + <p class="P6"> </p> | ||
469 | + <p class="Standard"><span class="T5">Vue materiel/find </span><span class="T2">: limiter aux </span><span class="T5">matériels actifs</span><span class="T2"> (non archivés)</span></p> | ||
470 | + <p class="P6"><span> Seul le<span class="T20">s</span> profil<span class="T20">s</span> Admin<span class="T20">+ </span>voit TOUS les matériels (y-compris archivés)</span></p><p class="P6"> </p> | ||
471 | + <p class="P6"><span class="T4">Vue materiel/view </span>:</p> | ||
472 | + <p class="P6"><span> boutons « Imprimer Etiquettes » : <span class="T20">resp+</span></span></p> | ||
473 | + <p class="P6"> </p><p class="P6"><span class="T4">Vue materiel/edit </span>:</p> | ||
474 | + <ul> | ||
475 | + <li><p class="P56" style="margin-left:0cm;"><span class="WW8Num5z0" style="display:block;float:left;min-width:0,635cm;">.</span>Etiquette O/N (admin<span class="T20">+)</span><span class="odfLiEnd"></span> </p></li> | ||
476 | + <li><p class="P56" style="margin-left:0cm;"><span class="WW8Num5z0" style="display:block;float:left;min-width:0,635cm;">.</span>Statut (<span class="T20">superadmin+)</span><span class="odfLiEnd"></span> </p></li> | ||
477 | + <li><p class="P56" style="margin-left:0cm;"><span class="WW8Num5z0" style="display:block;float:left;min-width:0,635cm;">.</span>Informations administratives (admin<span class="T20">+)</span><span class="odfLiEnd"></span> </p></li> | ||
478 | + </ul> | ||
479 | + <p class="P6"> </p> | ||
480 | + <p class="P6"> </p> | ||
481 | + <p class="P1"> </p> | ||
482 | + <p class="P19">D - sur un SUIVI et un EMPRUNT</p> | ||
483 | + <p class="P1"> </p> | ||
484 | + <ul> | ||
485 | + <li><p class="P57" style="margin-left:0cm;"><span class="WW8Num3z0" style="display:block;float:left;min-width:0,635cm;">.</span>Dans tous les cas, on ne doit pas pouvoir emprunter ou suivre un materiel non validé (CREATED)<span class="odfLiEnd"></span> </p></li> | ||
486 | + <li><p class="P57" style="margin-left:0cm;"><span class="WW8Num3z0" style="display:block;float:left;min-width:0,635cm;">.</span>User a les droits C, R, U (si créateur), D (si créateur)<span class="odfLiEnd"></span> </p></li> | ||
487 | + <li><p class="P57" style="margin-left:0cm;"><span class="WW8Num3z0" style="display:block;float:left;min-width:0,635cm;">.</span>Resp+ a les droits C, R, U, D<span class="odfLiEnd"></span> </p></li> | ||
488 | + </ul> | ||
489 | + <p class="P4"><span class="T9">Un USER peut modifier/supprimer un emprunt dont il est soit le créateur soit l'emprunteur</span><span class="T19">.</span></p> | ||
490 | + <p class="P12">Un USER qui créé un emprunt ne doit pas pouvoir changer le nom de l'emprunteur (par défaut, c'est lui). Ainsi, il pourra modifier/supprimer cette fiche au besoin plus tard. Par défaut donc, pour un user, emprunt.emprunteur=creator, materiel.responsable=creator</p> | ||
491 | + <p class="P13">Tout le monde peut rechercher un suivi,</p> | ||
492 | + <p class="P5"> </p> | ||
493 | + <p class="P5"> </p> | ||
494 | + <p class="P3">E - sur les UTILISATEURS</p> | ||
495 | + <p class="P4"><span class="T9">Par défaut, superadmin a tous les droits, et les autres profils n'ont que le droit de lecture (</span><span class="T7">view </span><span class="T9">et </span><span class="T7">index</span><span class="T9">)</span></p> | ||
496 | + <p class="P5"> </p> | ||
497 | + <p class="P5"> </p> | ||
498 | + <p class="P3">F - sur tous les autres objets métiers</p> | ||
499 | + <p class="P5">Voici la liste des autres objets métiers :</p> | ||
500 | + <ul> | ||
501 | + <li><p class="P58" style="margin-left:0cm;"><span class="WW8Num7z0" style="display:block;float:left;min-width:0,635cm;">.</span>Catégories (et domaines et sous-catégories)<span class="odfLiEnd"></span> </p></li> | ||
502 | + </ul> | ||
503 | + <ul> | ||
504 | + <li><p class="P59" style="margin-left:0cm;"><span class="WW8Num6z0" style="display:block;float:left;min-width:0,635cm;">.</span>Groupes thématiques<span class="odfLiEnd"></span> </p></li> | ||
505 | + <li><p class="P59" style="margin-left:0cm;"><span class="WW8Num6z0" style="display:block;float:left;min-width:0,635cm;">.</span>Groupes métiers<span class="odfLiEnd"></span> </p></li> | ||
506 | + </ul> | ||
507 | + <p class="P4"><span class="T9">Par défaut, pour tous ces objets, superadmin a tous les droits, admin</span><span class="T10">plus</span><span class="T9"> a tous les droits sauf « delete », et les autres profils n'ont que le droit de lecture (</span><span class="T7">view </span><span class="T9">et </span><span class="T7">index</span><span class="T9">)</span></p> | ||
508 | + </div> | ||
509 | + <div class="actions"> | ||
510 | +>>>>>>> dev-IRAP | ||
120 | <?php echo $this->element('menu') ?> | 511 | <?php echo $this->element('menu') ?> |
121 | </div> | 512 | </div> |
122 | - | ||
123 | </body></html> | 513 | </body></html> |
124 | \ No newline at end of file | 514 | \ No newline at end of file |
src/Template/Pages/home_app.ctp
@@ -2,33 +2,30 @@ | @@ -2,33 +2,30 @@ | ||
2 | <div class="index"> | 2 | <div class="index"> |
3 | <h2><i class="icon-home"></i> Accueil</h2> | 3 | <h2><i class="icon-home"></i> Accueil</h2> |
4 | 4 | ||
5 | -<p>Bienvenue sur l'inventaire administratif et technique <?= $configuration->labPresent.' <b>'.$configuration->labName ?></b>.</p> | 5 | + <p>Bienvenue sur l'inventaire administratif et technique <?= $configuration->labPresent.' <b>'.$configuration->labName ?></b>.</p> |
6 | 6 | ||
7 | <?php | 7 | <?php |
8 | - //Utilisateur connecté | ||
9 | - echo '<p>Vous êtes connecté en tant que <b>' . $username . '</b> '; | ||
10 | - echo 'et avec le niveau d\'authentification <b>'.$role.'</b>.'; | ||
11 | - echo '<p>'; | ||
12 | - | ||
13 | - echo '<table cellpadding="0" cellspacing="0" style="width: 800px;">'; | ||
14 | - echo '<tr><th></th></tr>'; | ||
15 | - echo '<tr><td> '.$this->Html->link('Voir mes matériels', [ | ||
16 | - 'controller' => 'materiels', 'action' => 'index', 'MY' => $username]).' </td></tr>'; | ||
17 | - echo '</table>'; | ||
18 | - | ||
19 | - //Utilisateur admin/super admin | ||
20 | - if (in_array($role, ['Administration', 'Administration Plus'])) { | ||
21 | - echo '<table cellpadding="0" cellspacing="0" style="width: 800px;">'; | ||
22 | - echo '<tr><th></th></tr>'; | ||
23 | - echo '<tr><td> '.$this->Html->link('Voir les matériels à valider', [ | ||
24 | - 'controller' => 'materiels', 'action' => 'index', 'CREATED']).' </td></tr>'; | ||
25 | - echo '<tr><td> '.$this->Html->link('Voir les matériels à sortir de l\'inventaire', [ | ||
26 | - 'controller' => 'materiels', 'action' => 'index', 'TOBEARCHIVED']).' </td></tr>'; | ||
27 | - echo '</table>'; | ||
28 | - } | ||
29 | - | 8 | + //Utilisateur connecté |
9 | + echo '<p>Vous êtes connecté en tant que <b>' . $username . '</b> '; | ||
10 | + echo 'et avec le niveau d\'authentification <b>'.$role.'</b>.'; | ||
11 | + echo '<p>'; | ||
30 | 12 | ||
13 | + echo '<table cellpadding="0" cellspacing="0" style="width: 800px;">'; | ||
14 | + echo '<tr><th></th></tr>'; | ||
15 | + echo '<tr><td> '.$this->Html->link('Voir mes matériels', [ | ||
16 | + 'controller' => 'materiels', 'action' => 'index', 'MY' => $username]).' </td></tr>'; | ||
17 | + echo '</table>'; | ||
31 | 18 | ||
19 | + //Utilisateur admin/super admin | ||
20 | + if (in_array($role, ['Administration', 'Administration Plus'])) { | ||
21 | + echo '<table cellpadding="0" cellspacing="0" style="width: 800px;">'; | ||
22 | + echo '<tr><th></th></tr>'; | ||
23 | + echo '<tr><td> '.$this->Html->link('Voir les matériels à valider', [ | ||
24 | + 'controller' => 'materiels', 'action' => 'index', 'CREATED']).' </td></tr>'; | ||
25 | + echo '<tr><td> '.$this->Html->link('Voir les matériels à sortir de l\'inventaire', [ | ||
26 | + 'controller' => 'materiels', 'action' => 'index', 'TOBEARCHIVED']).' </td></tr>'; | ||
27 | + echo '</table>'; | ||
28 | + } | ||
32 | 29 | ||
33 | //Utilisateur responsable | 30 | //Utilisateur responsable |
34 | if ($role == 'Responsable') { | 31 | if ($role == 'Responsable') { |
src/Template/Pages/infos.ctp
1 | -<div class="actions"> | ||
2 | - <?php echo $this->element('menu') ?> | ||
3 | -</div> | ||
4 | 1 | ||
5 | <div class="index"> | 2 | <div class="index"> |
6 | <h2><i class="icon-wrench"></i> INFORMATIONS SYSTEME </h2> | 3 | <h2><i class="icon-wrench"></i> INFORMATIONS SYSTEME </h2> |
7 | - <?php | 4 | + <?php |
8 | phpinfo(); | 5 | phpinfo(); |
9 | - ?> | ||
10 | - | 6 | + ?> |
11 | </div> | 7 | </div> |
12 | 8 | ||
9 | +<div class="actions"> | ||
10 | + <?php echo $this->element('menu') ?> | ||
11 | +</div> |
src/Template/Pages/printers.ctp
1 | <div class="index"> | 1 | <div class="index"> |
2 | - <h2><i class="icon-print"></i> ETIQUETEUSES INSTALLEES </h2> | 2 | + <h2><i class="icon-print"></i> ETIQUETEUSE </h2> |
3 | 3 | ||
4 | -<br/><br/> | ||
5 | -<h3>REFERENCE DE L'ETIQUETEUSE (TITREUSE)</h3> | ||
6 | -<hr/> | ||
7 | - | ||
8 | -<p> | ||
9 | -Nom : "Imprimante d'étiquettes - Dymo - LabelManager PnP - USB" | ||
10 | -</p> | ||
11 | - | ||
12 | -<p> | ||
13 | -Prix : environ 50 € HT | ||
14 | -</p> | ||
15 | - | ||
16 | -<p> | ||
17 | -Ruban à commander : "D1 en 12mm" | ||
18 | -</p> | ||
19 | - | ||
20 | -<p> | ||
21 | -<a href="http://www.lyreco.com/webshop/P01/product/viewWithMoreResults/000000000004976543;jsessionid=0000IXKAG_s_jKOqnKptDrmJM2P:170lneimo?lc=FRBE">Lien chez Lyreco (Réf : 4.976.543)</a> | ||
22 | -</p> | ||
23 | - | ||
24 | -<p> | ||
25 | -<a href="http://www.officedepot.fr/a/pb/Imprimante-d-etiquettes-Dymo-PnP/pr=&id=5375844/">Lien chez OfficeDepot (Réf : 5375844)</a> | ||
26 | -</p> | ||
27 | - | ||
28 | -<p> | ||
29 | -<a href="http://global.dymo.com/frFR/Products/LabelManager_PnP.html">Lien chez le constructeur DYMO (Réf : S0915350)</a> | ||
30 | -</p> | ||
31 | - | ||
32 | -<!-- http://book.cakephp.org/2.0/fr/core-libraries/helpers/html.html --> | ||
33 | -<?= $this->Html->image('etiqueteuse.jpg', ['alt' => 'Image de l\'etiqueteuse Dymo - LabelManager PnP - USB']) ?> | ||
34 | - | ||
35 | -<pre> | ||
36 | - Pas de logiciel ni de pilote à installer. Le logiciel intégré s’ouvre à l’écran, prêt à l’emploi. | ||
37 | - Garantie 2 ans. | ||
38 | - Fonctionne avec les rubans D1 6, 9 et 12 mm. | ||
39 | - Petite et compacte, elle trouve facilement sa place sur un bureau. | ||
40 | - Batterie lithium-ion fournie, rechargeable par USB - pas d’adaptateur secteur ni de piles. | ||
41 | - Personnalisez vos étiquettes avec les polices et graphiques de votre ordinateur. | ||
42 | - Connectez-là à votre PC ou Mac et imprimez instantanément et très facilement des étiquettes professionnelles ! | ||
43 | - Connexion USB à votre PC ou Mac. | ||
44 | -</pre> | ||
45 | - | ||
46 | -<br/> | ||
47 | - | ||
48 | -<p> | ||
49 | -<a href="/doc/DYMO PnP fiche technique.pdf">Fiche technique</a> | ||
50 | -</p> | ||
51 | - | ||
52 | -<p> | ||
53 | -<a href="/doc/DYMO PnP Manuel.pdf">Manuel d'utilisation</a> | ||
54 | -</p> | ||
55 | - | ||
56 | -<br/><br/> | ||
57 | -<h3>LOGICIEL DLS (DYMO LABEL SOFTWARE) A INSTALLER</h3> | ||
58 | -<hr/> | ||
59 | - | ||
60 | -<br/> | ||
61 | -<p> | ||
62 | -<a href="http://global.dymo.com/frFR/HowTo/LabelManager_PnP.html">Page d'aide et de documentation</a> | ||
63 | -</p> | ||
64 | - | ||
65 | -<p> | ||
66 | -<a href="http://www.dymo.com/en-US/online-support/dymo-user-guides">Téléchargement logiciel</a> | ||
67 | -</p> | ||
68 | - | ||
69 | -<p> | ||
70 | -<a href="http://global.dymo.com/ieIE/Software/LabelWriter_400.html">Autre lien pour le téléchargement</a> | ||
71 | -</p> | ||
72 | - | ||
73 | - | ||
74 | -<br/><br/><br/><br/> | ||
75 | -<h3>ETIQUETEUSES INSTALLEES SUR LE LABORATOIRE</h3> | ||
76 | -<hr/> | ||
77 | - | ||
78 | -<?php | ||
79 | -//if ($localConfig['labName']=='IRAP') | ||
80 | - | ||
81 | -echo " | ||
82 | - | ||
83 | -<p> | ||
84 | -<br/> | ||
85 | -Dans l'idéal, il faudrait une étiqueteuse par gestionnaire financier : | ||
86 | -</p> | ||
87 | - | ||
88 | - <b>SUR LE SITE ROCHE :</b> | ||
89 | - <ul> | ||
90 | - <li> | ||
91 | - <b>Jean-Louis Lefort (site Roche 101)</b> ==> installée le 1/12/14 (pc8008, Windows 7 Pro 2009 SP1, version soft DLS 8.5.1) | ||
92 | - <br/> | ||
93 | - Aucun problème, installée sur lettre G: - laissé 1 ruban D1 12mm de 7m en plus du ruban installé (3m seulement) | ||
94 | - <br/> | ||
95 | - <i> | ||
96 | - Pour info, ancienne installation faite sur son pc XP (23/5/14) (version soft DLS 8.5.1) | ||
97 | - Problème : si le logiciel DLS (Dymo Label Soft) est déjà ouvert, ça provoque une erreur Windows. Il faut donc refermer le logiciel avant de demander l'impression d'un ruban | ||
98 | - (c'est peut-être dû à cette version 8.5.1, la dernière version sortie, car sur l'ancienne version, je ne crois pas qu'il y ait cette erreur sur XP) | ||
99 | - </i> | ||
100 | - </li> | ||
101 | - | ||
102 | - <li> | ||
103 | - <b>Dorine Roma (site Roche 102)</b> ==> installée le 1/12/14 (pc8006 Optiplex 7010, Windows 7 Pro 2009 SP1, version soft DLS 8.5.1) | ||
104 | - <br/> | ||
105 | - <i> | ||
106 | - Installée sur lettre G: - ruban installé = 3m seulement | ||
107 | - </i> | ||
108 | - </li> | ||
109 | - | ||
110 | - <li> | ||
111 | - <b>Carole Lecinana (site Roche 104)</b> ==> installée le 1/12/14 (pc8005 Optiplex 7010, Windows 7 Pro 2009 SP1, version soft DLS 8.5.1) | ||
112 | - <br/> | ||
113 | - <i> | ||
114 | - Installée sur lettre G: - ruban installé = 3m seulement | ||
115 | - </i> | ||
116 | - </li> | ||
117 | - | ||
118 | - <li> | ||
119 | - <b>Marjorie Cloup (site Roche 104)</b> ==> installée le 1/12/14 (pc8007 Optiplex 7010, Windows 7 Pro 2009 SP1, version soft DLS 8.5.1) | ||
120 | - <br/> | ||
121 | - <i> | ||
122 | - Installée sur lettre G: - ruban installé = 3m seulement | ||
123 | - </i> | ||
124 | - </li> | ||
125 | - </ul> | 4 | + <br/><br/> |
5 | + <h3>DOCUMENTATION ET INSTALLATION DE L'ETIQUETEUSE (TITREUSE)</h3> | ||
6 | + <hr/> | ||
126 | 7 | ||
127 | <br/> | 8 | <br/> |
128 | - <b>SUR LE SITE BELIN :</b> | ||
129 | - <ul> | ||
130 | - <li> | ||
131 | - <b>Carole Gaiti (site Belin 61)</b> ==> installée le 24/6/14 (pc Win 7 - version soft DLS 8.5.1) | ||
132 | - </li> | ||
133 | - | ||
134 | - <li> | ||
135 | - Dolores Granat (site Belin 80bis) ==> A FAIRE | ||
136 | - </li> | ||
137 | - | ||
138 | - <li> | ||
139 | - Isabelle Moro (site Belin B064) ==> A FAIRE | ||
140 | - </li> | ||
141 | - | ||
142 | - <li> | ||
143 | - De plus, Etienne Pallier (site Roche 63, Mac OS 10.7) et Elodie Bourrec (site Belin 59, Win 7) sont tous les deux équipés d'une étiqueteuse | ||
144 | - </li> | ||
145 | - | ||
146 | - <li> | ||
147 | - Enfin, l'étiqueteuse (ancienne) de Gilbert Rouaix (site Roche 19, Win XP) semble compatible puisqu'on a réussi à imprimer des étiquettes dessus. | ||
148 | - </li> | ||
149 | - | ||
150 | - </ul> | ||
151 | - | ||
152 | -<p> | ||
153 | -<br/> | ||
154 | -Au total, ça fait donc 9. | ||
155 | -</p> | ||
156 | -"; | ||
157 | -?> | ||
158 | - | 9 | + <p><a href="https://projects.irap.omp.eu/projects/inventirap/wiki/Installation#H-Etiquettes-optionnel"> Lien vers le wiki</a></p> |
159 | </div> | 10 | </div> |
160 | 11 | ||
161 | - | ||
162 | - <div class="actions"> | ||
163 | - <?php echo $this->element('menu') ?> | ||
164 | - </div> | 12 | +<div class="actions"> |
13 | + <?php echo $this->element('menu') ?> | ||
14 | +</div> | ||
165 | 15 | ||
166 | \ No newline at end of file | 16 | \ No newline at end of file |
src/Template/Pages/tools.ctp
@@ -35,7 +35,7 @@ | @@ -35,7 +35,7 @@ | ||
35 | echo '</td></tr>'; | 35 | echo '</td></tr>'; |
36 | 36 | ||
37 | echo '<tr><td>'; | 37 | echo '<tr><td>'; |
38 | - echo $this->Html->link('Voir les étiqueteuses installées', ['controller'=>'pages', 'action'=>'printers']); | 38 | + echo $this->Html->link('Etiqueteuse', ['controller'=>'pages', 'action'=>'printers']); |
39 | echo '</td></tr>'; | 39 | echo '</td></tr>'; |
40 | 40 | ||
41 | echo '<tr><td>'; | 41 | echo '<tr><td>'; |