From 16993004f2fb4142ab8ff1f2256253ebcf5d5b9d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jes=C3=BAs=20Espino?= Date: Wed, 1 Jul 2015 10:03:36 +0200 Subject: [PATCH] Issue#2993: Fix problem when upload a 0-bytes file --- app/coffee/modules/resources/attachments.coffee | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/app/coffee/modules/resources/attachments.coffee b/app/coffee/modules/resources/attachments.coffee index 327d10a4..af639ccd 100644 --- a/app/coffee/modules/resources/attachments.coffee +++ b/app/coffee/modules/resources/attachments.coffee @@ -48,6 +48,8 @@ resourceProvider = ($rootScope, $config, $urls, $model, $repo, $auth, $q) -> defered.reject(response) return defered.promise + xhr = new XMLHttpRequest() + uploadProgress = (evt) => $rootScope.$apply => file.status = "in-progress" @@ -64,7 +66,14 @@ resourceProvider = ($rootScope, $config, $urls, $model, $repo, $auth, $q) -> data = {} model = $model.make_model(urlName, data) - defered.resolve(model) + if xhr.status >= 200 and xhr.status < 400 + defered.resolve(model) + else + response = { + status: xhr.status, + data: {_error_message: JSON.parse(xhr.response)['attached_file']?[0]} + } + defered.reject(response) uploadFailed = (evt) => $rootScope.$apply -> @@ -76,7 +85,6 @@ resourceProvider = ($rootScope, $config, $urls, $model, $repo, $auth, $q) -> data.append("object_id", objectId) data.append("attached_file", file) - xhr = new XMLHttpRequest() xhr.upload.addEventListener("progress", uploadProgress, false) xhr.addEventListener("load", uploadComplete, false) xhr.addEventListener("error", uploadFailed, false)