@@ -2,10 +2,36 @@
|
||||
|
||||
|
||||
function materio_search_api_ajax_search($keys, $page = 0){
|
||||
// TODO: set research path configurable
|
||||
$debug = false;
|
||||
global $user;
|
||||
// TODO: set research path configurable
|
||||
$search_path = "explore";
|
||||
|
||||
|
||||
# content type filter s
|
||||
// $types = $_GET['types'];
|
||||
if(isset($_GET['types'])){
|
||||
# if user have access to filters;
|
||||
|
||||
foreach($_GET['types'] as $type => $value)
|
||||
if($value == 'true')
|
||||
$active_types[] = $type;
|
||||
|
||||
// if no filter checked we checked them all by default
|
||||
if(!isset($active_types))
|
||||
foreach($_GET['types'] as $type => $value)
|
||||
$active_types[] = $type;
|
||||
}else{
|
||||
# if user have no access to filters
|
||||
$index = search_api_index_load(variable_get('mainsearchindex', -1));
|
||||
$indexed_bundles = $index->options['data_alter_callbacks']['search_api_alter_bundle_filter']['settings']['bundles'];
|
||||
foreach ($indexed_bundles as $bundle) {
|
||||
$active_types[] = $bundle;
|
||||
}
|
||||
}
|
||||
|
||||
user_save($user, array("data"=>array('materiosearchapi_bundlesfilter' => $active_types)));
|
||||
|
||||
# execute search
|
||||
$_GET['page'] = $page;
|
||||
|
||||
$path = $search_path . '/' . $keys ;//. ($page ? '?page='.$page : '');
|
||||
@@ -46,6 +72,7 @@ function materio_search_api_ajax_search($keys, $page = 0){
|
||||
'keys'=>$keys,
|
||||
'search_path'=>$search_path,
|
||||
'return'=>$return,
|
||||
'active_types'=>$active_types,
|
||||
);
|
||||
|
||||
if ($debug) {
|
||||
@@ -57,4 +84,27 @@ function materio_search_api_ajax_search($keys, $page = 0){
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
function materio_search_api_ajax_viewmode_change($vm){
|
||||
// dsm($vm);
|
||||
|
||||
global $user;
|
||||
// dsm($user, 'user');
|
||||
|
||||
$entity_infos = entity_get_info();
|
||||
// dsm($entity_infos, 'entity_infos');
|
||||
|
||||
if (in_array($vm, variable_get('availableviewmodes', array()))) {
|
||||
user_save($user, array("data"=>array('materiosearchapi_viewmode' => $vm)));
|
||||
$rep = array('statut'=>'saved');
|
||||
}else{
|
||||
$rep = array('statut'=>'viewmode not allowed');
|
||||
}
|
||||
|
||||
//return 'debug mode for materio_search_api_viewmode_change';
|
||||
drupal_json_output($rep);
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user