Page MenuHomePhabricator

Begin navigating the mess that is edits to recurring events
ClosedPublic

Authored by epriestley on Oct 31 2016, 8:40 PM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Dec 17, 10:58 AM
Unknown Object (File)
Tue, Dec 17, 5:03 AM
Unknown Object (File)
Wed, Dec 11, 10:48 PM
Unknown Object (File)
Sat, Dec 7, 11:26 PM
Unknown Object (File)
Fri, Nov 29, 6:27 AM
Unknown Object (File)
Mon, Nov 25, 10:43 AM
Unknown Object (File)
Wed, Nov 20, 9:17 PM
Unknown Object (File)
Nov 17 2024, 5:20 AM
Subscribers
None

Details

Summary

Ref T11804. This puts us on a path toward some kind of reasonable behavior here.

Currently, cancelling recurring events makes approximately zero sense ever in any situation.

Instead, give users the choice to cancel just the instance, or all future events. This is similar to Calendar.app. (Google Calendar has a third option, "All Events", which I may implement).

When the user picks something, basically do that.

The particulars of "do that" are messy. We have to split the series into two different series, stop the first series early, then edit the second series. Then we need to update any concrete events that are now part of the second series.

This code will get less junk in the next couple of diffs (I hope?) since I need to make it apply to edits, too, but this was a little easier to get started with.

Test Plan

Cancelled an instance of an event; cancelled "All future events".

Both of them more or less worked in a reasonble way.

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

epriestley retitled this revision from to Begin navigating the mess that is edits to recurring events.
epriestley updated this object.
epriestley edited the test plan for this revision. (Show Details)
epriestley added a reviewer: chad.
chad edited edge metadata.
This revision is now accepted and ready to land.Oct 31 2016, 9:11 PM
This revision was automatically updated to reflect the committed changes.