class UserName
Same name in other branches
- 9 core/modules/user/src/Plugin/views/argument_validator/UserName.php \Drupal\user\Plugin\views\argument_validator\UserName
- 10 core/modules/user/src/Plugin/views/argument_validator/UserName.php \Drupal\user\Plugin\views\argument_validator\UserName
- 11.x core/modules/user/src/Plugin/views/argument_validator/UserName.php \Drupal\user\Plugin\views\argument_validator\UserName
Validates whether a user name is valid.
Plugin annotation
@ViewsArgumentValidator(
id = "user_name",
title = @Translation("User name"),
entity_type = "user"
)
Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements \Drupal\Component\Plugin\PluginInspectionInterface, \Drupal\Component\Plugin\DerivativeInspectionInterface
- class \Drupal\Core\Plugin\PluginBase extends \Drupal\Component\Plugin\PluginBase uses \Drupal\Core\StringTranslation\StringTranslationTrait, \Drupal\Core\DependencyInjection\DependencySerializationTrait, \Drupal\Core\Messenger\MessengerTrait
- class \Drupal\views\Plugin\views\PluginBase extends \Drupal\Core\Plugin\PluginBase implements \Drupal\Core\Plugin\ContainerFactoryPluginInterface, \Drupal\views\Plugin\views\ViewsPluginInterface, \Drupal\Component\Plugin\DependentPluginInterface, \Drupal\Core\Security\TrustedCallbackInterface
- class \Drupal\views\Plugin\views\argument_validator\ArgumentValidatorPluginBase extends \Drupal\views\Plugin\views\PluginBase
- class \Drupal\views\Plugin\views\argument_validator\Entity extends \Drupal\views\Plugin\views\argument_validator\ArgumentValidatorPluginBase uses \Drupal\Core\DependencyInjection\DeprecatedServicePropertyTrait
- class \Drupal\views\Plugin\views\argument_validator\ArgumentValidatorPluginBase extends \Drupal\views\Plugin\views\PluginBase
- class \Drupal\views\Plugin\views\PluginBase extends \Drupal\Core\Plugin\PluginBase implements \Drupal\Core\Plugin\ContainerFactoryPluginInterface, \Drupal\views\Plugin\views\ViewsPluginInterface, \Drupal\Component\Plugin\DependentPluginInterface, \Drupal\Core\Security\TrustedCallbackInterface
- class \Drupal\Core\Plugin\PluginBase extends \Drupal\Component\Plugin\PluginBase uses \Drupal\Core\StringTranslation\StringTranslationTrait, \Drupal\Core\DependencyInjection\DependencySerializationTrait, \Drupal\Core\Messenger\MessengerTrait
Expanded class hierarchy of UserName
27 string references to 'UserName'
- AccessDeniedTest::testAccessDenied in core/
modules/ system/ tests/ src/ Functional/ System/ AccessDeniedTest.php - AccountForm::form in core/
modules/ user/ src/ AccountForm.php - Gets the actual form array to be built.
- AccountForm::form in core/
modules/ user/ src/ AccountForm.php - Gets the actual form array to be built.
- AssignOwnerNode::buildConfigurationForm in core/
modules/ node/ src/ Plugin/ Action/ AssignOwnerNode.php - Form constructor.
- DatabaseTestForm::buildForm in core/
modules/ system/ tests/ modules/ database_test/ src/ Form/ DatabaseTestForm.php - Form constructor.
File
-
core/
modules/ user/ src/ Plugin/ views/ argument_validator/ UserName.php, line 16
Namespace
Drupal\user\Plugin\views\argument_validatorView source
class UserName extends User {
/**
* {@inheritdoc}
*/
public function buildOptionsForm(&$form, FormStateInterface $form_state) {
parent::buildOptionsForm($form, $form_state);
$entity_type = $this->entityTypeManager
->getDefinition('user');
$form['multiple']['#options'] = [
0 => $this->t('Single name', [
'%type' => $entity_type->getLabel(),
]),
1 => $this->t('One or more names separated by , or +', [
'%type' => $entity_type->getLabel(),
]),
];
}
/**
* {@inheritdoc}
*/
public function validateArgument($argument) {
if ($this->multipleCapable && $this->options['multiple']) {
// At this point only interested in individual IDs no matter what type,
// just splitting by the allowed delimiters.
$names = array_filter(preg_split('/[,+ ]/', $argument));
}
elseif ($argument) {
$names = [
$argument,
];
}
else {
return FALSE;
}
$accounts = $this->userStorage
->loadByProperties([
'name' => $names,
]);
// If there are no accounts, return FALSE now. As we will not enter the
// loop below otherwise.
if (empty($accounts)) {
return FALSE;
}
// Validate each account. If any fails break out and return false.
foreach ($accounts as $account) {
if (!in_array($account->getAccountName(), $names) || !$this->validateEntity($account)) {
return FALSE;
}
}
return TRUE;
}
/**
* {@inheritdoc}
*/
public function processSummaryArguments(&$args) {
// If the validation says the input is an username, we should reverse the
// argument so it works for example for generation summary urls.
$uids_arg_keys = array_flip($args);
foreach ($this->userStorage
->loadMultiple($args) as $uid => $account) {
$args[$uids_arg_keys[$uid]] = $account->label();
}
}
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overriden Title | Overrides |
---|---|---|---|---|---|
ArgumentValidatorPluginBase::$argument | protected | property | The argument handler instance associated with this plugin. | ||
ArgumentValidatorPluginBase::access | public | function | Determines if the administrator has the privileges to use this plugin. | ||
ArgumentValidatorPluginBase::checkAccess | protected | function | Blocks user input when the form is shown but we donĀ“t have access. | ||
ArgumentValidatorPluginBase::setArgument | public | function | Sets the parent argument this plugin is associated with. | ||
ArgumentValidatorPluginBase::validateOptionsForm | public | function | Provides the default form for validating options. | Overrides PluginBase::validateOptionsForm | |
DeprecatedServicePropertyTrait::__get | public | function | Allows to access deprecated/removed properties. | ||
DerivativeInspectionInterface::getBaseId | public | function | Gets the base_plugin_id of the plugin instance. | 1 | |
DerivativeInspectionInterface::getDerivativeId | public | function | Gets the derivative_id of the plugin instance. | 1 | |
Entity::$deprecatedProperties | protected | property | |||
Entity::$entityTypeBundleInfo | protected | property | The entity bundle info. | ||
Entity::$entityTypeManager | protected | property | The entity type manager. | ||
Entity::$multipleCapable | protected | property | If this validator can handle multiple arguments. | ||
Entity::create | public static | function | Creates an instance of the plugin. | Overrides PluginBase::create | |
Entity::getContextDefinition | public | function | Returns a context definition for this argument. | Overrides ArgumentValidatorPluginBase::getContextDefinition | |
PluginBase::$definition | public | property | Plugins's definition | ||
PluginBase::$displayHandler | public | property | The display object this plugin is for. | ||
PluginBase::$options | public | property | Options for this plugin will be held here. | ||
PluginBase::$renderer | protected | property | Stores the render API renderer. | 3 | |
PluginBase::$usesOptions | protected | property | Denotes whether the plugin has an additional options form. | 8 | |
PluginBase::$view | public | property | The top object of a view. | 1 | |
PluginBase::destroy | public | function | Clears a plugin. | Overrides ViewsPluginInterface::destroy | 2 |
PluginBase::doFilterByDefinedOptions | protected | function | Do the work to filter out stored options depending on the defined options. | ||
PluginBase::filterByDefinedOptions | public | function | Filter out stored options depending on the defined options. | Overrides ViewsPluginInterface::filterByDefinedOptions | |
PluginBase::getAvailableGlobalTokens | public | function | Returns an array of available token replacements. | Overrides ViewsPluginInterface::getAvailableGlobalTokens | |
PluginBase::getProvider | public | function | Returns the plugin provider. | Overrides ViewsPluginInterface::getProvider | |
PluginBase::getRenderer | protected | function | Returns the render API renderer. | 1 | |
PluginBase::globalTokenForm | public | function | Adds elements for available core tokens to a form. | Overrides ViewsPluginInterface::globalTokenForm | |
PluginBase::globalTokenReplace | public | function | Returns a string with any core tokens replaced. | Overrides ViewsPluginInterface::globalTokenReplace | |
PluginBase::INCLUDE_ENTITY | constant | Include entity row languages when listing languages. | |||
PluginBase::INCLUDE_NEGOTIATED | constant | Include negotiated languages when listing languages. | |||
PluginBase::init | public | function | Initialize the plugin. | Overrides ViewsPluginInterface::init | 8 |
PluginBase::listLanguages | protected | function | Makes an array of languages, optionally including special languages. | ||
PluginBase::pluginTitle | public | function | Return the human readable name of the display. | Overrides ViewsPluginInterface::pluginTitle | |
PluginBase::preRenderAddFieldsetMarkup | public static | function | Moves form elements into fieldsets for presentation purposes. | Overrides ViewsPluginInterface::preRenderAddFieldsetMarkup | |
PluginBase::preRenderFlattenData | public static | function | Flattens the structure of form elements. | Overrides ViewsPluginInterface::preRenderFlattenData | |
PluginBase::query | public | function | Add anything to the query that we might need to. | Overrides ViewsPluginInterface::query | 8 |
PluginBase::queryLanguageSubstitutions | public static | function | Returns substitutions for Views queries for languages. | ||
PluginBase::setOptionDefaults | protected | function | Fills up the options of the plugin with defaults. | ||
PluginBase::summaryTitle | public | function | Returns the summary of the settings in the display. | Overrides ViewsPluginInterface::summaryTitle | 6 |
PluginBase::themeFunctions | public | function | Provide a full list of possible theme templates used by this style. | Overrides ViewsPluginInterface::themeFunctions | 1 |
PluginBase::trustedCallbacks | public static | function | Lists the trusted callbacks provided by the implementing class. | Overrides TrustedCallbackInterface::trustedCallbacks | 6 |
PluginBase::unpackOptions | public | function | Unpack options over our existing defaults, drilling down into arrays so that defaults don't get totally blown away. |
Overrides ViewsPluginInterface::unpackOptions | |
PluginBase::usesOptions | public | function | Returns the usesOptions property. | Overrides ViewsPluginInterface::usesOptions | 8 |
PluginBase::validate | public | function | Validate that the plugin is correct and can be saved. | Overrides ViewsPluginInterface::validate | 6 |
PluginBase::viewsTokenReplace | protected | function | Replaces Views' tokens in a given string. The resulting string will be sanitized with Xss::filterAdmin. |
1 | |
PluginBase::VIEWS_QUERY_LANGUAGE_SITE_DEFAULT | constant | Query string to indicate the site default language. | |||
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 | |
TrustedCallbackInterface::THROW_EXCEPTION | constant | Untrusted callbacks throw exceptions. | |||
TrustedCallbackInterface::TRIGGER_SILENCED_DEPRECATION | constant | Untrusted callbacks trigger silenced E_USER_DEPRECATION errors. | |||
TrustedCallbackInterface::TRIGGER_WARNING | constant | Untrusted callbacks trigger E_USER_WARNING errors. | |||
User::$userStorage | protected | property | The user storage. | ||
User::calculateDependencies | public | function | Calculates dependencies for the configured plugin. | Overrides Entity::calculateDependencies | |
User::defineOptions | protected | function | Retrieves the options when this is a new access control plugin. | Overrides Entity::defineOptions | |
User::submitOptionsForm | public | function | Provides the default form for submitting options. | Overrides Entity::submitOptionsForm | |
User::validateEntity | protected | function | Validates an individual entity against class access settings. | Overrides Entity::validateEntity | |
User::__construct | public | function | Constructs an \Drupal\views\Plugin\views\argument_validator\Entity object. | Overrides Entity::__construct | |
UserName::buildOptionsForm | public | function | Provides the default form for setting options. | Overrides User::buildOptionsForm | |
UserName::processSummaryArguments | public | function | Processes the summary arguments for displaying. | Overrides ArgumentValidatorPluginBase::processSummaryArguments | |
UserName::validateArgument | public | function | Performs validation for a given argument. | Overrides Entity::validateArgument |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.