Bläddra i källkod

HUE-7337 [search] Counter widget should be allowed even if there is no number columns

Romain Rigaux 8 år sedan
förälder
incheckning
396d3dc

+ 3 - 1
desktop/libs/dashboard/src/dashboard/static/dashboard/js/search.ko.js

@@ -1643,7 +1643,9 @@ var SearchViewModel = function (collection_json, query_json, initial_json) {
     self.draggableTree2 = ko.observable(bareWidgetBuilder("Tree", "tree2-widget"));
     self.draggableTextFacet = ko.observable(bareWidgetBuilder("Text Facet", "text-facet-widget"));
 
-
+    self.hasAvailableFields = ko.pureComputed(function () {
+      return self.collection.availableFacetFields().length > 0;
+    });
     self.availableDateFields = ko.computed(function () {
       return $.grep(self.collection.availableFacetFields(), function (field) {
         return DATE_TYPES.indexOf(field.type()) != -1 && field.name() != '_version_';

+ 3 - 3
desktop/libs/dashboard/src/dashboard/templates/common_search.mako

@@ -223,12 +223,12 @@ from desktop.views import commonheader, commonfooter, _ko, commonshare
     </div>
 
     <div data-bind="visible: $root.collection.supportAnalytics,
-                    css: { 'draggable-widget': true, 'disabled': !availableDraggableNumbers() },
-                    draggable: {data: draggableCounter(), isEnabled: availableDraggableNumbers,
+                    css: { 'draggable-widget': true, 'disabled': !hasAvailableFields() },
+                    draggable: {data: draggableCounter(), isEnabled: hasAvailableFields,
                     options: {'start': function(event, ui){lastWindowScrollPosition = $(window).scrollTop();$('.card-body').slideUp('fast');},
                               'stop': function(event, ui){$('.card-body').slideDown('fast', function(){$(window).scrollTop(lastWindowScrollPosition)});}}}"
          title="${_('Counter')}" rel="tooltip" data-placement="top">
-         <a data-bind="style: { cursor: $root.availableDraggableNumbers() ? 'move' : 'default' }">
+         <a data-bind="style: { cursor: $root.hasAvailableFields() ? 'move' : 'default' }">
                        <i class="fa fa-superscript" style="font-size: 110%"></i>
          </a>
     </div>