Permissions: Difference between revisions
mNo edit summary |
|||
| Line 5: | Line 5: | ||
Toutes les permissions gérées dans Dolibarr sont stockées dans la [[Table llx_rights_def]] et possède un id. | Toutes les permissions gérées dans Dolibarr sont stockées dans la [[Table llx_rights_def]] et possède un id. | ||
Cet id est aussi utilisé pour faire le lien entre un utilisateur et la permission (liens stockés dans la table [[Table llx_user_rights]] ou pour faire un lien entre un groupe et la permission (liens stockés dans la table [[Table llx_usergroup_rights]]). | Cet id est aussi utilisé pour faire le lien entre un utilisateur et la permission (liens stockés dans la table [[Table llx_user_rights]] ou pour faire un lien entre un groupe et la permission (liens stockés dans la table [[Table llx_usergroup_rights]]). | ||
= Récuperer les droits et groupes d'un utilisateur = | = Récuperer les droits et groupes d'un utilisateur = | ||
Revision as of 17:36, 25 August 2009
Chaque permission se voit affecter un id unique. Toutes les permissions gérées dans Dolibarr sont stockées dans la Table llx_rights_def et possède un id. Cet id est aussi utilisé pour faire le lien entre un utilisateur et la permission (liens stockés dans la table Table llx_user_rights ou pour faire un lien entre un groupe et la permission (liens stockés dans la table Table llx_usergroup_rights).
Récuperer les droits et groupes d'un utilisateur
Dans une page de code Dolibarr, l'objet global $user est automatiquement défini. Il contient les informations sur l'utilisateur courant. Ces droits sont accessibles par un test
if ($user->rights->module->codestringlevel1->codestringlevel1)
Pour connaitre les groupes d'utilisateurs auxquels un utilisateur donné appartient, on peut utiliser le code suivant (Dolibarr 2.5 ou plus):
$usergroup=new UserGroup($db);
$listofgroups=$usergroup->listGroupsForUser($fuser);
print $listofgroups[0]->nom;
$listofgroups étant un tableau de tous les objets UserGroups (les groupes) auxquels appartient l'utilisateur $fuser et $fuser étant un objet User chargé par
$fuser=new User($db);
$fuser->fetch('login');
Tableau d'identification des permissions
Chaque module fonctionnel a ses propres chaine code pour consulter le tableau $user->rights et connaitre les permission de l'utilisateurs en rapport avec le module. La liste de ces codes est donné sur la documentation développeur du module.