[Opened] Re: jAcl
Posted by abys on 01/25/2008 16:40
J ai bien compris comment creer un groupe, un utilisateur, des droits, mais je ne voit pas comment utiliser dans les modules toute la partie "right_values, right_values_group et les sujets" la commande jAcl::check renvoit que la partie dans jacl_right. dans l api c pas mentionné comme parametres
static boolean check (string $subject, string $value = true, string $resource = null)
static array getRight (string $subject, string $resource = null)
comment faire pour avoir une gestion des droit plus fine (grisé un bouton submit par ex...)
merci
[Opened] Re: jAcl
Posted by laurentj on 01/25/2008 22:31
si tu veux griser ou pas un bouton, c'est en fonction d'un droit. Donc tu vas demander à jAcl, en appelant la méthode check() (comme c'est expliqué sur la page d'utilisation de l'api), si l'utilisateur courant a le droit requis.
Par exemple, sur une page quelconque, on veut vouloir afficher ou non un lien vers un formulaire de création d'un article. En admettant que dans ton système, les articles sont représentés par le sujet "cms.articles", et qu'il faut que le droit ait pour valeur "CREATE" pour autoriser la creation d'un article, tu fera alors dans ton template .
{ifacl "cms.articles","CREATE"} <a href="{jurl 'cms~article:creation'}">Créer un article</a> {/ifacl}
Si lors de la configuration des droits, tu a utilisé la commande aclright pour dire que le groupe auquel appartient le user courant a le droit de créer un article, comme par exemple, en admettant que le numero de son groupe soit 1 :
$ php jelix.php aclright add 1 "cms.articles" CREATE
alors le lien s'affichera.
Dans l'action article:creation, il est bien sûr recommander de tester là aussi le droit, tu fera donc un truc dans le genre
if( ! jAcl::check('cms~articles', "CREATE")) { throw new Exception("Vous n'avez pas le droit de créer un article"); }
C'est tout ce qu'il y a à faire.
[Opened] Re: jAcl
Posted by abys on 01/26/2008 10:23
Ok, tout ceci fonctionne correctement, sauf que dans mon test je n'ai pas :
jAcl::check('cms~articles', "CREATE")
mais
jAcl::check('cms.articles', "CREATE") (avec le point) J ai fait un schema dbdesigner de Jacl avec les enregistrements de la doc.
Donc si j ai bien compris les tables jacl_right_values, jacl_right_values_group ne servent pas
[Opened] Re: jAcl
Posted by pr_bond on 03/23/2009 14:33
Kikou
Bon le sujet est un peux vieux : 17/02/2008
Le lien demo d'une interface xul ne fonctionne plus.
Je suis curieux de ce que ca donné ...
Peux être que c ailleurs maintenant ... ???
Sinon c pas grave
A peluche
Mon nom est Bond, James Bond !
- Windows 7 Pro 64Bits
- XAMPP 1.7.2
- Apache 2.2.12
- PHP 5.3.0
- MySQL 5.1.37
- Jelix 1.1.6