From 1d834bd49e2ba215b0de58fc8845f467ddfe51e4 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Mon, 5 Sep 2016 14:25:51 +0200 Subject: Add theming information to capabilities for the client --- apps/theming/appinfo/app.php | 3 ++ apps/theming/lib/Capabilities.php | 60 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 63 insertions(+) create mode 100644 apps/theming/lib/Capabilities.php (limited to 'apps/theming') diff --git a/apps/theming/appinfo/app.php b/apps/theming/appinfo/app.php index f558c35e61f..e67092b642f 100644 --- a/apps/theming/appinfo/app.php +++ b/apps/theming/appinfo/app.php @@ -49,3 +49,6 @@ $linkToJs = \OC::$server->getURLGenerator()->linkToRoute( 'src' => $linkToJs, ], '' ); + +$app = new \OCP\AppFramework\App('theming'); +$app->getContainer()->registerCapability(\OCA\Theming\Capabilities::class); diff --git a/apps/theming/lib/Capabilities.php b/apps/theming/lib/Capabilities.php new file mode 100644 index 00000000000..45a48e3c2ca --- /dev/null +++ b/apps/theming/lib/Capabilities.php @@ -0,0 +1,60 @@ + + * + * @author Joas Schilling + * + * @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 . + * + */ + +namespace OCA\Theming; + +use OCP\Capabilities\ICapability; + +/** + * Class Capabilities + * + * @package OCA\Theming + */ +class Capabilities implements ICapability { + + /** @var ThemingDefaults */ + protected $theming; + + /** + * @param ThemingDefaults $theming + */ + public function __construct(ThemingDefaults $theming) { + $this->theming = $theming; + } + + /** + * Return this classes capabilities + * + * @return array + */ + public function getCapabilities() { + return [ + 'theming' => [ + 'name' => $this->theming->getName(), + 'url' => $this->theming->getBaseUrl(), + 'slogan' => $this->theming->getSlogan(), + 'color' => $this->theming->getMailHeaderColor(), + ], + ]; + } +} -- cgit v1.2.3