1fb1a2eabf5967fc339d71d1d49b68358d04d0d0
[redakcja.git] / apps / wiki / templatetags / wiki.py
1 from __future__ import absolute_import
2
3 from django.core.urlresolvers import reverse
4 from django.template.defaultfilters import stringfilter
5 from django import template
6 from django.utils.translation import ugettext as _
7
8
9 register = template.Library()
10
11
12 class Tab(object):
13     slug = None
14     caption = None
15     url = None
16
17     def __init__(self, slug, caption, url):
18         self.slug = slug
19         self.caption = caption
20         self.url = url
21
22
23 @register.inclusion_tag("wiki/main_tabs.html", takes_context=True)
24 def main_tabs(context):
25     active = getattr(context['request'], 'wiki_active_tab', None)
26
27     tabs = []
28     user = context['user']
29     if user.is_authenticated():
30         tabs.append(Tab('my', _('Assigned to me'), reverse("wiki_user")))
31
32     tabs.append(Tab('unassigned', _('Unassigned'), reverse("wiki_unassigned")))
33     tabs.append(Tab('users', _('Users'), reverse("wiki_users")))
34     tabs.append(Tab('all', _('All'), reverse("wiki_document_list")))
35     tabs.append(Tab('create', _('Add'), reverse("wiki_create_missing")))
36     tabs.append(Tab('upload', _('Upload'), reverse("wiki_upload")))
37
38     if user.is_staff:
39         tabs.append(Tab('admin', _('Admin'), reverse("admin:index")))
40
41     return {"tabs": tabs, "active_tab": active}