class Permissions
Same name in this branch
- 9 core/modules/content_moderation/src/Permissions.php \Drupal\content_moderation\Permissions
- 9 core/modules/user/src/Plugin/views/filter/Permissions.php \Drupal\user\Plugin\views\filter\Permissions
Same name and namespace in other branches
- 11.x core/modules/content_moderation/src/Permissions.php \Drupal\content_moderation\Permissions
- 11.x core/modules/user/src/Plugin/views/field/Permissions.php \Drupal\user\Plugin\views\field\Permissions
- 11.x core/modules/user/src/Plugin/views/filter/Permissions.php \Drupal\user\Plugin\views\filter\Permissions
- 10 core/modules/content_moderation/src/Permissions.php \Drupal\content_moderation\Permissions
- 10 core/modules/user/src/Plugin/views/field/Permissions.php \Drupal\user\Plugin\views\field\Permissions
- 10 core/modules/user/src/Plugin/views/filter/Permissions.php \Drupal\user\Plugin\views\filter\Permissions
- 8.9.x core/modules/content_moderation/src/Permissions.php \Drupal\content_moderation\Permissions
- 8.9.x core/modules/user/src/Plugin/views/field/Permissions.php \Drupal\user\Plugin\views\field\Permissions
- 8.9.x core/modules/user/src/Plugin/views/filter/Permissions.php \Drupal\user\Plugin\views\filter\Permissions
Field handler to provide a list of permissions.
Plugin annotation
@ViewsField("user_permissions");
Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements \Drupal\Component\Plugin\PluginInspectionInterface, \Drupal\Component\Plugin\DerivativeInspectionInterface
- class \Drupal\Core\Plugin\PluginBase uses \Drupal\Core\StringTranslation\StringTranslationTrait, \Drupal\Core\DependencyInjection\DependencySerializationTrait, \Drupal\Core\Messenger\MessengerTrait extends \Drupal\Component\Plugin\PluginBase
- class \Drupal\views\Plugin\views\PluginBase implements \Drupal\Core\Plugin\ContainerFactoryPluginInterface, \Drupal\views\Plugin\views\ViewsPluginInterface, \Drupal\Component\Plugin\DependentPluginInterface, \Drupal\Core\Security\TrustedCallbackInterface extends \Drupal\Core\Plugin\PluginBase
- class \Drupal\views\Plugin\views\HandlerBase implements \Drupal\views\Plugin\views\ViewsHandlerInterface extends \Drupal\views\Plugin\views\PluginBase
- class \Drupal\views\Plugin\views\field\FieldPluginBase implements \Drupal\views\Plugin\views\field\FieldHandlerInterface extends \Drupal\views\Plugin\views\HandlerBase
- class \Drupal\views\Plugin\views\field\PrerenderList implements \Drupal\views\Plugin\views\field\MultiItemsFieldHandlerInterface extends \Drupal\views\Plugin\views\field\FieldPluginBase
- class \Drupal\user\Plugin\views\field\Permissions extends \Drupal\views\Plugin\views\field\PrerenderList
- class \Drupal\views\Plugin\views\field\PrerenderList implements \Drupal\views\Plugin\views\field\MultiItemsFieldHandlerInterface extends \Drupal\views\Plugin\views\field\FieldPluginBase
- class \Drupal\views\Plugin\views\field\FieldPluginBase implements \Drupal\views\Plugin\views\field\FieldHandlerInterface extends \Drupal\views\Plugin\views\HandlerBase
- class \Drupal\views\Plugin\views\HandlerBase implements \Drupal\views\Plugin\views\ViewsHandlerInterface extends \Drupal\views\Plugin\views\PluginBase
- class \Drupal\views\Plugin\views\PluginBase implements \Drupal\Core\Plugin\ContainerFactoryPluginInterface, \Drupal\views\Plugin\views\ViewsPluginInterface, \Drupal\Component\Plugin\DependentPluginInterface, \Drupal\Core\Security\TrustedCallbackInterface extends \Drupal\Core\Plugin\PluginBase
- class \Drupal\Core\Plugin\PluginBase uses \Drupal\Core\StringTranslation\StringTranslationTrait, \Drupal\Core\DependencyInjection\DependencySerializationTrait, \Drupal\Core\Messenger\MessengerTrait extends \Drupal\Component\Plugin\PluginBase
Expanded class hierarchy of Permissions
Related topics
12 string references to 'Permissions'
- d6_user_role.yml in core/
modules/ user/ migrations/ d6_user_role.yml - core/modules/user/migrations/d6_user_role.yml
- d7_user_role.yml in core/
modules/ user/ migrations/ d7_user_role.yml - core/modules/user/migrations/d7_user_role.yml
- PermissionHandler::getYamlDiscovery in core/
modules/ user/ src/ PermissionHandler.php - Gets the YAML discovery.
- Role::prepareRow in core/
modules/ user/ src/ Plugin/ migrate/ source/ d7/ Role.php - Role::prepareRow in core/
modules/ user/ src/ Plugin/ migrate/ source/ d6/ Role.php - Adds additional data to the row.
File
-
core/
modules/ user/ src/ Plugin/ views/ field/ Permissions.php, line 19
Namespace
Drupal\user\Plugin\views\fieldView source
class Permissions extends PrerenderList {
/**
* The role storage.
*
* @var \Drupal\user\RoleStorageInterface
*/
protected $roleStorage;
/**
* The module handler.
*
* @var \Drupal\Core\Extension\ModuleHandlerInterface
*/
protected $moduleHandler;
/**
* Constructs a \Drupal\user\Plugin\views\field\Permissions object.
*
* @param array $configuration
* A configuration array containing information about the plugin instance.
* @param string $plugin_id
* The plugin_id for the plugin instance.
* @param mixed $plugin_definition
* The plugin implementation definition.
* @param \Drupal\Core\Extension\ModuleHandlerInterface $module_handler
* The module handler.
* @param \Drupal\Core\Entity\EntityTypeManagerInterface $entity_type_manager
* The entity type manager.
*/
public function __construct(array $configuration, $plugin_id, $plugin_definition, ModuleHandlerInterface $module_handler, EntityTypeManagerInterface $entity_type_manager) {
parent::__construct($configuration, $plugin_id, $plugin_definition);
$this->roleStorage = $entity_type_manager->getStorage('user_role');
$this->moduleHandler = $module_handler;
}
/**
* {@inheritdoc}
*/
public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition) {
return new static($configuration, $plugin_id, $plugin_definition, $container->get('module_handler'), $container->get('entity_type.manager'));
}
/**
* {@inheritdoc}
*/
public function init(ViewExecutable $view, DisplayPluginBase $display, array &$options = NULL) {
parent::init($view, $display, $options);
$this->additional_fields['uid'] = [
'table' => 'users_field_data',
'field' => 'uid',
];
}
public function query() {
$this->addAdditionalFields();
$this->field_alias = $this->aliases['uid'];
}
public function preRender(&$values) {
$this->items = [];
$permission_names = \Drupal::service('user.permissions')->getPermissions();
$rids = [];
foreach ($values as $result) {
$user_rids = $this->getEntity($result)
->getRoles();
$uid = $this->getValue($result);
foreach ($user_rids as $rid) {
$rids[$rid][] = $uid;
}
}
if ($rids) {
$roles = $this->roleStorage
->loadMultiple(array_keys($rids));
foreach ($rids as $rid => $role_uids) {
foreach ($roles[$rid]->getPermissions() as $permission) {
foreach ($role_uids as $uid) {
$this->items[$uid][$permission]['permission'] = $permission_names[$permission]['title'];
}
}
}
foreach ($this->items as &$permission) {
ksort($permission);
}
}
}
public function render_item($count, $item) {
return $item['permission'];
}
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overriden Title | Overrides |
---|---|---|---|---|---|
DependencySerializationTrait::$_entityStorages | protected | property | An array of entity type IDs keyed by the property name of their storages. | ||
DependencySerializationTrait::$_serviceIds | protected | property | An array of service IDs keyed by property name used for serialization. | ||
DependencySerializationTrait::__sleep | public | function | |||
DependencySerializationTrait::__wakeup | public | function | #[\ReturnTypeWillChange] | ||
FieldPluginBase::$additional_fields | public | property | Stores additional fields which get added to the query. | ||
FieldPluginBase::$aliases | public | property | |||
FieldPluginBase::$field_alias | public | property | |||
FieldPluginBase::$lastRenderIndex | protected | property | Keeps track of the last render index. | ||
FieldPluginBase::$linkGenerator | protected | property | The link generator. | ||
FieldPluginBase::$original_value | public | property | The field value prior to any rewriting. | ||
FieldPluginBase::$renderer | protected | property | Stores the render API renderer. | ||
FieldPluginBase::addAdditionalFields | protected | function | Add 'additional' fields to the query. | ||
FieldPluginBase::addSelfTokens | protected | function | Add any special tokens this field might use for itself. | ||
FieldPluginBase::adminLabel | public | function | |||
FieldPluginBase::adminSummary | public | function | Provide extra data to the administration form. | ||
FieldPluginBase::advancedRender | public | function | |||
FieldPluginBase::allowAdvancedRender | protected | function | Determine if this field can allow advanced rendering. | ||
FieldPluginBase::clickSort | public | function | |||
FieldPluginBase::clickSortable | public | function | |||
FieldPluginBase::documentSelfTokens | protected | function | Document any special tokens this field might use for itself. | ||
FieldPluginBase::elementClasses | public | function | |||
FieldPluginBase::elementLabelClasses | public | function | |||
FieldPluginBase::elementLabelType | public | function | |||
FieldPluginBase::elementType | public | function | |||
FieldPluginBase::elementWrapperClasses | public | function | |||
FieldPluginBase::elementWrapperType | public | function | |||
FieldPluginBase::getElements | public | function | |||
FieldPluginBase::getEntity | public | function | |||
FieldPluginBase::getFieldTokenPlaceholder | protected | function | Returns a token placeholder for the current field. | ||
FieldPluginBase::getPreviousFieldLabels | protected | function | Returns all field labels of fields before this field. | ||
FieldPluginBase::getRenderer | protected | function | Returns the render API renderer. | ||
FieldPluginBase::getRenderTokens | public | function | |||
FieldPluginBase::getTokenValuesRecursive | protected | function | Recursive function to add replacements for nested query string parameters. | ||
FieldPluginBase::getValue | public | function | |||
FieldPluginBase::isValueEmpty | public | function | |||
FieldPluginBase::label | public | function | |||
FieldPluginBase::linkGenerator | protected | function | Gets the link generator. | ||
FieldPluginBase::postRender | public | function | |||
FieldPluginBase::render | public | function | 1 | ||
FieldPluginBase::render | public | function | 1 | ||
FieldPluginBase::render | public | function | 1 | ||
FieldPluginBase::renderAltered | protected | function | Render this field as user-defined altered text. | ||
FieldPluginBase::renderAsLink | protected | function | Render this field as a link, with the info from a fieldset set by the user. | ||
FieldPluginBase::renderText | public | function | |||
FieldPluginBase::renderTrimText | protected | function | Trims the field down to the specified length. | ||
FieldPluginBase::RENDER_TEXT_PHASE_COMPLETELY | constant | Indicator of the renderText() method for rendering the whole element. | |||
FieldPluginBase::RENDER_TEXT_PHASE_EMPTY | constant | Indicator of the renderText() method for rendering the empty text. | |||
FieldPluginBase::RENDER_TEXT_PHASE_SINGLE_ITEM | constant | Indicator of the renderText() method for rendering a single item. | |||
FieldPluginBase::submitOptionsForm | public | function | Performs some cleanup tasks on the options array before saving it. | ||
FieldPluginBase::theme | public | function | |||
FieldPluginBase::themeFunctions | public | function | |||
FieldPluginBase::tokenizeValue | public | function | |||
FieldPluginBase::trimText | public static | function | Trims the field down to the specified length. | ||
FieldPluginBase::useStringGroupBy | public | function | |||
HandlerBase::$field | public | property | With field you can override the realField if the real field is not set. | ||
HandlerBase::$query | public | property | Where the $query object will reside. | ||
HandlerBase::$realField | public | property | The real field. | ||
HandlerBase::$relationship | public | property | The relationship used for this field. | ||
HandlerBase::$table | public | property | The table this handler is attached to. | ||
HandlerBase::$tableAlias | public | property | The alias of the table of this handler which is used in the query. | ||
HandlerBase::$viewsData | protected | property | The views data service. | ||
HandlerBase::acceptExposedInput | public | function | Take input from exposed handlers and assign to this handler, if necessary. | ||
HandlerBase::access | public | function | |||
HandlerBase::breakString | public static | function | |||
HandlerBase::broken | public | function | |||
HandlerBase::buildExposedForm | public | function | Render our chunk of the exposed handler form when selecting. | ||
HandlerBase::buildExposeForm | public | function | Form for exposed handler options. | ||
HandlerBase::buildExtraOptionsForm | public | function | Provide a form for setting options. | ||
HandlerBase::buildGroupByForm | public | function | Provide a form for aggregation settings. | ||
HandlerBase::calculateDependencies | public | function | 1 | ||
HandlerBase::calculateDependencies | public | function | 1 | ||
HandlerBase::calculateDependencies | public | function | 1 | ||
HandlerBase::canExpose | public | function | Determine if a handler can be exposed. | ||
HandlerBase::caseTransform | protected | function | Transform a string by a certain method. | ||
HandlerBase::defaultExposeOptions | public | function | Set new exposed option defaults when exposed setting is flipped on. | ||
HandlerBase::defineExtraOptions | public | function | Provide defaults for the handler. | ||
HandlerBase::displayExposedForm | public | function | Displays the Expose form. | ||
HandlerBase::ensureMyTable | public | function | |||
HandlerBase::exposedInfo | public | function | Get information about the exposed form for the form renderer. | ||
HandlerBase::getDateField | public | function | Creates cross-database SQL dates. | ||
HandlerBase::getDateFormat | public | function | Creates cross-database SQL date formatting. | ||
HandlerBase::getEntityType | public | function | |||
HandlerBase::getField | public | function | |||
HandlerBase::getJoin | public | function | |||
HandlerBase::getModuleHandler | protected | function | Gets the module handler. | ||
HandlerBase::getTableJoin | public static | function | |||
HandlerBase::getViewsData | protected | function | Gets views data service. | ||
HandlerBase::hasExtraOptions | public | function | Determines if the handler has extra options. | ||
HandlerBase::isAGroup | public | function | Returns TRUE if the exposed filter works like a grouped filter. | ||
HandlerBase::isExposed | public | function | Determine if this item is 'exposed'. | ||
HandlerBase::multipleExposedInput | public | function | Define if the exposed input has to be submitted multiple times. | ||
HandlerBase::placeholder | protected | function | Provides a unique placeholders for handlers. | ||
HandlerBase::postExecute | public | function | |||
HandlerBase::preQuery | public | function | |||
HandlerBase::sanitizeValue | public | function | |||
HandlerBase::setModuleHandler | public | function | Sets the module handler. | ||
HandlerBase::setRelationship | public | function | |||
HandlerBase::setViewsData | public | function | |||
HandlerBase::showExposeButton | public | function | Shortcut to display the expose/hide button. | ||
HandlerBase::showExposeForm | public | function | Shortcut to display the exposed options form. | ||
HandlerBase::storeExposedInput | public | function | If set to remember exposed input in the session, store it there. | ||
HandlerBase::submitExposed | public | function | Submit the exposed handler form. | ||
HandlerBase::submitExposeForm | public | function | Perform any necessary changes to the form exposes prior to storage. | ||
HandlerBase::submitExtraOptionsForm | public | function | Perform any necessary changes to the form values prior to storage. | ||
HandlerBase::submitFormCalculateOptions | public | function | Calculates options stored on the handler. | ||
HandlerBase::submitGroupByForm | public | function | Perform any necessary changes to the form values prior to storage. | ||
HandlerBase::submitTemporaryForm | public | function | Submits a temporary form. | ||
HandlerBase::usesGroupBy | public | function | Provides the handler some groupby. | 2 | |
HandlerBase::usesGroupBy | public | function | Provides the handler some groupby. | 2 | |
HandlerBase::usesGroupBy | public | function | Provides the handler some groupby. | 2 | |
HandlerBase::validate | public | function | |||
HandlerBase::validateExposed | public | function | Validate the exposed handler form. | ||
HandlerBase::validateExposeForm | public | function | Validate the options form. | ||
HandlerBase::validateExtraOptionsForm | public | function | Validate the options form. | ||
MessengerTrait::$messenger | protected | property | The messenger. | ||
MessengerTrait::messenger | public | function | Gets the messenger. | ||
MessengerTrait::setMessenger | public | function | Sets the messenger. | ||
Permissions::$moduleHandler | protected | property | The module handler. | Overrides HandlerBase::$moduleHandler | |
Permissions::$roleStorage | protected | property | The role storage. | ||
Permissions::create | public static | function | Creates an instance of the plugin. | Overrides PluginBase::create | |
Permissions::init | public | function | Initialize the plugin. | Overrides FieldPluginBase::init | |
Permissions::preRender | public | function | Runs before any fields are rendered. | Overrides FieldPluginBase::preRender | |
Permissions::query | public | function | Called to add the field to a query. | Overrides FieldPluginBase::query | |
Permissions::render_item | public | function | Renders a single item of a row. | Overrides MultiItemsFieldHandlerInterface::render_item | |
Permissions::__construct | public | function | Constructs a \Drupal\user\Plugin\views\field\Permissions object. | Overrides HandlerBase::__construct | |
PluginBase::$configuration | protected | property | Configuration information passed into the plugin. | 1 | |
PluginBase::$configuration | protected | property | Configuration information passed into the plugin. | 1 | |
PluginBase::$configuration | protected | property | Configuration information passed into the plugin. | 1 | |
PluginBase::$definition | public | property | Plugins' 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::$pluginDefinition | protected | property | The plugin implementation definition. | ||
PluginBase::$pluginId | protected | property | The plugin_id. | ||
PluginBase::$usesOptions | protected | property | Denotes whether the plugin has an additional options form. | 1 | |
PluginBase::$usesOptions | protected | property | Denotes whether the plugin has an additional options form. | 1 | |
PluginBase::$usesOptions | protected | property | Denotes whether the plugin has an additional options form. | 1 | |
PluginBase::$view | public | property | The top object of a view. | ||
PluginBase::DERIVATIVE_SEPARATOR | constant | A string which is used to separate base plugin IDs from the derivative ID. | |||
PluginBase::destroy | public | function | |||
PluginBase::doFilterByDefinedOptions | protected | function | Do the work to filter out stored options depending on the defined options. | ||
PluginBase::filterByDefinedOptions | public | function | |||
PluginBase::getAvailableGlobalTokens | public | function | |||
PluginBase::getBaseId | public | function | |||
PluginBase::getDerivativeId | public | function | |||
PluginBase::getPluginDefinition | public | function | |||
PluginBase::getPluginId | public | function | |||
PluginBase::getProvider | public | function | |||
PluginBase::globalTokenForm | public | function | |||
PluginBase::globalTokenReplace | public | function | |||
PluginBase::INCLUDE_ENTITY | constant | Include entity row languages when listing languages. | |||
PluginBase::INCLUDE_NEGOTIATED | constant | Include negotiated languages when listing languages. | |||
PluginBase::isConfigurable | public | function | Determines if the plugin is configurable. | ||
PluginBase::listLanguages | protected | function | Makes an array of languages, optionally including special languages. | ||
PluginBase::pluginTitle | public | function | |||
PluginBase::preRenderAddFieldsetMarkup | public static | function | |||
PluginBase::preRenderFlattenData | public static | function | |||
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 | |||
PluginBase::trustedCallbacks | public static | function | |||
PluginBase::unpackOptions | public | function | |||
PluginBase::usesOptions | public | function | 1 | ||
PluginBase::usesOptions | public | function | 1 | ||
PluginBase::usesOptions | public | function | 1 | ||
PluginBase::validateOptionsForm | public | function | 1 | ||
PluginBase::validateOptionsForm | public | function | 1 | ||
PluginBase::validateOptionsForm | public | function | 1 | ||
PluginBase::viewsTokenReplace | protected | function | Replaces Views' tokens in a given string. | ||
PluginBase::VIEWS_QUERY_LANGUAGE_SITE_DEFAULT | constant | Query string to indicate the site default language. | |||
PrerenderList::$items | public | property | Stores all items which are used to render the items. | ||
PrerenderList::buildOptionsForm | public | function | |||
PrerenderList::defineOptions | protected | function | |||
PrerenderList::getItems | public | function | Items should be stored in the result array, if possible, as an array with 'value' as the actual displayable value of the item, plus any items that might be found in the 'alter' options array for creating links, such as… |
||
PrerenderList::renderItems | public | function | |||
StringTranslationTrait::$stringTranslation | protected | property | The string translation service. | ||
StringTranslationTrait::formatPlural | protected | function | Formats a string containing a count of items. | ||
StringTranslationTrait::formatPlural | protected | function | Formats a string containing a count of items. | ||
StringTranslationTrait::getNumberOfPlurals | protected | function | Returns the number of plurals supported by a given language. | ||
StringTranslationTrait::getNumberOfPlurals | protected | function | Returns the number of plurals supported by a given language. | ||
StringTranslationTrait::getStringTranslation | protected | function | Gets the string translation service. | ||
StringTranslationTrait::setStringTranslation | public | function | Sets the string translation service to use. | ||
StringTranslationTrait::t | protected | function | Translates a string to the current language or to a given language. | ||
StringTranslationTrait::t | protected | function | Translates a string to the current language or to a given language. | ||
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. |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.