浏览代码

[search] Re-init range facet when deleting its filter

Romain Rigaux 11 年之前
父节点
当前提交
f6e4874
共有 1 个文件被更改,包括 9 次插入2 次删除
  1. 9 2
      apps/search/static/js/search.ko.js

+ 9 - 2
apps/search/static/js/search.ko.js

@@ -217,7 +217,7 @@ var Query = function (vm, query) {
   });
   self.selectedMultiq = ko.observable(defaultMultiqGroup);
 
-  self.getFacetFilter = function (widget_id) {
+  self.getFacetFilter = function(widget_id) {
     var _fq = null;
     $.each(self.fqs(), function (index, fq) { 
       if (fq.id() == widget_id) {
@@ -325,6 +325,11 @@ var Query = function (vm, query) {
     $.each(self.fqs(), function (index, fq) {
       if (fq.id() == data.id()) {          
         self.fqs.remove(fq);
+        // Also re-init range select widget
+        var rangeWidget = vm.collection.getFacetById(fq.id());
+        if (rangeWidget != null && RANGE_SELECTABLE_WIDGETS.indexOf(rangeWidget.widgetType()) != -1) {
+          vm.collection.timeLineZoom({'id': rangeWidget.id()});	
+        }
         return false;
       }
     });
@@ -466,7 +471,7 @@ var Collection = function (vm, collection) {
     return _facet;
   }
   
-  self.getHistogramFacet = function () { // might remove when list of available widgets
+  self.getHistogramFacet = function () { // Should do multi histogram
     return self.getFacetByType('histogram-widget');
   }
   
@@ -792,6 +797,8 @@ var NewTemplate = function (vm, initial) {
 var DATE_TYPES = ['date', 'tdate'];
 var NUMBER_TYPES = ['int', 'tint', 'long', 'tlong', 'float', 'tfloat'];
 
+var RANGE_SELECTABLE_WIDGETS = ['histogram-widget', 'bar-widget', 'line-widget'];
+
 
 var SearchViewModel = function (collection_json, query_json, initial_json) {
   var self = this;