You are here

public function IndexTidDepth::buildOptionsForm in Drupal 9

Same name and namespace in other branches
  1. 8 core/modules/taxonomy/src/Plugin/views/argument/IndexTidDepth.php \Drupal\taxonomy\Plugin\views\argument\IndexTidDepth::buildOptionsForm()
  2. 10 core/modules/taxonomy/src/Plugin/views/argument/IndexTidDepth.php \Drupal\taxonomy\Plugin\views\argument\IndexTidDepth::buildOptionsForm()

Provide a form to edit options for this plugin.

Overrides ArgumentPluginBase::buildOptionsForm

File

core/modules/taxonomy/src/Plugin/views/argument/IndexTidDepth.php, line 61

Class

IndexTidDepth
Argument handler for taxonomy terms with depth.

Namespace

Drupal\taxonomy\Plugin\views\argument

Code

public function buildOptionsForm(&$form, FormStateInterface $form_state) {
  $form['depth'] = [
    '#type' => 'weight',
    '#title' => $this
      ->t('Depth'),
    '#default_value' => $this->options['depth'],
    '#description' => $this
      ->t('The depth will match nodes tagged with terms in the hierarchy. For example, if you have the term "fruit" and a child term "apple", with a depth of 1 (or higher) then filtering for the term "fruit" will get nodes that are tagged with "apple" as well as "fruit". If negative, the reverse is true; searching for "apple" will also pick up nodes tagged with "fruit" if depth is -1 (or lower).'),
  ];
  $form['break_phrase'] = [
    '#type' => 'checkbox',
    '#title' => $this
      ->t('Allow multiple values'),
    '#description' => $this
      ->t('If selected, users can enter multiple values in the form of 1+2+3. Due to the number of JOINs it would require, AND will be treated as OR with this filter.'),
    '#default_value' => !empty($this->options['break_phrase']),
  ];
  parent::buildOptionsForm($form, $form_state);
}