Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
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 :
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
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
ton script continue meme quand il n'a pas les acces c'est ca ?
par exemple :
Header
"message autorisé"
Content
Footer
?
Hors ligne
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
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
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
Hors ligne
Tu redifinie (override) bien le predispatch() du plugin ?
Hors ligne
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