Homec4science

Generate "stub" events earlier, so more infrastructure works with Calendar

Authored by epriestley <git@epriestley.com> on Jul 7 2016, 16:19.

Description

Generate "stub" events earlier, so more infrastructure works with Calendar

Summary:
Ref T9275. When you create a recurring event which recurs forever, we want to avoid writing an infinite number of rows to the database.

Currently, we write a row to the database right before you edit the event. Until then, we refer to it as E123/999 or whatever ("instance 999 of event 123").

This creates a big mess with trying to make recurring events work with EditEngine, Subscriptions, Projects, Flags, Tokens, etc -- all of this stuff assumes that whatever you're working with has a PHID.

I poked at letting this stuff work without a PHID a little bit, but that looked like a gigantic mess.

Instead, generate an event "stub" a little sooner (when you look at the event detail page). This is basically just an ID/PHID to refer to the instance.

Then, when you edit the stub, "materialize" it into a real event.

This still has some issues, but I think it's more promising than the other approach was.

Also:

  • Removes dead user profile calendar controller.
  • Replaces comments with EditEngine comments.

Test Plan:

  • Commented on a recurring event.
  • Awarded tokens to a recurring event.

Reviewers: chad

Reviewed By: chad

Maniphest Tasks: T9275

Differential Revision: https://secure.phabricator.com/D16248

Details

Committed
epriestley <git@epriestley.com>Jul 13 2016, 16:41
Pushed
aubortJan 31 2017, 17:16
Parents
rPH91a8a6d618cb: Initial cut of CalendarEditEngine
Branches
Unknown
Tags
Unknown

Event Timeline

epriestley <git@epriestley.com> committed rPH3ab6a7e19f46: Generate "stub" events earlier, so more infrastructure works with Calendar (authored by epriestley <git@epriestley.com>).Jul 13 2016, 16:41