diff --git a/apps/files/js/file-upload.js b/apps/files/js/file-upload.js index 919a5314f6b16..7723d493acf23 100644 --- a/apps/files/js/file-upload.js +++ b/apps/files/js/file-upload.js @@ -776,6 +776,10 @@ OC.Uploader.prototype = _.extend({ // no list to check against return true; } + if (upload.getTargetFolder() !== fileList.getCurrentDirectory()) { + // not uploading to the current folder + return true; + } var fileInfo = fileList.findFile(file.name); if (fileInfo) { conflicts.push([ @@ -997,7 +1001,8 @@ OC.Uploader.prototype = _.extend({ freeSpace = $('#free_space').val() } else if (upload.getTargetFolder().indexOf(self.fileList.getCurrentDirectory()) === 0) { // Check subdirectory free space if file is uploaded there - var targetSubdir = upload._targetFolder.replace(self.fileList.getCurrentDirectory(), '') + // Retrieve the folder destination name + var targetSubdir = upload._targetFolder.split('/').pop() freeSpace = parseInt(upload.uploader.fileList.getModelForFile(targetSubdir).get('quotaAvailableBytes')) } if (freeSpace >= 0 && selection.totalBytes > freeSpace) { diff --git a/apps/files/tests/js/fileUploadSpec.js b/apps/files/tests/js/fileUploadSpec.js index 6ce0558d22d57..05aea446fe9f2 100644 --- a/apps/files/tests/js/fileUploadSpec.js +++ b/apps/files/tests/js/fileUploadSpec.js @@ -75,6 +75,7 @@ describe('OC.Upload tests', function() { files: [file], jqXHR: jqXHR, response: sinon.stub().returns(jqXHR), + targetDir: "/", submit: sinon.stub(), abort: sinon.stub() };