fixed infinite scroll with advenced search
This commit is contained in:
parent
8777adbe2e
commit
9d45086951
@ -4,7 +4,8 @@ stringTypes.push($this.val());types[$this.val()]=$this.attr('checked');});if(!_i
|
|||||||
$.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())
|
||||||
loadNextResultsPage(event.href);if(isActuality())
|
loadNextResultsPage(event.href);if(isActuality())
|
||||||
loadNextActualityPage(event.href);}};function loadNextResultsPage(href){trace('loadNextResultsPage');var keys=href.match(/explore\/([^\/|\?]+)/);var page=href.match(/\?page=([0-9]+)/);var url=Drupal.settings.basePath+Drupal.settings.pathPrefix+'materio_search_api_ajax/search/'+page[1];loadNextPage(url,keys[1],$('.materiobase-results',_$content),'.search-results');};function loadNextActualityPage(href){var page=href.match(/\?page=([0-9]+)/);var url=Drupal.settings.basePath+Drupal.settings.pathPrefix+'materio_search_api_ajax/actuality/'+page[1];loadNextPage(url,'',$('.materiobase-actuality',_$content),'.actuality-items');};function loadNextPage(url,keys,$container,target){_isloadingresults=true;$container.addClass('loading');$.getJSON(url,{'keys':keys},function(json){$container.removeClass('loading');addNextpage(json,target);});};function addNextpage(json,container_class){if(json){var $newcontent=$(json.returned),$newitems=$(container_class,$newcontent).children('article'),$newpager=$('ul.pager',$newcontent);$(container_class,_$content).append($newitems);$('ul.pager',_$content).replaceWith($newpager.hide());$(container_class,_$content).children('.just-added').each(function(i){var $this=$(this);setTimeout(function(){$this.removeClass('just-added');},150*i);});$.event.trigger({type:'resultscompleted',container:$(container_class,_$content)});}
|
loadNextActualityPage(event.href);}};function loadNextResultsPage(href){trace('loadNextResultsPage',href);var searchmode=href.match(/explore\/filters\//)?'advanced':'fulltext';trace("searchmode",searchmode);if(searchmode=='advanced'){var keys=href.match(/explore\/filters\/([^\/|\?]+)/);}else{var keys=href.match(/explore\/([^\/|\?]+)/);}
|
||||||
|
var page=href.match(/\?page=([0-9]+)/);var url=Drupal.settings.basePath+Drupal.settings.pathPrefix+'materio_search_api_ajax/search/'+page[1];loadNextPage(url,keys[1],$('.materiobase-results',_$content),'.search-results',searchmode);};function loadNextActualityPage(href){var page=href.match(/\?page=([0-9]+)/);var url=Drupal.settings.basePath+Drupal.settings.pathPrefix+'materio_search_api_ajax/actuality/'+page[1];loadNextPage(url,'',$('.materiobase-actuality',_$content),'.actuality-items');};function loadNextPage(url,keys,$container,target,searchmode){searchmode=searchmode||"fulltext";_isloadingresults=true;$container.addClass('loading');$.getJSON(url,{'keys':keys,'searchmode':searchmode},function(json){$container.removeClass('loading');addNextpage(json,target);});};function addNextpage(json,container_class){if(json){var $newcontent=$(json.returned),$newitems=$(container_class,$newcontent).children('article'),$newpager=$('ul.pager',$newcontent);$(container_class,_$content).append($newitems);$('ul.pager',_$content).replaceWith($newpager.hide());$(container_class,_$content).children('.just-added').each(function(i){var $this=$(this);setTimeout(function(){$this.removeClass('just-added');},150*i);});$.event.trigger({type:'resultscompleted',container:$(container_class,_$content)});}
|
||||||
_isloadingresults=false;};function addNextpageItemByItem($newcontent,container_class){$('ul.pager',_$content).remove();$(container_class,_$content).append($(container_class,$newcontent).children('article').eq(0));if($(container_class,$newcontent).children('article').length){setTimeout(function(){addNextpageItemByItem($newcontent,container_class);},200);}else{_isloadingresults=false;$('ul.pager',_$content).replaceWith($('ul.pager',$newcontent).hide());$.event.trigger({type:'resultscompleted',container:$(container_class,_$content)});}};function initViewMode(){$('.viewmode-link').click(function(event){event.preventDefault();if(!$(this).is('.active')){$(this).trigger({type:'vm-clicked'});changeViewMode($(this).attr('rel'),$(this));}else{$(this).trigger({type:'vm-clicked-active'});}
|
_isloadingresults=false;};function addNextpageItemByItem($newcontent,container_class){$('ul.pager',_$content).remove();$(container_class,_$content).append($(container_class,$newcontent).children('article').eq(0));if($(container_class,$newcontent).children('article').length){setTimeout(function(){addNextpageItemByItem($newcontent,container_class);},200);}else{_isloadingresults=false;$('ul.pager',_$content).replaceWith($('ul.pager',$newcontent).hide());$.event.trigger({type:'resultscompleted',container:$(container_class,_$content)});}};function initViewMode(){$('.viewmode-link').click(function(event){event.preventDefault();if(!$(this).is('.active')){$(this).trigger({type:'vm-clicked'});changeViewMode($(this).attr('rel'),$(this));}else{$(this).trigger({type:'vm-clicked-active'});}
|
||||||
return false;});};function changeViewMode(vm,$btn){if(!_isloadingresults){_isloadingresults=true;$.getJSON(Drupal.settings.basePath+'materio_search_api_ajax/viewmode/change/'+vm,function(json){_isloadingresults=false;if(json.statut=="saved"){$.event.trigger({type:"record-stat",categorie:'Viewmode',action:vm,label:isActuality()?'Actualities':'Search results'});$.event.trigger('view-mode-changed');$('.viewmode-link, .viewmode-link i').removeClass('active');$btn.addClass('active').find('i').addClass('active');}});}};function onViewModeChanged(event){if(isExplore())
|
return false;});};function changeViewMode(vm,$btn){if(!_isloadingresults){_isloadingresults=true;$.getJSON(Drupal.settings.basePath+'materio_search_api_ajax/viewmode/change/'+vm,function(json){_isloadingresults=false;if(json.statut=="saved"){$.event.trigger({type:"record-stat",categorie:'Viewmode',action:vm,label:isActuality()?'Actualities':'Search results'});$.event.trigger('view-mode-changed');$('.viewmode-link, .viewmode-link i').removeClass('active');$btn.addClass('active').find('i').addClass('active');}});}};function onViewModeChanged(event){if(isExplore())
|
||||||
loadResults(getSearchKeys());if(isActuality())
|
loadResults(getSearchKeys());if(isActuality())
|
||||||
|
@ -220,12 +220,18 @@ MaterioSearchApiAjax = function(){
|
|||||||
};
|
};
|
||||||
|
|
||||||
function loadNextResultsPage(href){
|
function loadNextResultsPage(href){
|
||||||
trace('loadNextResultsPage');
|
trace('loadNextResultsPage', href);
|
||||||
var keys = href.match(/explore\/([^\/|\?]+)/);
|
var searchmode = href.match(/explore\/filters\//) ? 'advanced' : 'fulltext';
|
||||||
|
trace("searchmode", searchmode);
|
||||||
|
if(searchmode == 'advanced'){
|
||||||
|
var keys = href.match(/explore\/filters\/([^\/|\?]+)/);
|
||||||
|
}else{
|
||||||
|
var keys = href.match(/explore\/([^\/|\?]+)/);
|
||||||
|
}
|
||||||
var page = href.match(/\?page=([0-9]+)/);
|
var page = href.match(/\?page=([0-9]+)/);
|
||||||
var url = Drupal.settings.basePath+Drupal.settings.pathPrefix+'materio_search_api_ajax/search/'+page[1];
|
var url = Drupal.settings.basePath+Drupal.settings.pathPrefix+'materio_search_api_ajax/search/'+page[1];
|
||||||
|
|
||||||
loadNextPage(url, keys[1], $('.materiobase-results', _$content), '.search-results');
|
loadNextPage(url, keys[1], $('.materiobase-results', _$content), '.search-results', searchmode);
|
||||||
};
|
};
|
||||||
|
|
||||||
function loadNextActualityPage(href){
|
function loadNextActualityPage(href){
|
||||||
@ -236,11 +242,15 @@ MaterioSearchApiAjax = function(){
|
|||||||
loadNextPage(url, '', $('.materiobase-actuality', _$content), '.actuality-items');
|
loadNextPage(url, '', $('.materiobase-actuality', _$content), '.actuality-items');
|
||||||
};
|
};
|
||||||
|
|
||||||
function loadNextPage(url, keys, $container, target){
|
function loadNextPage(url, keys, $container, target, searchmode){
|
||||||
// trace('MaterioSearchApiAjax :: loadNextPage()');
|
// trace('MaterioSearchApiAjax :: loadNextPage()');
|
||||||
|
|
||||||
|
// define mode (between full text or only term selected on autocompletion)
|
||||||
|
searchmode = searchmode || "fulltext";
|
||||||
|
|
||||||
_isloadingresults = true;
|
_isloadingresults = true;
|
||||||
$container.addClass('loading');
|
$container.addClass('loading');
|
||||||
$.getJSON(url, {'keys':keys}, function(json){
|
$.getJSON(url, {'keys':keys,'searchmode':searchmode}, function(json){
|
||||||
//trace('json', json);
|
//trace('json', json);
|
||||||
$container.removeClass('loading');
|
$container.removeClass('loading');
|
||||||
addNextpage(json, target);
|
addNextpage(json, target);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user