X-Git-Url: http://mmka.chem.univ.gda.pl/gitweb/?a=blobdiff_plain;f=filex%2Fviews.py;h=ada8b7b1d43e91b6c5d436c81565819d3c36611d;hb=53b5d55ae94941e7621982e56438025527fa2950;hp=1904d4f91a6b52679ff421f0a5ae4f55c6231ec6;hpb=50ea4b8539cffc10de1342d696b7b9a184c1a89c;p=qcg-portal.git diff --git a/filex/views.py b/filex/views.py index 1904d4f..ada8b7b 100644 --- a/filex/views.py +++ b/filex/views.py @@ -9,6 +9,7 @@ from django.http import JsonResponse, StreamingHttpResponse from django.shortcuts import get_object_or_404, render from django.template.defaultfilters import filesizeformat from django.utils.formats import date_format +from django.utils.http import urlquote from django.views.decorators.http import require_POST from django.views.generic import View @@ -112,7 +113,7 @@ class DeleteView(FTPView): for path in params['dirs']: try: - ftp.rmdir(url + path) + ftp.rmdir(url + urlquote(path)) except FTPError as e: fail[path] = e.message else: @@ -120,7 +121,7 @@ class DeleteView(FTPView): for path in params['files']: try: - ftp.delete(url + path) + ftp.delete(url + urlquote(path)) except FTPError as e: fail[path] = e.message else: @@ -178,7 +179,8 @@ class ExtractView(FTPView): def make_url(params, *parts): - return 'gsiftp://{}/{}'.format(params['host'], os.path.join(*[params[part] for part in parts]) if parts else '') + return 'gsiftp://{}/{}'.format(params['host'], + urlquote(os.path.join(*[params[part] for part in parts]), safe='/~') if parts else '') @require_POST