class AddRoleUser

Same name in other branches
  1. 8.9.x core/modules/user/src/Plugin/Action/AddRoleUser.php \Drupal\user\Plugin\Action\AddRoleUser
  2. 10 core/modules/user/src/Plugin/Action/AddRoleUser.php \Drupal\user\Plugin\Action\AddRoleUser
  3. 11.x core/modules/user/src/Plugin/Action/AddRoleUser.php \Drupal\user\Plugin\Action\AddRoleUser

Adds a role to a user.

Plugin annotation


@Action(
  id = "user_add_role_action",
  label = @Translation("Add a role to the selected users"),
  type = "user"
)

Hierarchy

Expanded class hierarchy of AddRoleUser

1 file declares its use of AddRoleUser
AddRoleUserTest.php in core/modules/user/tests/src/Unit/Plugin/Action/AddRoleUserTest.php

File

core/modules/user/src/Plugin/Action/AddRoleUser.php, line 14

Namespace

Drupal\user\Plugin\Action
View source
class AddRoleUser extends ChangeUserRoleBase {
    
    /**
     * {@inheritdoc}
     */
    public function execute($account = NULL) {
        $rid = $this->configuration['rid'];
        // Skip adding the role to the user if they already have it.
        if ($account !== FALSE && !$account->hasRole($rid)) {
            // For efficiency manually save the original account before applying
            // any changes.
            $account->original = clone $account;
            $account->addRole($rid);
            $account->save();
        }
    }

}

Members

Title Sort descending Modifiers Object type Summary Overriden Title Overrides
ActionBase::executeMultiple public function Executes the plugin for an array of objects. Overrides ActionInterface::executeMultiple 3
AddRoleUser::execute public function Executes the plugin. Overrides ExecutableInterface::execute
ChangeUserRoleBase::$entityType protected property The user role entity type.
ChangeUserRoleBase::access public function Checks object access. Overrides ActionInterface::access
ChangeUserRoleBase::buildConfigurationForm public function Form constructor. Overrides PluginFormInterface::buildConfigurationForm
ChangeUserRoleBase::calculateDependencies public function Calculates dependencies for the configured plugin. Overrides ConfigurableActionBase::calculateDependencies
ChangeUserRoleBase::create public static function Creates an instance of the plugin. Overrides ContainerFactoryPluginInterface::create
ChangeUserRoleBase::defaultConfiguration public function Gets default configuration for this plugin. Overrides ConfigurableActionBase::defaultConfiguration
ChangeUserRoleBase::submitConfigurationForm public function Form submission handler. Overrides PluginFormInterface::submitConfigurationForm
ChangeUserRoleBase::__construct public function Overrides ConfigurableActionBase::__construct
ConfigurableActionBase::getConfiguration public function Gets this plugin's configuration. Overrides ConfigurableInterface::getConfiguration
ConfigurableActionBase::setConfiguration public function Sets the configuration for this plugin instance. Overrides ConfigurableInterface::setConfiguration
ConfigurableActionBase::validateConfigurationForm public function Form validation handler. Overrides PluginFormInterface::validateConfigurationForm 2
DependencyTrait::$dependencies protected property The object's dependencies.
DependencyTrait::addDependencies protected function Adds multiple dependencies.
DependencyTrait::addDependency protected function Adds a dependency.
PluginInspectionInterface::getPluginDefinition public function Gets the definition of the plugin implementation. 6
PluginInspectionInterface::getPluginId public function Gets the plugin_id of the plugin instance. 2

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