1 from django
import template
2 from django
.utils
.safestring
import mark_safe
3 from django
.utils
.translation
import ugettext
as _
5 register
= template
.Library()
12 '/user/subscriptions/',
13 '/publisher/podcast/',
19 ('/login/', _('Login')),
20 ('/register/', _('Register')),
21 ('/online-help', _('Help')),
24 ('/subscriptions/', _('Subscriptions')),
25 ('/favorites/', _('Favorite Episodes')),
26 ('/history/', _('History')),
27 ('/suggestions/', _('Suggestions')),
30 ('/devices/', _('Overview')),
31 ('/device/', _('Device')),
33 (_('Podcast Directory'), (
34 ('/toplist/', _('Toplist')),
35 ('/search/', _('Search')),
36 ('/toplist/episodes', _('Episodes')),
37 ('/podcast/', _('Podcast')),
38 ('/user/subscriptions/', _('User subscriptions')),
41 ('/account/', _('Account')),
42 ('/account/privacy', _('Privacy')),
43 ('/share/', _('Sharing')),
46 ('/publisher/', _('Home')),
47 ('/publisher/link/', _('Link to gpodder.net')),
48 ('/publisher/podcast/', _('Podcast')),
53 def main_menu(selected
):
56 for label
, items
in MENU_STRUCTURE
:
57 uris
= [uri
for uri
, caption
in items
]
60 links
.append((items
[0][0], label
, uris
))
63 for uri
, caption
, subpages
in links
:
64 if selected
in subpages
or ('/' in subpages
and not found_section
):
65 items
.append('<li class="selected"><a href="%s">%s</a></li>' % \
68 items
.append('<li><a href="%s">%s</a></li>' % (uri
, caption
))
70 s
= '<ul class="menu primary">%s</ul>' % ('\n'.join(items
),)
73 def get_section_items(selected
):
74 for label
, items
in MENU_STRUCTURE
:
75 if selected
in (uri
for uri
, caption
in items
):
78 # If we arrive here, we cannot find the page items, so return a faked one
79 return list(MENU_STRUCTURE
[0][1]) + [
84 def section_menu(selected
, title
=None):
86 for uri
, caption
in get_section_items(selected
):
90 title
= title
[:33] + '...'
92 if uri
in HIDDEN_URIS
:
93 items
.append('<li class="selected">%s</li>' % caption
)
95 items
.append('<li class="selected"><a href="%s">%s</a></li>' % \
97 elif uri
not in HIDDEN_URIS
:
98 items
.append('<li><a href="%s">%s</a></li>' % (uri
, caption
))
100 s
= '<ul class="menu secondary">%s</ul>' % ('\n'.join(items
),)