In a function I set up the following menu:
def menu():
session.site_menu=[
['Home',request.controller=='site' and
request.function=='index',URL('site','index',args=session.id)]]
if session.wh:
session.site_menu.append(['Over
ons',request.controller=='whQ',URL('whQ','index',args=session.id)])
if session.cal:
session.site_menu.append(['Agenda',request.controller=='calendar',URL('calendar','index',args=session.id)])
session.AgendaDropdown=[]
if session.cal.opening_hours:
session.AgendaDropdown.append(['Openingstijden',request.function=='openingHours',\
URL('calendar','openingHours',args=session.id)])
if session.cal.event_list:
session.AgendaDropdown.append(['Event
list',request.function=='eventList',\
URL('calendar','eventList',args=session.id)])
if session.cal.timetable:
session.AgendaDropdown.append(['Lesrooster',request.function=='timetable',\
URL('calendar','timetable',args=session.id)])
if session.cal.course_table:
session.AgendaDropdown.append(['Cursusrooster',request.function=='courseTable',\
URL('calendar','courseTable',args=session.id)])
return None
In a menu view I am trying to get this to work:
<ul class="nav">
{{for _name,_active,_link in session.site_menu:}}
{{if 'session.%sDropdown' %_name:}}
<li class="dropdown" {{if _active:}} class="active" {{pass}}>
<a href="" class="dropdown-toggle"
data-toggle="dropdown">{{=_name}}
<b class="caret"></b></a>
<ul class="dropdown-menu">
{{for _name,_active,_link in 'session.%sDropdown' %_name:}}
<li {{if _active:}} class="active" {{pass}}>
<a href="{{=_link}}">{{=_name}}</a>
</li>
{{pass}}
<ul>
</li>
{{else:}}
<li {{if _active:}} class="active" {{pass}}>
<a href="{{=_link}}">{{=_name}}</a>
</li>
{{pass}}
{{pass}}
</ul>
The problem is that this doesn't work:
{{if 'session.%sdropdown' %_name:}}
It should be rendered into:
{{if session.AgendaDropdown:}}
What is the correct syntax to get this to work.
Kind regards,
Annet