From c2b1b0bf8d00732f1dbcc8552adc43e7cfaad939 Mon Sep 17 00:00:00 2001 From: llj Date: Tue, 22 Mar 2016 11:46:42 +0800 Subject: [PATCH] [dir view] hide some buttons(ops on current dir) when item(s) selected --- static/scripts/app/views/dir.js | 10 +++++++--- static/scripts/app/views/dirent.js | 5 +++++ 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/static/scripts/app/views/dir.js b/static/scripts/app/views/dir.js index d20a267cba..9c5d87e773 100644 --- a/static/scripts/app/views/dir.js +++ b/static/scripts/app/views/dir.js @@ -731,25 +731,29 @@ define([ }, select: function () { - var el = this.$('th .checkbox'); - el.toggleClass('checkbox-checked'); + var $el = this.$('th .checkbox'); + $el.toggleClass('checkbox-checked'); var dir = this.dir; var all_dirent_checkbox = this.$('.checkbox'); var $dirents_op = this.$('#multi-dirents-op'); - if (el.hasClass('checkbox-checked')) { + var $curDirOps = this.$('#upload-file, #add-new-dir, #add-new-file, #share-cur-dir'); + + if ($el.hasClass('checkbox-checked')) { all_dirent_checkbox.addClass('checkbox-checked'); dir.each(function(model) { model.set({'selected': true}, {silent: true}); }); $dirents_op.css({'display':'inline'}); + $curDirOps.hide(); } else { all_dirent_checkbox.removeClass('checkbox-checked'); dir.each(function(model) { model.set({'selected': false}, {silent: true}); }); $dirents_op.hide(); + $curDirOps.show(); } }, diff --git a/static/scripts/app/views/dirent.js b/static/scripts/app/views/dirent.js index 13211b7cec..f95d21e955 100644 --- a/static/scripts/app/views/dirent.js +++ b/static/scripts/app/views/dirent.js @@ -103,10 +103,15 @@ define([ var $dirents_op = dirView.$('#multi-dirents-op'); var toggle_all_checkbox = dirView.$('th .checkbox'); var checked_num = dirView.$('tr:gt(0) .checkbox-checked').length; + + var $curDirOps = dirView.$('#upload-file, #add-new-dir, #add-new-file, #share-cur-dir'); + if (checked_num > 0) { $dirents_op.css({'display':'inline'}); + $curDirOps.hide(); } else { $dirents_op.hide(); + $curDirOps.show(); } if (checked_num == dirView.$('tr:gt(0)').length) { toggle_all_checkbox.addClass('checkbox-checked');