35 lines
		
	
	
		
			835 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			835 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
 | 
						|
/**
 | 
						|
 * @file
 | 
						|
 * Path generation for Lucene API Search.
 | 
						|
 *
 | 
						|
 * Available vars:
 | 
						|
 * $keywords: user input
 | 
						|
 * $types: content types (machine names[])
 | 
						|
 * $terms: taxonomy terms (tids[])
 | 
						|
 * $keys: complete search phrase, as core would have done it
 | 
						|
 *
 | 
						|
 * To return:
 | 
						|
 * the complete search path
 | 
						|
 */
 | 
						|
 | 
						|
function _custom_search_lucenapi_search($variables) {
 | 
						|
  $type = 'search/' . variable_get('luceneapi:default_search', 0) . '/' . $variables['keywords'];
 | 
						|
  $keys = array();
 | 
						|
 | 
						|
  if (count($variables['types']) && !in_array('all', $variables['types'])) {
 | 
						|
    foreach ($variables['types'] as $t) {
 | 
						|
      $keys["type[$t]"] = $t;
 | 
						|
    }
 | 
						|
  }
 | 
						|
 | 
						|
  if (module_exists('taxonomy') && count($variables['terms'])) {
 | 
						|
    foreach ($variables['terms'] as $t) {
 | 
						|
      $keys["category[$t]"] = $t;
 | 
						|
    }
 | 
						|
  }
 | 
						|
 | 
						|
  return array('path' => $type, 'query' => $keys);
 | 
						|
}
 |