*/ class ShareLinkListener implements \OCP\EventDispatcher\IEventListener { public function __construct( private PermissionManager $permissionManager, private InitialStateService $initialStateService, ) { } #[\Override] public function handle(Event $event): void { if (!$event instanceof ShareLinkAccessedEvent) { return; } /** @var IShare $share */ $share = $event->getShare(); $owner = $share->getShareOwner(); $loggedInUser = $this->permissionManager->loggedInUser(); if ($this->permissionManager->isEnabledForUser($owner)) { $this->initialStateService->provideCapabilities(); Util::addInitScript(Application::APPNAME, Application::APPNAME . '-init-viewer'); Util::addScript(Application::APPNAME, Application::APPNAME . '-viewer', 'viewer'); Util::addScript(Application::APPNAME, Application::APPNAME . '-public', 'viewer'); } } }