From 265c4ab33694a06df181901778add912d49f33d9 Mon Sep 17 00:00:00 2001 From: Bachir Soussi Chiadmi Date: Fri, 31 Oct 2014 19:12:53 +0100 Subject: [PATCH] fixed vreve search for free users --- js/materio_search_api_ajax.js | 3 ++- js/materio_search_api_ajax.min.js | 3 ++- materio_search_api.module | 5 +--- materio_search_api.pages.inc | 40 +++++++++++++++---------------- 4 files changed, 24 insertions(+), 27 deletions(-) diff --git a/js/materio_search_api_ajax.js b/js/materio_search_api_ajax.js index 80317fe8..7a4aadc2 100755 --- a/js/materio_search_api_ajax.js +++ b/js/materio_search_api_ajax.js @@ -6,7 +6,8 @@ MaterioSearchApiAjax = function(){ var _isloadingresults = false; var _$content = $('#content'); - // TODO: define $content by module settings + // TODO: define $content by module settings + /** * init() */ diff --git a/js/materio_search_api_ajax.min.js b/js/materio_search_api_ajax.min.js index 761cdffb..11c41b73 100755 --- a/js/materio_search_api_ajax.min.js +++ b/js/materio_search_api_ajax.min.js @@ -746,7 +746,8 @@ function getElementAngle(x1, y1, x2, y2) { MaterioSearchApiAjax = function(){ var _isloadingresults = false; var _$content = $('#content'); - // TODO: define $content by module settings + // TODO: define $content by module settings + /** * init() */ diff --git a/materio_search_api.module b/materio_search_api.module index daaf491f..985262f8 100755 --- a/materio_search_api.module +++ b/materio_search_api.module @@ -763,9 +763,6 @@ function materio_search_api_theme($existing, $type, $theme, $path) { function template_preprocess_materio_search_api_search_block(&$vars){ // dsm($vars, '$vars'); $vars['searchform'] = drupal_get_form("materio_search_api_search_form"); - if(user_access('use materio search api advanced search')){ - $vars['advancedsearchform'] = drupal_get_form("materio_search_api_advanced_search_form"); - } } function template_preprocess_materio_search_api_select_viewmode_block(&$vars){ @@ -854,7 +851,6 @@ function template_preprocess_materio_search_api_results(array &$vars) { $results = $vars['results']; if(isset($results['result count'])){ - // $vars['items'] = $vars['index']->loadItems(array_keys($vars['results']['results'])); $vars['result_count'] = $results['result count']; $vars['sec'] = round($results['performance']['complete'], 3); @@ -862,6 +858,7 @@ function template_preprocess_materio_search_api_results(array &$vars) { if(isset($results['breves count'])){ // for free users + // dsm("free users"); $vars['perfascard'] = true; $perfoutput = format_plural( $results['breves count'], diff --git a/materio_search_api.pages.inc b/materio_search_api.pages.inc index 5a116003..0da61ecf 100755 --- a/materio_search_api.pages.inc +++ b/materio_search_api.pages.inc @@ -196,7 +196,7 @@ function materio_search_api_results_search(){ } } } - + // dsm($ret, 'ret'); return $ret; } @@ -342,6 +342,23 @@ function msa_solrquery_breves($typed, $language, $user, $offset, $limit){ $results = $query->execute(); // dsm($results, 'results'); + $results['index'] = $index;//search_api_index_load($index_machine_name); + + + #could + $could_index_machine_name = variable_get('fulltextsearchindex_'.$language->language, -1); + $could_index = search_api_index_load($could_index_machine_name); + + + # in case of free user search, run a real search to indicate how much items you could find + $could_query = search_api_query($could_index_machine_name, array('conjunction'=>'OR', 'parse mode'=>'direct')) + ->keys($typed); + + $could_results = $could_query->execute(); + // dsm($could_results, 'could_results'); + $results['could results'] = $could_results; + + # add items : breve + materials wich are in the could result $items = array(); $breves = $index->loadItems(array_keys($results['results'])); foreach ($breves as $nid => $breve) { @@ -367,26 +384,7 @@ function msa_solrquery_breves($typed, $language, $user, $offset, $limit){ $results['breves count'] = $results['result count']; $results['result count'] = count($items); - #could - $could_index_machine_name = variable_get('fulltextsearchindex_'.$language->language, -1); - $could_index = search_api_index_load($could_index_machine_name); - - - # in case of free user search, run a real search to indicate how much items you could find - $could_query = search_api_query($could_index_machine_name, array('conjunction'=>'OR', 'parse mode'=>'direct')) - // ->keys(implode(' ', $keys)) - ->keys($typed); - // ->range($offset, $limit); - // ->filter($filter); - - $could_results = $could_query->execute(); - // dsm($could_results, 'could_results'); - $results['could results'] = $could_results; - - - //$results['#index'] = $index;//search_api_index_load($index_machine_name); - - + // dsm($results, "results"); # TODO: cache the results with cache graceful : http://drupal.org/project/cache_graceful return $results; }