Merge pull request #20832 from nextcloud/fix/sharing-filter-user-shares-only-fix-group-display

Do not filter id matching userId on non-user-share shares
This commit is contained in:
Morris Jobke 2020-05-06 17:46:21 +02:00 committed by GitHub
commit 06732cf2af
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 10 additions and 8 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -221,7 +221,7 @@ class ShareAPIController extends OCSController {
if ($this->shareManager->outgoingServer2ServerSharesAllowed()) {
if ($share->getShareType() === IShare::TYPE_LINK
|| $share->getShareType() === IShare::TYPE_EMAIL) {
$result['permissions'] |= Constants::PERMISSION_SHARE;
$result['permissions'] |= Constants::PERMISSION_SHARE;
}
}
@ -613,12 +613,12 @@ class ShareAPIController extends OCSController {
$shares = array_merge($userShares, $groupShares, $circleShares, $roomShares);
$shares = array_filter($shares, function (IShare $share) {
$filteredShares = array_filter($shares, function (IShare $share) {
return $share->getShareOwner() !== $this->currentUser;
});
$formatted = [];
foreach ($shares as $share) {
foreach ($filteredShares as $share) {
if ($this->canAccessShare($share)) {
try {
$formatted[] = $this->formatShare($share);
@ -791,7 +791,8 @@ class ShareAPIController extends OCSController {
continue;
}
if (in_array($share->getId(), $known) || $share->getSharedWith() === $this->currentUser) {
if (in_array($share->getId(), $known)
|| ($share->getSharedWith() === $this->currentUser && $share->getShareType() === IShare::TYPE_USER)) {
continue;
}

View File

@ -23,6 +23,7 @@
<template>
<li class="sharing-entry">
<Avatar class="sharing-entry__avatar"
:is-no-user="share.type !== SHARE_TYPES.SHARE_TYPE_USER"
:user="share.shareWith"
:display-name="share.shareWithDisplayName"
:url="share.shareWithAvatar" />