You are here

public function FilterPluginBase::showBuildGroupForm in Drupal 8

Same name and namespace in other branches
  1. 9 core/modules/views/src/Plugin/views/filter/FilterPluginBase.php \Drupal\views\Plugin\views\filter\FilterPluginBase::showBuildGroupForm()

Shortcut to display the exposed options form.

1 call to FilterPluginBase::showBuildGroupForm()
FilterPluginBase::buildOptionsForm in core/modules/views/src/Plugin/views/filter/FilterPluginBase.php
Provide the basic form which calls through to subforms. If overridden, it is best to call through to the parent, or to at least make sure all of the functions in this form are called.

File

core/modules/views/src/Plugin/views/filter/FilterPluginBase.php, line 364

Class

FilterPluginBase
Base class for Views filters handler plugins.

Namespace

Drupal\views\Plugin\views\filter

Code

public function showBuildGroupForm(&$form, FormStateInterface $form_state) {
  if (empty($this->options['is_grouped'])) {
    return;
  }
  $this
    ->buildExposedFiltersGroupForm($form, $form_state);

  // When we click the expose button, we add new gadgets to the form but they
  // have no data in POST so their defaults get wiped out. This prevents
  // these defaults from getting wiped out. This setting will only be TRUE
  // during a 2nd pass rerender.
  if ($form_state
    ->get('force_build_group_options')) {
    foreach (Element::children($form['group_info']) as $id) {
      if (isset($form['group_info'][$id]['#default_value']) && !isset($form['group_info'][$id]['#value'])) {
        $form['group_info'][$id]['#value'] = $form['group_info'][$id]['#default_value'];
      }
    }
  }
}