6.0.0-beta1
8/9/25

[#4993] All day event end date should be on the next day, not same day
Summary All day event end date should be on the next day, not same day
Queue Kronolith
Queue Version 2.1.4
Type Bug
State Duplicate
Priority 2. Medium
Owners
Requester bedgar (at) desasecurity (dot) com
Created 02/13/2007 (6752 days ago)
Due
Updated 02/15/2007 (6750 days ago)
Assigned
Resolved 02/15/2007 (6750 days ago)
Github Issue Link
Github Pull Request
Milestone
Patch No

History
02/15/2007 06:11:52 PM Jan Schneider Comment #2
State ⇒ Duplicate
Reply to this comment
Duplicate of ticket #4617
02/13/2007 05:03:41 PM bedgar (at) desasecurity (dot) com Comment #1
State ⇒ Unconfirmed
Priority ⇒ 2. Medium
Type ⇒ Bug
Summary ⇒ All day event end date should be on the next day, not same day
Queue ⇒ Kronolith
Reply to this comment
The iCalendar RFC (RFC 2445) indicates that DTEND "specifies the 
non-inclusive end of the event."  When Kronolith creates an all day 
event, it sets the DTSTART and DTEND to the same date.  It should set 
the DTEND to the following date to obey the RFC.  Mozilla Lightning 
(and I presume Sunbird) behave the correct way.  When Lightning 
creates an all day event, the DTEND is the value of the next day.



Lightning is forgiving, though, of DTEND having the same value as 
DTSTART and figures out that an all day event is intended.  However, 
if Lightning is set to publish an event and the kronolith/ics.php is 
modified (as I have done) to accept events created in Lightning, the 
Kronolith display of all day events created *from* Lightning is 
incorrect due to this bug.



It seems that Outlook may have the same behavior Kronolith currently 
has as to the value of DTEND for all day events, and so maybe this was 
not broken in earlier versions of Kronolith but was broken as a patch 
to fix Outlook handling.  I cannot verify that, though I saw old bug 
reports to that effect.  In my opinion, Kronolith should obey the RFC 
and perhaps handle Outlook in some other way (another URL, user-agent 
sniffing if Outlook's user-agent is unique enough, etc.)

Saved Queries