function Roles::calculateDependencies

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

Overrides HandlerBase::calculateDependencies

File

core/modules/user/src/Plugin/views/filter/Roles.php, line 75

Class

Roles
Filter handler for user roles.

Namespace

Drupal\user\Plugin\views\filter

Code

public function calculateDependencies() {
    $dependencies = [];
    if (in_array($this->operator, [
        'empty',
        'not empty',
    ])) {
        return $dependencies;
    }
    // The value might be a string due to the wrong plugin being used for role
    // field data, and subsequently the incorrect config schema object and
    // value. In the empty case stop early. Otherwise we cast it to an array
    // later.
    if (is_string($this->value) && $this->value === '') {
        return [];
    }
    foreach ((array) $this->value as $role_id) {
        if ($role = $this->roleStorage
            ->load($role_id)) {
            $dependencies[$role->getConfigDependencyKey()][] = $role->getConfigDependencyName();
        }
        else {
            trigger_error("The {$role_id} role does not exist. You should review and fix the configuration of the {$this->view->id()} view.", E_USER_WARNING);
        }
    }
    return $dependencies;
}

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