diff --git a/src/asset_manager/config/config.js b/src/asset_manager/config/config.js index b164ffe92..0ae22f083 100644 --- a/src/asset_manager/config/config.js +++ b/src/asset_manager/config/config.js @@ -100,5 +100,14 @@ export default { modalTitle: 'Select Image', //Default placeholder for input - inputPlaceholder: 'http://path/to/the/image.jpg' + inputPlaceholder: 'http://path/to/the/image.jpg', + + //method called before upload, on return false upload is canceled. + // @example + // beforeUpload: (files) => { + // // logic... + // var stopUpload = true; + // if(stopUpload) return false; + // } + beforeUpload: null }; diff --git a/src/asset_manager/view/FileUploader.js b/src/asset_manager/view/FileUploader.js index 847ea1392..51fa64b68 100644 --- a/src/asset_manager/view/FileUploader.js +++ b/src/asset_manager/view/FileUploader.js @@ -108,6 +108,11 @@ export default Backbone.View.extend( uploadFile(e, clb) { const files = e.dataTransfer ? e.dataTransfer.files : e.target.files; const { config } = this; + const { beforeUpload } = config; + + const beforeUploadResponse = beforeUpload && beforeUpload(files); + if (beforeUploadResponse === false) return; + const body = new FormData(); const { params, customFetch } = config;