buildPermissions($type); } return $perms; } /** * Builds a standard list of node permissions for a given type. * * @param \Drupal\node\Entity\NodeType $type * The machine name of the node type. * * @return array * An array of permission names and descriptions. */ protected function buildPermissions(NodeType $type) { $type_id = $type->id(); $type_params = array('%type_name' => $type->label()); return array( "create $type_id content" => array( 'title' => $this->t('%type_name: Create new content', $type_params), ), "edit own $type_id content" => array( 'title' => $this->t('%type_name: Edit own content', $type_params), ), "edit any $type_id content" => array( 'title' => $this->t('%type_name: Edit any content', $type_params), ), "delete own $type_id content" => array( 'title' => $this->t('%type_name: Delete own content', $type_params), ), "delete any $type_id content" => array( 'title' => $this->t('%type_name: Delete any content', $type_params), ), "view $type_id revisions" => array( 'title' => $this->t('%type_name: View revisions', $type_params), ), "revert $type_id revisions" => array( 'title' => $this->t('%type_name: Revert revisions', $type_params), 'description' => t('Role requires permission view revisions and edit rights for nodes in question, or administer nodes.'), ), "delete $type_id revisions" => array( 'title' => $this->t('%type_name: Delete revisions', $type_params), 'description' => $this->t('Role requires permission to view revisions and delete rights for nodes in question, or administer nodes.'), ), ); } }