Alias management.
[cas.git] / src / emails / templatetags / emails.py
1 from django.template import Library
2 from emails.models import Alias
3
4
5 register = Library()
6
7
8 @register.simple_tag(takes_context=True)
9 def use_email(context):
10     user = context['request'].user
11     if user.is_anonymous: return False
12     return user.groups.filter(name='e-mail').exists()
13
14
15 @register.inclusion_tag('emails/list_aliases.html', takes_context=True)
16 def list_aliases(context, emails):
17     if isinstance(emails, str):
18         emails = [emails]
19     admin_links = context.get('admin_links', context['request'].user.has_perm('emails.can_change_alias'))
20     return {
21         "admin_links": admin_links,
22         "aliases": [a.source for a in Alias.objects.filter(destination__in=emails)],
23         "request": context['request'],
24     }