Page MenuHomePhabricator

Prepare event dates for EditEngine/API
ClosedPublic

Authored by epriestley on Jul 11 2016, 11:35 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Aug 6, 5:00 PM
Unknown Object (File)
Tue, Jul 19, 5:33 PM
Unknown Object (File)
Fri, Jul 15, 4:34 PM
Unknown Object (File)
Fri, Jul 15, 4:34 PM
Unknown Object (File)
Fri, Jul 15, 4:33 PM
Unknown Object (File)
Fri, Jul 15, 4:33 PM
Unknown Object (File)
Jul 11 2022, 3:27 AM
Unknown Object (File)
Jul 2 2022, 3:27 PM
Subscribers
None

Details

Summary

Ref T9275. Currently, the "Start Date", "End Date", and "Recurrence End Date" transcations take a complex value (AphrontFormDateControlValue) and reduce it to an epoch.

Do this a little earlier, since the API will be much more usable if it just passes in epoch timestamps.

Events also have some logic where they rewrite the from date and to date on the actual object for all day events, then undo the changes later. Specifically, if you have an all-day event on "July 24th", the exact start and end times vary based on who is looking at it. Instead of overwriting the persistent dateFrom and dateTo properties, add separate viewer properties to make it easier to keep this stuff straight.

Since this means all-day events get stored in UTC, we need to query/fetch (and then discard) slightly more events. This is perfectly and much simpler to do.

The one weird "UTC" hack in here will get nuked when this moves to EditEngine properly.

Test Plan

Edited times for normal events and all-day events.

Diff Detail

Repository
rP Phabricator
Branch
calendar5
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 13025
Build 16643: Run Core Tests
Build 16642: arc lint + arc unit

Event Timeline

epriestley retitled this revision from to Prepare event dates for EditEngine/API.
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.Jul 12 2016, 4:05 PM
This revision was automatically updated to reflect the committed changes.