Description
Bug description
By default, shares are added to a user's home without requiring confirmation. The configuration flag 'sharing.enable_share_accept'
changes this behavior, making it necessary to accept shares first. This is managed under Shares → Pending Shares.
In Nextcloud 29, rejecting a remote share with enable_share_accept enabled is not possible.
Steps to reproduce
- Have instanceA and instanceB
- Set
'sharing.enable_share_accept' => true
in the configuration at least for instanceB (this is crucial to reproduce the issue). - Alice (instanceA) shares a folder "Pizza with Pineapple" with Bob (instanceB).
- Bob (instanceB) tries to reject the share for obvious reasons. 😉
- Bob gets an error message saying the rejection failed—now wondering if the admin has joined the "Pineapple belongs on pizza" team. 🍍🍕
Screencast.From.2025-03-04.11-31-55.webm
Expected behavior
It should be possible to reject a pending share.
Also weird that the share name is shown with }}
, even if the original share name did not contain them.
Additional info
The issue appears to be in rejectShareAction.ts, which likely needs an update to handle pending shares differently:
server/apps/files_sharing/src/files_actions/rejectShareAction.ts
Lines 44 to 47 in eab718a
-
To remove a pending share, the DELETE request should go to:
apps/files_sharing/api/v1/{shareBase}/pending/{id}
(RemoteController.declineShare) -
Currently, the DELETE request goes to:
apps/files_sharing/api/v1/{shareBase}/{id}
(RemoteController.unshare)
The unshare method only works for removing an existing share (one that has already been mounted), not for pending shares.