|
@@ -44,17 +44,20 @@ MaterioSearchApiAjax = function(){
|
|
|
.bind('history-state-change', onHistoryStateChange);
|
|
|
|
|
|
// trigger updated event for direct html loading
|
|
|
- setTimeout(function(){
|
|
|
- var event = jQuery.Event('resultschanged');
|
|
|
-
|
|
|
- if(isExplore())
|
|
|
- event.container = '#content .search-results';
|
|
|
-
|
|
|
- if(isActuality())
|
|
|
- event.container = '#content .actuality-items';
|
|
|
+ if( isActuality() || isExplore() ){
|
|
|
+ setTimeout(function(){
|
|
|
+ var event = jQuery.Event('resultschanged');
|
|
|
+
|
|
|
+ if(isExplore())
|
|
|
+ event.container = '#content .search-results';
|
|
|
+
|
|
|
+ if(isActuality())
|
|
|
+ event.container = '#content .actuality-items';
|
|
|
|
|
|
- $.event.trigger(event);
|
|
|
- }, 10);
|
|
|
+ trace('MaterioSearchApiAjax :: initSearchAjax :: triggering resultschanged')
|
|
|
+ $.event.trigger(event);
|
|
|
+ }, 10);
|
|
|
+ }
|
|
|
};
|
|
|
|
|
|
function getSearchKeys(){
|
|
@@ -98,21 +101,7 @@ MaterioSearchApiAjax = function(){
|
|
|
_isloadingresults = false;
|
|
|
$('#materio-search-api-search-form').removeClass('loading');
|
|
|
|
|
|
- var path = Drupal.settings.basePath + Drupal.settings.pathPrefix + json.search_path + '/' + json.keys;
|
|
|
-
|
|
|
- var event = jQuery.Event('new-history-page');
|
|
|
- event.path = path;
|
|
|
- event.title = json.title;
|
|
|
- event.content = json.return;
|
|
|
- $.event.trigger(event);
|
|
|
-
|
|
|
- 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)
|
|
|
- };
|
|
|
-
|
|
|
changeContent(json);
|
|
|
-
|
|
|
});
|
|
|
}
|
|
|
}
|
|
@@ -138,6 +127,7 @@ MaterioSearchApiAjax = function(){
|
|
|
|
|
|
function changeContent(json){
|
|
|
trace('MaterioSearchApiAjax changeContent | json', json);
|
|
|
+
|
|
|
if(json.return){
|
|
|
$.event.trigger('loaded-content');
|
|
|
$('.inner-content',_$content).html(json.return);
|
|
@@ -145,9 +135,21 @@ MaterioSearchApiAjax = function(){
|
|
|
}else{
|
|
|
trace('no results');
|
|
|
}
|
|
|
+
|
|
|
+ var event = jQuery.Event('new-history-page');
|
|
|
+ event.path = Drupal.settings.basePath + Drupal.settings.pathPrefix + json.search_path + '/' + json.keys;
|
|
|
+ event.title = json.title;
|
|
|
+ event.content = json.return;
|
|
|
+ $.event.trigger(event);
|
|
|
+
|
|
|
+ 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(){
|
|
|
+ trace('MaterioSearchApiAjax :: triggerContentChanged');
|
|
|
var event = jQuery.Event('resultschanged');
|
|
|
event.container = '#content .search-results, #content .actuality-items';
|
|
|
// event.title = json.title;
|
|
@@ -273,6 +275,7 @@ MaterioSearchApiAjax = function(){
|
|
|
function onHistoryStateChange(event){
|
|
|
if(isExplore() || isActuality())
|
|
|
triggerContentChanged();
|
|
|
+ // TODO: pushstate trogger state change, so we have a retriggerring here on loading new results … how to avoid this
|
|
|
};
|
|
|
|
|
|
/**
|