Permissions: Difference between revisions

From Dolibarr ERP CRM Wiki
Jump to navigation Jump to search
m (Import interlang links (links to translated versions of this page in other languages) from origin English page "Permissions_En".)
 
(13 intermediate revisions by one other user not shown)
Line 1: Line 1:
<!-- BEGIN interlang links -->
<!-- Do NOT edit this section
    Links below are automatically managed by PolyglotBot
    You can edit links on the English source page : Permissions_En -->
[[en:Permissions_En]]
[[es:Permisos]]
[[zh:用户权限]]
<!-- END interlang links -->
[[Category:Noyau]]
{{TemplateDocDev}}
{{TemplateDocDev}}


Line 5: Line 15:
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 =
Dans une page de code Dolibarr, l'objet global $user est automatiquement défini.
Dans une page de code Dolibarr, l'objet global $user est automatiquement défini.
Il contient les informations sur l'utilisateur courant.
Il contient les informations sur l'utilisateur courant.
Ces droits sont accessibles par un test
Ces droits sont accessibles par un test
<pre>if ($user->rights->module->droit)</pre>
<source lang="php">
if ($user->rights->module->codestringlevel1->codestringlevel1)
</source>


Pour connaitre les groupes auxquels un utilisateur appartient, on peut utiliser le code suivant (Dolibarr 2.5 ou plus):
Pour connaitre les groupes d'utilisateurs auxquels un utilisateur donné appartient, on peut utiliser le code suivant (Dolibarr 2.5 ou plus):
<pre>
<source lang="php">
$usergroup=new UserGroup($db);
$usergroup=new UserGroup($db);
$listofgroups=$usergroup->listGroupsForUser($fuser);
$listofgroups=$usergroup->listGroupsForUser($fuser);
print $listofgroups[0]->nom;
print $listofgroups[0]->nom;
</pre>
</source>
$listofgroups étant un tableau de tous les objets UserGroups (les groupes) auquels appartient l'utilisateur $fuser, $fuser étant un objet User.
$listofgroups étant un tableau de tous les objets UserGroups (les groupes) auxquels appartient l'utilisateur $fuser
 
et $fuser étant un objet User chargé par
Avant de créer de nouvelles permissions les développeurs doivent compléter ce document, c'est lui et lui seul qui fait office de réservation et d'inventaire des identifiants retenus.
<source lang="php">
 
$fuser=new User($db);
Identification des classes :
$fuser->fetch('login');
</source>


== Tableau d'identification des classes ==
= 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.


# [[Module Utilisateurs]]
Cliquez [[:Category:Liste des Modules|ici pour consulter la liste des modules]] (et choississez la version développeur de la documentation pour connaitre la liste des permission du module).
# [[Module Facture]]
# [[Module Propositions commerciales]]
# [[Module Produits]]
# [[Module Projets]]
# [[Module Fiches d'intervention]]
# [[Module Adhérents]]
# [[Module Commandes]]
# [[Module Comptabilité]]
# [[Module Expédition]]
# [[Module Banque-Caisse]]
# [[Module Société]]
# [[Module Prélèvements bancaires]]
# [[Module Contrat]]
# [[Module Mailing]]
# [[Module Fournisseur]]
# [[Module Fournisseur]] commandes
# [[Module Fournisseur]] factures
# [[Module Catégorie]]
# [[Module Commercial]]
# [[Module Téléphonie]]
# [[Module Téléphonie]] lignes
# [[Module Téléphonie]] lignes ADSL
# [[Module Téléphonie]] contrats de lignes téléphonique
# [[Module Téléphonie]] permissions supplémentaires
# [[Module Téléphonie]] Services
# [[Module Téléphonie]] Tarifs

Latest revision as of 13:21, 23 July 2019

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.

Cliquez ici pour consulter la liste des modules (et choississez la version développeur de la documentation pour connaitre la liste des permission du module).