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
F18823830: D16953.id.diff
Oct 23 2025, 1:30 PM
F18811637: D16953.diff
Oct 20 2025, 4:02 AM
F18658479: D16953.id40801.diff
Sep 23 2025, 6:43 AM
F18630945: D16953.diff
Sep 16 2025, 1:43 PM
F18625062: D16953.id40800.diff
Sep 15 2025, 9:47 PM
F17955138: D16953.diff
Aug 1 2025, 4:35 AM
F17812206: D16953.id.diff
Jul 25 2025, 7:14 PM
F17806553: D16953.id.diff
Jul 25 2025, 1:56 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.