You are here

public function Hidden::exposedFormAlter in Better Exposed Filters 8.4

Same name and namespace in other branches
  1. 8.5 src/Plugin/better_exposed_filters/filter/Hidden.php \Drupal\better_exposed_filters\Plugin\better_exposed_filters\filter\Hidden::exposedFormAlter()

Manipulate views exposed from element.

Parameters

array $form: The views configuration form.

\Drupal\Core\Form\FormStateInterface $form_state: Form state.

Overrides FilterWidgetBase::exposedFormAlter

File

src/Plugin/better_exposed_filters/filter/Hidden.php, line 20

Class

Hidden
Default widget implementation.

Namespace

Drupal\better_exposed_filters\Plugin\better_exposed_filters\filter

Code

public function exposedFormAlter(array &$form, FormStateInterface $form_state) {
  $field_id = $this
    ->getExposedFilterFieldId();
  parent::exposedFormAlter($form, $form_state);
  if (empty($form[$field_id]['#multiple'])) {

    // Single entry filters can simply be changed to a different element
    // type.
    $form[$field_id]['#type'] = 'hidden';
  }
  else {

    // Hide the label.
    $form['#info']["filter-{$field_id}"]['label'] = '';
    $form[$field_id]['#title'] = '';

    // Use BEF's preprocess and template to output the hidden elements.
    $form[$field_id]['#theme'] = 'bef_hidden';
  }
}