commerce_license-8.x-2.x-dev/src/LicensePermissionProvider.php
src/LicensePermissionProvider.php
<?php namespace Drupal\commerce_license; use Drupal\Core\Entity\EntityTypeInterface; use Drupal\entity\UncacheableEntityPermissionProvider; /** * Provides permissions for the License entity. * * This makes a few minor changes to the permissions provided by Entity module's * generic permissions provider. */ class LicensePermissionProvider extends UncacheableEntityPermissionProvider { /** * {@inheritdoc} */ public function buildPermissions(EntityTypeInterface $entity_type) { $permissions = parent::buildPermissions($entity_type); $entity_type_id = $entity_type->id(); // Mark the 'overview' permission as restricted. $permissions["access $entity_type_id overview"]['restrict access'] = TRUE; // Add a description to the 'create' to make it clear that it only covers // admin creation, not creation via product purchase. $permissions["create $entity_type_id"]['description'] = $this->t('Create licenses in administrative mode, bypassing the purchase of a product.'); return $permissions; } }