server icon indicating copy to clipboard operation
server copied to clipboard

[Bug] (CalDav): Last occurrence date is not calculated properly on recurring events

Open SebastianKrupinski opened this issue 1 year ago • 1 comments

The last occurrence date is NOT calculated properly on recurring events causing notification emails for changes and cancellation not to be sent.

https://github.com/nextcloud/server/blob/500a9cb7244d3072f83eebc878e27833572e707d/apps/dav/lib/CalDAV/Schedule/IMipPlugin.php#L149-L154

SebastianKrupinski avatar May 23 '24 23:05 SebastianKrupinski

Confirmed.

Tested using a every 2 days event that was recurring for two weeks, then cancelling the event after the second occurrence had passed.

SebastianKrupinski avatar May 23 '24 23:05 SebastianKrupinski

Determined Cause.

The cause is the parseEventForOrganizer function in sabre/vobject/lib/ITip/Broker class that generates the iTip messages.

The function does not include the RRULE parameter as part of the iTipMessage->message->VEVENT that is sent to the scheduler.

Therefore the last occurrence cannot be calculated properly.

Possible fixes...

  • remove last occurrence test
  • update sabre dav repo

SebastianKrupinski avatar May 30 '24 20:05 SebastianKrupinski

https://github.com/nextcloud/server/pull/47998 is in so this can be resumed

ChristophWurst avatar Oct 02 '24 08:10 ChristophWurst

Confirmed fixed with https://github.com/nextcloud/server/pull/48583

RRULE is now present when cancelling an event series after the first occurance.

Image

SebastianKrupinski avatar Oct 21 '24 22:10 SebastianKrupinski