5bc7b4b3ede35455984bb1a22b77128775eed582
[wolnelektury.git] / src / infopages / views.py
1 # This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later.
2 # Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
3 #
4 from django.shortcuts import render, get_object_or_404
5 from django.template import RequestContext, Template, TemplateSyntaxError
6
7 from infopages.models import InfoPage
8
9
10 def infopage(request, slug):
11     page = get_object_or_404(InfoPage, slug=slug)
12
13     rc = RequestContext(request)
14     try:
15         left_column = Template(page.left_column).render(rc)
16     except TemplateSyntaxError:
17         left_column = ''
18
19     try:
20         right_column = Template(page.right_column).render(rc)
21     except TemplateSyntaxError:
22         right_column = ''
23
24     return render(
25         request,
26         'infopages/infopage.html',
27         {
28             'page': page,
29             'left_column': left_column,
30             'right_column': right_column,
31             'active_menu_item': f'info:{slug}',
32         }
33     )