]> git.sommitrealweird.co.uk Git - sommitrealweird.git/blobdiff - sommitrealweird/bpcms/views.py
Changes for django 2.2
[sommitrealweird.git] / sommitrealweird / bpcms / views.py
index fd23428a89498c5816674696c956ddeb697fa0ad..e0087c86ad5aa26a4eb14f4a959bb0428aaaab63 100644 (file)
@@ -1,6 +1,8 @@
-from bpcms.models import Document, Folder
+from bpcms.models import CSSDocument, Document, Folder
 from django.http import Http404, HttpResponse
+from django.shortcuts import render
 from django.template import RequestContext, loader
+import sys
 
 def document_view(request, slug=None, folders=None):
     if folders == None and slug == None:
@@ -27,7 +29,7 @@ def document_view(request, slug=None, folders=None):
 
     if folder != None:
         try:
-            if not request.user.is_authenticated():
+            if not request.user.is_authenticated:
                 doc = Document.objects.get(slug__exact=slug, islive__exact=True, folder__exact=folder)
             else:
 
@@ -43,11 +45,12 @@ def document_view(request, slug=None, folders=None):
                 raise Http404
     else:
         try:
-            if not request.user.is_authenticated():
+            if not request.user.is_authenticated:
                 doc = Document.objects.get(slug__exact=slug, islive__exact=True, folder__isnull=True)
             else:
                 doc = Document.objects.get(slug__exact=slug, folder__isnull=True)
         except:
+            sys.stderr.write("Unexpected error:", sys.exc_info()[0])
             try:
                 folder = Folder.objects.get(slug__exact=slug, parent__isnull=True)
                 if not request.user.is_authenticated():
@@ -57,10 +60,17 @@ def document_view(request, slug=None, folders=None):
             except:
                 raise Http404
     template_name = "bpcms/%s.html" %(doc.format,)
-    t = loader.get_template(template_name)
-    c = RequestContext(request,
-        {
+    c = {
             "content"   : doc.content,
             "title"     : doc.title,
-        })
-    return HttpResponse(t.render(c))
+            "extracss"  : doc.extracss.all(),
+        }
+    return render(request, template_name, c)
+
+def css_view(request, slug):
+    cssdoc = CSSDocument.objects.get(slug=slug)
+    if not cssdoc:
+        raise Http404()
+
+    return HttpResponse(cssdoc.content, content_type="text/css")
+