You are here

public function MediaDirectoriesLibraryUiBuilder::checkAccess in Media Directories 3.x

Check access to the media library.

Parameters

\Drupal\Core\Session\AccountInterface $account: Run access checks for this account.

\Drupal\media_library\MediaLibraryState $state: (optional) The current state of the media library, derived from the current request.

Return value

\Drupal\Core\Access\AccessResult The access result.

Overrides MediaLibraryUiBuilder::checkAccess

File

modules/media_directories_ui/src/MediaDirectoriesLibraryUiBuilder.php, line 105

Class

MediaDirectoriesLibraryUiBuilder
Service which builds the media library.

Namespace

Drupal\media_directories_ui

Code

public function checkAccess(AccountInterface $account, MediaLibraryState $state = NULL) {
  if (!$state) {
    try {
      $state = MediaDirectoriesLibraryState::fromRequest($this->request);
    } catch (BadRequestHttpException $e) {
      return AccessResult::forbidden($e
        ->getMessage());
    } catch (\InvalidArgumentException $e) {
      return AccessResult::forbidden($e
        ->getMessage());
    }
  }

  // We override state object with our own, other logic can be same.
  return parent::checkAccess($account, $state);
}