25293f1ca272c8feedfe41bcbe176aac2fefd28d
[wolnelektury.git] / src / annoy / templatetags / annoy.py
1 from django import template
2 from ..models import Banner
3 from ..places import PLACES
4
5
6 register = template.Library()
7
8
9 @register.inclusion_tag('annoy/banner.html', takes_context=True)
10 def annoy_banner(context, place):
11     banners = Banner.choice(place, request=context['request'])
12     return {
13         'banner': banners.first(),
14         'closable': PLACES.get(place, False),
15     }
16
17 @register.inclusion_tag('annoy/banner_blackout.html', takes_context=True)
18 def annoy_banner_blackout(context):
19     banners = Banner.choice('blackout', request=context['request'])
20     return {
21         'banner': banners.first(),
22         'closable': True,
23     }
24
25 @register.inclusion_tag('annoy/banner_top.html', takes_context=True)
26 def annoy_banner_top(context):
27     banners = Banner.choice('top', request=context['request'])
28     return {
29         'banner': banners.first(),
30         'closable': True,
31     }
32
33 @register.inclusion_tag('annoy/banners.html', takes_context=True)
34 def annoy_banners(context, place):
35     return {
36         'banners': Banner.choice(place, request=context['request']),
37         'closable': PLACES.get(place, False),
38     }
39
40
41 @register.inclusion_tag('annoy/banner_crisis.html', takes_context=True)
42 def annoy_banner_crisis(context):
43     banners = Banner.choice('crisis', request=context['request'], exemptions=False)
44     return {
45         'banner': banners.first(),
46         'closable': True,
47     }