You are here

private function NodePermissions::addSpecificPermissions in Override Node Options 8.3

Same name and namespace in other branches
  1. 8.2 src/NodePermissions.php \Drupal\override_node_options\NodePermissions::addSpecificPermissions()

Add node type specific permissions.

Parameters

array $permissions: The permissions array, passed by reference.

1 call to NodePermissions::addSpecificPermissions()
NodePermissions::nodeTypePermissions in src/NodePermissions.php
Returns an array of additional permissions.

File

src/NodePermissions.php, line 77

Class

NodePermissions
Provides dynamic override permissions for nodes of different types.

Namespace

Drupal\override_node_options

Code

private function addSpecificPermissions(array &$permissions) {

  /** @var \Drupal\node\Entity\NodeType $node_type */
  foreach (NodeType::loadMultiple() as $node_type) {
    $type = $node_type
      ->id();
    $label = $node_type
      ->label();
    $permissions["override {$type} published option"] = [
      'title' => $this
        ->t("Override %name published option.", [
        "%name" => $label,
      ]),
    ];
    $permissions["override {$type} promote to front page option"] = [
      'title' => $this
        ->t("Override %name promote to front page option.", [
        "%name" => $label,
      ]),
    ];
    $permissions["override {$type} sticky option"] = [
      'title' => $this
        ->t("Override %name sticky option.", [
        "%name" => $label,
      ]),
    ];
    $permissions["override {$type} revision option"] = [
      'title' => $this
        ->t("Override %name revision option.", [
        "%name" => $label,
      ]),
    ];
    $permissions["enter {$type} revision log entry"] = [
      'title' => $this
        ->t("Enter %name revision log entry.", [
        "%name" => $label,
      ]),
    ];
    $permissions["override {$type} authored on option"] = [
      'title' => $this
        ->t("Override %name authored on option.", [
        "%name" => $label,
      ]),
    ];
    $permissions["override {$type} authored by option"] = [
      'title' => $this
        ->t("Override %name authored by option.", [
        "%name" => $label,
      ]),
    ];
  }
}