Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour,
Je génère mon menu grâce à un xml.
Tout fonctionne parfaitement (droits,affichage...) mais si je veux trier mon menu à l'affichage en fonction des droits, ça coince...
J'utilise
$view->navigation($navContainer)->setAcl($this->_acl)->setRole($this->_auth->getStorage()->read()->role);
Mais je ne sais pas quoi mettre dans le xml....Il ya bien une balse
<resource>
mais ça ne marche pas, ou alors je l'utilise mal.
Voici mon Xml
<config> <nav> <user> <label>USERS</label> <uri>#</uri> <pages> <list> <label>Liste</label> <controller>user</controller> <action>listuser</action> <resource>user</resource> </list> <add> <label>Ajouter</label> <controller>user</controller> <action>add</action> <resource>user</resource> </add> </pages> </user> </nav> </config>
et ma classe qui gère les Acl
$this->add(new Zend_Acl_Resource('index')); $this->add(new Zend_Acl_Resource('user')); $this->add(new Zend_Acl_Resource(array('delete','modify','add','index','listuser'),'user')); $this->addRole(new Zend_Acl_Role('user')); $this->addRole(new Zend_Acl_Role('admin'),'user'); $this->allow('user', 'index'); $this->allow('user', 'user', array('index','listuser')); $this->allow('admin', 'user', array('delete','modify','add'));
Je ne sais vraiment pas comment faire....Si quelqu'un peut m'aider....
Merci d'avance
Hors ligne
Hello,
En plus de label, controller, module et action tu as aussi, dédié au acl :
resource et privilege
Donc comme tu le fais, il faut définir les ressources disponible (celle que tu vas mettre dans <resource></resource>) (toute doivent être déclarée) ensuite comme tu le fait tu marque quel rôle à accès ou non a quel ressource avec quel privilège (si privilège).
Maintenant, je ne sais pas où est ton problème.
Si c'est pour bloquer l'accès a une page il te faut définir ton propre plugin
class My_Controller_Plugin_Acl extends Zend_Controller_Plugin_Abstract
{
public function preDispatch(Zend_Controller_Request_Abstract $request)
{
// ici tu redirige vers une page de refus d'accès si on autorise pas l'accès aux pages
}
}
Hors ligne
Mon problème est que je ne sais pas ce qu'il faut mettre comme infos dans la balise <ressource> de mon xml....
Dès que je l'utilise elle efface le menu que j'ai les droits ou non.
Hors ligne
Je me répond à moi même......
J'ai trouvé l'origine du problème. En fait c'était juste une mauvaise gestion des droits de ma part.
Merci grummfy pour ton aide.
Hors ligne