diff --git a/cms/static/js/spec/views/assets_spec.js b/cms/static/js/spec/views/assets_spec.js index e0f07b1339..3e5e10ef62 100644 --- a/cms/static/js/spec/views/assets_spec.js +++ b/cms/static/js/spec/views/assets_spec.js @@ -169,6 +169,21 @@ define([ "jquery", "js/common_helpers/ajax_helpers", "js/views/asset", "js/views expect(assetsView.largeFileErrorMsg).toBeNull(); }); + + it('hides the error modal if a large file, then small file is uploaded', function() { + expect(assetsView).toBeDefined(); + mockFileUpload.files[0].size = assetsView.maxFileSize; + + $('.choose-file-button').click(); + $(".upload-modal .file-chooser").fileupload('add', mockFileUpload); + + expect(assetsView.largeFileErrorMsg).toBeDefined(); + + mockFileUpload.files[0].size = assetsView.maxFileSize / 10; + $('.choose-file-button').click(); + $(".upload-modal .file-chooser").fileupload('add', mockFileUpload); + expect(assetsView.largeFileErrorMsg).toBeNull(); + }); }); }); }); diff --git a/cms/static/js/views/assets.js b/cms/static/js/views/assets.js index c5b17c0418..fe58c11aa4 100644 --- a/cms/static/js/views/assets.js +++ b/cms/static/js/views/assets.js @@ -135,6 +135,7 @@ define(["jquery", "underscore", "gettext", "js/models/asset", "js/views/paging", event.preventDefault(); self.resetUploadModal(); ModalUtils.showModal(); + $('.modal-cover').on('click', self.hideModal); $('.file-input').bind('change', self.startUpload); $('.upload-modal .file-chooser').fileupload({ dataType: 'json', @@ -182,6 +183,9 @@ define(["jquery", "underscore", "gettext", "js/models/asset", "js/views/paging", showFileSelectionMenu: function(event) { event.preventDefault(); + if (assetsView.largeFileErrorMsg) { + assetsView.largeFileErrorMsg.hide(); + } $('.file-input').click(); },