Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 06-11-2009 17:16:33

slake13
Membre
Date d'inscription: 25-06-2009
Messages: 17

[1.9.4] Initialiser une variable de vue dans le bootstrap

Bonjour.

Je souhaite créer dans mon application un menu avec une gestion d'onglet. Chaque onglet correspondant à un controller. J'ai un helper qui me permet de générer tout le menu ainsi que de mettre la classe selected sur la balise <li> de l'onglet actif.

Le soucis c'est que pour éviter de répéter mon code et de recréer mon menu dans chaque controller, j'aimerai bien le créer dans le bootstrap et ensuite dans chaque controller je définis ma variable qui permet de savoir quel onglet sera actif.

Le problème c'est que je me perd un peu et je ne vois pas trop comment faire ça...

Bref après plusieurs recherche infructueuse je me tourne vers vous pour savoir comment initialiser une variable de vue dans le bootstrap, à moins que vous connaissez une autre méthode permettant de faire mon menu...

Hors ligne

 

#2 09-11-2009 10:28:58

nORKy
Membre
Date d'inscription: 06-03-2008
Messages: 1098

Re: [1.9.4] Initialiser une variable de vue dans le bootstrap

Moi, j'utilise Zend_Navigation pour générer mon menu avec onglet
Et j'ai directement coller dans mon layout :

Code:

<div class="navcontainer">
    <?= $this->navigation()->menu()->setIndent(4)->setMaxDepth(0);?>     
  </div> <!-- navcontainer -->

Le helper fait sont travailler en fonction et sait générer l'onglet sélectionner, les onglets à afficher ou non en fonction des ACLs

Par contre, pour bien gérer les ACls, j'ai inclus un petit bout de code dans mon bootstrap :

Code:

  protected function _initAcl()
  {
    $this->bootstrap('FrontController');
    $this->bootstrap('Session');
    $this->bootstrap('Db');
    $this->bootstrap('Navigation');
    
    $front = $this->getResource('FrontController');
    $acl    = new My_Acl();
    $nav   = $this->getResource('View')->Navigation();
    
    $nav->Menu()->setAcl($acl)->setRole(Zend_Auth::getInstance()->getIdentity());
    return $acl;
  }

----
Gruiiik !

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