From 980f2a7e488022737d8468f100f1d6985f57ce30 Mon Sep 17 00:00:00 2001 From: Samuel Clay Date: Thu, 24 Nov 2011 00:17:04 -0500 Subject: [PATCH] Fixed #21: Clearing search should perform search event. --- build-min/dependencies.js.gz | Bin 44846 -> 44846 bytes build-min/visualsearch.js | 2 +- build-min/visualsearch.js.gz | Bin 6844 -> 6847 bytes build-min/visualsearch_templates.js.gz | Bin 309 -> 309 bytes build/visualsearch.js | 1 + lib/js/views/search_box.js | 1 + 6 files changed, 3 insertions(+), 1 deletion(-) diff --git a/build-min/dependencies.js.gz b/build-min/dependencies.js.gz index b360c559f1e9ace7a011882eaa6ab2f53e6a5e04..ac46508502959cdf10706b601ec681b721446b6b 100644 GIT binary patch delta 17 ZcmZ2?k7?aKCN}wQ4hGlD8`(700{}j(273Si delta 17 ZcmZ2?k7?aKCN}wQ4hG3f8`(700{}gr22KC~ diff --git a/build-min/visualsearch.js b/build-min/visualsearch.js index c692273..322287d 100644 --- a/build-min/visualsearch.js +++ b/build-min/visualsearch.js @@ -11,7 +11,7 @@ if(a.container)a=this.searchBox.render().el,c(this.options.container).html(a);th c(document).bind("keydown",this._maybeDisableFacets)},render:function(){c(this.el).append(JST.search_box({}));c(document.body).setMode("no","search");return this},value:function(a){return a==null?this.serialize():this.setQuery(a)},serialize:function(){var a=[],b=this.inputViews.length;this.app.searchQuery.each(_.bind(function(b,c){a.push(this.inputViews[c].value());a.push(b.serialize())},this));b&&a.push(this.inputViews[b-1].value());return _.compact(a).join(" ")},setQuery:function(a){this.currentQuery= a;VS.app.SearchParser.parse(this.app,a)},viewPosition:function(a){a=_.indexOf(a.type=="facet"?this.facetViews:this.inputViews,a);a==-1&&(a=0);return a},searchEvent:function(a){var b=this.value();this.focusSearch(a);this.value(b);this.app.options.callbacks.search(b,this.app.searchQuery)},addFacet:function(a,b,c){a=VS.utils.inflector.trim(a);b=VS.utils.inflector.trim(b||"");if(a){var e=new VS.model.SearchFacet({category:a,value:b||"",app:this.app});this.app.searchQuery.add(e,{at:c});this.renderFacets(); var d=_.detect(this.facetViews,function(a){if(a.model==e)return!0});_.defer(function(){d.enableEdit()})}},renderFacets:function(){this.facetViews=[];this.inputViews=[];this.$(".VS-search-inner").empty();this.app.searchQuery.each(_.bind(function(a,b){this.renderFacet(a,b)},this));this.renderSearchInput()},renderFacet:function(a,b){var c=new VS.ui.SearchFacet({app:this.app,model:a,order:b});this.renderSearchInput();this.facetViews.push(c);this.$(".VS-search-inner").children().eq(b*2).after(c.render().el); -c.calculateSize();_.defer(_.bind(c.calculateSize,c));return c},renderSearchInput:function(){var a=new VS.ui.SearchInput({position:this.inputViews.length,app:this.app});this.$(".VS-search-inner").append(a.render().el);this.inputViews.push(a)},clearSearch:function(a){var b=_.bind(function(){this.disableFacets();this.value("");this.flags.allSelected=!1;this.focusSearch(a)},this);this.app.options.callbacks.clearSearch?this.app.options.callbacks.clearSearch(b):b()},selectAllFacets:function(){this.flags.allSelected= +c.calculateSize();_.defer(_.bind(c.calculateSize,c));return c},renderSearchInput:function(){var a=new VS.ui.SearchInput({position:this.inputViews.length,app:this.app});this.$(".VS-search-inner").append(a.render().el);this.inputViews.push(a)},clearSearch:function(a){var b=_.bind(function(){this.disableFacets();this.value("");this.flags.allSelected=!1;this.searchEvent(a);this.focusSearch(a)},this);this.app.options.callbacks.clearSearch?this.app.options.callbacks.clearSearch(b):b()},selectAllFacets:function(){this.flags.allSelected= !0;c(document).one("click.selectAllFacets",this.deselectAllFacets);_.each(this.facetViews,function(a){a.selectFacet()});_.each(this.inputViews,function(a){a.selectText()})},allSelected:function(a){if(a)this.flags.allSelected=!1;return this.flags.allSelected},deselectAllFacets:function(a){this.disableFacets();if(this.$(a.target).is(".category,input")){var b=c(a.target).closest(".search_facet,.search_input"),g=_.detect(this.facetViews.concat(this.inputViews),function(a){return a.el==b[0]});g.type== "facet"?g.selectFacet():g.type=="input"&&_.defer(function(){g.enableEdit(!0)})}},disableFacets:function(a){_.each(this.inputViews,function(b){b&&b!=a&&(b.modes.editing=="is"||b.modes.selected=="is")&&b.disableEdit()});_.each(this.facetViews,function(b){if(b&&b!=a&&(b.modes.editing=="is"||b.modes.selected=="is"))b.disableEdit(),b.deselectFacet()});this.flags.allSelected=!1;this.removeFocus();c(document).unbind("click.selectAllFacets")},resizeFacets:function(a){_.each(this.facetViews,function(b){(!a|| b==a)&&b.resize()})},_maybeDisableFacets:function(a){if(this.flags.allSelected&&VS.app.hotkeys.key(a)=="backspace")return a.preventDefault(),this.clearSearch(a),!1;else this.flags.allSelected&&VS.app.hotkeys.printable(a)&&this.clearSearch(a)},focusNextFacet:function(a,b,c){var c=c||{},e=this.facetViews.length,d=c.viewPosition||this.viewPosition(a);c.skipToFacet?c.skipToFacet&&a.type=="text"&&e==d&&b>=0&&(b=d=0):(a.type=="text"&&b>0&&(b-=1),a.type=="facet"&&b<0&&(b+=1));var f,d=Math.min(e,d+b);a.type== diff --git a/build-min/visualsearch.js.gz b/build-min/visualsearch.js.gz index 65a9f8f63060b32b654ce79a63a782ab6c33c9b6..224a180b7c6873530d43d12ba2bf6218dccf6a69 100644 GIT binary patch delta 2426 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