diff --git a/core/modules/block/lib/Drupal/block/BlockAccessController.php b/core/modules/block/lib/Drupal/block/BlockAccessController.php index 315e4f6ec97f21b5984c27e3004f429cac1b185e..6e2c1a512d5578f6139d15b6502a497481b18a24 100644 --- a/core/modules/block/lib/Drupal/block/BlockAccessController.php +++ b/core/modules/block/lib/Drupal/block/BlockAccessController.php @@ -56,7 +56,7 @@ public static function createInstance(ContainerInterface $container, EntityTypeI */ protected function checkAccess(EntityInterface $entity, $operation, $langcode, AccountInterface $account) { if ($operation != 'view') { - return $account->hasPermission('administer blocks'); + return parent::checkAccess($entity, $operation, $langcode, $account); } // Deny access to disabled blocks. diff --git a/core/modules/block/lib/Drupal/block/Entity/Block.php b/core/modules/block/lib/Drupal/block/Entity/Block.php index 926ef07bc92d5a4925a77180ec673d70d57a2ec5..fe82d446d37853c2f229e6e5ebe5fadc139e464a 100644 --- a/core/modules/block/lib/Drupal/block/Entity/Block.php +++ b/core/modules/block/lib/Drupal/block/Entity/Block.php @@ -29,6 +29,7 @@ * } * }, * config_prefix = "block.block", + * admin_permission = "administer blocks", * fieldable = FALSE, * entity_keys = { * "id" = "id", diff --git a/core/modules/contact/lib/Drupal/contact/CategoryAccessController.php b/core/modules/contact/lib/Drupal/contact/CategoryAccessController.php index 59ee2c7f0cbe2e9f49266cf102b51a231d5e316e..f798d7980f3ddc7172a27c128a45734805853243 100644 --- a/core/modules/contact/lib/Drupal/contact/CategoryAccessController.php +++ b/core/modules/contact/lib/Drupal/contact/CategoryAccessController.php @@ -31,9 +31,8 @@ public function checkAccess(EntityInterface $entity, $operation, $langcode, Acco // the personal contact form. return $account->hasPermission('administer contact forms') && $entity->id() !== 'personal'; } - else { - return $account->hasPermission('administer contact forms'); - } + + return parent::checkAccess($entity, $operation, $langcode, $account); } } diff --git a/core/modules/contact/lib/Drupal/contact/Entity/Category.php b/core/modules/contact/lib/Drupal/contact/Entity/Category.php index 2c2166acab596b3f10ab6da386219681945de486..86fa0f1fb3e755ab8d75dd89e8fb9abfe68bf1b9 100644 --- a/core/modules/contact/lib/Drupal/contact/Entity/Category.php +++ b/core/modules/contact/lib/Drupal/contact/Entity/Category.php @@ -28,6 +28,7 @@ * } * }, * config_prefix = "contact.category", + * admin_permission = "administer contact forms", * bundle_of = "contact_message", * entity_keys = { * "id" = "id", diff --git a/core/modules/filter/lib/Drupal/filter/Entity/FilterFormat.php b/core/modules/filter/lib/Drupal/filter/Entity/FilterFormat.php index fa0d2cc67091bd9491f369ecffa5e62fb61b0f9c..0bb5dec875e1d421b8a989472e7bacdd7661bbfc 100644 --- a/core/modules/filter/lib/Drupal/filter/Entity/FilterFormat.php +++ b/core/modules/filter/lib/Drupal/filter/Entity/FilterFormat.php @@ -30,6 +30,7 @@ * "storage" = "Drupal\Core\Config\Entity\ConfigStorageController" * }, * config_prefix = "filter.format", + * admin_permission = "administer filters", * entity_keys = { * "id" = "format", * "label" = "name", diff --git a/core/modules/filter/lib/Drupal/filter/FilterFormatAccessController.php b/core/modules/filter/lib/Drupal/filter/FilterFormatAccessController.php index a1edbd963e2d33e16ae4d977bf26c33a13c9bd5a..9d3207d0a3f8114a2f71cc7d6cd4420fe1383a7a 100644 --- a/core/modules/filter/lib/Drupal/filter/FilterFormatAccessController.php +++ b/core/modules/filter/lib/Drupal/filter/FilterFormatAccessController.php @@ -31,7 +31,7 @@ protected function checkAccess(EntityInterface $entity, $operation, $langcode, A return FALSE; } - if ($operation != 'view' && $account->hasPermission('administer filters')) { + if ($operation != 'view' && parent::checkAccess($entity, $operation, $langcode, $account)) { return TRUE; } @@ -41,11 +41,4 @@ protected function checkAccess(EntityInterface $entity, $operation, $langcode, A return !empty($permission) && $account->hasPermission($permission); } - /** - * {@inheritdoc} - */ - protected function checkCreateAccess(AccountInterface $account, array $context, $entity_bundle = NULL) { - return $account->hasPermission('administer filters'); - } - } diff --git a/core/modules/system/lib/Drupal/system/DateFormatAccessController.php b/core/modules/system/lib/Drupal/system/DateFormatAccessController.php index 9608271fc83865ee48765467781d15b9f16ed10f..a5483b627df8fbabc01b0a34b59a700597b3a86b 100644 --- a/core/modules/system/lib/Drupal/system/DateFormatAccessController.php +++ b/core/modules/system/lib/Drupal/system/DateFormatAccessController.php @@ -25,10 +25,11 @@ protected function checkAccess(EntityInterface $entity, $operation, $langcode, A return TRUE; } // Locked date formats cannot be updated or deleted. - if (in_array($operation, array('update', 'delete')) && $entity->isLocked()) { + elseif (in_array($operation, array('update', 'delete')) && $entity->isLocked()) { return FALSE; } - return user_access('administer site configuration', $account); + + return parent::checkAccess($entity, $operation, $langcode, $account); } } diff --git a/core/modules/system/lib/Drupal/system/Entity/DateFormat.php b/core/modules/system/lib/Drupal/system/Entity/DateFormat.php index 5b052523c63d28e9d07ae60dba58c790fcd40fed..35ad4ab72303508932614953a9eb28e20a420996 100644 --- a/core/modules/system/lib/Drupal/system/Entity/DateFormat.php +++ b/core/modules/system/lib/Drupal/system/Entity/DateFormat.php @@ -34,6 +34,7 @@ * "label" = "label", * "uuid" = "uuid" * }, + * admin_permission = "administer site configuration", * links = { * "edit-form" = "system.date_format_edit" * } diff --git a/core/modules/system/lib/Drupal/system/Entity/Menu.php b/core/modules/system/lib/Drupal/system/Entity/Menu.php index fa5d7fda54d7c44e2287dc514a61efcf6b9931ce..fb09c0464e4b8e5b94e34f4797fe22e48c90629d 100644 --- a/core/modules/system/lib/Drupal/system/Entity/Menu.php +++ b/core/modules/system/lib/Drupal/system/Entity/Menu.php @@ -21,6 +21,7 @@ * "access" = "Drupal\system\MenuAccessController" * }, * config_prefix = "system.menu", + * admin_permission = "administer menu", * entity_keys = { * "id" = "id", * "label" = "label", diff --git a/core/modules/system/lib/Drupal/system/MenuAccessController.php b/core/modules/system/lib/Drupal/system/MenuAccessController.php index b6e7f7adc549f857ca8a50cdcb955bd79e858c52..fe8436878c384f38c1342aa300df7b83673386ac 100644 --- a/core/modules/system/lib/Drupal/system/MenuAccessController.php +++ b/core/modules/system/lib/Drupal/system/MenuAccessController.php @@ -23,23 +23,12 @@ protected function checkAccess(EntityInterface $entity, $operation, $langcode, A if ($operation === 'view') { return TRUE; } - elseif ($operation == 'delete') { - // Locked menus could not be deleted. - if ($entity->isLocked()) { - return FALSE; - } + // Locked menus could not be deleted. + elseif ($operation == 'delete' && $entity->isLocked()) { + return FALSE; } - if (in_array($operation, array('update', 'delete'))) { - return $account->hasPermission('administer menu'); - } - } - - /** - * {@inheritdoc} - */ - protected function checkCreateAccess(AccountInterface $account, array $context, $entity_bundle = NULL) { - return $account->hasPermission('administer menu'); + return parent::checkAccess($entity, $operation, $langcode, $account); } }