Page MenuHomePhabricator

Fix an issue where all-day events had durations applied incorrectly
ClosedPublic

Authored by epriestley on Nov 28 2016, 4:28 PM.
Tags
None
Referenced Files
F17955138: D16953.diff
Fri, Aug 1, 4:35 AM
F17812206: D16953.id.diff
Fri, Jul 25, 7:14 PM
F17806553: D16953.id.diff
Fri, Jul 25, 1:56 PM
F17803352: D16953.id40801.diff
Fri, Jul 25, 10:06 AM
F17783722: D16953.id40801.diff
Thu, Jul 24, 11:00 AM
F17770527: D16953.diff
Wed, Jul 23, 9:42 AM
F17765055: D16953.id40800.diff
Wed, Jul 23, 1:22 AM
Unknown Object (File)
Jul 1 2025, 11:27 PM
Subscribers
None

Details

Summary

Ref T11816. User-visible bug here was that availability dots (away/busy) for all-day events might not appear correctly if the viewer timezone and event timezone differ.

Underlying issue was that when adding a duration (one day) to an all-day event datetime, we incorrectly used the viewer timezone as part of the calculation.

Instead, base the calculation on a clone of the event with no viewer timezone.

Test Plan
  • Added failing unit test, made it pass.
  • Saw proper availability dots for all-day events in Phabricator.

Diff Detail

Repository
rPHU libphutil
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

epriestley retitled this revision from to Fix an issue where all-day events had durations applied incorrectly.
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.Nov 28 2016, 4:30 PM
This revision was automatically updated to reflect the committed changes.