You are here

public static function GrantPublishedStatusAccess::access in Override Node Options 8.3

Same name and namespace in other branches
  1. 8.2 src/Access/FieldAccess/GrantPublishedStatusAccess.php \Drupal\override_node_options\Access\FieldAccess\GrantPublishedStatusAccess::access()

Overrides FieldAccessOverrideInterface::access

File

src/Access/FieldAccess/GrantPublishedStatusAccess.php, line 9

Class

GrantPublishedStatusAccess

Namespace

Drupal\override_node_options\Access\FieldAccess

Code

public static function access(array &$grants, array $context) {
  self::$context = $context;
  if (self::hasNodeEditPermission() && self::isFieldName('status')) {
    $bundle = $context['items']
      ->getEntity()
      ->bundle();
    $grants[':default'] = AccessResult::allowedIfHasPermissions($context['account'], [
      "override {$bundle} published option",
      'override all published option',
    ], 'OR');
  }
}