From 0bcc643d6e8fdc369e8c7117a619b1dcc8f8822d Mon Sep 17 00:00:00 2001
From: Roeland Jago Douma <roeland@famdouma.nl>
Date: Sun, 5 Jul 2020 13:23:30 +0200
Subject: [PATCH] Cleanup share by mail a bit

* Moved to ned IBootstrap
* Register everything via the capabilities api (So clients can use it as
  well)
  - This applies to the enforcing passwords
* Updated the sharing js code to use it
* removed app.php
* removed unused settings now
* typehints
* strict typing

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
---
 .../js/dist/files_sharing_tab.js              | Bin 966652 -> 966698 bytes
 .../js/dist/files_sharing_tab.js.map          | Bin 2776839 -> 2776828 bytes
 .../src/services/ConfigService.js             |   4 +-
 apps/sharebymail/appinfo/app.php              |  27 ---------
 .../composer/composer/autoload_classmap.php   |   1 -
 .../composer/composer/autoload_static.php     |   1 -
 apps/sharebymail/lib/AppInfo/Application.php  |  27 ++++-----
 apps/sharebymail/lib/Capabilities.php         |  31 ++++++----
 apps/sharebymail/lib/Settings.php             |  53 ------------------
 .../lib/Settings/SettingsManager.php          |   6 +-
 10 files changed, 41 insertions(+), 109 deletions(-)
 delete mode 100644 apps/sharebymail/appinfo/app.php
 delete mode 100644 apps/sharebymail/lib/Settings.php

diff --git a/apps/files_sharing/js/dist/files_sharing_tab.js b/apps/files_sharing/js/dist/files_sharing_tab.js
index f52a1a7ac18bc285d706e5e0879c53273edd1eb5..747bf9d6897e28e4bb87ee961b1b5c222fa87708 100644
GIT binary patch
delta 120
zcmezK-)dEZbwdkd3sVbo3rh=Y3tJ0&3r7oQ3s(#G79Q6J)3-e45uCpE7mo;AQe|#p
zX3qA+2Rzdm5yBi0VKues8z1wCfK^IBg!Bp$i;K(ii&FGb^V0H*l2cRK-5&95cYDOU
G?JfW~gfPGW

delta 157
zcmZ40VEyO6RYMD73sVbo3rh=Y3tJ0&3r7oQ3s(#G79Q6JGKmER&iQ$1ndy4P8Hq)y
zPL;linK`a`iAg!BDccJk@Jwg)!>UA0P0_&C*4E!y5396ZYF=7?QF3ZPVsUYKeo;z5
YQGQ8ka!F=>UVF(Sp6w-%c(>gJ0OoEyBme*a

diff --git a/apps/files_sharing/js/dist/files_sharing_tab.js.map b/apps/files_sharing/js/dist/files_sharing_tab.js.map
index 861ada09115abedb480596a420f236cce607a655..6a1f28b98445ebff8c7695cc71b73d8062c7afb2 100644
GIT binary patch
delta 37351
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
G`hNp!Fyxy6

delta 37664
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
HrFH)oE4wug

diff --git a/apps/files_sharing/src/services/ConfigService.js b/apps/files_sharing/src/services/ConfigService.js
index 2c50ea1ecfb..1fcf2810956 100644
--- a/apps/files_sharing/src/services/ConfigService.js
+++ b/apps/files_sharing/src/services/ConfigService.js
@@ -178,7 +178,7 @@ export default class Config {
 	 * @memberof Config
 	 */
 	get isMailShareAllowed() {
-		return OC.appConfig.shareByMailEnabled !== undefined
+		return OC.getCapabilities()['files_sharing']['sharebymail'] !== undefined
 			&& OC.getCapabilities()['files_sharing']['public']['enabled'] === true
 	}
 
@@ -223,7 +223,7 @@ export default class Config {
 	 * @memberof Config
 	 */
 	get isPasswordForMailSharesRequired() {
-		return (OC.appConfig.shareByMail === undefined) ? false : OC.appConfig.shareByMail.enforcePasswordProtection === true
+		return (OC.getCapabilities()['files_sharing']['sharebymail'] === undefined) ? false : OC.getCapabilities()['files_sharing']['sharebymail']['password']['enforced']
 	}
 
 	/**
diff --git a/apps/sharebymail/appinfo/app.php b/apps/sharebymail/appinfo/app.php
deleted file mode 100644
index b57957e7dac..00000000000
--- a/apps/sharebymail/appinfo/app.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-/**
- * @copyright Copyright (c) 2016 Bjoern Schiessle <bjoern@schiessle.org>
- *
- * @author Bjoern Schiessle <bjoern@schiessle.org>
- * @author Robin Appelman <robin@icewind.nl>
- *
- * @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\ShareByMail\AppInfo\Application;
-
-$app = \OC::$server->query(Application::class);
diff --git a/apps/sharebymail/composer/composer/autoload_classmap.php b/apps/sharebymail/composer/composer/autoload_classmap.php
index 0df9428d7b0..4fa3560d87f 100644
--- a/apps/sharebymail/composer/composer/autoload_classmap.php
+++ b/apps/sharebymail/composer/composer/autoload_classmap.php
@@ -9,7 +9,6 @@ return array(
     'OCA\\ShareByMail\\Activity' => $baseDir . '/../lib/Activity.php',
     'OCA\\ShareByMail\\AppInfo\\Application' => $baseDir . '/../lib/AppInfo/Application.php',
     'OCA\\ShareByMail\\Capabilities' => $baseDir . '/../lib/Capabilities.php',
-    'OCA\\ShareByMail\\Settings' => $baseDir . '/../lib/Settings.php',
     'OCA\\ShareByMail\\Settings\\Admin' => $baseDir . '/../lib/Settings/Admin.php',
     'OCA\\ShareByMail\\Settings\\SettingsManager' => $baseDir . '/../lib/Settings/SettingsManager.php',
     'OCA\\ShareByMail\\ShareByMailProvider' => $baseDir . '/../lib/ShareByMailProvider.php',
diff --git a/apps/sharebymail/composer/composer/autoload_static.php b/apps/sharebymail/composer/composer/autoload_static.php
index 273da60be64..22897e05f56 100644
--- a/apps/sharebymail/composer/composer/autoload_static.php
+++ b/apps/sharebymail/composer/composer/autoload_static.php
@@ -24,7 +24,6 @@ class ComposerStaticInitShareByMail
         'OCA\\ShareByMail\\Activity' => __DIR__ . '/..' . '/../lib/Activity.php',
         'OCA\\ShareByMail\\AppInfo\\Application' => __DIR__ . '/..' . '/../lib/AppInfo/Application.php',
         'OCA\\ShareByMail\\Capabilities' => __DIR__ . '/..' . '/../lib/Capabilities.php',
-        'OCA\\ShareByMail\\Settings' => __DIR__ . '/..' . '/../lib/Settings.php',
         'OCA\\ShareByMail\\Settings\\Admin' => __DIR__ . '/..' . '/../lib/Settings/Admin.php',
         'OCA\\ShareByMail\\Settings\\SettingsManager' => __DIR__ . '/..' . '/../lib/Settings/SettingsManager.php',
         'OCA\\ShareByMail\\ShareByMailProvider' => __DIR__ . '/..' . '/../lib/ShareByMailProvider.php',
diff --git a/apps/sharebymail/lib/AppInfo/Application.php b/apps/sharebymail/lib/AppInfo/Application.php
index 7acb43cfbed..572e754d934 100644
--- a/apps/sharebymail/lib/AppInfo/Application.php
+++ b/apps/sharebymail/lib/AppInfo/Application.php
@@ -1,4 +1,6 @@
 <?php
+
+declare(strict_types=1);
 /**
  * @copyright Copyright (c) 2017 Bjoern Schiessle <bjoern@schiessle.org>
  *
@@ -27,23 +29,22 @@
 namespace OCA\ShareByMail\AppInfo;
 
 use OCA\ShareByMail\Capabilities;
-use OCA\ShareByMail\Settings;
 use OCP\AppFramework\App;
-use OCP\Util;
+use OCP\AppFramework\Bootstrap\IBootContext;
+use OCP\AppFramework\Bootstrap\IBootstrap;
+use OCP\AppFramework\Bootstrap\IRegistrationContext;
 
-class Application extends App {
-	public function __construct(array $urlParams = []) {
-		parent::__construct('sharebymail', $urlParams);
+class Application extends App implements IBootstrap {
+	public const APP_ID = 'sharebymail';
 
-		$settingsManager = \OC::$server->query(Settings\SettingsManager::class);
-		$settings = new Settings($settingsManager);
+	public function __construct() {
+		parent::__construct(self::APP_ID);
+	}
 
-		/** register capabilities */
-		$container = $this->getContainer();
-		$container->registerCapability(Capabilities::class);
+	public function register(IRegistrationContext $context): void {
+		$context->registerCapability(Capabilities::class);
+	}
 
-		/** register hooks */
-		Util::connectHook('\OCP\Config', 'js', $settings, 'announceShareProvider');
-		Util::connectHook('\OCP\Config', 'js', $settings, 'announceShareByMailSettings');
+	public function boot(IBootContext $context): void {
 	}
 }
diff --git a/apps/sharebymail/lib/Capabilities.php b/apps/sharebymail/lib/Capabilities.php
index e703b9b1e5f..bc2d2baf817 100644
--- a/apps/sharebymail/lib/Capabilities.php
+++ b/apps/sharebymail/lib/Capabilities.php
@@ -1,4 +1,6 @@
 <?php
+
+declare(strict_types=1);
 /**
  * @copyright Copyright (c) 2017 Bjoern Schiessle <bjoern@schiessle.org>
  *
@@ -23,26 +25,35 @@
 
 namespace OCA\ShareByMail;
 
+use OCA\ShareByMail\Settings\SettingsManager;
 use OCP\Capabilities\ICapability;
 
 class Capabilities implements ICapability {
 
-	/**
-	 * Function an app uses to return the capabilities
-	 *
-	 * @return array Array containing the apps capabilities
-	 * @since 8.2.0
-	 */
-	public function getCapabilities() {
+	/** @var SettingsManager */
+	private $manager;
+
+	public function __construct(SettingsManager $manager) {
+		$this->manager = $manager;
+	}
+
+	public function getCapabilities(): array {
 		return [
 			'files_sharing' =>
 				[
 					'sharebymail' =>
 						[
 							'enabled' => true,
-							'upload_files_drop' => ['enabled' => true],
-							'password' => ['enabled' => true],
-							'expire_date' => ['enabled' => true]
+							'upload_files_drop' => [
+								'enabled' => true,
+							],
+							'password' => [
+								'enabled' => true,
+								'enforced' => $this->manager->enforcePasswordProtection(),
+							],
+							'expire_date' => [
+								'enabled' => true,
+							],
 						]
 				]
 		];
diff --git a/apps/sharebymail/lib/Settings.php b/apps/sharebymail/lib/Settings.php
deleted file mode 100644
index 721050c83c4..00000000000
--- a/apps/sharebymail/lib/Settings.php
+++ /dev/null
@@ -1,53 +0,0 @@
-<?php
-/**
- * @copyright Copyright (c) 2016 Bjoern Schiessle <bjoern@schiessle.org>
- *
- * @author Bjoern Schiessle <bjoern@schiessle.org>
- *
- * @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\ShareByMail;
-
-use OCA\ShareByMail\Settings\SettingsManager;
-
-class Settings {
-
-	/** @var SettingsManager */
-	private $settingsManager;
-
-	public function __construct(SettingsManager $settingsManager) {
-		$this->settingsManager = $settingsManager;
-	}
-
-	/**
-	 * announce that the share-by-mail share provider is enabled
-	 *
-	 * @param array $settings
-	 */
-	public function announceShareProvider(array $settings) {
-		$array = json_decode($settings['array']['oc_appconfig'], true);
-		$array['shareByMailEnabled'] = true;
-		$settings['array']['oc_appconfig'] = json_encode($array);
-	}
-
-	public function announceShareByMailSettings(array $settings) {
-		$array = json_decode($settings['array']['oc_appconfig'], true);
-		$array['shareByMail']['enforcePasswordProtection'] = $this->settingsManager->enforcePasswordProtection();
-		$settings['array']['oc_appconfig'] = json_encode($array);
-	}
-}
diff --git a/apps/sharebymail/lib/Settings/SettingsManager.php b/apps/sharebymail/lib/Settings/SettingsManager.php
index cded3e1713d..00826b9b6f5 100644
--- a/apps/sharebymail/lib/Settings/SettingsManager.php
+++ b/apps/sharebymail/lib/Settings/SettingsManager.php
@@ -1,4 +1,6 @@
 <?php
+
+declare(strict_types=1);
 /**
  * @copyright Copyright (c) 2017 Bjoern Schiessle <bjoern@schiessle.org>
  *
@@ -43,7 +45,7 @@ class SettingsManager {
 	 *
 	 * @return bool
 	 */
-	public function sendPasswordByMail() {
+	public function sendPasswordByMail(): bool {
 		$sendPasswordByMail = $this->config->getAppValue('sharebymail', 'sendpasswordmail', $this->sendPasswordByMailDefault);
 		return $sendPasswordByMail === 'yes';
 	}
@@ -53,7 +55,7 @@ class SettingsManager {
 	 *
 	 * @return bool
 	 */
-	public function enforcePasswordProtection() {
+	public function enforcePasswordProtection(): bool {
 		$enforcePassword = $this->config->getAppValue('sharebymail', 'enforcePasswordProtection', $this->enforcePasswordProtectionDefault);
 		return $enforcePassword === 'yes';
 	}
-- 
GitLab