fix for toc events
[wolnelektury.git] / src / infopages / views.py
index 4d1731f..3d1749f 100644 (file)
@@ -1,15 +1,18 @@
-# -*- coding: utf-8 -*-
-# This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later.
-# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
+# This file is part of Wolne Lektury, licensed under GNU Affero GPLv3 or later.
+# Copyright © Fundacja Wolne Lektury. See NOTICE for more information.
 #
-from django.shortcuts import render_to_response, get_object_or_404
+from django.shortcuts import render, get_object_or_404
 from django.template import RequestContext, Template, TemplateSyntaxError
 
 from infopages.models import InfoPage
 
 
 def infopage(request, slug):
-    page = get_object_or_404(InfoPage, slug=slug)
+    if request.user.is_staff:
+        page = get_object_or_404(InfoPage, slug=slug)
+    else:
+        page = get_object_or_404(InfoPage, slug=slug, published=True)
+
     rc = RequestContext(request)
     try:
         left_column = Template(page.left_column).render(rc)
@@ -21,8 +24,13 @@ def infopage(request, slug):
     except TemplateSyntaxError:
         right_column = ''
 
-    return render_to_response('infopages/infopage.html', {
-        'page': page,
-        'left_column': left_column,
-        'right_columns': right_column,
-    }, context_instance=RequestContext(request))
+    return render(
+        request,
+        'infopages/infopage.html',
+        {
+            'page': page,
+            'left_column': left_column,
+            'right_column': right_column,
+            'active_menu_item': f'info:{slug}',
+        }
+    )