]> git.parisson.com Git - teleforma.git/commitdiff
views: avoid Document read by django, use serve_media with X-Accel instead
authorGuillaume Pellerin <yomguy@parisson.com>
Tue, 30 Jun 2020 22:13:03 +0000 (22:13 +0000)
committerGuillaume Pellerin <yomguy@parisson.com>
Tue, 30 Jun 2020 22:13:03 +0000 (22:13 +0000)
teleforma/templates/teleforma/course_detail.html
teleforma/templates/teleforma/courses.html
teleforma/views/core.py

index 575f3095496e0b6cb44588e65298e3dd185a7f94..7233546653f561af6e205a9c20c09cdb5b8bd305 100644 (file)
 {% endif %}
 
 {% newsitems_portlet course_id=course.id period_id=period.id %}
-{% endblock chat %}
\ No newline at end of file
+{% endblock chat %}
index 112cd3ae670645713f52c8bdc4a44a6bca0ca15c..5ca73edb0d464e5808655ec829a992a4ee38b139 100644 (file)
@@ -13,7 +13,6 @@
 </script>
 {% endblock extra_javascript %}
 
-
 {% block content %}
 
 <div id="module-set-left" style="width: 18%">
 
 </div>
 
-{% endblock content %}
\ No newline at end of file
+{% endblock content %}
index f56174c7f559fd57951833d778f125316b53b350..87d50a5df197bcfec53055fe96baa719aaf8c796 100644 (file)
@@ -592,13 +592,14 @@ class DocumentView(CourseAccessMixin, DetailView):
         courses = get_courses(request.user)
         document = Document.objects.get(pk=pk)
         if get_access(document, courses):
-            fsock = open(document.file.path.encode('utf8'), 'r')
-            mimetype = mimetypes.guess_type(document.file.path)[0]
-            extension = mimetypes.guess_extension(mimetype)
-            response = HttpResponse(fsock, mimetype=mimetype)
-            response['Content-Disposition'] = "attachment; filename=%s%s" % \
-                                             (document.title.encode('utf8'), extension)
-            return response
+            return serve_media(document.file.path.encode('utf8'), streaming=False) 
+            #fsock = open(document.file.path.encode('utf8'), 'r')
+            #mimetype = mimetypes.guess_type(document.file.path)[0]
+            #extension = mimetypes.guess_extension(mimetype)
+            #response = HttpResponse(fsock, mimetype=mimetype)
+            #response['Content-Disposition'] = "attachment; filename=%s%s" % \
+            #                                 (document.title.encode('utf8'), extension)
+            #return response
         else:
             return redirect('teleforma-home')
 
@@ -606,11 +607,12 @@ class DocumentView(CourseAccessMixin, DetailView):
         courses = get_courses(request.user)
         document = Document.objects.get(pk=pk)
         if get_access(document, courses):
-            fsock = open(document.file.path.encode('utf8'), 'r')
-            mimetype = mimetypes.guess_type(document.file.path)[0]
-            extension = mimetypes.guess_extension(mimetype)
-            response = HttpResponse(fsock, mimetype=mimetype)
-            return response
+            return serve_media(document.file.path.encode('utf8'), streaming=True) 
+            #fsock = open(document.file.path.encode('utf8'), 'r')
+            #mimetype = mimetypes.guess_type(document.file.path)[0]
+            #extension = mimetypes.guess_extension(mimetype)
+            #response = HttpResponse(fsock, mimetype=mimetype)
+            #return response
         else:
             return redirect('teleforma-home')