Bläddra i källkod

[home2] Disable unsuitable top actions when in trash

Johan Ahlen 9 år sedan
förälder
incheckning
87fd928

+ 9 - 1
desktop/core/src/desktop/static/desktop/js/fileBrowser/hueFileEntry.js

@@ -124,6 +124,13 @@
     }
   };
 
+  HueFileEntry.prototype.showNewDirectoryModal = function () {
+    var self = this;
+    if (! self.isTrash() && ! self.isTrashed()) {
+      $('#createDirectoryModal').modal('show');
+    }
+  }
+
   HueFileEntry.prototype.showSharingModal = function (entry) {
     var self = this;
     if (entry) {
@@ -431,7 +438,8 @@
   };
 
   HueFileEntry.prototype.showUploadModal = function () {
-    if (self.app = 'documents') {
+    var self = this;
+    if (self.app == 'documents' && ! self.isTrash() && ! self.isTrashed()) {
       $('#importDocumentsModal').modal('show');
     }
   };

+ 5 - 5
desktop/core/src/desktop/templates/file_browser.mako

@@ -446,7 +446,7 @@ from desktop.views import _ko
           <a class="inactive-action fb-action" href="javascript:void(0);" data-bind="toggle: $parent.searchVisible, css: { 'blue' : ($parent.searchVisible() || $parent.searchQuery()) }"><i class="fa fa-fw fa-search"></i></a>
           <!-- ko if: app === 'documents' -->
             <span class="dropdown">
-              <a class="inactive-action fb-action" data-toggle="dropdown" href="javascript:void(0);"><span class="fa-stack fa-fw" style="width: 1.28571429em"><i class="fa fa-file-o fa-stack-1x"></i><i class="fa fa-plus-circle fa-stack-1x" style="font-size: 14px; margin-left: 6px; margin-top: 6px;"></i></span></a>
+              <a class="inactive-action fb-action" data-toggle="dropdown" data-bind="css: { 'disabled': isTrash() || isTrashed() }" href="javascript:void(0);"><span class="fa-stack fa-fw" style="width: 1.28571429em"><i class="fa fa-file-o fa-stack-1x"></i><i class="fa fa-plus-circle fa-stack-1x" style="font-size: 14px; margin-left: 6px; margin-top: 6px;"></i></span></a>
               <ul class="dropdown-menu" style="margin-top:10px; width: 175px;" role="menu">
                 % if 'beeswax' in apps:
                   <li><a href="${ url('beeswax:index') }"><img src="${ static(apps['beeswax'].icon_path) }" class="app-icon"/> ${_('Hive Query')}</a></li>
@@ -468,12 +468,12 @@ from desktop.views import _ko
               </ul>
             </span>
           <!-- /ko -->
-          <a class="inactive-action fb-action" href="javascript:void(0);" data-bind="click: function () { $('#createDirectoryModal').modal('show'); }"><span class="fa-stack fa-fw" style="width: 1.28571429em;"><i class="fa fa-folder-o fa-stack-1x" ></i><i class="fa fa-plus-circle fa-stack-1x" style="font-size: 14px; margin-left: 7px; margin-top: 3px;"></i></span></a>
+          <a class="inactive-action fb-action" href="javascript:void(0);" data-bind="click: function () { showNewDirectoryModal() }, css: { 'disabled': isTrash() || isTrashed() }"><span class="fa-stack fa-fw" style="width: 1.28571429em;"><i class="fa fa-folder-o fa-stack-1x" ></i><i class="fa fa-plus-circle fa-stack-1x" style="font-size: 14px; margin-left: 7px; margin-top: 3px;"></i></span></a>
           <!-- ko if: app === 'documents' -->
-          <a class="inactive-action fb-action" href="javascript:void(0);" data-bind="click: function() { showSharingModal(null) }, css: { 'disabled': selectedEntries().length !== 1 }"><i class="fa fa-fw fa-users"></i></a>
+          <a class="inactive-action fb-action" href="javascript:void(0);" data-bind="click: function() { showSharingModal(null) }, css: { 'disabled': selectedEntries().length !== 1 || (selectedEntries().length === 1 && selectedEntries()[0].isTrashed) }"><i class="fa fa-fw fa-users"></i></a>
           <!-- /ko -->
           <a class="inactive-action fb-action" href="javascript:void(0);" data-bind="click: download"><i class="fa fa-fw fa-download"></i></a>
-          <a class="inactive-action fb-action" href="javascript:void(0);" data-bind="click: showUploadModal"><i class="fa fa-fw fa-upload"></i></a>
+          <a class="inactive-action fb-action" href="javascript:void(0);" data-bind="click: showUploadModal, css: { 'disabled': isTrash() || isTrashed() }"><i class="fa fa-fw fa-upload"></i></a>
           <!-- ko if: app === 'documents' -->
           <a class="inactive-action fb-action" href="javascript:void(0);" data-bind="click: showTrash"><i class="fa fa-fw fa-trash-o"></i></a>
           <!-- /ko -->
@@ -736,7 +736,7 @@ from desktop.views import _ko
           self.activeEntry().search(query);
         });
 
-        self.searchVisible = ko.observable(true);
+        self.searchVisible = ko.observable(false);
 
         huePubSub.subscribe('file.browser.directory.opened', function () {
           self.searchQuery('');