Frequently Asked Questions v2 |
FAQ Main / Answer Detail |
two level menu view
Author: Michael Moritz mimo_at_gn.apc.org |
|
This example uses 1 view, 3 categories, and 2 levels of constants. The catgories are not important but maybe you like to use them so I left them in there.
The view below manages a two level side bar menu. It highlights the branch you are in and the (sub)item you have selected. Example can be seen here http://pi.gn.apc.org
The constants are used as the menu entries. You have to use hierarchical constants and define the constants like this:
Level 0: Name Value Terrorism Terrorism Policy Policy ... Level 1: Name Value Politics of Terrorism Terrorism::Politics of Terrorism Defining Terrorism and Emergencies Terrorism::Terrorism and Emergencies IGOs and Laundering Policy Policy::IGOs and Laundering Policy ...
Now create a new constants view Paste the text below into Odd Rows. Set the Group by to "Value Select" the hierarchical constant group created above View 342 is the listing view I use to display items from my slice.
The slice has 3 categories. This menu only manages the selection of the first category (category........) which is set to use the constant group created above. Further it's first confition is set to LIKE (name of category........). You will have to replace 342 in the text below with your listing view. You can leave away most of the {country}-stuff. To work this just needs {theme} and {_parent_}.
TODO: use better names for the aliases. 'theme' and 'country' might be substrings in the constants. That would cause havoc! All left to do now is to create your style sheet. Have fun!
----------SNIP SNIP----------
{switch({_#LEVEL##_})0:<br> {switch({theme}).*theme.*: <div class="constView_ContentThemes_ListEntry"> :{_#NAME###_}.*: <div class="constView_ContentThemes_ListEntry_Hl"> :<div class="constView_ContentThemes_ListEntry{switch({_parent_}){_#NAME###_}.*:_Hl}"> } <a href="/index.shtml?cmd[342][]=c-1-{_#NAME###_}&als[theme]={_#NAME###_}&conds[1][category........]={_#NAME###_}{switch({_#VALUE##_}){theme}.*:&als[_parent_]={theme}}{switch({country}).*country.*::&cmd[342][]=c-3-{country}&als[country]={country}&conds[3][category.......2]={country}}" class="constView_ContentThemes_ListEntry_link">_#NAME###_</a> </div> :1:<!--{theme}--_#VALUE##_--_#NAME###_--> {switch({_parent_}).*_parent_.*: {switch({theme}).*theme.*:: {switch({_#VALUE##_}){theme}.*:<div class="constView_ContentThemes_SubListEntry{switch({theme}){_#NAME###_}.*:_Hl}"><a href="/index.shtml?cmd[342][]=c-1-{_#NAME###_}&als[theme]={_#NAME###_}&conds[1][category........]={_#NAME###_}&als[_parent_]={theme}{switch({country}).*country.*::&cmd[342][]=c-3-{country}&als[country]={country}&conds[3][category.......2]={country}}" class="constView_ContentThemes_SubListEntry_link">{_#NAME###_}</a></div>} } :{switch({theme}).*theme.*:: {switch({_#VALUE##_}){_parent_}.*:<div class="constView_ContentThemes_SubListEntry{switch({theme}){_#NAME###_}.*:_Hl}"><a href="/index.shtml?cmd[342][]=c-1-{_#NAME###_}&als[theme]={_#NAME###_}&conds[1][category........]={_#NAME###_}&als[_parent_]={_parent_}{switch({country}).*country.*::&cmd[342][]=c-3-{country}&als[country]={country}&conds[3][category.......2]={country}}" class="constView_ContentThemes_SubListEntry_link">{_#NAME###_}</a></div>} } } }
----------SNIP SNIP----------
Last Edit: Aug 17 2011
<aafaq id=2076> ~ToDo: 2076 two level menu view </aafaq>
This FAQ interface was developed by Jason at Commons.ca
|
APC
ActionApps is a free software content management system initiated by
the Association for Progressive Communications (APC) APC - Internet and ICTs for social justice and development |