diff --git a/static/scripts/app/views/dir.js b/static/scripts/app/views/dir.js index 38fce04c63..6a02e76117 100644 --- a/static/scripts/app/views/dir.js +++ b/static/scripts/app/views/dir.js @@ -788,19 +788,21 @@ define([ }, download: function () { - var selected_dirents = this.dir.where({'selected':true}); + var dirents = this.dir; + var selected_dirents = dirents.where({'selected':true}); + var selected_names = []; + // select 1 item, and it is a file if (selected_dirents.length == 1 && selected_dirents[0].get('is_file')) { location.href = selected_dirents[0].getDownloadUrl(); return; } - var selected_names = []; $(selected_dirents).each(function() { selected_names.push(this.get('obj_name')); }); - Common.zipDownloadDirents(this.dir.repo_id, this.dir.path, selected_names); + Common.zipDownload(dirents.repo_id, dirents.path, selected_names); }, del: function () { diff --git a/static/scripts/app/views/dirent-grid.js b/static/scripts/app/views/dirent-grid.js index 103357629f..06a071e9ba 100644 --- a/static/scripts/app/views/dirent-grid.js +++ b/static/scripts/app/views/dirent-grid.js @@ -153,8 +153,9 @@ define([ download: function() { this.closeMenu(); + var dir = this.dir; var obj_name = this.model.get('obj_name'); - Common.zipDownloadDirents(this.dir.repo_id, this.dir.path, obj_name); + Common.zipDownload(dir.repo_id, dir.path, obj_name); return false; }, diff --git a/static/scripts/app/views/dirent.js b/static/scripts/app/views/dirent.js index 78232b390b..10a5816859 100644 --- a/static/scripts/app/views/dirent.js +++ b/static/scripts/app/views/dirent.js @@ -127,7 +127,9 @@ define([ }, downloadDir: function() { - Common.zipDownloadDirents(this.dirView.dir.repo_id, this.dirView.dir.path, this.model.get('obj_name')); + var dir = this.dirView.dir; + var obj_name = this.model.get('obj_name'); + Common.zipDownload(dir.repo_id, dir.path, obj_name); return false; }, diff --git a/static/scripts/common.js b/static/scripts/common.js index 379ff6de9b..7d27072344 100644 --- a/static/scripts/common.js +++ b/static/scripts/common.js @@ -954,8 +954,10 @@ define([ } }, - zipDownloadDirents:function(repo_id, parent_dir, dirents) { + // for 'dir view': download multi dirents; dir download + zipDownload:function(repo_id, parent_dir, dirents) { var _this = this; + var interval; var zip_token; var packagingTip = gettext("Packaging...");