profil.php
1 |
<?
|
---|---|
2 |
$fgdebug = $_GET["fgdebug"]; |
3 |
|
4 |
$tbcommu = array(); // Liste des communautés associés à l'utilisateur |
5 |
$tbprofil = array(); // Liste des profils associés à l'utilisateur |
6 |
$tbitem = array(); // Liste des items associés à l'utilisateur |
7 |
$tbcat = array(); // Liste des catégories d'items associés à l'utilisateur |
8 |
$tbpage = array(); // Liste des pages associées à l'utilisateur |
9 |
$tbflux = array(); // Liste des flux associés à l'utilisateur |
10 |
$tbattrs = array(); // Liste des attributs SSO de l'utilisateur |
11 |
$tbtmp = array(); // Tableau temporaire |
12 |
|
13 |
//== PROFIL ============================================================================================================================================
|
14 |
|
15 |
// Stocker le profil
|
16 |
//array_push($tbprofil,array("profil",$_SESSION['user_profil']));
|
17 |
|
18 |
// Récupérer l'ensemble des catégories d'item associé au profil de l'utilisateur
|
19 |
// 0 = categorie order
|
20 |
// 1 = categorie id
|
21 |
// 2 = categorie label
|
22 |
// 3 = categorie color
|
23 |
|
24 |
$q = "SELECT application_categorie_id, application_categorie_label, application_categorie_color FROM ".$config["dbprefixe"]."application_profil, ".$config["dbprefixe"]."application, ".$config["dbprefixe"]."icon, ".$config["dbprefixe"]."application_categorie |
25 |
WHERE application_profil_profil=?
|
26 |
AND application_profil_application=application_id
|
27 |
AND application_icon=icon_id
|
28 |
AND application_categorie=application_categorie_id
|
29 |
GROUP BY application_categorie_id
|
30 |
ORDER BY application_categorie_order, application_order";
|
31 |
|
32 |
$query01=$bdd01->prepare($q); |
33 |
$query01->execute(array($_SESSION['user_profil'])); |
34 |
while($row01=$query01->fetch()) { |
35 |
array_push($tbcat,array($row01["application_categorie_order"],$row01["application_categorie_id"],$row01["application_categorie_label"],$row01["application_categorie_color"])); |
36 |
} |
37 |
|
38 |
|
39 |
|
40 |
// Récupérer l'ensemble des applications associé au profil de l'utilisateur
|
41 |
// 00 = categorie order
|
42 |
// 01 = application order
|
43 |
// 02 = categorie id
|
44 |
// 03 = application id
|
45 |
// 04 = applcation label
|
46 |
// 05 = application description
|
47 |
// 06 = application url
|
48 |
// 07 = icone url
|
49 |
// 08 = application mode d'ouverture
|
50 |
// 09 = application coleur
|
51 |
// 10 = badge type
|
52 |
// 11 = badge message
|
53 |
// 12 = badge callback
|
54 |
|
55 |
$q = "SELECT * FROM ".$config["dbprefixe"]."application_profil, ".$config["dbprefixe"]."application, ".$config["dbprefixe"]."icon, ".$config["dbprefixe"]."application_categorie |
56 |
WHERE application_profil_profil=?
|
57 |
AND application_profil_application=application_id
|
58 |
AND application_icon=icon_id
|
59 |
AND application_categorie=application_categorie_id
|
60 |
ORDER BY application_categorie_order, application_order";
|
61 |
$query01=$bdd01->prepare($q); |
62 |
$query01->execute(array($_SESSION['user_profil'])); |
63 |
while($row01=$query01->fetch()) { |
64 |
array_push($tbitem,array($row01["application_categorie_order"],$row01["application_order"],$row01["application_categorie"],$row01["application_id"],$row01["application_label"],$row01["application_description"],$row01["application_url"],$row01["icon_url"],$row01["application_open"],$row01["application_color"],$row01["application_badge"],$row01["application_callbackmsg"],$row01["application_callback"])); |
65 |
} |
66 |
|
67 |
// Récupérer l'ensemble des pages associées au profil de l'utilisateur
|
68 |
// 0 = page order
|
69 |
// 1 = page id
|
70 |
// 2 = page label
|
71 |
// 3 = page icon
|
72 |
// 4 = page color
|
73 |
// 5 = page color label
|
74 |
|
75 |
$q = "SELECT * FROM ".$config["dbprefixe"]."panel_profil, ".$config["dbprefixe"]."panel |
76 |
WHERE panel_profil_profil=?
|
77 |
AND panel_profil_panel=panel_id
|
78 |
ORDER BY panel_order";
|
79 |
$query01=$bdd01->prepare($q); |
80 |
$query01->execute(array($_SESSION['user_profil'])); |
81 |
while($row01=$query01->fetch()) { |
82 |
array_push($tbpage,array($row01["panel_order"],$row01["panel_id"],$row01["panel_label"],$row01["panel_icon"],$row01["panel_color"],$row01["panel_colorlabel"])); |
83 |
} |
84 |
|
85 |
// Récupérer l'ensemble des flux associés au profil de l'utilisateur
|
86 |
// 0 = flux order
|
87 |
// 1 = flux id
|
88 |
// 2 = flux label
|
89 |
// 3 = type
|
90 |
// 4 = flux url
|
91 |
// 5 = flux number
|
92 |
// 6 = flux color
|
93 |
// 7 = flux style
|
94 |
|
95 |
$q = "SELECT * FROM ".$config["dbprefixe"]."flux_profil, ".$config["dbprefixe"]."flux |
96 |
WHERE flux_profil_profil=?
|
97 |
AND flux_profil_flux=flux_id
|
98 |
ORDER BY flux_order";
|
99 |
$query01=$bdd01->prepare($q); |
100 |
$query01->execute(array($_SESSION['user_profil'])); |
101 |
while($row01=$query01->fetch()) { |
102 |
array_push($tbflux,array($row01["flux_order"],$row01["flux_id"],$row01["flux_name"],$row01["flux_type"],$row01["flux_url"],$row01["flux_number"],$row01["flux_color"],$row01["flux_style"])); |
103 |
} |
104 |
|
105 |
//== PROFIL LDAP =======================================================================================================================================
|
106 |
|
107 |
// Connection au LDAP
|
108 |
$fgLDAP=$config['activerLDAP']; |
109 |
if($config['activerLDAP']&&$_SESSION['user_login']!="") { |
110 |
$ds = ldap_connect($config['LDAPserver'], $config['LDAPport']); |
111 |
if (!$ds) { |
112 |
$config['activerLDAP']=false; |
113 |
} |
114 |
|
115 |
$r=ldap_bind($ds,$config['LDAPreaderdn'],$config['LDAPreaderpw']); |
116 |
if(!$r) { |
117 |
$config['activerLDAP']=false; |
118 |
} |
119 |
} |
120 |
|
121 |
if($config['activerLDAP']&&$_SESSION['user_login']!="") { |
122 |
|
123 |
if($fgdebug) echo "<h1>GESTION DES PROFIL LDAP</h1>"; |
124 |
|
125 |
// Déterminer dans quelles communauté appartient l'utilisateur
|
126 |
$q = "SELECT * FROM ".$config["dbprefixe"]."ldap_community"; |
127 |
$query01=$bdd01->prepare($q); |
128 |
$query01->execute();
|
129 |
while($row01=$query01->fetch()) { |
130 |
$fgmembre=false; |
131 |
$lbfilter=str_replace("#login#",$_SESSION['user_login'],$row01["ldap_community_filter"]); |
132 |
if($fgdebug) echo "<h2>".$row01["ldap_community_label"]."</h2>Filtre Communauté= ".$lbfilter; |
133 |
|
134 |
if($row01["ldap_community_filter"]=="") { |
135 |
$fgmembre=true; |
136 |
if($fgdebug) echo "<br>appartient à la communauté = ".$row01["ldap_community_label"]; |
137 |
} |
138 |
else {
|
139 |
$res = ldap_search($ds,$config['LDAPracine'],$lbfilter); |
140 |
|
141 |
$ldapinfo = ldap_get_entries($ds, $res); |
142 |
if($ldapinfo["count"]>0) { |
143 |
$fgmembre=true; |
144 |
if($fgdebug) echo "<br>appartient à la communauté = ".$row01["ldap_community_label"]; |
145 |
} |
146 |
} |
147 |
|
148 |
// Il fait partie de cette communauté
|
149 |
if($fgmembre) { |
150 |
// Stocker la communauté de l'utilisateur
|
151 |
array_push($tbcommu,array("LDAP",$row01["ldap_community_id"])); |
152 |
|
153 |
if($fgdebug) echo "<ul>"; |
154 |
|
155 |
// Parcourt de l'ensemble des profil LDAP de la communauté
|
156 |
$q = "SELECT * FROM ".$config["dbprefixe"]."ldap_profil WHERE ldap_profil_ldap_community=?"; |
157 |
$query02=$bdd02->prepare($q); |
158 |
$query02->execute(array($row01["ldap_community_id"])); |
159 |
while($row02=$query02->fetch()) { |
160 |
$fgmembre=false; |
161 |
$lbfilter=str_replace("#login#",$_SESSION['user_login'],$row02["ldap_profil_filter"]); |
162 |
if($fgdebug) echo "<h4>".$row02["ldap_profil_label"]."</h4>Filtre Profil= ".$lbfilter; |
163 |
|
164 |
if($row02["ldap_profil_filter"]=="") { |
165 |
$fgmembre=true; |
166 |
if($fgdebug) echo "<br>appartient au profil = ".$row02["ldap_profil_label"]; |
167 |
} |
168 |
else {
|
169 |
$res = ldap_search($ds,$config['LDAPracine'],$lbfilter); |
170 |
$ldapinfo = ldap_get_entries($ds, $res); |
171 |
if($ldapinfo["count"]>0) { |
172 |
$fgmembre=true; |
173 |
if($fgdebug) echo "<br>appartient au profil = ".$row02["ldap_profil_label"]; |
174 |
} |
175 |
} |
176 |
|
177 |
// Il fait partie du profil
|
178 |
if($fgmembre) { |
179 |
// Stocker le profil
|
180 |
array_push($tbprofil,array("LDAP",$row02["ldap_profil_id"])); |
181 |
|
182 |
// Récupérer l'ensemble des catégories d'item associé au profil de l'utilisateur
|
183 |
// 0 = categorie order
|
184 |
// 1 = categorie id
|
185 |
// 2 = categorie label
|
186 |
// 3 = categorie color
|
187 |
|
188 |
$q = "SELECT application_categorie_id, application_categorie_label, application_categorie_color FROM ".$config["dbprefixe"]."application_ldap_profil, ".$config["dbprefixe"]."application, ".$config["dbprefixe"]."icon, ".$config["dbprefixe"]."application_categorie |
189 |
WHERE application_ldap_profil_ldap_profil=?
|
190 |
AND application_ldap_profil_application=application_id
|
191 |
AND application_icon=icon_id
|
192 |
AND application_categorie=application_categorie_id
|
193 |
GROUP BY application_categorie_id
|
194 |
ORDER BY application_categorie_order, application_order";
|
195 |
$query03=$bdd03->prepare($q); |
196 |
$query03->execute(array($row02["ldap_profil_id"])); |
197 |
while($row03=$query03->fetch()) { |
198 |
if($fgdebug) echo "<br>Catégorie item = ".$row03["application_categorie_label"]; |
199 |
|
200 |
$tbtmp=array($row03["application_categorie_order"],$row03["application_categorie_id"],$row03["application_categorie_label"],$row03["application_categorie_color"]); |
201 |
if(!in_array($tbtmp,$tbcat)) { |
202 |
if($fgdebug) echo " ajoutée"; |
203 |
array_push($tbcat,$tbtmp); |
204 |
} |
205 |
} |
206 |
|
207 |
// Récupérer l'ensemble des applications associé au profil de l'utilisateur
|
208 |
// 00 = categorie order
|
209 |
// 01 = application order
|
210 |
// 02 = categorie id
|
211 |
// 03 = application id
|
212 |
// 04 = applcation label
|
213 |
// 05 = application description
|
214 |
// 06 = application url
|
215 |
// 07 = icone url
|
216 |
// 08 = application mode d'ouverture
|
217 |
// 09 = application coleur
|
218 |
// 10 = badge type
|
219 |
// 11 = badge message
|
220 |
// 12 = badge callback
|
221 |
|
222 |
$q = "SELECT * FROM ".$config["dbprefixe"]."application_ldap_profil, ".$config["dbprefixe"]."application, ".$config["dbprefixe"]."icon, ".$config["dbprefixe"]."application_categorie |
223 |
WHERE application_ldap_profil_ldap_profil=?
|
224 |
AND application_ldap_profil_application=application_id
|
225 |
AND application_icon=icon_id
|
226 |
AND application_categorie=application_categorie_id
|
227 |
ORDER BY application_categorie_order, application_order";
|
228 |
$query03=$bdd03->prepare($q); |
229 |
$query03->execute(array($row02["ldap_profil_id"])); |
230 |
while($row03=$query03->fetch()) { |
231 |
if($fgdebug) echo "<br>Item = ".$row03["application_label"]; |
232 |
|
233 |
$tbtmp=array($row03["application_categorie_order"],$row03["application_order"],$row03["application_categorie"],$row03["application_id"],$row03["application_label"],$row03["application_description"],$row03["application_url"],$row03["icon_url"],$row03["application_open"],$row03["application_color"],$row03["application_badge"],$row03["application_callbackmsg"],$row03["application_callback"]); |
234 |
if(!in_array($tbtmp,$tbitem)) { |
235 |
if($fgdebug) echo " ajoutée"; |
236 |
array_push($tbitem,$tbtmp); |
237 |
} |
238 |
} |
239 |
|
240 |
// Récupérer l'ensemble des pages associées au profil de l'utilisateur
|
241 |
// 0 = page order
|
242 |
// 1 = page id
|
243 |
// 2 = page label
|
244 |
// 3 = page icon
|
245 |
// 4 = page color
|
246 |
// 5 = page color label
|
247 |
|
248 |
$q = "SELECT * FROM ".$config["dbprefixe"]."panel_ldap_profil, ".$config["dbprefixe"]."panel |
249 |
WHERE panel_ldap_profil_ldap_profil=?
|
250 |
AND panel_ldap_profil_panel=panel_id
|
251 |
ORDER BY panel_order";
|
252 |
$query03=$bdd03->prepare($q); |
253 |
$query03->execute(array($row02["ldap_profil_id"])); |
254 |
while($row03=$query03->fetch()) { |
255 |
if($fgdebug) echo "<br>Page = ".$row03["panel_label"]; |
256 |
|
257 |
$tbtmp=array($row03["panel_order"],$row03["panel_id"],$row03["panel_label"],$row03["panel_icon"],$row03["panel_color"],$row03["panel_colorlabel"]); |
258 |
if(!in_array($tbtmp,$tbpage)) { |
259 |
if($fgdebug) echo " ajoutée"; |
260 |
array_push($tbpage,$tbtmp); |
261 |
} |
262 |
} |
263 |
|
264 |
// Récupérer l'ensemble des flux associés au profil de l'utilisateur
|
265 |
// 0 = flux order
|
266 |
// 1 = flux id
|
267 |
// 2 = flux label
|
268 |
// 3 = type
|
269 |
// 4 = flux url
|
270 |
// 5 = flux number
|
271 |
// 6 = flux color
|
272 |
// 7 = flux style
|
273 |
|
274 |
$q = "SELECT * FROM ".$config["dbprefixe"]."flux_ldap_profil, ".$config["dbprefixe"]."flux |
275 |
WHERE flux_ldap_profil_profil=?
|
276 |
AND flux_ldap_profil_flux=flux_id
|
277 |
ORDER BY flux_order";
|
278 |
$query03=$bdd03->prepare($q); |
279 |
$query03->execute(array($row02["ldap_profil_id"])); |
280 |
while($row03=$query03->fetch()) { |
281 |
if($fgdebug) echo "<br>Flux = ".$row03["flux_name"]; |
282 |
|
283 |
$tbtmp=array($row03["flux_order"],$row03["flux_id"],$row03["flux_name"],$row03["flux_type"],$row03["flux_url"],$row03["flux_number"],$row03["flux_color"],$row03["flux_style"]); |
284 |
if(!in_array($tbtmp,$tbflux)) { |
285 |
if($fgdebug) echo " ajoutée"; |
286 |
array_push($tbflux,$tbtmp); |
287 |
} |
288 |
} |
289 |
} |
290 |
} |
291 |
|
292 |
if($fgdebug) echo "</ul>"; |
293 |
} |
294 |
} |
295 |
} |
296 |
|
297 |
|
298 |
//== PROFIL SSO ========================================================================================================================================
|
299 |
|
300 |
if($config["modeAuthentification"]=="CAS"&&$_SESSION['user_login']!="") { |
301 |
if($fgdebug) echo "<hr><h1>GESTION DES PROFIL SSO</h1>"; |
302 |
|
303 |
// Parcours de l'ensemble des informations détaillées de l'utilisateur
|
304 |
if($fgdebug) echo "<h2>LISTE DES ATTRIBUTS ASSOCIES</h2>"; |
305 |
$user = EolephpCAS::getUser(); |
306 |
$details = EolephpCAS::getDetails(); |
307 |
$user_datas = $details; |
308 |
|
309 |
if($fgdebug) echo "<ul>"; |
310 |
|
311 |
foreach ($user_datas as $tbuser) { |
312 |
foreach ($tbuser as $key => $attribut) { |
313 |
foreach($attribut as $u) { |
314 |
if($fgdebug) echo "<br>$key = $u"; |
315 |
|
316 |
// On recherche s'il exite un attribut parametré pour cette valeur
|
317 |
$q = "SELECT * FROM ".$config["dbprefixe"]."sso_attribut WHERE sso_attribut_name=? AND sso_attribut_value=?"; |
318 |
$query01=$bdd01->prepare($q); |
319 |
$query01->execute(array($key,$u)); |
320 |
|
321 |
// Si oui on sauvegarde l'id de l'attribut
|
322 |
if($row01=$query01->fetch()) { |
323 |
array_push($tbattrs,$row01['sso_attribut_id']); |
324 |
if($fgdebug) echo "<span style='color: red;font_width: strong;'> >> OK</span> >> ".$row01['sso_attribut_id']; |
325 |
} |
326 |
} |
327 |
} |
328 |
} |
329 |
|
330 |
if($fgdebug) echo "</ul>"; |
331 |
|
332 |
// Déterminer dans quelles communauté appartient l'utilisateur
|
333 |
$lstattrs=implode(",",$tbattrs); |
334 |
$q = "SELECT * FROM ".$config["dbprefixe"]."sso_community"; |
335 |
$query01=$bdd01->prepare($q); |
336 |
$query01->execute();
|
337 |
while($row01=$query01->fetch()) { |
338 |
$fgmembre=false; |
339 |
if($fgdebug) echo "<h2>".$row01["sso_community_label"]."</h2>"; |
340 |
|
341 |
if($row01["sso_community_id"]==-1) { |
342 |
$fgmembre=true; |
343 |
if($fgdebug) echo "appartient à la communauté = ".$row01["sso_community_label"]; |
344 |
} |
345 |
else {
|
346 |
//On prepare la liste des attributs
|
347 |
// Appartient à la communauté si au moins un id dans la liste des attributs
|
348 |
$q = "SELECT * FROM ".$config["dbprefixe"]."sso_community_attribut |
349 |
WHERE sso_community_attribut_community=?
|
350 |
AND sso_community_attribut_attribut in ($lstattrs)";
|
351 |
$query02=$bdd02->prepare($q); |
352 |
$query02->execute(array($row01["sso_community_id"])); |
353 |
if($row02=$query02->fetch()) { |
354 |
$fgmembre=true; |
355 |
if($fgdebug) echo "appartient à la communauté = ".$row01["sso_community_label"]; |
356 |
} |
357 |
} |
358 |
|
359 |
// Il fait partie de cette communauté
|
360 |
if($fgmembre) { |
361 |
// Stocker la communauté de l'utilisateur
|
362 |
array_push($tbcommu,array("SSO",$row01["sso_community_id"])); |
363 |
|
364 |
// Appartient au profil si au moins un id dans la liste des attributs de cette communauté
|
365 |
$q = "SELECT * FROM ".$config["dbprefixe"]."sso_profil, ".$config["dbprefixe"]."sso_profil_attribut |
366 |
WHERE sso_profil_community=?
|
367 |
AND sso_profil_id = sso_profil_attribut_profil
|
368 |
AND sso_profil_attribut_attribut IN (?)";
|
369 |
$query02=$bdd02->prepare($q); |
370 |
$query02->execute(array($row01["sso_community_id"],$lstattrs)); |
371 |
|
372 |
// Il fait partie du profil
|
373 |
if($row02=$query02->fetch()) { |
374 |
if($fgdebug) echo "<h4>".$row02["sso_profil_label"]."</h4>"; |
375 |
|
376 |
// Stocker le profil
|
377 |
array_push($tbprofil,array("SSO",$row02["sso_profil_id"])); |
378 |
|
379 |
// Récupérer l'ensemble des catégories d'item associé au profil de l'utilisateur
|
380 |
// 0 = categorie order
|
381 |
// 1 = categorie id
|
382 |
// 2 = categorie label
|
383 |
// 3 = categorie color
|
384 |
|
385 |
$q = "SELECT application_categorie_id, application_categorie_label, application_categorie_color FROM ".$config["dbprefixe"]."application_sso_profil, ".$config["dbprefixe"]."application, ".$config["dbprefixe"]."icon, ".$config["dbprefixe"]."application_categorie |
386 |
WHERE application_sso_profil_sso_profil=?
|
387 |
AND application_sso_profil_application=application_id
|
388 |
AND application_icon=icon_id
|
389 |
AND application_categorie=application_categorie_id
|
390 |
GROUP BY application_categorie_id
|
391 |
ORDER BY application_categorie_order, application_order";
|
392 |
$query03=$bdd03->prepare($q); |
393 |
$query03->execute(array($row02["sso_profil_id"])); |
394 |
while($row03=$query03->fetch()) { |
395 |
if($fgdebug) echo "<br>Catégorie item = ".$row03["application_categorie_label"]; |
396 |
|
397 |
$tbtmp=array($row03["application_categorie_order"],$row03["application_categorie_id"],$row03["application_categorie_label"],$row03["application_categorie_color"]); |
398 |
if(!in_array($tbtmp,$tbcat)) { |
399 |
if($fgdebug) echo " ajoutée"; |
400 |
array_push($tbcat,$tbtmp); |
401 |
} |
402 |
} |
403 |
|
404 |
// Récupérer l'ensemble des applications associé au profil de l'utilisateur
|
405 |
// 00 = categorie order
|
406 |
// 01 = application order
|
407 |
// 02 = categorie id
|
408 |
// 03 = application id
|
409 |
// 04 = applcation label
|
410 |
// 05 = application description
|
411 |
// 06 = application url
|
412 |
// 07 = icone url
|
413 |
// 08 = application mode d'ouverture
|
414 |
// 09 = application coleur
|
415 |
// 10 = badge type
|
416 |
// 11 = badge message
|
417 |
// 12 = badge callback
|
418 |
|
419 |
$q = "SELECT * FROM ".$config["dbprefixe"]."application_sso_profil, ".$config["dbprefixe"]."application, ".$config["dbprefixe"]."icon, ".$config["dbprefixe"]."application_categorie |
420 |
WHERE application_sso_profil_sso_profil=?
|
421 |
AND application_sso_profil_application=application_id
|
422 |
AND application_icon=icon_id
|
423 |
AND application_categorie=application_categorie_id
|
424 |
ORDER BY application_categorie_order, application_order";
|
425 |
$query03=$bdd03->prepare($q); |
426 |
$query03->execute(array($row02["sso_profil_id"])); |
427 |
while($row03=$query03->fetch()) { |
428 |
if($fgdebug) echo "<br>Item = ".$row03["application_label"]; |
429 |
|
430 |
$tbtmp=array($row03["application_categorie_order"],$row03["application_order"],$row03["application_categorie"],$row03["application_id"],$row03["application_label"],$row03["application_description"],$row03["application_url"],$row03["icon_url"],$row03["application_open"],$row03["application_color"],$row03["application_badge"],$row03["application_callbackmsg"],$row03["application_callback"]); |
431 |
if(!in_array($tbtmp,$tbitem)) { |
432 |
if($fgdebug) echo " ajoutée"; |
433 |
array_push($tbitem,$tbtmp); |
434 |
} |
435 |
} |
436 |
|
437 |
// Récupérer l'ensemble des pages associées au profil de l'utilisateur
|
438 |
// 0 = page order
|
439 |
// 1 = page id
|
440 |
// 2 = page label
|
441 |
// 3 = page icon
|
442 |
// 4 = page color
|
443 |
// 5 = page color label
|
444 |
|
445 |
$q = "SELECT * FROM ".$config["dbprefixe"]."panel_sso_profil, ".$config["dbprefixe"]."panel |
446 |
WHERE panel_sso_profil_sso_profil=?
|
447 |
AND panel_sso_profil_panel=panel_id
|
448 |
ORDER BY panel_order";
|
449 |
$query03=$bdd03->prepare($q); |
450 |
$query03->execute(array($row02["sso_profil_id"])); |
451 |
while($row03=$query03->fetch()) { |
452 |
if($fgdebug) echo "<br>Page = ".$row03["panel_label"]; |
453 |
|
454 |
$tbtmp=array($row03["panel_order"],$row03["panel_id"],$row03["panel_label"],$row03["panel_icon"],$row03["panel_color"],$row03["panel_colorlabel"]); |
455 |
if(!in_array($tbtmp,$tbpage)) { |
456 |
if($fgdebug) echo " ajoutée"; |
457 |
array_push($tbpage,$tbtmp); |
458 |
} |
459 |
} |
460 |
|
461 |
// Récupérer l'ensemble des flux associés au profil de l'utilisateur
|
462 |
// 0 = flux order
|
463 |
// 1 = flux id
|
464 |
// 2 = flux label
|
465 |
// 3 = type
|
466 |
// 4 = flux url
|
467 |
// 5 = flux number
|
468 |
// 6 = flux color
|
469 |
// 7 = flux style
|
470 |
|
471 |
$q = "SELECT * FROM ".$config["dbprefixe"]."flux_sso_profil, ".$config["dbprefixe"]."flux |
472 |
WHERE flux_sso_profil_profil=?
|
473 |
AND flux_sso_profil_flux=flux_id
|
474 |
ORDER BY flux_order";
|
475 |
$query03=$bdd03->prepare($q); |
476 |
$query03->execute(array($row02["sso_profil_id"])); |
477 |
while($row03=$query03->fetch()) { |
478 |
if($fgdebug) echo "<br>Flux = ".$row03["flux_name"]; |
479 |
|
480 |
$tbtmp=array($row03["flux_order"],$row03["flux_id"],$row03["flux_name"],$row03["flux_type"],$row03["flux_url"],$row03["flux_number"],$row03["flux_color"],$row03["flux_style"]); |
481 |
if(!in_array($tbtmp,$tbflux)) { |
482 |
if($fgdebug) echo " ajoutée"; |
483 |
array_push($tbflux,$tbtmp); |
484 |
} |
485 |
} |
486 |
} |
487 |
} |
488 |
} |
489 |
} |
490 |
|
491 |
|
492 |
|
493 |
|
494 |
|
495 |
// Trie des Tableaux
|
496 |
foreach ($tbitem as $key => $rowd) { |
497 |
$indice[$key] = $rowd[1]; |
498 |
$libelle[$key] = $rowd[4]; |
499 |
} |
500 |
@array_multisort($indice, SORT_ASC, $libelle, SORT_ASC, $tbitem); |
501 |
|
502 |
foreach ($tbflux as $key => $rowd) { |
503 |
$indice[$key] = $rowd[0]; |
504 |
$libelle[$key] = $rowd[2]; |
505 |
} |
506 |
@array_multisort($indice, SORT_ASC, $libelle, SORT_ASC, $tbflux); |
507 |
|
508 |
foreach ($tbpage as $key => $rowd) { |
509 |
$indice[$key] = $rowd[0]; |
510 |
$libelle[$key] = $rowd[2]; |
511 |
} |
512 |
@array_multisort($indice, SORT_ASC, $libelle, SORT_ASC, $tbpage); |
513 |
|
514 |
asort($tbcat); |
515 |
|
516 |
|
517 |
//if($fgdebug) die();
|
518 |
|
519 |
?>
|
520 |
|