From 550ecfde17437d0c0fdc407fca28be2830c1accc Mon Sep 17 00:00:00 2001 From: Etienne Pallier Date: Wed, 30 Sep 2020 16:33:33 +0200 Subject: [PATCH] bugfix formulaire des Utilisateurs --- CHANGES.txt | 7 ++++++- README.md | 4 ++-- src/Controller/UsersController.php | 26 +++++++++++++++++++++++++- src/Model/Table/UsersTable.php | 16 +++++++++++++--- src/Template/Materiels/view.ctp | 2 +- src/Template/Users/edit.ctp | 18 +++++++++++++++--- 6 files changed, 62 insertions(+), 11 deletions(-) diff --git a/CHANGES.txt b/CHANGES.txt index 1f86418..ac34c6f 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -13,7 +13,7 @@ CHANGEMENTS ------- -28/09/2020 NEWS#4 (v4.103.14-3.7.9) : +30/09/2020 NEWS#4 (v4.103.18-3.7.9) : Remaniement complet du système de notification : => toute action (création, modification, suppression...) faite sur toute entité (Materiel, Document, Suivi, Emprunt, ...) @@ -118,6 +118,11 @@ Outre ces changements, voici d'autres changements importants : ======= CHANGES ======= ------- +30/09/2020 v4.103.19-3.7.9 (EP) + - (b) bugfix formulaire des Utilisateurs : on était obligé de choisir un groupe métier et thématique et un domaine => désormais facultatif ('N/A') ! + - (b) divers petits bugfixes + +------- 29/09/2020 v4.103.18-3.7.9 (EP) - (b) bugfix suppression d'un materiel : on peut désormais supprimer, après confirmation, même avec des docs, emprunts, ou/et suivis liés (ils sont supprimés aussi) - (b) pleins de petits bugfixes diff --git a/README.md b/README.md index b8cbef8..7cc24b2 100644 --- a/README.md +++ b/README.md @@ -42,8 +42,8 @@ Logiciel testé et validé sur les configurations suivantes : -------------------------------------------------------------------------------------------- -Date: 29/09/2020 -Version: 4.103.18-3.7.9 +Date: 30/09/2020 +Version: 4.103.19-3.7.9 HISTORIQUE DES CHANGEMENTS DE VERSION : voir le fichier CHANGES.txt (ou la page web /pages/changes) diff --git a/src/Controller/UsersController.php b/src/Controller/UsersController.php index 541f058..98d2da7 100755 --- a/src/Controller/UsersController.php +++ b/src/Controller/UsersController.php @@ -326,6 +326,18 @@ class UsersController extends AppController 'keyField' => 'id', 'valueField' => 'nom' ]); + //->toArray(); + /* Ajoute l'élément 0 => 'N/A' en tête de tableau + * SANS changer les clés !!! + // 1) on ajoute un élément vide à la clé "0", + // et on trie le tableau sur les values (nom) (en conservant les clés) + // => l'élément vide se retrouve donc en tête + $groupesThematiques[0] = ''; + asort($groupesThematiques); + // 2) on remplace l'élément vide (en tête) par 'N/A', qui est donc toujours en tête ! + $groupesThematiques[0] = 'N/A'; + */ + $sur_categorie = $this->Users->SurCategories->find('list', [ 'keyField' => 'id', 'valueField' => 'nom' @@ -410,6 +422,18 @@ class UsersController extends AppController 'keyField' => 'id', 'valueField' => 'nom' ]); + /* Ajoute l'élément 0 => 'N/A' en tête de tableau + ->toArray(); + * SANS changer les clés !!! + // 1) on ajoute un élément vide à la clé "0", + // et on trie le tableau sur les values (nom) (en conservant les clés) + // => l'élément vide se retrouve donc en tête + $groupesThematiques[0] = ''; + asort($groupesThematiques); + // 2) on remplace l'élément vide (en tête) par 'N/A', qui est donc toujours en tête ! + $groupesThematiques[0] = 'N/A'; + */ + $sur_categorie = $this->Users->SurCategories->find('list', [ 'keyField' => 'id', 'valueField' => 'nom' @@ -418,7 +442,7 @@ class UsersController extends AppController $this->set('_serialize', [ 'user' ]); - } + } // edit() /** * Delete method diff --git a/src/Model/Table/UsersTable.php b/src/Model/Table/UsersTable.php index ec0906f..a4bce2d 100755 --- a/src/Model/Table/UsersTable.php +++ b/src/Model/Table/UsersTable.php @@ -118,12 +118,22 @@ class UsersTable extends AppTable 'username' ])); // $rules->add($rules->isUnique(['email'])); + $rules->add($rules->existsIn([ 'groupes_metier_id' ], 'GroupesMetiers')); - $rules->add($rules->existsIn([ - 'groupes_thematique_id' - ], 'GroupesThematiques')); + + $rules->add($rules->existsIn( + ['groupes_thematique_id'], + 'GroupesThematiques' + /* + [ + 'allowNullableNulls' => true, + 'allowMultipleNulls' => false + ] + */ + )); + $rules->add($rules->existsIn([ 'sur_categorie_id' ], 'SurCategories')); diff --git a/src/Template/Materiels/view.ctp b/src/Template/Materiels/view.ctp index 0e94ccd..854a0f4 100755 --- a/src/Template/Materiels/view.ctp +++ b/src/Template/Materiels/view.ctp @@ -492,7 +492,7 @@ $CAN_PRINT_LABEL = $IS_VALIDATED && $configuration->hasPrinter && $USER_IS_ADMIN // - Bouton "Imprimer étiquette" $echoActionButton($this->Html, 'icon-print', $bStyle, ' étiquette', '', 'printLabelRuban', h($entity->id), [], - "Imprimer sur un ruban"); + "Imprimer une étiquette"); // - Bouton "Etiquette [non] collée" //$echoActionButton($this->Html, 'icon-file', $bStyle.'; background: red; color: white', diff --git a/src/Template/Users/edit.ctp b/src/Template/Users/edit.ctp index b906c2a..8c24899 100755 --- a/src/Template/Users/edit.ctp +++ b/src/Template/Users/edit.ctp @@ -1,3 +1,12 @@ +
Form->create($user) ?> @@ -81,19 +90,22 @@ echo $this->Form->control('groupes_metier_id', [ 'label' => $configuration->nom_groupe_metier, 'options' => $groupesMetiers, - 'default' => 1 + 'empty' => 'N/A', + //'default' => 1 ]); echo $this->Form->control('groupes_thematique_id', [ 'label' => $configuration->nom_groupe_thematique, 'options' => $groupesThematiques, - 'default' => 1 + 'empty' => 'N/A', + //'default' => 3, ]); echo $this->Form->control('sur_categorie_id', [ 'label' => 'Domaine', 'options' => $sur_categorie, - 'default' => 0 + 'empty' => 'N/A', + //'default' => 0 ]); ?> -- libgit2 0.21.2