You are here

class TestAccess in Field Permissions 8.2

Same name and namespace in other branches
  1. 8 tests/modules/field_permissions_test/src/Plugin/FieldPermissionType/TestAccess.php \Drupal\field_permissions_test\Plugin\FieldPermissionType\TestAccess

A test field permission type plugin.

Plugin annotation


@FieldPermissionType(
  id = "test_access",
  title = "Test type",
  description = "Denies access with 'test_' and this is an edit operation.",
  weight = 42
)

Hierarchy

Expanded class hierarchy of TestAccess

File

tests/modules/field_permissions_test/src/Plugin/FieldPermissionType/TestAccess.php, line 20

Namespace

Drupal\field_permissions_test\Plugin\FieldPermissionType
View source
class TestAccess extends Base implements CustomPermissionsInterface {

  /**
   * {@inheritdoc}
   */
  public function hasFieldAccess($operation, EntityInterface $entity, AccountInterface $account) {
    if ($operation === 'view') {
      return $account
        ->hasPermission('foo access');
    }
    return strpos($this->fieldStorage
      ->getName(), 'test_') === FALSE;
  }

  /**
   * {@inheritdoc}
   */
  public function hasFieldViewAccessForEveryEntity(AccountInterface $account) {
    return $account
      ->hasPermission('foo access');
  }

  /**
   * {@inheritdoc}
   */
  public function getPermissions() {
    return [
      'foo access' => [
        'title' => 'Test access custom permission',
      ],
    ];
  }

}

Members

Namesort descending Modifiers Type Description Overrides
Base::$fieldStorage protected property The field storage.
Base::create public static function Creates an instance of the plugin. Overrides ContainerFactoryPluginInterface::create
Base::getDescription public function The permission type description. Overrides FieldPermissionTypeInterface::getDescription
Base::getLabel public function The permission type label. Overrides FieldPermissionTypeInterface::getLabel
Base::__construct public function Constructs the plugin. Overrides PluginBase::__construct
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 1
DependencySerializationTrait::__wakeup public function 2
FieldPermissionTypeInterface::ACCESS_CUSTOM constant Indicates that a field is using the custom permission type.
FieldPermissionTypeInterface::ACCESS_PRIVATE constant Indicates that a field is using the private access permission type.
FieldPermissionTypeInterface::ACCESS_PUBLIC constant Indicates that a field does not have field-specific access control.
MessengerTrait::$messenger protected property The messenger. 29
MessengerTrait::messenger public function Gets the messenger. 29
MessengerTrait::setMessenger public function Sets the messenger.
PluginBase::$configuration protected property Configuration information passed into the plugin. 1
PluginBase::$pluginDefinition protected property The plugin implementation definition. 1
PluginBase::$pluginId protected property The plugin_id.
PluginBase::DERIVATIVE_SEPARATOR constant A string which is used to separate base plugin IDs from the derivative ID.
PluginBase::getBaseId public function Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface::getBaseId
PluginBase::getDerivativeId public function Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface::getDerivativeId
PluginBase::getPluginDefinition public function Gets the definition of the plugin implementation. Overrides PluginInspectionInterface::getPluginDefinition 3
PluginBase::getPluginId public function Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface::getPluginId
PluginBase::isConfigurable public function Determines if the plugin is configurable.
StringTranslationTrait::$stringTranslation protected property The string translation service. 1
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::getStringTranslation protected function Gets the string translation service.
StringTranslationTrait::setStringTranslation public function Sets the string translation service to use. 2
StringTranslationTrait::t protected function Translates a string to the current language or to a given language.
TestAccess::getPermissions public function Returns an array of permissions suitable for use in a permission callback. Overrides CustomPermissionsInterface::getPermissions
TestAccess::hasFieldAccess public function Determine if access to the field is granted for a given account. Overrides FieldPermissionTypeInterface::hasFieldAccess
TestAccess::hasFieldViewAccessForEveryEntity public function Determines if the given account may view the field, regardless of entity. Overrides Base::hasFieldViewAccessForEveryEntity