You are here

function search_api_federated_solr_search_block_form in Search API Federated Solr 7.2

Same name and namespace in other branches
  1. 7.3 search_api_federated_solr.module \search_api_federated_solr_search_block_form()
  2. 7 search_api_federated_solr.module \search_api_federated_solr_search_block_form()

Create custom search form.

1 string reference to 'search_api_federated_solr_search_block_form'
search_api_federated_solr_block_view in ./search_api_federated_solr.module
Implements hook_block_view().

File

./search_api_federated_solr.module, line 379
search_api_federated_solr.module Contains hook implementations for the Federated Solr Search API Module.

Code

function search_api_federated_solr_search_block_form($form, &$form_state) {
  $form['q'] = array(
    '#type' => 'textfield',
    '#title' => t('Search'),
    '#title_display' => 'invisible',
    '#size' => 15,
    '#default_value' => '',
    '#attributes' => array(
      'title' => t('Enter the terms you wish to search for.'),
      'placeholder' => '',
      'autocomplete' => 'off',
    ),
    '#prefix' => '<div class="container-inline">',
  );

  // @TODO: Block autocomplete.
  $auto = variable_get('search_api_federated_solr_autocomplete_block_is_enabled');
  if (!empty($auto)) {
    drupal_add_js(drupal_get_path('module', 'search_api_federated_solr') . '/js/search_api_federated_solr_autocomplete.js', 'file');
    $form['q']['#attributes']['class'][] = 'js-search-api-federated-solr-block-form-autocomplete';

    // Write the block autocomplete config to Drupal settings.
    $autocomplete = search_api_federated_solr_block_variables();
    drupal_add_js([
      'searchApiFederatedSolr' => [
        'block' => [
          'autocomplete' => $autocomplete,
        ],
      ],
    ], 'setting');
    drupal_add_css(drupal_get_path('module', 'search_api_federated_solr') . '/css/search_api_federated_solr_autocomplete.css', 'file');
  }

  // Send site name as qs param if app is configured to load w/default site.
  if (variable_get('search_api_federated_solr_set_search_site')) {
    $site_name = search_api_federated_solr_get_site_name();
    if ($site_name) {
      $form['sm_site_name'] = [
        '#type' => 'hidden',
        '#name' => 'sm_site_name',
        '#default_value' => $site_name,
      ];
    }
  }
  $form['submit'] = array(
    '#type' => 'submit',
    '#value' => t('Search'),
    '#name' => '',
    '#suffix' => '</div>',
  );
  return $form;
}