style
[redakcja.git] / apps / catalogue / templatetags / catalogue.py
1 # -*- coding: utf-8 -*-
2 from __future__ import absolute_import
3
4 from django.core.urlresolvers import reverse
5 from django import template
6 from django.utils.translation import ugettext as _
7
8 register = template.Library()
9
10
11 class Tab(object):
12     slug = None
13     caption = None
14     url = None
15
16     def __init__(self, slug, caption, url):
17         self.slug = slug
18         self.caption = caption
19         self.url = url
20
21
22 @register.inclusion_tag("catalogue/main_tabs.html", takes_context=True)
23 def main_tabs(context):
24     active = getattr(context['request'], 'catalogue_active_tab', None)
25
26     tabs = []
27     user = context['user']
28     tabs.append(Tab('my', _('My page'), reverse("catalogue_user")))
29
30     tabs.append(Tab('activity', _('Activity'), reverse("catalogue_activity")))
31     tabs.append(Tab('all', _('All'), reverse("catalogue_document_list")))
32     tabs.append(Tab('users', _('Users'), reverse("catalogue_users")))
33
34     if user.has_perm('catalogue.add_book'):
35         tabs.append(Tab('create', _('Add'), reverse("catalogue_create_missing")))
36
37     return {"tabs": tabs, "active_tab": active}
38
39
40 @register.filter
41 def nice_name(user):
42     return user.get_full_name() or user.username