Routovani – Submenu zvyraznenie polozky

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

Ahojte s nette len zacinam tak ma hned neukamenujte :) , snazim sa vyriesit problem s overenim url

overujem v menu ci je polozka submenu zvolena alebo nie

if($this->isLinkCurrent(„$value[nazov_url]:$subvalue[nazov_url]“))
{
$nav->setCurrentNode($submenu_list);
 }

vsetko fuguje ako ma ale akonahle pridam routu

$router[] = new Route(‚informacie[/<krajina>][/<mesto>][/<id>]‘, ‚informacie:krajina‘);

tak mi prestane zvyraznovat submenu, namiesto informacie/cesko hlada informacie/krajina

da sa nastavit routing az po ,,vygenerovani" menu ?

dakujem za kazdu radu

Editoval shepdog (28. 2. 2013 8:48)

Jan Mikeš
Člen | 771
+
0
-

Protoze v $isLinkCurrent() hledas action $subvalue[nazov_url] ale action ti porad zustava krajina, zkus pouzit nasledujici kod:

if($this->isLinkCurrent("$value[nazov_url]:krajina", array("krajina" => $subvalue[nazov_url]))
{
	$nav->setCurrentNode($submenu_list);
}
shepdog
Člen | 2
+
0
-

to je fajn ale mam aj podstranky ako

spolocnost/info
aktuality/zoznam

vtedy znova prestane fungovat zvyraznenie submenu

if($this->isLinkCurrent(„$value[nazov_url]:krajina“, array(„krajina“ ⇒ $subvalue[nazov_url]))
{
$nav->setCurrentNode($submenu_list);
}

cez htaccess to viem spravit ale na to predsa sluzi routa nie ?

Jan Mikeš
Člen | 771
+
0
-

Ukaz jak vypada tve menu v sablone. Pravdepodobne si budes muset cele menu muset generovat rucne a ne dynamicky.

Slo by to vse narvat i do jedne podminky, ale ta podminka by byla hooodne hooooodne dlouha.

Napr:

if(
	( $this->name == "Informace" && $this->isLinkCurrent("Informace:krajina", array("krajina" => $subvalue[nazov_url]) )
	|| ( $this->name == "Spolecnost" && $this->isLinkCurrent("Spolecnost:info", array("info" => $subvalue[nazov_url]) )
	|| // dalsi presenter
	|| // dalsi presenter
)
{
	$nav->setCurrentNode($submenu_list);
}

Je tezke hadat kdyz netusim jakou komponentu pouzivas atd, kazdopadne asi neni neco v poradku s navrhem.

Mozna by pomohlo kdyby volitelny URL parametr mel ve vsech presenterech stejny nazev a ne jednou info, jednou nazov_url,.. pak by jsi mohl pouzit spolecnou routu

Editoval Lexi (28. 2. 2013 12:46)

Šaman
Člen | 2666
+
0
-

Používáš presentery? A odpovídají ty adresy struktuře presenter/action? Pak není problém zvýraznit u všech akcích presenteru i ten presenter.

Editoval Šaman (28. 2. 2013 13:52)