Commit 197cb536c70e332c74eca94743c12c5809f79334

Authored by Etienne Pallier
1 parent b3babab5
Exists in master and in 1 other branch dev

Amélioration de toutes les pages de config : pliées par défaut

et aussi :
- Amélioration de toutes les listes associées : pliées par défaut
- bugfix sections déployables des pages de config (chevrons up/down)

v5.3.7-3.7.9
CHANGELOG
... ... @@ -617,6 +617,14 @@ Ne pas autoriser la commande via url si le bouton order est désactivé dans la
617 617 ======= CHANGES =======
618 618  
619 619 -------
  620 +24/11/2021 v5.3.7-3.7.9
  621 + - (e) Amélioration de toutes les pages de config : pliées par défaut
  622 + - (e) Amélioration de toutes les listes associées : pliées par défaut
  623 + - (b) bugfix sections déployables des pages de config (chevrons up/down)
  624 + - (e) Amélioration de la présentation de la page de configuration des champs obligatoires
  625 +
  626 +
  627 +-------
620 628 23/11/2021 v5.3.6-3.7.9
621 629 - (e) Amélioration de la présentation de la page de configuration des champs obligatoires
622 630  
... ...
README.md
... ... @@ -52,8 +52,8 @@ Logiciel testé et validé sur les configurations suivantes :
52 52  
53 53 --------------------------------------------------------------------------------------------
54 54  
55   -Date: 22/11/2021
56   -Version: v5.3.6-3.7.9
  55 +Date: 24/11/2021
  56 +Version: v5.3.7-3.7.9
57 57  
58 58  
59 59 HISTORIQUE DES CHANGEMENTS DE VERSION : voir le fichier CHANGES.txt (ou la page web /pages/changes)
... ...
config/app_labinvent_mandatory_fields.default.yml
1 1 MANDATORY_AND_READONLY_FIELDS:
2 2  
3 3 GENERAL: {
4   - fieldset_comment: Champs généraux,
  4 + fieldset_comment: Paramètres généraux,
5 5 HAS_ORDER_BUTTON: { selected: '1', comment: 'Ajouter un bouton COMMANDE sur la fiche matériel ?' } }
6 6  
7 7 UNEDITABLE_FIELDS: {
8   - fieldset_comment: Champs non modifiables dès le début,
  8 + fieldset_comment: Champs READONLY dès le début,
9 9 designation: { selected: '0', comment: Désignation, except_roles: '' },
10 10 description: { selected: '0', comment: 'Description, commentaire explicatif', except_roles: '' },
11 11 nom_responsable: { selected: '1', comment: 'nom du responsable', except_roles: [Responsable, Administration] },
... ... @@ -19,22 +19,22 @@ MANDATORY_AND_READONLY_FIELDS:
19 19 # LOT 1 - Création de la fiche matériel
20 20  
21 21 MANDATORY_FIELDS_FOR_LOT0: {
22   - fieldset_comment: Champs obligatoires pour CRÉÉR une fiche matériel,
  22 + fieldset_comment: Champs OBLIGATOIRES pour CRÉÉR une fiche matériel,
23 23 designation: { selected: '1', comment: Désignation, except_roles: '' }, description: { selected: '1', comment: Description, except_roles: '' }, sur_categorie_id: { selected: '1', comment: Domaine, except_roles: '' }, categorie_id: { selected: '1', comment: Catégorie, except_roles: '' }, nom_responsable: { selected: '1', comment: 'Nom de l''Acheteur', except_roles: '' }, email_responsable: { selected: '1', comment: 'Email de l''Acheteur', except_roles: '' }, nom_user: { selected: '1', comment: 'Nom de l''utilisateur', except_roles: '' } }
24 24  
25 25 UNEDITABLE_FIELDS_AFTER_LOT0: {
26   - fieldset_comment: Champs non modifiables après la CRÉATION de la fiche matériel,
  26 + fieldset_comment: Champs READONLY après la CRÉATION de la fiche matériel,
27 27 sur_categorie_id: { selected: '0', comment: 'Domaine', except_roles: [Administration] }, categorie_id: { selected: '0', comment: '', except_roles: [Administration] }, resp_credit: { selected: '0', comment: '', except_roles: [Administration] }, gestionnaire_id: { selected: '0', comment: '', except_roles: [Administration] }, fournisseur_id: { selected: '0', comment: '', except_roles: [Administration] }, organisme_id: { selected: '0', comment: '', except_roles: [Administration] }, prix_ht: { selected: '0', comment: '', except_roles: [Administration] }, budgets: { selected: '0', comment: '', except_roles: [Administration] }, DOC_DEVIS: { selected: '0', comment: '', except_roles: '' }, DOC_BC: { selected: '0', comment: '', except_roles: [Administration] } }
28 28  
29 29 RECOMMENDED_FIELDS_AFTER_LOT0: {
30   - fieldset_comment: Champs non obligatoires mais recommandés après la CRÉATION de la fiche matériel,
  30 + fieldset_comment: Champs RECOMMANDÉS après la CRÉATION de la fiche matériel,
31 31 etiquette: { selected: '0', comment: 'd''imprimer l''étiquette associée et de la coller sur le matériel', except_roles: '' }, numero_inventaire_organisme: { selected: '0', comment: 'de renseigner le champ ''N° inventaire comptable/tutelles _Organisme_''', except_roles: '' }, DOC_BC: { selected: '0', comment: 'd''ajouter le Bon de Commande', except_roles: '' }, DOC_BL: { selected: '0', comment: 'd''ajouter le Bon de Livraison', except_roles: '' }, DOC_FACTURE: { selected: '0', comment: 'd''ajouter la Facture', except_roles: '' } }
32 32  
33 33  
34 34 # LOT 1 - Demamnde d'Achat (Commande)
35 35  
36 36 MANDATORY_FIELDS_FOR_LOT1: {
37   - fieldset_comment: 'Champs obligatoires pour passer la COMMANDE (en plus du LOT 0)',
  37 + fieldset_comment: 'Champs OBLIGATOIRES pour passer la COMMANDE (en plus du LOT 0)',
38 38 organisme_id: { selected: '1', comment: Organisme, except_roles: '' },
39 39 prix_ht: { selected: '1', comment: 'Prix HT', except_roles: '' },
40 40 resp_credit: { selected: '1', comment: 'Responsable du crédit', except_roles: '' },
... ... @@ -44,7 +44,7 @@ MANDATORY_AND_READONLY_FIELDS:
44 44 DOC_DEVIS: { selected: '1', comment: Devis, except_roles: '' } }
45 45  
46 46 UNEDITABLE_FIELDS_AFTER_LOT1: {
47   - fieldset_comment: 'Champs non modifiables après avoir passé la COMMANDE (en plus du LOT 0)',
  47 + fieldset_comment: 'Champs READONLY après avoir passé la COMMANDE (en plus du LOT 0)',
48 48 sur_categorie_id: { selected: '1', comment: 'Domaine', except_roles: [Administration] }, categorie_id: { selected: '1', comment: '', except_roles: [Administration] },
49 49 resp_credit: { selected: '1', comment: 'Responsable du crédit', except_roles: [Administration] },
50 50 gestionnaire_id: { selected: '1', comment: 'Gestionnaire de référence', except_roles: [Administration] },
... ... @@ -56,14 +56,14 @@ MANDATORY_AND_READONLY_FIELDS:
56 56 DOC_BC: { selected: '1', comment: 'BC joint', except_roles: [Administration] } }
57 57  
58 58 RECOMMENDED_FIELDS_AFTER_LOT1: {
59   - fieldset_comment: 'Champs non obligatoires mais recommandés après avoir passé la COMMANDE (en plus du LOT 0)',
  59 + fieldset_comment: 'Champs RECOMMANDÉS après avoir passé la COMMANDE (en plus du LOT 0)',
60 60 etiquette: { selected: '0', comment: 'd''imprimer l''étiquette associée et de la coller sur le matériel', except_roles: '' }, numero_inventaire_organisme: { selected: '0', comment: 'de renseigner le champ ''N° inventaire comptable/tutelles _Organisme_''', except_roles: '' }, DOC_BC: { selected: '0', comment: 'd''ajouter le Bon de Commande', except_roles: '' }, DOC_BL: { selected: '0', comment: 'd''ajouter le Bon de Livraison', except_roles: '' }, DOC_FACTURE: { selected: '0', comment: 'd''ajouter la Facture', except_roles: '' } }
61 61  
62 62  
63 63 # LOT 2 - Validation, Livraison (matériel livré et payé)
64 64  
65 65 MANDATORY_FIELDS_FOR_LOT2: {
66   - fieldset_comment: 'Champs obligatoires pour VALIDER la livraison (en plus du LOT 1)',
  66 + fieldset_comment: 'Champs OBLIGATOIRES pour VALIDER la livraison (en plus du LOT 1)',
67 67 date_acquisition: { selected: '1', comment: 'Date d''achat', except_roles: '' },
68 68 date_reception: { selected: '1', comment: 'Date de livraison', except_roles: '' },
69 69 site_id: { selected: '1', comment: Site, except_roles: '' },
... ... @@ -73,7 +73,7 @@ MANDATORY_AND_READONLY_FIELDS:
73 73 DOC_DEVIS: { selected: '1', comment: 'Devis joint', except_roles: '' } }
74 74  
75 75 UNEDITABLE_FIELDS_AFTER_LOT2: {
76   - fieldset_comment: 'Champs non modifiables après VALIDATION de la livraison (en plus du LOT 1)',
  76 + fieldset_comment: 'Champs READONLY après VALIDATION de la livraison (en plus du LOT 1)',
77 77 sur_categorie_id: { selected: '1', comment: 'Domaine', except_roles: '' },
78 78 categorie_id: { selected: '1', comment: 'Catégorie', except_roles: '' },
79 79 date_acquisition: { selected: '1', comment: 'Date de commande', except_roles: '' },
... ... @@ -85,7 +85,7 @@ MANDATORY_AND_READONLY_FIELDS:
85 85 DOC_FACTURE: { selected: '1', comment: 'Facture jointe', except_roles: '' } }
86 86  
87 87 RECOMMENDED_FIELDS_AFTER_LOT2: {
88   - fieldset_comment: 'Champs non obligatoires mais recommandés après VALIDATION de la livraison (en plus du LOT 1)',
  88 + fieldset_comment: 'Champs RECOMMANDÉS après VALIDATION de la livraison (en plus du LOT 1)',
89 89 etiquette: { selected: '1', comment: 'd''imprimer l''étiquette associée et de la coller sur le matériel', except_roles: '' },
90 90 numero_inventaire_organisme: { selected: '1', comment: 'de renseigner le champ ''N° inventaire comptable/tutelles _Organisme_''', except_roles: '' },
91 91 numero_serie: { selected: '0', comment: 'de renseigner le numéro de série du matériel', except_roles: '' },
... ...
src/Template/Common/view.ctp
... ... @@ -270,6 +270,9 @@ if (isset($sub_controller)) {
270 270  
271 271 </div> <!-- General div (Entity) -->
272 272  
  273 +<<script type="text/javascript"> toggle_all_sections(); </script>
  274 +
  275 +
273 276 <!--
274 277 <div class="actions">
275 278 <php echo $this->element('menu') ?>
... ...
src/Template/ConfigurationFields/edit.ctp
... ... @@ -32,7 +32,7 @@ $icon = $READONLY ? &#39;&#39; : &quot;&lt;i class=&#39;icon-edit&#39;&gt;&lt;/i&gt;&quot;;
32 32 //$icon = $READONLY ? '' : "<i class='icon-pencil'></i>";
33 33 //$end = $READONLY ? "(Visualisation)" : "(Modification)";
34 34 //$title = "Configuration des champs obligatoires ou non modifiables de la fiche Matériel $end";
35   -$title = "Configuration des champs obligatoires ou non modifiables de la fiche Matériel";
  35 +$title = "Configuration des champs obligatoires, recommandés, ou non modifiables de la fiche Matériel";
36 36 echo "<br><h2>$icon $title</h2><br>";
37 37  
38 38 /*
... ... @@ -89,8 +89,6 @@ En plus de définir les champs obligatoires, vous pouvez aussi définir :
89 89 Enfin, si vous avez fait une erreur et voulez <b>revenir à la configuration par défaut</b>, pas de panique, il suffit de cliquer sur le bouton 'Remettre les valeurs par défaut'.
90 90 </p>
91 91 <br>
92   -<hr>
93   -<br>
94 92  
95 93 </div>
96 94  
... ... @@ -197,7 +195,7 @@ echo $this-&gt;Form-&gt;create($contact);
197 195 */
198 196  
199 197 //echo $this->MyHelper->echoSectionStart($fieldset_name, Inflector::humanize($fieldset_name));
200   - echo $this->MyHelper->echoSectionStart($fieldset_name, true, $fields['fieldset_comment'], ' ');
  198 + echo $this->MyHelper->echoSectionStart($fieldset_name, $fields['fieldset_comment']);
201 199 echo $this->Form->controls(
202 200 // fields
203 201 $controls,
... ... @@ -230,5 +228,11 @@ echo $this-&gt;Form-&gt;create($contact);
230 228 echo $this->Form->end();
231 229  
232 230  
  231 +echo '<br>';
233 232 echo_buttons($READONLY, $CAN_EDIT, $this->MyHelper);
234   -//if ($READONLY && $CAN_EDIT) $this->MyHelper->echoEditButton();
  233 +//if ($READONLY && $CAN_EDIT) $this->MyHelper->echoEditButton()
  234 +
  235 +
  236 +?>
  237 +
  238 +<<script type="text/javascript"> toggle_all_sections(); </script>
... ...
src/Template/Configurations/edit.ctp
... ... @@ -377,4 +377,7 @@ $(document).ready(function(){
377 377 }
378 378 });
379 379 });
  380 +
  381 +toggle_all_sections();
  382 +
380 383 </script>
381 384 \ No newline at end of file
... ...
src/Template/Configurations/view.ctp
... ... @@ -230,6 +230,9 @@ function $this-&gt;MyHelper-&gt;echoSectionStop() {
230 230  
231 231 </div>
232 232  
  233 +<<script type="text/javascript"> toggle_all_sections(); </script>
  234 +
  235 +
233 236 <!--
234 237 <div class="actions">
235 238 <php
... ...
src/View/Helper/MyHelperHelper.php
... ... @@ -307,16 +307,18 @@ class MyHelperHelper extends Helper {
307 307  
308 308  
309 309 /* Pour src/Template/Configurations/view et edit */
310   - public function echoSectionStart($title, $START_OPEN=true, $nice_title=null, $SPACE='') {
311   - $icon_class = $START_OPEN ? 'icon-chevron-down' : 'icon-chevron-up';
  310 + public function echoSectionStart($title, $nice_title=null) {
  311 + $icon_class = 'icon-chevron-up';
  312 + // 'icon-chevron-down';
312 313 if (!$nice_title) $nice_title = $title;
313 314 $WITH_TABLE=true;
314 315 //echo '<h3 id="t_'.$section.'" style="cursor: pointer;">';
315 316 //echo "<h3 id='t_$section' class='toggle' style='cursor: pointer;'>";
316 317 echo "<h3 id='t_$title' class='toggle' style='cursor: pointer;'>";
317   - //echo '<i class="icon-chevron-down" style="font-size: 14px;" id="i_'.$section.'"></i>';
318   - echo "<i class='$icon_class' style='font-size: 14px;' id='i_$title'></i>";
319   - echo $SPACE.'<span style="text-decoration: underline;">'.$nice_title.'</span>';
  318 + //echo '<i class="icon-chevron-down" style="font-size: 14px;" id="i_'.$section.'"></i>';
  319 + //echo '<i class="icon-chevron-down" style="font-size: 14px;" id="i_'.$title.'"></i>';
  320 + echo "<i id='i_$title' class='$icon_class' style='font-size: 14px;'></i>";
  321 + echo ' '.'<span style="text-decoration: underline;">'.$nice_title.'</span>';
320 322 echo '</h3>';
321 323 //echo '<div id="'.$section.'" style="margin-bottom: 20px;">';
322 324 echo '<div id="'.$title.'" style="margin-bottom: 20px;">';
... ... @@ -343,7 +345,8 @@ class MyHelperHelper extends Helper {
343 345 $title = ucfirst($title).' associé'. ($is_masculin ? 's' : 'es');
344 346  
345 347 echo "<h3 id='$id_h3' class='toggle' style='cursor: pointer;'>";
346   - echo "<i class='icon-chevron-down' style='font-size: 14px;' id='$id_i'></i>";
  348 + //echo "<i class='icon-chevron-down' style='font-size: 14px;' id='$id_i'></i>";
  349 + echo "<i class='icon-chevron-up' style='font-size: 14px;' id='$id_i'></i>";
347 350 //echo " <span style='text-decoration: underline;'>$title (".$entities->count().")</span>";
348 351 echo " <span style='text-decoration: underline;'>$title (".count($entities).")</span>";
349 352 echo "</h3>";
... ...
webroot/js/script.js
... ... @@ -23,6 +23,7 @@ $(document).ready(function() {
23 23 });
24 24  
25 25  
  26 +
26 27 /* (EP 20200416 : Ces seules 5 lignes remplacent tout le binz ci-dessous,
27 28 * suffisait de se creuser un peu la tête quoi !!
28 29 *
... ... @@ -32,14 +33,18 @@ $(document).ready(function() {
32 33 *
33 34 */
34 35 $('.toggle').click(function() {
  36 + toggle_section(this.id);
  37 + /*
  38 + //console.log(this.id);
35 39 // ex: '#t_informations' devient '#informations'
36   - var newid = '#' + this.id.substr(2);
  40 + var newid = this.id.substr(2);
37 41 //console.log(newid);
38   - $(newid).toggle('slow', 'linear');
  42 + $('#'+newid).toggle('slow', 'linear');
39 43 //$(newid).toggle('slow', 'swing');
40 44 //$(newid).toggle('fast');
41 45 //$(newid).toggle('fast', 'swing');
42   - toogleChevron('#i_'+newid);
  46 + toggle_chevron('#i_'+newid);
  47 + */
43 48 });
44 49  
45 50 /* ANCIENNE VERSION BINZ !!!
... ... @@ -48,24 +53,24 @@ $(document).ready(function() {
48 53  
49 54 $('#t_informations').click(function() {
50 55 $('#informations').toggle('fast');
51   - toogleChevron('#i_informations');
  56 + toggle_chevron('#i_informations');
52 57 });
53 58 $('#t_informations_admin').click(function() {
54 59 $('#informations_admin').toggle('fast');
55   - toogleChevron('#i_informations_admin');
  60 + toggle_chevron('#i_informations_admin');
56 61 });
57 62  
58 63 $('#t_suivis').click(function() {
59 64 $('#suivis').toggle('fast');
60   - toogleChevron('#i_suivis');
  65 + toggle_chevron('#i_suivis');
61 66 });
62 67 $('#t_emprunts').click(function() {
63 68 $('#emprunts').toggle('fast');
64   - toogleChevron('#i_emprunts');
  69 + toggle_chevron('#i_emprunts');
65 70 });
66 71 $('#t_fichiers').click(function() {
67 72 $('#fichiers').toggle('fast');
68   - toogleChevron('#i_fichiers');
  73 + toggle_chevron('#i_fichiers');
69 74 });
70 75  
71 76  
... ... @@ -73,7 +78,7 @@ $(document).ready(function() {
73 78  
74 79 $('#t_affichage').click(function() {
75 80 $('#affichage').toggle('fast');
76   - toogleChevron('#i_affichage');
  81 + toggle_chevron('#i_affichage');
77 82 });
78 83  
79 84  
... ... @@ -81,11 +86,11 @@ $(document).ready(function() {
81 86  
82 87 $('#t_filter').click(function() {
83 88 $('#filter').toggle('fast');
84   - toogleChevron('#i_filter');
  89 + toggle_chevron('#i_filter');
85 90 });
86 91 $('#t_result').click(function() {
87 92 $('#result').toggle('fast');
88   - toogleChevron('#i_result');
  93 + toggle_chevron('#i_result');
89 94 });
90 95  
91 96 */
... ... @@ -102,6 +107,25 @@ $(document).ready(function() {
102 107 * ****************************
103 108 */
104 109  
  110 +function toggle_section(section) {
  111 + var newid = section.substr(2);
  112 + //console.log(newid);
  113 + $('#'+newid).toggle('slow', 'linear');
  114 + //$(newid).toggle('slow', 'swing');
  115 + //$(newid).toggle('fast');
  116 + //$(newid).toggle('fast', 'swing');
  117 + toggle_chevron('#i_'+newid);
  118 +}
  119 +
  120 +function toggle_all_sections() {
  121 + //console.log("hello here");
  122 + //$('.toggle').toggle();
  123 + $.each( $('.toggle'), function( ) {
  124 + //console.log(this.id);
  125 + toggle_section( this.id );
  126 + });
  127 +}
  128 +
105 129  
106 130 /**
107 131 * empty a SELECT field given its name and default option
... ... @@ -157,14 +181,21 @@ function updateSelectOptionsFromAnother(selectId, otherSelectId, requestName, em
157 181 }
158 182  
159 183  
160   -function toogleChevron(element) {
  184 +function toggle_chevron(element) {
  185 + //console.log(element);
161 186 if ($(element).hasClass('icon-chevron-down')) {
162   - $(element).removeClass('icon-chevron-down');
163   - $(element).addClass('icon-chevron-up');
  187 + $(element).removeClass('icon-chevron-down').addClass('icon-chevron-up');
  188 + /*
  189 + $(element).removeClass('icon-chevron-down');
  190 + $(element).addClass('icon-chevron-up');
  191 + */
164 192 }
165 193 else {
  194 + $(element).removeClass('icon-chevron-up').addClass('icon-chevron-down');
  195 + /*
166 196 $(element).removeClass('icon-chevron-up');
167 197 $(element).addClass('icon-chevron-down');
  198 + */
168 199 }
169 200 }
170 201  
... ...