You are here

function theme_live_results_search in Search API live results 7

Theme callback for the live results form element

Parameters

type $variables:

Return value

type

1 theme call to theme_live_results_search()
search_api_live_results_element_info in ./search_api_live_results.module
Implements hook_element_info().

File

./search_api_live_results.module, line 113

Code

function theme_live_results_search($variables) {
  $element = $variables['element'];
  $element['#attributes']['type'] = 'text';
  element_set_attributes($element, array(
    'id',
    'name',
    'value',
    'size',
    'maxlength',
  ));
  _form_set_class($element, array(
    'form-text',
  ));
  $extra = '';
  if ($element['#autocomplete_path']) {
    $parts = explode("/", $element['#autocomplete_path']);

    //'search_api_live_results/search_api_page_1',
    $search = search_api_live_results_search_load(array_pop($parts));
    drupal_add_library('system', 'drupal.autocomplete');
    drupal_add_js(drupal_get_path('module', 'search_api_live_results') . '/js/search_api_live_results.js');
    drupal_add_js(array(
      'search_api_live_results' => array(
        'min_length' => $search->options['min_length'] != NULL ? intval($search->options['min_length']) : 3,
        'auto_hide' => isset($search->options['auto_hide']) && $search->options['auto_hide'] == 0 ? FALSE : TRUE,
      ),
    ), 'setting');
    $element['#attributes']['class'][] = 'form-autocomplete';
    $element['#attributes']['class'][] = 'live-results-search-textfield';
    $attributes = array();
    $attributes['type'] = 'hidden';
    $attributes['id'] = $element['#attributes']['id'] . '-autocomplete';
    $query = array();
    if (isset($element['#autocomplete_query'])) {
      $query = $element['#autocomplete_query'];
      $element['#attributes']['class'][] = 'caching-method-enabled';
    }
    $attributes['value'] = url($element['#autocomplete_path'], array(
      'absolute' => TRUE,
      'query' => $query,
    ));
    $attributes['disabled'] = 'disabled';
    $attributes['class'][] = 'live-result-autocomplete';
    $extra = '<input' . drupal_attributes($attributes) . ' />';
  }
  $output = '<input' . drupal_attributes($element['#attributes']) . ' />';
  return $output . $extra;
}