function elasticsearch_connector_search_api_form_search_api_page_search_form_alter in Elasticsearch Connector 7.2
Same name and namespace in other branches
- 7.5 modules/elasticsearch_connector_search_api/elasticsearch_connector_search_api.module \elasticsearch_connector_search_api_form_search_api_page_search_form_alter()
- 7 modules/elasticsearch_connector_search_api/elasticsearch_connector_search_api.module \elasticsearch_connector_search_api_form_search_api_page_search_form_alter()
Implements hook_form_FORM_ID_alter().
Adds autocompletion to the keywords field on search pages, if enabled by the user.
File
- modules/
elasticsearch_connector_search_api/ elasticsearch_connector_search_api.module, line 325 - Provides a elasticsearch-based service class for the Search API.
Code
function elasticsearch_connector_search_api_form_search_api_page_search_form_alter(array &$form, array &$form_state) {
if (module_exists('search_api_autocomplete')) {
if (isset($form['form'])) {
$form =& $form['form'];
}
$id = 'search_api_page_' . $form_state['build_info']['args'][0]->machine_name;
$search = search_api_autocomplete_search_load($id);
if (!$search || !search_api_autocomplete_access($search)) {
return;
}
$search
->alterElement($form['keys_' . $form['id']['#value']]);
if (!empty($search->options['custom']['link_suggestions'])) {
$form['keys_' . $form['id']['#value']]['#attached']['js'][] = drupal_get_path('module', 'elasticsearch_connector_search_api') . '/js/elasticsearch_connector_search_api_autocomplete.js';
$form['keys_' . $form['id']['#value']]['#attributes'] = array(
'class' => array(
'elasticsearch-autocomplete',
),
);
}
}
}