Commit f603f4d27be644ba483f313e648dff6586ebca58

Authored by Etienne Pallier
1 parent 7c885692
Exists in master and in 2 other branches dev, dev-IRAP

Bugfix ajout materiel

README.md
... ... @@ -53,10 +53,10 @@ Logiciel testé et validé sur les configurations suivantes :
53 53  
54 54 VERSION ACTUELLE
55 55  
56   -Date: 15/05/2019
57   -Version: 2.12.11
  56 +Date: 16/05/2019
  57 +Version: 2.12.12
58 58 Author: EP
59   -Commentaire: Bugfix, simplification, et amélioration de la fonctionnalité "Copier ce matériel"
  59 +Commentaire: Bugfix ajout materiel
60 60  
61 61 IMPORTANT :
62 62 - Pour connaitre la version actuelle, taper "./VERSION"
... ... @@ -91,6 +91,10 @@ CHANGEMENTS IMPORTANTS (MILESTONES)
91 91 La liste ci-dessous n'est plus à jour, elle est désormais en ligne ici : https://tinyurl.com/labinvent#heading=h.2r55bflctpt5
92 92  
93 93 -----------------------------------------------------------------------------------------------------------
  94 +
  95 +15/05/2019 Version: 2.12.11 (EP)
  96 + Bugfix, simplification, et amélioration de la fonctionnalité "Copier ce matériel"
  97 +
94 98 13/05/2019 Version: 2.12.8-10 (EP)
95 99 Ajout de l'option "Librairie pdf utilisée" pour choisir entre fpdf et dompdf
96 100 Génération des pdf avec 2 moteurs au choix (fpdf ou dompdf)
... ...
src/Controller/MaterielsController.php
... ... @@ -780,7 +780,7 @@ class MaterielsController extends AppController
780 780 $materiel = $this->Materiels->patchEntity($materiel, $this->request->getData());
781 781  
782 782 // (2) Si l'utilisateur courant est un "administratif" => le mettre comme gestionnaire du materiel
783   - // (tout ça pour ça !!! Faudra réduire ce bazarre)
  783 + // (tout ça pour ça !!! Faudra réduire ce bazar)
784 784 $current_user_name = $_SESSION['Auth']['User']['sn'][0];
785 785 if (in_array(
786 786 $current_user_name,
... ...
src/Template/Materiels/add.ctp
1 1 <?php
2 2  
  3 +use Cake\ORM\TableRegistry;
  4 +
  5 +//debug($materiel);
  6 +//debug($users_option_list);
  7 +//debug($users_login_and_email);
  8 +//debug($sousCategories);
  9 +
3 10 /*
4 11 * (EP)
5   - * Variables passed to this view by the Controller :
  12 + * Variables passed to this view by the Controller(s)
6 13 */
  14 +
  15 +// POUR EN VOIR LA LISTE COMPLETE
  16 +//debug($this->viewVars);
  17 +
  18 +// 1) FROM AppController:
  19 +
  20 +$PROFILE_USER = $PROFILE_USER;
  21 +$PROFILE_ADMIN = $PROFILE_USER;
  22 +$PROFILE_RESPONSABLE = $PROFILE_RESPONSABLE;
  23 +$PROFILE_ADMINPLUS = $PROFILE_ADMINPLUS;
  24 +$PROFILE_SUPERADMIN = $PROFILE_SUPERADMIN;
  25 +$allProfiles = $allProfiles;
  26 +
  27 +// PAS TOUJOURS
  28 +//$_serialize = $_serialize; // True or False
  29 +
  30 +$username = $username;
  31 +$configuration = $configuration;
  32 +$priviledgedUser = $priviledgedUser; // ATTENTION, $priviledgedUser = NULL si l'utilisateur courant n'est pas un utilisateur privilégié (pas dans la table "utilisateurs")
  33 +$role = $role;
  34 +$profile = $profile;
  35 +$USER_IS_UTILISATEUR = $USER_IS_UTILISATEUR;
  36 +$USER_IS_RESPONSABLE = $USER_IS_RESPONSABLE;
  37 +$USER_IS_ADMIN = $USER_IS_ADMIN;
  38 +$USER_IS_ADMINPLUS = $USER_IS_ADMINPLUS;
  39 +$USER_IS_SUPERADMIN = $USER_IS_SUPERADMIN;
  40 +$USER_IS_RESPONSABLE_OR_MORE = $USER_IS_RESPONSABLE_OR_MORE;
  41 +$USER_IS_ADMIN_OR_MORE = $USER_IS_ADMIN_OR_MORE;
  42 +$USER_IS_ADMINPLUS_OR_MORE = $USER_IS_ADMINPLUS_OR_MORE;
  43 +
  44 +$hiddenFields = $hiddenFields;
  45 +$mandatoryFields = $mandatoryFields;
  46 +$readOnlyFields = $readOnlyFields;
  47 +$haveDefaultValueFields = $haveDefaultValueFields;
  48 +
  49 +// Metrologie
  50 +$idGmNa = $idGmNa;
  51 +$idGtNa = $idGtNa;
  52 +
  53 +// ET AUSSI QUELQUES FONCTIONS :
  54 +// $displayElement()
  55 +// $dateProchainControleVerif()
  56 +
  57 +
  58 +// 2) FROM my own controller (MaterielController):
  59 +
  60 +$mail_responsable = $mail_responsable;
7 61 $users_option_list = $users_option_list;
8 62 $users_login_and_email = $users_login_and_email;
9 63 $materiel = $materiel;
  64 +$surCategories = $surCategories;
  65 +$categories = $categories;
  66 +$sousCategories = $sousCategories;
10 67 // TODO: yena d'autres... il faut les lister toutes ici, pour plus de clarté
11 68  
12   -//debug($materiel);
13   -//debug($users_option_list);
14   -//debug($users_login_and_email);
15   -//debug($sousCategories);
16 69  
17   -use Cake\ORM\TableRegistry;
  70 +
18 71  
19 72 /*
20 73 // COPIE de materiel (on a cliqué sur "Copier ce matériel")
... ... @@ -241,20 +294,23 @@ if (isset($cpMateriel)) {
241 294 //'default' => $Groupes_metier_id
242 295 'default' => $materiel->groupes_metier_id
243 296 ]);
  297 + /*
244 298 $fieldType = $USER_IS_UTILISATEUR ? 'hidden' : 'input';
245 299 echo $this->Form->$fieldType('nom_responsable', [
  300 + */
  301 + $readonly = $USER_IS_UTILISATEUR ? TRUE : FALSE;
  302 + echo $this->Form->control('nom_responsable', [
246 303 'label' => 'Nom de l\'utilisateur',
  304 + 'readonly' => $readonly,
247 305 'empty' => 'Choisir un utilisateur',
248   - //'default' => $username,
249   - 'default' => $materiel->username,
  306 + 'default' => $username,
250 307 //'options' => $utilisateurs
251 308 'options' => $users_option_list
252 309 ]);
253 310 echo $this->Form->control('email_responsable', [
254 311 'label' => 'Email de l\'utilisateur',
255 312 'readonly' => true,
256   - //'default' => $mail_responsable
257   - 'default' => $materiel->mail_responsable,
  313 + 'default' => $mail_responsable
258 314 ]);
259 315  
260 316 /*
... ...
src/Template/Materiels/edit.ctp
1 1 <?php
2 2  
  3 +use Cake\ORM\TableRegistry;
  4 +
  5 +//debug($users_option_list);
  6 +//debug($users_login_and_email);
  7 +//debug($materiel);
3 8  
4 9 /*
5 10 * (EP)
6   - * Variables passed to this view by the Controller :
  11 + * Variables passed to this view by the Controller(s)
7 12 */
  13 +
  14 +// POUR EN VOIR LA LISTE COMPLETE
  15 +//debug($this->viewVars);
  16 +
  17 +// 1) FROM AppController:
  18 +
  19 +$PROFILE_USER = $PROFILE_USER;
  20 +$PROFILE_ADMIN = $PROFILE_USER;
  21 +$PROFILE_RESPONSABLE = $PROFILE_RESPONSABLE;
  22 +$PROFILE_ADMINPLUS = $PROFILE_ADMINPLUS;
  23 +$PROFILE_SUPERADMIN = $PROFILE_SUPERADMIN;
  24 +$allProfiles = $allProfiles;
  25 +
  26 +$_serialize = $_serialize; // True or False
  27 +$username = $username;
  28 +$configuration = $configuration;
  29 +$priviledgedUser = $priviledgedUser; // ATTENTION, $priviledgedUser = NULL si l'utilisateur courant n'est pas un utilisateur privilégié (pas dans la table "utilisateurs")
  30 +$role = $role;
  31 +$profile = $profile;
  32 +$USER_IS_UTILISATEUR = $USER_IS_UTILISATEUR;
  33 +$USER_IS_RESPONSABLE = $USER_IS_RESPONSABLE;
  34 +$USER_IS_ADMIN = $USER_IS_ADMIN;
  35 +$USER_IS_ADMINPLUS = $USER_IS_ADMINPLUS;
  36 +$USER_IS_SUPERADMIN = $USER_IS_SUPERADMIN;
  37 +$USER_IS_RESPONSABLE_OR_MORE = $USER_IS_RESPONSABLE_OR_MORE;
  38 +$USER_IS_ADMIN_OR_MORE = $USER_IS_ADMIN_OR_MORE;
  39 +$USER_IS_ADMINPLUS_OR_MORE = $USER_IS_ADMINPLUS_OR_MORE;
  40 +
  41 +$hiddenFields = $hiddenFields;
  42 +$mandatoryFields = $mandatoryFields;
  43 +$readOnlyFields = $readOnlyFields;
  44 +$haveDefaultValueFields = $haveDefaultValueFields;
  45 +
  46 +// Metrologie
  47 +$idGmNa = $idGmNa;
  48 +$idGtNa = $idGtNa;
  49 +
  50 +// ET AUSSI QUELQUES FONCTIONS :
  51 +// $displayElement()
  52 +// $dateProchainControleVerif()
  53 +
  54 +
  55 +// 2) FROM my own controller (MaterielController):
  56 +
  57 +$mail_responsable = $mail_responsable;
8 58 $users_option_list = $users_option_list;
9 59 $users_login_and_email = $users_login_and_email;
  60 +$materiel = $materiel;
  61 +$surCategories = $surCategories;
  62 +$categories = $categories;
  63 +$sousCategories = $sousCategories;
10 64 // TODO: yena d'autres... il faut les lister toutes ici, pour plus de clarté
11 65  
12   -//debug($users_option_list);
13   -//debug($users_login_and_email);
14   -//debug($materiel);
15 66  
16   -use Cake\ORM\TableRegistry;
  67 +
  68 +
  69 +/*
  70 + * DEFINITION DE NOUVELLES VARIABLES POUR CETTE VUE
  71 + */
17 72  
18 73 $USER_IS_UTILISATEUR_AND_CREATOR_OR_OWNER = $USER_IS_UTILISATEUR && in_array($username, [
19 74 $materiel->nom_createur,
... ... @@ -25,7 +80,6 @@ $USER_IS_RESPONSABLE_AND_CREATOR_OR_OWNER = $USER_IS_RESPONSABLE &amp;&amp; in_array($us
25 80 $materiel->nom_responsable
26 81 ]);
27 82  
28   -
29 83 $USER_IS_RESPONSABLE_AND_SAME_GROUP = $USER_IS_RESPONSABLE && ((isset($priviledgedUser->groupes_metier_id) && $materiel->groupes_metier_id == $priviledgedUser->groupes_metier_id) || (isset($priviledgedUser->groupe_thematique_id) && $materiel->groupes_thematique_id == $priviledgedUser->groupe_thematique_id));
30 84  
31 85 $administrationData = array(
... ...