|
|
|
@ -28,7 +28,9 @@ namespace OC\Settings\Admin; |
|
|
|
|
|
|
|
|
|
use OC\Share\Share; |
|
|
|
|
use OCP\AppFramework\Http\TemplateResponse; |
|
|
|
|
use OCP\Constants; |
|
|
|
|
use OCP\IConfig; |
|
|
|
|
use OCP\IL10N; |
|
|
|
|
use OCP\Settings\ISettings; |
|
|
|
|
use OCP\Util; |
|
|
|
|
|
|
|
|
@ -36,11 +38,15 @@ class Sharing implements ISettings { |
|
|
|
|
/** @var IConfig */ |
|
|
|
|
private $config; |
|
|
|
|
|
|
|
|
|
/** @var IL10N */ |
|
|
|
|
private $l; |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* @param IConfig $config |
|
|
|
|
*/ |
|
|
|
|
public function __construct(IConfig $config) { |
|
|
|
|
public function __construct(IConfig $config, IL10N $l) { |
|
|
|
|
$this->config = $config; |
|
|
|
|
$this->l = $l; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
@ -51,6 +57,29 @@ class Sharing implements ISettings { |
|
|
|
|
$excludeGroupsList = !is_null(json_decode($excludedGroups)) |
|
|
|
|
? implode('|', json_decode($excludedGroups, true)) : ''; |
|
|
|
|
|
|
|
|
|
$permList = [ |
|
|
|
|
[ |
|
|
|
|
'id' => 'cancreate', |
|
|
|
|
'label' => $this->l->t('Create'), |
|
|
|
|
'value' => Constants::PERMISSION_CREATE |
|
|
|
|
], |
|
|
|
|
[ |
|
|
|
|
'id' => 'canupdate', |
|
|
|
|
'label' => $this->l->t('Change'), |
|
|
|
|
'value' => Constants::PERMISSION_UPDATE |
|
|
|
|
], |
|
|
|
|
[ |
|
|
|
|
'id' => 'candelete', |
|
|
|
|
'label' => $this->l->t('Delete'), |
|
|
|
|
'value' => Constants::PERMISSION_DELETE |
|
|
|
|
], |
|
|
|
|
[ |
|
|
|
|
'id' => 'canshare', |
|
|
|
|
'label' => $this->l->t('Share'), |
|
|
|
|
'value' => Constants::PERMISSION_SHARE |
|
|
|
|
], |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
$parameters = [ |
|
|
|
|
// Built-In Sharing |
|
|
|
|
'allowGroupSharing' => $this->config->getAppValue('core', 'shareapi_allow_group_sharing', 'yes'), |
|
|
|
@ -68,6 +97,8 @@ class Sharing implements ISettings { |
|
|
|
|
'shareExcludedGroupsList' => $excludeGroupsList, |
|
|
|
|
'publicShareDisclaimerText' => $this->config->getAppValue('core', 'shareapi_public_link_disclaimertext', null), |
|
|
|
|
'enableLinkPasswordByDefault' => $this->config->getAppValue('core', 'shareapi_enable_link_password_by_default', 'no'), |
|
|
|
|
'shareApiDefaultPermissions' => $this->config->getAppValue('core', 'shareapi_default_permissions', Constants::PERMISSION_ALL), |
|
|
|
|
'shareApiDefaultPermissionsCheckboxes' => $permList, |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
return new TemplateResponse('settings', 'settings/admin/sharing', $parameters, ''); |
|
|
|
|