19 declare(strict_types=1);
    69         $this->workspace_access_handler = $this->workspace_access_handler ?? new \ilWorkspaceAccessHandler();
    74         if (isset($this->cache[
$context->getNode()])) {
    75             return $this->cache[
$context->getNode()];
    85             new Capability(Capabilities::VIEW_EXTERNAL, Permissions::VIEW_CONTENT),
    86             new Capability(Capabilities::EDIT_EXTERNAL, Permissions::EDIT_CONTENT),
    87             new Capability(Capabilities::DOWNLOAD, Permissions::READ),
    88             new Capability(Capabilities::MANAGE_VERSIONS, Permissions::WRITE),
    89             new Capability(Capabilities::EDIT_SETTINGS, Permissions::WRITE),
    91             new Capability(Capabilities::NONE, Permissions::NONE),
    92             new Capability(Capabilities::UNZIP, Permissions::WRITE),
    95         if ($this->type_resolver->resolveTypeByObjectId(
$context->getObjectId()) !== 
'file') {
    99         $info = $this->file_info_repository->getByObjectId(
$context->getObjectId());
   103             $this->action_repository,
   105             $this->workspace_access_handler
   108         $calling_id = 
$context->getCallingId();
   110         if ($calling_id > 0) {
   111             $this->
ctrl->setParameterByClass(\ilObjFileGUI::class, 
'ref_id', $calling_id);
   114         foreach ($capabilities as $capability) {
   115             foreach ($this->checks as 
$check) {
   116                 if ($check->canUnlock() === $capability->getCapability()) {
   117                     $capability = $check->maybeUnlock($capability, $helpers, $info, 
$context);
   118                     $capability = $check->maybeBuildURI($capability, $helpers, 
$context);
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
__construct(private \ilObjFileInfoRepository $file_info_repository, private \ilAccessHandler $access, private \ilCtrlInterface $ctrl, private ActionRepository $action_repository, private Services $http, private ?TypeResolver $type_resolver=null, private ?\ilWorkspaceAccessHandler $workspace_access_handler=null)
 
static http()
Fetches the global http state from ILIAS.