You are here

public function Roles::calculateDependencies in Drupal 10

Same name and namespace in other branches
  1. 8 core/modules/user/src/Plugin/views/filter/Roles.php \Drupal\user\Plugin\views\filter\Roles::calculateDependencies()
  2. 9 core/modules/user/src/Plugin/views/filter/Roles.php \Drupal\user\Plugin\views\filter\Roles::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;
}