Blame view

src/Template/Common/view.ctp 6.6 KB
edc83de9   Etienne Pallier   Refactorisation d...
1
<?php 
81e4cfd9   Etienne Pallier   Refactorisation d...
2
3
4
use App\Controller\SurCategoriesController;
use App\Model\Entity\SurCategory;

c6900c63   Etienne Pallier   refactorisation d...
5
6
7
$DEBUG=false;
//$DEBUG=true;

edc83de9   Etienne Pallier   Refactorisation d...
8
9
// Variables passées par le contrôleur

c6900c63   Etienne Pallier   refactorisation d...
10
$role = $role;
edc83de9   Etienne Pallier   Refactorisation d...
11

edc83de9   Etienne Pallier   Refactorisation d...
12
$entity = $entity;
81e4cfd9   Etienne Pallier   Refactorisation d...
13
14
15
16
17
18
19
20
$parent_entity_infos=$parent_entity_infos;
/*
$parent_entity_controller_name = $parent_entity_controller_name;
$parent_entity_type_name = $parent_entity_type_name;
$parent_entity_name = $parent_entity_name;
$parent_entity_id = $parent_entity_id;
*/

c6900c63   Etienne Pallier   refactorisation d...
21
22
23
24
25
26
27
28
29
30
31
32
33
//$categories = $categories;
//$materiels = $materiels;
$entity_article = $entity_article;
$entity_type_name_singular = $entity_type_name_singular;
$entity_name = $entity_name;

// Liste des entités à afficher (en tant qu'entité associée) :
// En général, par défaut : "Matériels associés" et "Utilisateurs associés"
$entities_list = $entities_list;

// Fonctions
//$displayElement = $displayElement;

edc83de9   Etienne Pallier   Refactorisation d...
34
35
//debug($entity);
//debug($entity->getSource());
c6900c63   Etienne Pallier   refactorisation d...
36
//exit;
edc83de9   Etienne Pallier   Refactorisation d...
37
38

if ($DEBUG) {
c6900c63   Etienne Pallier   refactorisation d...
39
40
    $entity_article = 'le ';
    $entity_type_name_singular = 'domaine';
edc83de9   Etienne Pallier   Refactorisation d...
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
    //$entity_name = $entity->getMyName();
    $entity_name = $entity->nom;
    
    //function displaySectionShowHide($controller_name, $entity_type_name, $title, $id_name, $is_masculine, $name_field_name, $entities) {
    $categories = [
        'controller_name' => 'Categories',
        'entity_type_name' => 'catégorie',
        'title' => 'Catégories',
        //'id_name' => 'categs',
        'is_masculine' => false,
        'name_field_name' => 'nom',
        'entities' => $categories,
    ];
    //$materiels = $categories;
    $materiels = [
        'controller_name' => 'Materiels',
        'entity_type_name' => 'matériel',
        'title' => 'Matériels',
        //'id_name' => 'categs',
        'is_masculine' => true,
        'name_field_name' => 'designation',
        'entities' => $materiels,
    ];
    //displaySectionShowHide($this->Html, false, 'Aucune catégorie liée', 'categs', 'Catégories', $categories, 'nom', 'Categories', 'catégorie');
    //$this->MyButton->displaySectionShowHide(false, 'Aucune catégorie liée', 'categs', 'Catégories', $categories, 'nom', 'Categories', 'catégorie');
    $entities_list = [$categories, $materiels];
}

edc83de9   Etienne Pallier   Refactorisation d...
69
70
?>

c6900c63   Etienne Pallier   refactorisation d...
71

edc83de9   Etienne Pallier   Refactorisation d...
72
73
74
75
76
77
78
79
<!-- 
<div class="surCategories view">
 -->
<div class="Entity view">

	<!-- 
	<h2>Détail domaine</h2>
	 -->
c6900c63   Etienne Pallier   refactorisation d...
80
81
	 
	<h2>Informations sur <?=$entity_article.$entity_type_name_singular.' "'.$entity_name.'"'?></h2>
edc83de9   Etienne Pallier   Refactorisation d...
82
	
c6900c63   Etienne Pallier   refactorisation d...
83
84
85
86
	<?= $this->Html->link("Voir toutes les entités (liste)", ['action'=>'index']) ?>
	<br />
	<br />

edc83de9   Etienne Pallier   Refactorisation d...
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
	<table style="margin-bottom: 30px;">
	
		<tr>
			<th style="width: 250px;"></th>
			<th></th>
		</tr>
    	
    	<?php
    	
    	// Lien Editer
        if (in_array($role, [
            'Administration Plus',
            'Super Administrateur'
        ])) {
            echo $this->Html->link(__('<i class="icon-pencil"></i> Editer'), [
                'action' => 'edit',
                //$surCategory->id
                $entity->id
            ], [
            	'style' => 'margin-right: 40px; display: inline-block',
                'escape' => false,
                'onclick' => 'return true;'
            ]);
        }
        
        // Lien Supprimer
        if (in_array($role, [
            'Super Administrateur'
        ])) {
            echo $this->Form->postLink(__('<i class="icon-trash"></i> Supprimer'), [
                'action' => 'delete',
                $entity->id
            ], [
                'style' => 'display: inline-block',
                'escape' => false,
                'confirm' => __('Êtes-vous sur de vouloir supprimer cette entité ?')
                //'confirm' => __('Êtes-vous sur de vouloir supprimer # {0}?', $surCategory->id)
            ]);
        }

        // Affichage des champs de l'entité (nom, description)
        //$displayElement(__('Nom'), h($entity_name));
521ce3e5   Etienne Pallier   05/10/2020 v4.104...
129
130
        $this->MyHelper->displayElement(__('Nom'), h($entity_name));
        $this->MyHelper->displayElement(__('Description'), h($entity->description));
81e4cfd9   Etienne Pallier   Refactorisation d...
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
        // Affichage du nom de l'entité parente si elle existe 
        // (ex: Domaine pour une catégorie, ou catégorie pour une sous-catégorie)
        //debug($entity->sur_category->getSource()); // 'SurCategories'
        /*
        $e = new SurCategory();
        debug($e->getSource());
        */
        if($parent_entity_infos)
            //$this->MyHelper->displayElement(__('Domaine'), h($entity->sur_category->nom));
            //$this->MyHelper->displayElement(__(ucfirst($parent_entity_type_name)), h($parent_entity_name));
            $this->MyHelper->displayElement(
                __(ucfirst($parent_entity_infos['type_name'])), 
                //$category->has('sur_category') ? $this->Html->link($category->sur_category->nom, [
                $this->Html->link($parent_entity_infos['name'], [
                    'controller' => $parent_entity_infos['controller_name'],
                    //'controller' => 'SurCategories',
                    'action' => 'view',
                    $parent_entity_infos['id']
                    //$category->sur_category->id
                ])
            );
            /*
            $this->MyHelper->displayElement(__('Domaine'), $this->Html->link($entity->sur_category->nom, [
                    'controller' => 'SurCategories',
                    'action' => 'view',
                    $entity->sur_category->id
                ])
            );
            */
edc83de9   Etienne Pallier   Refactorisation d...
160
161
162
163
164
165
166
167
168
169
        ?>

    </table>

	<!-- Affichage des entités associées (matériels, utilisateurs, ...) -->
	<?php
	foreach ($entities_list as $es) {
	    //debug($es); 
	    //debug($es['entities']);
	    // function displaySectionShowHide($controller_name, $entity_type_name, $title, $id_name, $is_masculine, $name_field_name, $entities) {
521ce3e5   Etienne Pallier   05/10/2020 v4.104...
170
	    $this->MyHelper->displayAssociatedEntitiesAsSectionShowHide(
edc83de9   Etienne Pallier   Refactorisation d...
171
	       $es['controller_name'],
c6900c63   Etienne Pallier   refactorisation d...
172
173
	       $es['entity_type_name_singular'],
	       $es['entity_title'], 
edc83de9   Etienne Pallier   Refactorisation d...
174
	       //$es['id_name'], 
c6900c63   Etienne Pallier   refactorisation d...
175
176
	       $es['is_masculin'], 
	       $es['name_field_label'], 
edc83de9   Etienne Pallier   Refactorisation d...
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
	       $es['entities'] 
	    );
    	//displaySectionShowHide($this->Html, false, 'Aucune catégorie liée', 'categs', 'Catégories', $categories, 'nom', 'Categories', 'catégorie');
    	//$this->MyButton->displaySectionShowHide(false, 'Aucune catégorie liée', 'categs', 'Catégories', $categories, 'nom', 'Categories', 'catégorie');
    	//$this->MyButton->displaySectionShowHide(true, 'Aucun matériel lié', 'materiels', 'Matériels', $materiels, 'designation', 'Materiels', 'matériel');
	}
	?>

</div>

<!--
<div class="actions">
			<php echo $this->element('menu') ?>
			<php

echo $this->element('menu_view', [
    'pluralHumanName' => 'Domaines',
    'singularHumanName' => 'Domaine',
    'lien' => $surCategory->id
])?>
		</div>
-->