extranet/includes/user/profil.php
2010-05-04 12:34:23 +00:00

63 lines
1.3 KiB
PHP

<?php
/*
Profiles :
Un profil défini les informations à afficher et
le theme à appliquer sur chaque page
*/
/**
* Retourne false ou la page à appliquer pour le profil concerné
* @param string $vue
* @return mixed false ou page.php du profil
*/
function hasProfil($vue)
{
$profiles = defineProfil();
$idClient = $_SESSION['tabInfo']['idClient'];
$login = $_SESSION['tabInfo']['login'];
$return = false;
if( array_key_exists($idClient, $profiles) )
{
if( array_key_exists($vue, $profiles[$idClient]) )
{
$vueProfil = $profiles[$idClient][$vue];
$concern = $vueProfil['concern'];
if( is_array($concern) && in_array($login, $concern) ||
$login == $concern || $concern == 'all' )
{
if(!empty($vueProfil['page']))
$return = $vueProfil['page'];
}
}
}
return $return;
}
/**
* Retourne un tableau contenant les profiles à appliquer aux utilisateurs
* @return array
*/
function defineProfil()
{
/*
* idClient =>
* vue => (page que l'on surcharge)
* page => identite_idClient.php
* concern => login, liste de login, all
*/
return array(
'1' => array('identite' =>
array(
'titre'=>'Fiche AGS',
'page'=>'identite_60.php',
'concern'=>array('mricois', 'ylenaour')
)
),
'60' => array('identite' =>
array(
'titre'=>'Fiche AGS',
'page'=>'identite_60.php',
'concern'=>'all' )
),
);
}