nextcloud / nextcloud/server

[Bug]: Deleted user from calendar share does not get deleted in database

Open
#47,257 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

0. Needs triage 29-feedback bug feature: caldav feature: sharing
Dominant language
PHP
Stars
36.9k
Forks
5.2k
Avg merge
2d 3h
Merged PRs (30d)
713

Description

⚠️ This issue respects the following points: ⚠️
Bug description

Situation: We have a shared calendar. The calendar is shared to a group of people. The calendar is also shared to a specific user.

If the group is deleted from the calendar share, the entry in the database table 'oc_dav_shares' gets deleted. If the user is deleted from the calendar share, the entry in the database table does not get deleted and stays there (the value from the column 'access' is 5).

Specific description of our situation: The calendar is shared to a group of people, which should not be able to edit the calendar. There is one dedicated person, to add/delete entries from that calendar. This person is also in the group in which the other people are. So if we delete the share from that specific person, he/she cannot see the calendar at all, because the database entry with access level 5 is still there.

Steps to reproduce
  1. Create calender and share with group and/or user
  2. Delete user from share
Expected behavior

The row in the table should get deleted.

Installation method

Community Manual installation with Archive

Nextcloud Server version

29

Operating system

Debian/Ubuntu

PHP engine version

PHP 8.1

Web server

Apache (supported)

Database engine version

MySQL

Is this bug present after an update or on a fresh install?

None

Are you using the Nextcloud Server Encryption module?

None

What user-backends are you using?
  • Default user-backend (database)
  • LDAP/ Active Directory
  • SSO - SAML
  • Other
Configuration report

No response

List of activated Apps

No response

Nextcloud Signing status

No response

Nextcloud Logs

No response

Additional info

The exact NC Version is 29.0.3

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the calendar-sharing flow by sharing a calendar with a group and a specific user, then removing the user share. Compare the resulting oc_dav_shares rows for group and user removal, focusing on the entry whose access value is 5. Done means removing the user share deletes its database row and the user no longer retains the unintended calendar access.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
backend, databases
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.