API des ACL (Access Control List)

De OviWiki
Révision de 27 septembre 2007 à 15:29 par Paul (discussion | contributions)

(diff) ← Version précédente | Voir la version courante (diff) | Version suivante → (diff)
Aller à : navigation, rechercher

Object ACL

Pour afficher un formulaire de droits ACL il faut inclure un fichier php :

include_once $GLOBALS['babInstallPath']."admin/acl.php";

Par contre pour tester les droits d'accès il n'est pas nécessaire d'inclure le fichier


Fonction pour enregistrer les droits

$macl = new macl('tg_value', 'idx_value', $id_object, 'returnvar');
$macl->addtable( 'bab_table_name',bab_translate("Who can manage this environement?"));
$macl->filter(0,0,1,1,1);
$macl->babecho();

l'object "macl" permet la création d'un fomulaire acl pour un seul object.

la méthode addtable() permet d'ajouter une ou plusieurs tables de droits, la méthode doit être appelée une ou plusieurs fois, le premier paramètre est le nom de la table, le deuxième paramètre est le libellé qui sera affiché sur le formulaire.

voici un exemple de structure pour la table de droits :


CREATE TABLE `bdic_env_groups` (
  `id` int(11) unsigned NOT NULL auto_increment,
  `id_object` int(11) unsigned NOT NULL default '0',
  `id_group` int(11) unsigned NOT NULL default '0',
  PRIMARY KEY  (`id`),
  KEY `id_object` (`id_object`),
  KEY `id_group` (`id_group`)
);



la méthode "filter" permet de désactiver certaines possibilités du formulaire de droit


Fonctions pour tester les droits