function search_autocomplete_autocomplete in Search Autocomplete 7.4
Same name and namespace in other branches
- 5 search_autocomplete.module \search_autocomplete_autocomplete()
- 6.4 search_autocomplete.autocomplete.inc \search_autocomplete_autocomplete()
- 6 search_autocomplete.module \search_autocomplete_autocomplete()
- 6.2 search_autocomplete.module \search_autocomplete_autocomplete()
- 7.2 search_autocomplete.module \search_autocomplete_autocomplete()
Page callback: Returns JSON data of content that matches the user's input.
Parameters
string $fid: Description of a parameter for this page.
Return value
NULL Never returns; calls exit().
See also
1 string reference to 'search_autocomplete_autocomplete'
- search_autocomplete_menu in ./
search_autocomplete.admin.inc - Implements hook_menu().
File
- ./
search_autocomplete.autocomplete.inc, line 58 - Function to compute the various autocomplete features.
Code
function search_autocomplete_autocomplete($fid) {
$user_input = isset($_GET['term']) ? $_GET['term'] : '';
$user_input = filter_xss($user_input);
$result = db_select('search_autocomplete_forms', 'f')
->fields('f', array(
'data_view',
'no_results',
'all_results',
))
->condition('f.fid', $fid, '=')
->execute()
->fetchAssoc();
$view = views_get_view($result['data_view']);
$view_exposed_filters = views_get_view($result['data_view']);
$view_exposed_filters
->set_display('default');
$view_exposed_filters->is_cacheable = FALSE;
$view_exposed_filters
->execute();
foreach ($view_exposed_filters->exposed_raw_input as $key => $value) {
$view->exposed_input[$key] = $user_input;
}
// Add our custom data in the view for rendering.
$view->autocompletion_data['user_input'] = addslashes($user_input);
$view->autocompletion_data['no_results'] = $result['no_results'];
$view->autocompletion_data['all_results'] = $result['all_results'];
if (method_exists($view, 'render')) {
echo $view
->render();
}
else {
echo drupal_json_encode(array());
}
exit;
}