diff options
Diffstat (limited to 'lib/listeners/filesharinglistener.php')
-rw-r--r-- | lib/listeners/filesharinglistener.php | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/lib/listeners/filesharinglistener.php b/lib/listeners/filesharinglistener.php index 3274a46..8d228a6 100644 --- a/lib/listeners/filesharinglistener.php +++ b/lib/listeners/filesharinglistener.php @@ -22,10 +22,13 @@ namespace OCA\Onlyoffice\Listeners; use OCP\EventDispatcher\Event; use OCP\EventDispatcher\IEventListener; use OCP\Util; +use OCP\AppFramework\Services\IInitialState; +use OCP\IServerContainer; use OCA\Files_Sharing\Event\BeforeTemplateRenderedEvent; use OCA\Onlyoffice\AppConfig; +use OCA\Onlyoffice\SettingsData; /** * File Sharing listener @@ -40,10 +43,30 @@ class FileSharingListener implements IEventListener { private $appConfig; /** + * Initial state + * + * @var IInitialState + */ + private $initialState; + + /** + * Server container + * + * @var IServerContainer + */ + private $serverContainer; + + /** * @param AppConfig $config - application configuration + * @param IInitialState $initialState - initial state + * @param IServerContainer $serverContainer - server container */ - public function __construct(AppConfig $appConfig) { + public function __construct(AppConfig $appConfig, + IInitialState $initialState, + IServerContainer $serverContainer) { $this->appConfig = $appConfig; + $this->initialState = $initialState; + $this->serverContainer = $serverContainer; } public function handle(Event $event): void { @@ -59,6 +82,11 @@ class FileSharingListener implements IEventListener { Util::addScript("onlyoffice", "listener"); } + $container = $this->serverContainer; + $this->initialState->provideLazyInitialState("settings", function () use ($container) { + return $container->query(SettingsData::class); + }); + Util::addStyle("onlyoffice", "main"); } } |