public function RemoveRoleUser::execute

Executes the plugin.

Overrides ExecutableInterface::execute

File

drupal/core/modules/user/lib/Drupal/user/Plugin/Action/RemoveRoleUser.php, line 28
Contains \Drupal\user\Plugin\Action\RemoveRoleUser.

Class

RemoveRoleUser
Removes a role from a user.

Namespace

Drupal\user\Plugin\Action

Code

public function execute($account = NULL) {
  $rid = $this->configuration['rid'];

  // Skip removing the role from the user if they already don't have it.
  if ($account !== FALSE && $account
    ->hasRole($rid)) {

    // For efficiency manually save the original account before applying
    // any changes.
    $account->original = clone $account;
    $account
      ->removeRole($rid);
    $account
      ->save();
  }
}