diff --git a/lib/Controller/PageController.php b/lib/Controller/PageController.php
index bcd45b1c6..1165dd3e2 100644
--- a/lib/Controller/PageController.php
+++ b/lib/Controller/PageController.php
@@ -28,25 +28,32 @@ use OCP\IRequest;
use OCP\AppFramework\Http\TemplateResponse;
use OCP\AppFramework\Controller;
use OCP\IL10N;
+use OCP\IConfig;
+use OCP\IInitialStateService;
class PageController extends Controller {
private $permissionService;
private $userId;
private $l10n;
+ private $config;
public function __construct(
$AppName,
IRequest $request,
PermissionService $permissionService,
IL10N $l10n,
- $userId
+ $userId,
+ IConfig $config,
+ IInitialStateService $initialStateService
) {
parent::__construct($AppName, $request);
$this->userId = $userId;
$this->permissionService = $permissionService;
$this->l10n = $l10n;
+ $this->config = $config;
+ $this->initialStateService = $initialStateService;
}
/**
@@ -63,6 +70,8 @@ class PageController extends Controller {
'canCreate' => $this->permissionService->canCreate()
];
+ $this->initialStateService->provideInitialState($this->appName, 'calendar', $this->config->getAppValue('calendar', 'enabled', 'no') === 'yes');
+
return new TemplateResponse('deck', 'main', $params);
}
diff --git a/package-lock.json b/package-lock.json
index 2a3b643d8..88cf218d9 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -3539,6 +3539,21 @@
}
}
},
+ "@nextcloud/initial-state": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@nextcloud/initial-state/-/initial-state-1.1.0.tgz",
+ "integrity": "sha512-c8VNSv7CbcPdaMNQO3ERJUMhsGyCvAgSBlvBHhugYHxGqlySjE+J+SqkpXmqB+eQ/DujDTahBX1IwoF3zjPtOw==",
+ "requires": {
+ "core-js": "3.6.1"
+ },
+ "dependencies": {
+ "core-js": {
+ "version": "3.6.1",
+ "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.1.tgz",
+ "integrity": "sha512-186WjSik2iTGfDjfdCZAxv2ormxtKgemjC3SI6PL31qOA0j5LhTDVjHChccoc7brwLvpvLPiMyRlcO88C4l1QQ=="
+ }
+ }
+ },
"@nextcloud/l10n": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/@nextcloud/l10n/-/l10n-1.0.1.tgz",
@@ -13369,7 +13384,7 @@
},
"mkdirp": {
"version": "0.5.1",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
+ "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
"integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
"dev": true,
"requires": {
@@ -14049,7 +14064,7 @@
},
"os-homedir": {
"version": "1.0.2",
- "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
+ "resolved": "http://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
"integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=",
"dev": true
},
@@ -14066,7 +14081,7 @@
},
"os-tmpdir": {
"version": "1.0.2",
- "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
+ "resolved": "http://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
"integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
"dev": true
},
@@ -14238,7 +14253,7 @@
},
"path-is-absolute": {
"version": "1.0.1",
- "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
+ "resolved": "http://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18="
},
"path-key": {
@@ -17177,7 +17192,7 @@
},
"string_decoder": {
"version": "1.1.1",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
+ "resolved": "http://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
"requires": {
"safe-buffer": "~5.1.0"
diff --git a/package.json b/package.json
index b953efc15..9c33ec020 100644
--- a/package.json
+++ b/package.json
@@ -30,6 +30,7 @@
"@babel/runtime": "^7.8.3",
"@nextcloud/auth": "^1.2.1",
"@nextcloud/axios": "^1.3.1",
+ "@nextcloud/initial-state": "^1.1.0",
"@nextcloud/l10n": "^1.0.1",
"@nextcloud/router": "^1.0.0",
"@nextcloud/vue": "^1.3.0",
diff --git a/src/components/navigation/AppNavigation.vue b/src/components/navigation/AppNavigation.vue
index e85de43c2..3993fd672 100644
--- a/src/components/navigation/AppNavigation.vue
+++ b/src/components/navigation/AppNavigation.vue
@@ -40,6 +40,7 @@
:boards="sharedBoards"
icon="icon-shared" />