- 1
[Opened] [Résolu] jAcl2 et les verifications automatiques
Posted by ciblemedia on 12/12/2011 15:05
Bonjour à tous,
Je suis en train de regarder les vérifications automatiques de jAcl2 et j'ai une petite question :
Dans mon controller, j'ai déclaré : public $pluginParams = array('*' => array( 'jacl2.right'=>'sujet'));
C'est très bien lorsque ma vérification se fait au tout début, or j'ai besoin de rajouter dans une action un deuxième contrôle jAcl2.
Comment puis-je faire ?
Une autre question : A quoi sert '*' dans mon array ? Puis-je mettre autre chose ?
Cordialement, Yann
[Opened] jAcl2 et les verifications automatiques
Posted by foxmask on 12/12/2011 15:54
les 2 questions sont liées : la première astérisque fait référence à "toutes les actions" du contrôleur.
donc pour que le filtre ne s'applique pas partout on doit nommer les actions de son contrôleur explicitement.
public $pluginParams = array('index' => array( 'jacl2.right'=>'sujet'),
                                'save' => array( 'jacl2.right'=>'sujet'));
Pour plus de détails voir Plugins de Coordinateur
@GitHub - Forum HaveFnuBB! powered by Jelix - Le Booster Jelix !
[Opened] jAcl2 et les verifications automatiques
Posted by ciblemedia on 12/12/2011 16:06
merci !
[Opened] jAcl2 et les verifications automatiques
Posted by foxmask on 12/12/2011 16:39
enfin si on veut faire une 2nde vérification dans une de ses actions on fera
if ( jAcl::check('jai.aussi.le.droit.de.faire.ca') ) {
}
                @GitHub - Forum HaveFnuBB! powered by Jelix - Le Booster Jelix !
[Opened] jAcl2 et les verifications automatiques
Posted by ciblemedia on 12/12/2011 16:45
ok
j'ai utilisé jacl2::check , mais je voudrais utiliser la redirection automatique paramétré dans ma config jacl2 pour éviter de retaper ma redirection ou mon message a envoyer. 
[Opened] jAcl2 et les verifications automatiques
Posted by foxmask on 12/12/2011 17:10
Oui jacl2::check() marche bien.
Comme le but ici était d'ajouter un 2nd contrôle ... c'est pas tout automatique.
Et rien n'empêche de retourner l'utilisateur vers l'url indiquée dans la config (au contraire ;) avec un
if (! (jacl2::check('verif1') && jacl2::check('verif2')) )  {
    $conf = $GLOBALS['gJCoord']->getPlugin ('auth')->config;
    $url_return = $conf['on_error_action'];
    $rep =  $this->getResponse('redirectUrl');
    $rep->url = $url_return;
    return $rep;
}
en plus court ça donnerait ça aussi
if (! (jacl2::check('verif1') && jacl2::check('verif2')) )  {
    $rep =  $this->getResponse('redirectUrl');
    $rep->url = $GLOBALS['gJCoord']->getPlugin ('auth')->config['on_error_action'];
    return $rep;
}
                @GitHub - Forum HaveFnuBB! powered by Jelix - Le Booster Jelix !
[Opened] jAcl2 et les verifications automatiques
Posted by ciblemedia on 12/12/2011 18:39
j'ai utilisé l'url de redirection du plugin de jAcl2 plutôt que celui de auth en faisant un redirect;
$rep =  $this->getResponse('redirect');
            $rep->action = $GLOBALS['gJCoord']->getPlugin('jAcl2')->config['on_error_action'];
            return $rep;
En tout cas merci !
- 1


