summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMorris Jobke <hey@morrisjobke.de>2020-07-09 21:09:05 +0200
committerMorris Jobke <hey@morrisjobke.de>2020-07-09 21:09:05 +0200
commite6daaac5bc9d2dd9eff1f0b104d516216201959a (patch)
tree13dad910ef5d3510b99d0761c02a62ea0ce3f7b2
parent093878aa8821852a09fd6415618b12820dc96226 (diff)
Move routes to info.xml to make them load lazy
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
-rw-r--r--appinfo/app.php27
-rw-r--r--appinfo/info.xml9
-rw-r--r--lib/AppInfo/Application.php69
3 files changed, 9 insertions, 96 deletions
diff --git a/appinfo/app.php b/appinfo/app.php
deleted file mode 100644
index f9e8863b..00000000
--- a/appinfo/app.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-/**
- * @copyright Copyright (c) 2020 John Molakvoæ <skjnldsv@protonmail.com>
- *
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- *
- * @license GNU AGPL version 3 or any later version
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- */
-
-use OCA\Contacts\AppInfo\Application;
-
-$app = \OC::$server->query(Application::class);
-$app->register();
diff --git a/appinfo/info.xml b/appinfo/info.xml
index ed623343..a3f7bdce 100644
--- a/appinfo/info.xml
+++ b/appinfo/info.xml
@@ -41,4 +41,13 @@
<contactsmenu>
<provider>OCA\Contacts\ContactsMenu\Providers\DetailsProvider</provider>
</contactsmenu>
+
+ <navigations>
+ <navigation>
+ <name>Contacts</name>
+ <route>contacts.page.index</route>
+ <icon>app.svg</icon>
+ <order>4</order>
+ </navigation>
+ </navigations>
</info>
diff --git a/lib/AppInfo/Application.php b/lib/AppInfo/Application.php
deleted file mode 100644
index b1952922..00000000
--- a/lib/AppInfo/Application.php
+++ /dev/null
@@ -1,69 +0,0 @@
-<?php
-/**
- * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>
- *
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- *
- * @license GNU AGPL version 3 or any later version
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- */
-namespace OCA\Contacts\AppInfo;
-
-use OCP\AppFramework\App;
-use OCP\IURLGenerator;
-use OCP\IL10N;
-use OCP\INavigationManager;
-
-class Application extends App {
- public const APP_ID = 'contacts';
-
- public function __construct() {
- parent::__construct(self::APP_ID);
- }
-
- public function register() {
- $server = $this->getContainer()->getServer();
-
- /** @var INavigationManager $navigationManager */
- $navigationManager = $server->query(INavigationManager::class);
-
- /** @var IURLGenerator $urlGenerator */
- $urlGenerator = $server->query(IURLGenerator::class);
-
- /** @var IL10N $l10n */
- $l10n = $server->getL10N(self::APP_ID);
-
- $navigationManager->add([
- // the string under which your app will be referenced in Nextcloud
- 'id' => self::APP_ID,
-
- // sorting weight for the navigation. The higher the number, the higher
- // will it be listed in the navigation
- 'order' => 4,
-
- // the route that will be shown on startup
- 'href' => $urlGenerator->linkToRoute('contacts.page.index'),
-
- // the icon that will be shown in the navigation
- // this file needs to exist in img/
- 'icon' => $urlGenerator->imagePath(self::APP_ID, 'app.svg'),
-
- // the title of your application. This will be used in the
- // navigation or on the settings page of your app
- 'name' => $l10n->t('Contacts'),
- ]);
- }
-}