[Backport] Issue#2993: Fix problem when upload a 0-bytes file
parent
829c69c501
commit
c82841a39a
|
@ -48,6 +48,8 @@ resourceProvider = ($rootScope, $config, $urls, $model, $repo, $auth, $q) ->
|
||||||
defered.reject(response)
|
defered.reject(response)
|
||||||
return defered.promise
|
return defered.promise
|
||||||
|
|
||||||
|
xhr = new XMLHttpRequest()
|
||||||
|
|
||||||
uploadProgress = (evt) =>
|
uploadProgress = (evt) =>
|
||||||
$rootScope.$apply =>
|
$rootScope.$apply =>
|
||||||
file.status = "in-progress"
|
file.status = "in-progress"
|
||||||
|
@ -64,7 +66,14 @@ resourceProvider = ($rootScope, $config, $urls, $model, $repo, $auth, $q) ->
|
||||||
data = {}
|
data = {}
|
||||||
|
|
||||||
model = $model.make_model(urlName, 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) =>
|
uploadFailed = (evt) =>
|
||||||
$rootScope.$apply ->
|
$rootScope.$apply ->
|
||||||
|
@ -76,7 +85,6 @@ resourceProvider = ($rootScope, $config, $urls, $model, $repo, $auth, $q) ->
|
||||||
data.append("object_id", objectId)
|
data.append("object_id", objectId)
|
||||||
data.append("attached_file", file)
|
data.append("attached_file", file)
|
||||||
|
|
||||||
xhr = new XMLHttpRequest()
|
|
||||||
xhr.upload.addEventListener("progress", uploadProgress, false)
|
xhr.upload.addEventListener("progress", uploadProgress, false)
|
||||||
xhr.addEventListener("load", uploadComplete, false)
|
xhr.addEventListener("load", uploadComplete, false)
|
||||||
xhr.addEventListener("error", uploadFailed, false)
|
xhr.addEventListener("error", uploadFailed, false)
|
||||||
|
|
Loading…
Reference in New Issue