Navigation, nastavení aktuální stránky

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Mesiah
Člen | 240
+
0
-

Dobrý den,

prosím Vás, mám problém s komponentou Navigation od Honzi Marka. Můj problém je následující:
v BasePresenteru vytvořím menu, to je v pořádku. Ale teďkom, když chci nastavit aktuální položku v jiném presenteru, který dědí od BasePresenteru, tak nevím, jak „vydolovat“ ten správný objekt a předat jej instanci Navigation.
Příklad:

<?php
$navigation = new Navigation($this, $name);

		// nastavení homepage
		$navigation->setupHomepage('Domů', $this->link(':Front:Homepage:'));
		// generování skupin
		foreach ($this->groups->getGroups() as $group)
		{
			// pridam skupinu do menu
			$menuGroup = $navigation->add($group->name, $this->link(':Front:article:showGroup', array('id' => $group->id)));
			// vygeneruji kategorie pod skupinou
			foreach ($this->categories->getCategories()->where('[id_group] = %i', $group->id) as $category)
			{
				// pridam kategorii do menu
				$menuCategory = $menuGroup->add($category->name, $this->link(':Front:article:showCategory', array('id' => $category->id)));
			}
		}
?>

tímto jsem vygeneroval menu v BasePresenteru a teďkom v ArticlePresenteru chci udělat v podstatě $navigation->setCurrent(...jak zjískám instanci správné skupiny/kategorie..?) lineárně procházet a testovat se mi zdá neefektivní, tím spíše, když přidám za kategorii seznam článků…
Jak to prosím řešíte vy?

Filip Procházka
Moderator | 4668
+
0
-

ono to neumí poznat samo?

Mesiah
Člen | 240
+
0
-

Mělo by umět? U mě se to tak alespoň nechová, kdyby se to tak chovalo, tak bych to měl poznat alespoň na menu, ne?

E: Ne, tak to samo poznat neumí. Takže nápady k tomu, jak řešit mou situaci?

Editoval Mesiah (28. 9. 2010 15:46)