annotate core/modules/content_moderation/src/ContentModerationStateAccessControlHandler.php @ 5:12f9dff5fda9
tip
Update to Drupal core 8.7.1
author |
Chris Cannam |
date |
Thu, 09 May 2019 15:34:47 +0100 |
parents |
c75dbcec494b |
children |
|
rev |
line source |
Chris@0
|
1 <?php
|
Chris@0
|
2
|
Chris@0
|
3 namespace Drupal\content_moderation;
|
Chris@0
|
4
|
Chris@0
|
5 use Drupal\Core\Access\AccessResult;
|
Chris@0
|
6 use Drupal\Core\Session\AccountInterface;
|
Chris@0
|
7 use Drupal\Core\Entity\EntityAccessControlHandler;
|
Chris@0
|
8 use Drupal\Core\Entity\EntityInterface;
|
Chris@0
|
9
|
Chris@0
|
10 /**
|
Chris@0
|
11 * The access control handler for the content_moderation_state entity type.
|
Chris@0
|
12 *
|
Chris@0
|
13 * @see \Drupal\content_moderation\Entity\ContentModerationState
|
Chris@0
|
14 */
|
Chris@0
|
15 class ContentModerationStateAccessControlHandler extends EntityAccessControlHandler {
|
Chris@0
|
16
|
Chris@0
|
17 /**
|
Chris@0
|
18 * {@inheritdoc}
|
Chris@0
|
19 */
|
Chris@0
|
20 public function checkAccess(EntityInterface $entity, $operation, AccountInterface $account) {
|
Chris@0
|
21 // ContentModerationState is an internal entity type. Access is denied for
|
Chris@0
|
22 // viewing, updating, and deleting. In order to update an entity's
|
Chris@0
|
23 // moderation state use its moderation_state field.
|
Chris@0
|
24 return AccessResult::forbidden('ContentModerationState is an internal entity type.');
|
Chris@0
|
25 }
|
Chris@0
|
26
|
Chris@0
|
27 /**
|
Chris@0
|
28 * {@inheritdoc}
|
Chris@0
|
29 */
|
Chris@0
|
30 protected function checkCreateAccess(AccountInterface $account, array $context, $entity_bundle = NULL) {
|
Chris@0
|
31 // ContentModerationState is an internal entity type. Access is denied for
|
Chris@0
|
32 // creating. In order to update an entity's moderation state use its
|
Chris@0
|
33 // moderation_state field.
|
Chris@0
|
34 return AccessResult::forbidden('ContentModerationState is an internal entity type.');
|
Chris@0
|
35 }
|
Chris@0
|
36
|
Chris@0
|
37 }
|