restored ajax search for filtered search
This commit is contained in:
parent
82a22114d3
commit
8777adbe2e
@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
(function($){MaterioSearchApiAjax=function(){var _isloadingresults=false;var _$content=$('#content');function init(){initSearchAjax();initViewMode();};function initSearchAjax(){trace('initSearchAjax');$('#materio-search-api-search-form').bind('submit',function(event){setTimeout(function(){loadResults(getSearchKeys());},10);return false;});$("#edit-searchfield").bind('autocompleteSelect',function(event){setTimeout(function(){loadResults(getSearchKeys(),"taxonomy");},10);}).bind('focus',function(event){$(this).select();});$(document).bind('theme-ready',onThemeReady).bind('init-scroller-pager',onInitScrollerPager).bind('load-scroller-pager',onLoadScrollerPager).bind('view-mode-changed',onViewModeChanged).bind('history-state-change',onHistoryStateChange);};function onThemeReady(event){if(isActuality()||isExplore()){$.event.trigger({type:'resultschanged',container:isActuality()?'#content .actuality-items':'#content .search-results'});}};function getSearchKeys(){return $('#materio-search-api-search-form').find('input[name*="searchfield"]').val();};function getSearchFilters(){var keys=[];$('#materio-search-api-advanced-search-form').find('.filter-line').each(function(i,line){var $selects=$($('.form-item.form-type-select select',line).get().reverse()).slice(0,-1);$selects.each(function(j,select){if($(select).val()!==""){keys.push('"'+$("option:selected",select).text()+'"');return false;}});});trace("getSearchFilters :: keys",keys);return keys.join("+");};function loadResults(keys,searchmode){trace('loadResults keys',keys);if(keys!==undefined&&keys!==''&&keys.length>=2){keys=keys.replace('/',' ');searchmode=searchmode||"fulltext";var types={},stringTypes=[];$('#edit-bundles-filter','#materio-search-api-search-form').find('input[type*="checkbox"]').each(function(i){$this=$(this);if($this.attr('checked'))
|
(function($){MaterioSearchApiAjax=function(){var _isloadingresults=false;var _$content=$('#content');function init(){initSearchAjax();initViewMode();};function initSearchAjax(){trace('initSearchAjax');$('#materio-search-api-search-form').bind('submit',function(event){setTimeout(function(){loadResults(getSearchKeys());},10);return false;});$('#materio-search-api-advanced-search-form').bind('submit',function(event){event.preventDefault();setTimeout(function(){loadResults(getSearchFilters(),'advanced');},10);return false;});$("#edit-searchfield").bind('autocompleteSelect',function(event){setTimeout(function(){loadResults(getSearchKeys(),"taxonomy");},10);}).bind('focus',function(event){$(this).select();});$(document).bind('theme-ready',onThemeReady).bind('init-scroller-pager',onInitScrollerPager).bind('load-scroller-pager',onLoadScrollerPager).bind('view-mode-changed',onViewModeChanged).bind('history-state-change',onHistoryStateChange);};function onThemeReady(event){if(isActuality()||isExplore()){$.event.trigger({type:'resultschanged',container:isActuality()?'#content .actuality-items':'#content .search-results'});}};function getSearchKeys(){return $('#materio-search-api-search-form').find('input[name*="searchfield"]').val();};function getSearchFilters(){var keys=[];$('#materio-search-api-advanced-search-form').find('.filter-line').each(function(i,line){var $selects=$($('.form-item.form-type-select select',line).get().reverse()).slice(0,-1);$selects.each(function(j,select){if($(select).val()!==""){keys.push($(select).val());return false;}});});trace("getSearchFilters :: keys",keys);return keys.join("+");};function loadResults(keys,searchmode){trace('loadResults keys',keys);if(keys!==undefined&&keys!==''&&keys.length>=2){keys=keys.replace('/',' ');searchmode=searchmode||"fulltext";var types={},stringTypes=[];$('#edit-bundles-filter','#materio-search-api-search-form').find('input[type*="checkbox"]').each(function(i){$this=$(this);if($this.attr('checked'))
|
||||||
stringTypes.push($this.val());types[$this.val()]=$this.attr('checked');});if(!_isloadingresults){$.event.trigger('loading-content');_isloadingresults=true;$('#materio-search-api-search-form').addClass('loading');$.getJSON(Drupal.settings.basePath+Drupal.settings.pathPrefix+'materio_search_api_ajax/search/',{'types':types,'current_path':document.location.href,'keys':keys,'searchmode':searchmode},function(json){$.event.trigger({type:"record-stat",categorie:'Search',action:keys,label:'filters : '+stringTypes.join(' ,'),value:json.count});if(json.redirect){window.location=json.redirect;}else{$.event.trigger('loaded-content');_isloadingresults=false;$('#materio-search-api-search-form').removeClass('loading');changeContent(json);}});}}};function loadActuality(){if(!_isloadingresults){$.event.trigger('loading-content');_isloadingresults=true;$('#materio-search-api-search-form').addClass('loading');var url=Drupal.settings.basePath+Drupal.settings.pathPrefix+'materio_search_api_ajax/actuality';$.getJSON(url,function(json){$.event.trigger('loaded-content');_isloadingresults=false;$('#materio-search-api-search-form').removeClass('loading');changeContent(json);});}};function changeContent(json){if(json.returned){$.event.trigger('loaded-content');$('.inner-content',_$content).html(json.returned).find('ul.pager').hide();triggerContentChanged();}else{}
|
stringTypes.push($this.val());types[$this.val()]=$this.attr('checked');});if(!_isloadingresults){$.event.trigger('loading-content');_isloadingresults=true;$('#materio-search-api-search-form').addClass('loading');$.getJSON(Drupal.settings.basePath+Drupal.settings.pathPrefix+'materio_search_api_ajax/search/',{'types':types,'current_path':document.location.href,'keys':keys,'searchmode':searchmode},function(json){$.event.trigger({type:"record-stat",categorie:'Search',action:keys,label:'filters : '+stringTypes.join(' ,'),value:json.count});if(json.redirect){window.location=json.redirect;}else{$.event.trigger('loaded-content');_isloadingresults=false;$('#materio-search-api-search-form').removeClass('loading');changeContent(json);}});}}};function loadActuality(){if(!_isloadingresults){$.event.trigger('loading-content');_isloadingresults=true;$('#materio-search-api-search-form').addClass('loading');var url=Drupal.settings.basePath+Drupal.settings.pathPrefix+'materio_search_api_ajax/actuality';$.getJSON(url,function(json){$.event.trigger('loaded-content');_isloadingresults=false;$('#materio-search-api-search-form').removeClass('loading');changeContent(json);});}};function changeContent(json){if(json.returned){$.event.trigger('loaded-content');$('.inner-content',_$content).html(json.returned).find('ul.pager').hide();triggerContentChanged();}else{}
|
||||||
$.event.trigger({type:'new-history-page',path:Drupal.settings.basePath+Drupal.settings.pathPrefix+json.path,title:json.title,content:json.returned});for(language in Drupal.settings.materio_search_api_ajax.languages){var l=Drupal.settings.materio_search_api_ajax.languages[language];$('#block-locale-language li.'+language+' a').attr('href',Drupal.settings.basePath+l.prefix+'/'+json.search_path+'/'+json.keys)};};function triggerContentChanged(){$.event.trigger({type:'resultschanged',container:'#content .search-results, #content .actuality-items'});};function onInitScrollerPager(event){if(isActuality()||isExplore())
|
$.event.trigger({type:'new-history-page',path:Drupal.settings.basePath+Drupal.settings.pathPrefix+json.path,title:json.title,content:json.returned});for(language in Drupal.settings.materio_search_api_ajax.languages){var l=Drupal.settings.materio_search_api_ajax.languages[language];$('#block-locale-language li.'+language+' a').attr('href',Drupal.settings.basePath+l.prefix+'/'+json.search_path+'/'+json.keys)};};function triggerContentChanged(){$.event.trigger({type:'resultschanged',container:'#content .search-results, #content .actuality-items'});};function onInitScrollerPager(event){if(isActuality()||isExplore())
|
||||||
event.pager.hide();};function onLoadScrollerPager(event){if(!_isloadingresults){if(isExplore())
|
event.pager.hide();};function onLoadScrollerPager(event){if(!_isloadingresults){if(isExplore())
|
||||||
|
@ -35,15 +35,15 @@ MaterioSearchApiAjax = function(){
|
|||||||
});
|
});
|
||||||
|
|
||||||
// filtered search form
|
// filtered search form
|
||||||
// $('#materio-search-api-advanced-search-form').bind('submit', function(event) {
|
$('#materio-search-api-advanced-search-form').bind('submit', function(event) {
|
||||||
// event.preventDefault();
|
event.preventDefault();
|
||||||
// // trace('advanced search submited', event);
|
// trace('advanced search submited', event);
|
||||||
// // var $this = $(this);
|
// var $this = $(this);
|
||||||
// setTimeout(function(){
|
setTimeout(function(){
|
||||||
// loadResults(getSearchFilters(), 'advanced');
|
loadResults(getSearchFilters(), 'advanced');
|
||||||
// },10);
|
},10);
|
||||||
// return false;
|
return false;
|
||||||
// });
|
});
|
||||||
|
|
||||||
// /!\ AUTOCOMPLETE SELECT EVENT need a patch http://drupal.org/node/365241#comment-5374686
|
// /!\ AUTOCOMPLETE SELECT EVENT need a patch http://drupal.org/node/365241#comment-5374686
|
||||||
$("#edit-searchfield")
|
$("#edit-searchfield")
|
||||||
@ -89,7 +89,8 @@ MaterioSearchApiAjax = function(){
|
|||||||
// get the keys from select form items
|
// get the keys from select form items
|
||||||
$selects.each(function(j, select) {
|
$selects.each(function(j, select) {
|
||||||
if($(select).val() !== ""){
|
if($(select).val() !== ""){
|
||||||
keys.push('"' + $("option:selected",select).text() + '"');
|
// keys.push('"' + $("option:selected",select).text() + '"');
|
||||||
|
keys.push($(select).val());
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
Loading…
x
Reference in New Issue
Block a user