diff options
author | Morris Jobke <hey@morrisjobke.de> | 2017-04-07 17:14:05 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-04-07 17:14:05 -0500 |
commit | ca9d25169dcdd2923a356e2a797d8704506a3787 (patch) | |
tree | 5d94aed1a5f79a5b0abe33d8732fc60e0a4054b3 /apps/files_sharing/lib/Capabilities.php | |
parent | 9adfa60eb38f6c39ae075e1fa68037375c8789de (diff) | |
parent | bf30090be5e3d339c9188d81a900ed2fe4bd6318 (diff) | |
download | nextcloud-server-ca9d25169dcdd2923a356e2a797d8704506a3787.tar.gz nextcloud-server-ca9d25169dcdd2923a356e2a797d8704506a3787.zip |
Merge pull request #4136 from nextcloud/expire-date-for-all-shares
Unified sharing options
Diffstat (limited to 'apps/files_sharing/lib/Capabilities.php')
-rw-r--r-- | apps/files_sharing/lib/Capabilities.php | 26 |
1 files changed, 24 insertions, 2 deletions
diff --git a/apps/files_sharing/lib/Capabilities.php b/apps/files_sharing/lib/Capabilities.php index bfbd15c1122..ed00cdc00a6 100644 --- a/apps/files_sharing/lib/Capabilities.php +++ b/apps/files_sharing/lib/Capabilities.php @@ -21,6 +21,7 @@ */ namespace OCA\Files_Sharing; +use OCP\App\IAppManager; use OCP\Capabilities\ICapability; use \OCP\IConfig; @@ -34,8 +35,12 @@ class Capabilities implements ICapability { /** @var IConfig */ private $config; - public function __construct(IConfig $config) { + /** @var IAppManager */ + private $appManager; + + public function __construct(IConfig $config, IAppManager $appManager) { $this->config = $config; + $this->appManager = $appManager; } /** @@ -76,16 +81,33 @@ class Capabilities implements ICapability { $res['resharing'] = $this->config->getAppValue('core', 'shareapi_allow_resharing', 'yes') === 'yes'; $res['user']['send_mail'] = false; + $res['user']['expire_date']['enabled'] = true; + // deprecated in favour of 'group', but we need to keep it for now + // in order to stay compatible with older clients $res['group_sharing'] = $this->config->getAppValue('core', 'shareapi_allow_group_sharing', 'yes') === 'yes'; + + $res['group'] = []; + $res['group']['enabled'] = $this->config->getAppValue('core', 'shareapi_allow_group_sharing', 'yes') === 'yes'; + $res['group']['expire_date']['enabled'] = true; } //Federated sharing $res['federation'] = [ 'outgoing' => $this->config->getAppValue('files_sharing', 'outgoing_server2server_share_enabled', 'yes') === 'yes', - 'incoming' => $this->config->getAppValue('files_sharing', 'incoming_server2server_share_enabled', 'yes') === 'yes' + 'incoming' => $this->config->getAppValue('files_sharing', 'incoming_server2server_share_enabled', 'yes') === 'yes', + 'expire_date' => ['enabled' => true] ]; + if ($this->appManager->isEnabledForUser('sharebymail')) { + $res['mailshare'] = [ + 'enabled' => true, + 'upload_files_drop' => ['enabled' => true], + 'password' => ['enabled' => true], + 'expire_date' => ['enabled' => true] + ]; + } + return [ 'files_sharing' => $res, ]; |