X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/5913c54d19b8f6775633176032161d49f9b2f1aa..1d5395d0e29c482f1060be3d7def7aff15752014:/src/fileupload/views.py?ds=sidebyside diff --git a/src/fileupload/views.py b/src/fileupload/views.py index a2025fe7..56a198ed 100644 --- a/src/fileupload/views.py +++ b/src/fileupload/views.py @@ -1,10 +1,12 @@ +# This file is part of FNP-Redakcja, licensed under GNU Affero GPLv3 or later. +# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information. +# import json import os -from urllib import quote +from urllib.parse import quote from django.conf import settings from django.http import HttpResponse, HttpResponseRedirect, HttpResponseForbidden, Http404 from django.utils.decorators import method_decorator -from django.utils.encoding import smart_bytes from django.views.decorators.vary import vary_on_headers from django.views.generic import FormView, View from .forms import UploadForm @@ -75,10 +77,9 @@ class UploadView(FormView): Makes sure it's inside MEDIA_ROOT. """ - filename = smart_bytes(filename) path = os.path.abspath(os.path.join( settings.MEDIA_ROOT, - smart_bytes(self.get_directory()), + self.get_directory(), filename)) if not path.startswith(settings.MEDIA_ROOT): raise Http404 @@ -131,7 +132,7 @@ class UploadView(FormView): os.makedirs(path) data = [] for f in flist: - with open(self.get_safe_path(f.name), 'w') as destination: + with open(self.get_safe_path(f.name), 'wb') as destination: for chunk in f.chunks(): destination.write(chunk) data.append({