function ManyToOne::operators

Same name and namespace in other branches
  1. 8.9.x core/modules/views/src/Plugin/views/filter/ManyToOne.php \Drupal\views\Plugin\views\filter\ManyToOne::operators()
  2. 10 core/modules/views/src/Plugin/views/filter/ManyToOne.php \Drupal\views\Plugin\views\filter\ManyToOne::operators()
  3. 11.x core/modules/views/src/Plugin/views/filter/ManyToOne.php \Drupal\views\Plugin\views\filter\ManyToOne::operators()

Gets the operators.

This kind of construct makes it relatively easy for a child class to add or remove functionality by overriding this function and adding/removing items from this array.

Overrides InOperator::operators

2 calls to ManyToOne::operators()
ManyToOne::ensureMyTable in core/modules/views/src/Plugin/views/filter/ManyToOne.php
Ensures that the main table for this handler is in the query.
Roles::operators in core/modules/user/src/Plugin/views/filter/Roles.php
Override empty and not empty operator labels to be clearer for user roles.
1 method overrides ManyToOne::operators()
Roles::operators in core/modules/user/src/Plugin/views/filter/Roles.php
Override empty and not empty operator labels to be clearer for user roles.

File

core/modules/views/src/Plugin/views/filter/ManyToOne.php, line 58

Class

ManyToOne
Complex filter to handle filtering for many to one relationships.

Namespace

Drupal\views\Plugin\views\filter

Code

public function operators() {
  $operators = [
    'or' => [
      'title' => $this->t('Is one of'),
      'short' => $this->t('or'),
      'short_single' => $this->t('='),
      'method' => 'opHelper',
      'values' => 1,
      'ensure_my_table' => 'helper',
    ],
    'and' => [
      'title' => $this->t('Is all of'),
      'short' => $this->t('and'),
      'short_single' => $this->t('='),
      'method' => 'opHelper',
      'values' => 1,
      'ensure_my_table' => 'helper',
    ],
    'not' => [
      'title' => $this->t('Is none of'),
      'short' => $this->t('not'),
      'short_single' => $this->t('<>'),
      'method' => 'opHelper',
      'values' => 1,
      'ensure_my_table' => 'helper',
    ],
  ];
  // if the definition allows for the empty operator, add it.
  if (!empty($this->definition['allow empty'])) {
    $operators += [
      'empty' => [
        'title' => $this->t('Is empty (NULL)'),
        'method' => 'opEmpty',
        'short' => $this->t('empty'),
        'values' => 0,
      ],
      'not empty' => [
        'title' => $this->t('Is not empty (NOT NULL)'),
        'method' => 'opEmpty',
        'short' => $this->t('not empty'),
        'values' => 0,
      ],
    ];
  }
  return $operators;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.