diff options
author | Paul Slaughter <pslaughter@gitlab.com> | 2018-09-03 07:46:20 +0300 |
---|---|---|
committer | Paul Slaughter <pslaughter@gitlab.com> | 2018-09-06 17:41:50 +0300 |
commit | 0343971455b2e176a6b3a3ba799fcae8e7a2a2ef (patch) | |
tree | 0cd42acc2aa6973d3494010f6678f0495fd2b196 /app/assets/javascripts/dropzone_input.js | |
parent | 46f481661511cec49ed94e8901252dd7db988d72 (diff) |
Fix error message handling in dropzone_input
Diffstat (limited to 'app/assets/javascripts/dropzone_input.js')
-rw-r--r-- | app/assets/javascripts/dropzone_input.js | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/app/assets/javascripts/dropzone_input.js b/app/assets/javascripts/dropzone_input.js index 68ffdd9056c..07a25bc62eb 100644 --- a/app/assets/javascripts/dropzone_input.js +++ b/app/assets/javascripts/dropzone_input.js @@ -7,6 +7,19 @@ import axios from './lib/utils/axios_utils'; Dropzone.autoDiscover = false; +/** + * Return the error message string from the given response. + * + * @param {String|Object} res + */ +function getErrorMessage(res) { + if (!res || _.isString(res)) { + return res; + } + + return res.message; +} + export default function dropzoneInput(form) { const divHover = '<div class="div-dropzone-hover"></div>'; const iconPaperclip = '<i class="fa fa-paperclip div-dropzone-icon"></i>'; @@ -84,9 +97,7 @@ export default function dropzoneInput(form) { // xhr object (xhr.responseText is error message). // On error we hide the 'Attach' and 'Cancel' buttons // and show an error. - - // If there's xhr error message, let's show it instead of dropzone's one. - const message = xhr ? xhr.responseText : errorMessage; + const message = getErrorMessage(errorMessage || xhr.responseText); $uploadingErrorContainer.removeClass('hide'); $uploadingErrorMessage.html(message); |