+from functools import wraps
+
from django.core.files.uploadedfile import UploadedFile
from django.core.files.uploadhandler import FileUploadHandler, StopUpload, StopFutureHandlers
+from django.views.decorators.csrf import csrf_exempt, csrf_protect
from filex.ftp import FTPOperation
return UploadedFile(name=self.file_name, size=file_size, charset=self.charset,
content_type=self.content_type, content_type_extra=self.content_type_extra)
+
+
+def with_ftp_upload_handler(view_func):
+ @wraps(view_func)
+ def wrapped_view(request, *args, **kwargs):
+ request.upload_handlers = [FtpUploadHandler(request)]
+
+ return csrf_protect(view_func)(request, *args, **kwargs)
+
+ return csrf_exempt(wrapped_view)