menu

Vygeneruje menu (verze => 1.0)

Funkce vygeneruje menu stránek. Do menu jsou zahrnuty všechny aktivní stránky/články, které jsou stromově podřazené úvodní stránce dané jazykové verze a mají nastavený parametr „Zobrazit v menu“ na Ano.

Menu je generováno jako seznam (<ul><li>). Pro snadné formátování je každé položce menu přiděleno několik tříd, které umoňují pomocí css např. překrýt texty obrázkem, přidat šipku položkám, které mají podřazené potomky apod. Více viz tabulka Třídy použité v menu.

Parametry funkce

Proměnná Popis Výchozí
openedonly (boolean) Je-li tento parametr nastaven na true, zobrazí v menu pouze ty položky, které jsou otevřené, tzn. že se nezobrazí ty části stromu dokumentů, které jsou mimo právě pročítanou větev. false
startlevel (int) Úroveň, od které se zobrazuje menu. Toho lze využít k vytvoření lokálních nabídek. Je-li např. startlevel=1, zobrazí se pouze jméno stránky na 1 úrovni a stránky jí podřazené. 0
maxlevel (int) Maximální počet úrovní, které se mají zobrazit (pokud je maxlevel=0, zobrazí se všechny úrovně) 0
useshort (boolean) Je-li true, v menu se použijí krátká jména stránek (pokud jsou definována). To je většinou vhodné, protože položky menu většinou mají omezenou šířku a tím pádem chceme omezit délku názvů na nezbytné minimum. true
selflink (boolean) Je-li selflink nastaven na true zobrazí se v menu i aktivní stránka jako funkční odkaz. Je-li nastavení false (doporučeno), aktivní stránka nebude aktivním odkazem. (V rámci přehlednosti není doporučeno odkazovat stránku samu na sebe). false
showhome (boolean) Je-li true, zahrne do menu i odkaz na úvodní stránku (dané jazykové verze). true
id (text) Identifikátor tagu <div> do kterého je menu uzavřeno. Menu

Třídy (class) použité v menu

Proměnná Popis
unikátní třida Každá položka menu má jednu unikátní třídu, která se generuje z „aliasu“ (adresy) stránky. Stránka, jejíž alias (adresa) je cs/cms-kod/menu bude mít třídu cs_cms-kod_menu (tozn. že lomítka / se převedou na podržítka _)
Home Tuto třídu má nastavenou úvodní stránka dané jazykové verze
Active/Inactive Třída se přiřadí aktivní/neaktivní položce (to znamená, že Active může být v menu pouze jedna stránka).
Sub/NoSub Kromě hlavní stránky mají všechny ostatní nastaven Sub nebo NoSub, podle toho, jestli jsou jim podřazeny další stránky. Sub tudíž znamená, že stránka má „potomky“, NoSub znamená, že daná stránka potomky nemá.
First/Last První a poslední položka každé úrovně seznamu má přidánu ještě speciální třídu, pomocí které je lze snadno nastylovat (například přidat obrázek se zaoblením rámečku u první položky seznamu 2. úrovně; od verze 1.2)

Výše uvedené třídy jsou přiřazeny tagům <li> a <a> (u neaktivních odkazů tagu <span>). Kromě toho je ještě do každého <a> (potažmo <span>) přidán prázdný <span>, který umožňuje případné překrytí odkazu obrázkem. Jeden řádek menu pak může vypadat např. následovně:

<li class="cs_zakladni-informace NoSub Inactive"><a href="/cs/zakladni-informace" title="Základní informace" class="cs_zakladni-informace NoSub Inactive">Základní informace<span></span></a></li>

Příklad

menu
  // Vypíše kompletní menu se všemi aktivními položkami, aktuální dokument není odkazem
menu ("startlevel=1|maxlevel=2|openedonly")
  // Vypíše pouze otevřené položky od 1. úrovně dále, maximálně však 2 úrovně.