data.context.find('.progress-info').text('Zakończono');
},
fail: function (e, data) {
- data.context.find('.progress-info').text('Błąd');
+ data.context.find('.progress-info').text((data.jqXHR.responseJSON || {}).error || 'Błąd');
console.error(data);
}
});
'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
+ 'qcg.middleware.FTPMiddleware',
)
TEMPLATE_CONTEXT_PROCESSORS = global_settings.TEMPLATE_CONTEXT_PROCESSORS + (
--- /dev/null
+from django.http import JsonResponse
+
+from filex.ftp import FTPException
+
+
+class FTPMiddleware(object):
+ def process_exception(self, request, exception):
+ if isinstance(exception, FTPException):
+ message = exception.message
+ status = 400
+
+ if 'No such file or directory' in message:
+ status = 404
+ elif 'Permission denied' in message:
+ status = 403
+
+ return JsonResponse({'error': message}, status=status)