You are here

public function FileEntityPermissions::fileTypePermissions in File Entity (fieldable files) 8.2

Generates standard file permissions for all applicable file types.

Return value

array File type permissions.

1 string reference to 'FileEntityPermissions::fileTypePermissions'
file_entity.permissions.yml in ./file_entity.permissions.yml
file_entity.permissions.yml

File

src/FileEntityPermissions.php, line 39

Class

FileEntityPermissions
Contains permission callbacks.

Namespace

Drupal\file_entity

Code

public function fileTypePermissions() {

  // Generate standard file permissions for all applicable file types.
  $permissions = array();
  foreach (FileType::loadEnabled() as $type) {

    /** @var \Drupal\file_entity\Entity\FileType $type */
    $id = $type
      ->id();
    $permissions += array(
      "edit own {$id} files" => array(
        'title' => $this
          ->t('%type_name: Edit own files', array(
          '%type_name' => $type
            ->label(),
        )),
      ),
      "edit any {$id} files" => array(
        'title' => $this
          ->t('%type_name: Edit any files', array(
          '%type_name' => $type
            ->label(),
        )),
      ),
      "delete own {$id} files" => array(
        'title' => $this
          ->t('%type_name: Delete own files', array(
          '%type_name' => $type
            ->label(),
        )),
      ),
      "delete any {$id} files" => array(
        'title' => $this
          ->t('%type_name: Delete any files', array(
          '%type_name' => $type
            ->label(),
        )),
      ),
      "download own {$id} files" => array(
        'title' => $this
          ->t('%type_name: Download own files', array(
          '%type_name' => $type
            ->label(),
        )),
      ),
      "download any {$id} files" => array(
        'title' => $this
          ->t('%type_name: Download any files', array(
          '%type_name' => $type
            ->label(),
        )),
      ),
    );
  }
  return $permissions;
}