Also make other shares listen to the "Allow sharing with groups"

Signed-off-by: Joas Schilling <coding@schilljs.com>
This commit is contained in:
Joas Schilling 2021-01-29 15:59:41 +01:00 committed by Thomas Citharel
parent 903b99bd93
commit e4b5645883
No known key found for this signature in database
GPG Key ID: A061B9DDE0CA0773
2 changed files with 14 additions and 1 deletions

View File

@ -192,7 +192,9 @@ class ShareesAPIController extends OCSController {
$shareTypes[] = IShare::TYPE_DECK;
}
} else {
$shareTypes[] = IShare::TYPE_GROUP;
if ($this->shareManager->allowGroupSharing()) {
$shareTypes[] = IShare::TYPE_GROUP;
}
$shareTypes[] = IShare::TYPE_EMAIL;
}

View File

@ -38,8 +38,14 @@ use OCP\IUserSession;
use OCP\Share\IShare;
class GroupPlugin implements ISearchPlugin {
/** @var bool */
protected $shareeEnumeration;
/** @var bool */
protected $shareWithGroupOnly;
/** @var bool */
protected $shareeEnumerationInGroupOnly;
/** @var bool */
protected $groupSharingDisabled;
/** @var IGroupManager */
private $groupManager;
@ -56,9 +62,14 @@ class GroupPlugin implements ISearchPlugin {
$this->shareeEnumeration = $this->config->getAppValue('core', 'shareapi_allow_share_dialog_user_enumeration', 'yes') === 'yes';
$this->shareWithGroupOnly = $this->config->getAppValue('core', 'shareapi_only_share_with_group_members', 'no') === 'yes';
$this->shareeEnumerationInGroupOnly = $this->shareeEnumeration && $this->config->getAppValue('core', 'shareapi_restrict_user_enumeration_to_group', 'no') === 'yes';
$this->groupSharingDisabled = $this->config->getAppValue('core', 'shareapi_allow_group_sharing', 'yes') === 'no';
}
public function search($search, $limit, $offset, ISearchResult $searchResult) {
if ($this->groupSharingDisabled) {
return false;
}
$hasMoreResults = false;
$result = ['wide' => [], 'exact' => []];