Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 23-06-2008 11:22:51

Tonio13006
Membre
Date d'inscription: 09-04-2008
Messages: 34

ACL plugin

Voila je viens de mettre en place mes ACL, tout marche très bien,mon seul souci est à l'affichage...
Je m'explique.

voici mon code :

Code:

    private function check()
    {
        $acl = $this->getAcl();
        $auth = Zend_Auth::getInstance();
        if ($auth->hasIdentity()) {
            $user = $auth->getIdentity();
            $acl->addRole(new Zend_Acl_Role($user->username, array($user->groupe)));
        } else {
            $user = new ArrayObject();
            $user->groupe = 'guest';
        }
        
        
       
        $request = $this->getRequest()->getParams();

        try {
            return $acl->isAllowed($user->groupe, $request['controller'], $request['action']);
        } catch (Zend_Acl_Exception $e) {
            return false;
        }
    }

    public function routeShutdown(Zend_Controller_Request_Abstract $request)
    {
        $allowed = $this->check();
        // Here is where you would redirect to an 'unauthorised' page. For now just display a message
        
        if ($allowed) $msg = "you are authorised";
        else $msg = "you are not authorised. Bad bad!";
        
        $view = new Zend_View();
        
        $this->getResponse()->appendBody($msg);
        
        
    }

Donc, sur chaque page de mon site, s'affiche "you are authorised" ou "you are not authorised. Bad bad!", suivant les rôles des personnes, j'aimerais en faite pouvoir afficher justement ces informations sans le reste de la vu donc comme ceci :

header
"you are authorised" ou "you are not authorised. Bad bad!"
footer

et non juste l'intégrer au body, avec éventuellement un liens "revenir sur la page précédente."

quelqu'un peut il m'aider?

Hors ligne

 

#2 23-06-2008 12:34:38

lethak
Membre
Lieu: France
Date d'inscription: 05-04-2008
Messages: 168

Re: ACL plugin

je suis le seul a ne pas tout a fait saisir la problématique ?


IT Dev @Twitter

Hors ligne

 

#3 23-06-2008 13:07:36

or4cle
Membre
Date d'inscription: 18-02-2008
Messages: 70

Re: ACL plugin

Ce que je comprend c'est que tu affiches s'il est autorisé ou non mais que dans tous les cas, tu affiches tout (même si il n'est pas autorisé) ce qui me semble assez tordu donc moi non plus, je saisis pas la problématique

Hors ligne

 

#4 23-06-2008 13:20:36

stf
Membre
Date d'inscription: 03-04-2008
Messages: 156

Re: ACL plugin

ton script continue meme quand il n'a pas  les acces c'est ca ?

par exemple :

Header
"message autorisé"
Content
Footer

?

Hors ligne

 

#5 23-06-2008 13:41:40

whitespirit
Membre
Date d'inscription: 25-01-2008
Messages: 393

Re: ACL plugin

J'ai pas trop compris ce que tu veux, mais peut-être que tu devrais créer un controlleur/vue affichant ton message d'erreur. Du coup, dans ton plugin si l'utilisateur n'a pas l'autorisation afin d'accéder à une page, tu profites pour le rediriger vers ce controlleur/action/ et, ainsi tu pourras personnaliser cette page (lien vers précédent, redirection automatique vers la dernière pas visité, etc.).

Hors ligne

 

#6 23-06-2008 15:13:27

Tonio13006
Membre
Date d'inscription: 09-04-2008
Messages: 34

Re: ACL plugin

stf => oui c'est exactement ca...

j'aimerais pouvoir le pas afficher le contenu de ma vue, et simplement un message "vous n'avez pas accés a cette page <a href="">revenir à la page précedente</a>"

Hors ligne

 

#7 23-06-2008 16:14:17

stf
Membre
Date d'inscription: 03-04-2008
Messages: 156

Re: ACL plugin

tu peut faire une redirection lors de l'erreur vers une page(ou vue) dédiée pour ca , ou alors tu fait un die(), mais là tu n'aura pas ton footer big_smile

Hors ligne

 

#8 23-06-2008 18:19:00

fte
Membre
Lieu: 06 13 83
Date d'inscription: 16-05-2008
Messages: 112
Site web

Re: ACL plugin

Tu redifinie (override) bien le predispatch() du plugin ?

Hors ligne

 

#9 23-06-2008 21:51:10

Mr.MoOx
Administrateur
Lieu: Toulouse
Date d'inscription: 27-03-2007
Messages: 1444
Site web

Re: ACL plugin

Tout ce qu'il te faut est là http://julien-pauli.developpez.com/tuto … auth-http/
Et c'est rapide à mettre en place.
En gros si la personne n'a pas les droits, ca le redirige sur une autre action.

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages