Closed
Bug 445764
Opened 18 years ago
Closed 18 years ago
Remote Ical (Zarafa): "All day" events are created without timezone information
Categories
(Calendar :: Provider: ICS/WebDAV, defect)
Tracking
(Not tracked)
RESOLVED
INVALID
People
(Reporter: lars.brueckner, Unassigned)
Details
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.14) Gecko/20080404 Firefox/2.0.0.14
Build Identifier: Thunderbird 2.0.0.14 (20080421) with Lightning Nightly 16-JUL-2008
Hello,
we noticed the following when using Zarafa as a remote ical server.
If you create an "All day" event with Lightning and reload the calendar, the event is displayed from 02:00am until 02:00am the next day. These two hours are exactly the difference of our time zone (Europe/Berlin) and UTC.
We have the same time shift when looking at the event through Zarafa's web ui.
When creating an "All day" event in Zarafa's web ui, it is displayed correctly in Lightning!
Reproducible: Always
Steps to Reproduce:
1. Create a new remote event in Lightning: Select "All Day Event"; Save
2. Reload the remote calendar
Actual Results:
The event is displayed as a normal event beginning 02:00 am and lasts until 02:00 am of the next day.
Expected Results:
Event should be displayed as an all day event.
Here is a trace of the HTTP; first the creation of the event in Lightning:
PUT /ical/Lars.Brueckner/calendar HTTP/1.1
Host: 192.168.140.32:8080
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.12) Gecko/20080213 Lightning/0.8 Thunderbird/2.0.0.12 Mnenhy/0.7.5.666
...
Content-Type: text/calendar
BEGIN:VCALENDAR
PRODID:-//Mozilla.org/NONSGML Mozilla Calendar V1.1//EN
VERSION:2.0
CALSCALE:GREGORIAN
BEGIN:VEVENT
CREATED:20080717T131857Z
LAST-MODIFIED:20080717T131912Z
DTSTAMP:20080717T131857Z
UID:6c321ee3-e917-46da-a810-a0dd3e522c4a
SUMMARY:AllDayLightning
DTSTART;VALUE=DATE:20080708
DTEND;VALUE=DATE:20080709
TRANSP:TRANSPARENT
X-MOZ-SEND-INVITATIONS:TRUE
END:VEVENT
END:VCALENDAR
HTTP/1.1 201 Created
Server: Zarafa iCal Gateway 0,6,02,10238
There is no timezone information. Here is what comes back when I restart Thunderbird (Two events, one was created in the web ui):
GET /ical/Lars.Brueckner/calendar HTTP/1.1
Host: calendar:8080
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.12) Gecko/20080213 Lightning/0.8 Thunderbird/2.0.0.12 Mnenhy/0.7.5.666
HTTP/1.1 200 OK
Server: Zarafa iCal Gateway 0,6,02,10238
...
BEGIN:VCALENDAR
PRODID
:-//Connectux//Zarafa
VERSION
:2.0
CALSCALE
:GREGORIAN
BEGIN:VTIMEZONE
TZID
:UTC+0200
BEGIN:STANDARD
TZOFFSETFROM
:+020000
TZOFFSETTO
:+020000
TZNAME
:
DTSTART
:19700101T000000Z
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT ### AllDay created in Zarafa: an explicit timezone in DTSTART/END
ORGANIZER
;CN=
:MAILTO:
X-LABEL
:0
TRANSP
:TRANSPARENT
X-BUSYSTATUS
:0
CREATED
:20080717T124426Z
DTSTAMP
:20080717T124550Z
DTSTART
;TZID=UTC+0200
:20080707T000000
DTEND
;TZID=UTC+0200
:20080708T000000
SUMMARY
:AllDayZarafa
CLASS
:PUBLIC
UID
:RZJwfFpW60R6BrHJPG1uJ2BgGpbvxjkQxWrRqejgBEJUpkNBtOhrb1r1bZes7PLH
END:VEVENT
BEGIN:VEVENT ### All Day Lightning: No timezone in DTSTART/END, so calendar default is applied
ORGANIZER
;CN=
:MAILTO:
CREATED
:20080717T124122Z
DTSTAMP
:20080717T124146Z
DTSTART
:20080708T000000Z
DTEND
:20080709T000000Z
SUMMARY
:AllDayLightning
CLASS
:PUBLIC
UID
:6c321ee3-e917-46da-a810-a0dd3e522c4a
END:VEVENT
END:VCALENDAR
There are no problems when creating events with explicit start and end times, e.g. from 00:00 to 23:59.
For these events, time zone information is added by Lightning during the HTTP PUT:
...
BEGIN:VTIMEZONE
TZID:Europe/Berlin
X-LIC-LOCATION:Europe/Berlin
BEGIN:DAYLIGHT
TZOFFSETFROM:+0100
TZOFFSETTO:+0200
TZNAME:CEST
...
I hope this can be fixed without too much effort.
Best regards,
Lars
Comment 1•18 years ago
|
||
The revised RFC 2445bis [1] clarifies that
"The "TZID" property parameter MUST NOT be applied to DATE
properties, and DATE-TIME or TIME properties whose time values are
specified in UTC."
Thus all-day items must not be tied to a timezone. I think it's a Zafara bug that it falsifies the passed (valid) data.
[1]
<http://tools.ietf.org/rfcmarkup?doc=draft-ietf-calsify-rfc2445bis-07#section-3.2.18)>
Status: UNCONFIRMED → RESOLVED
Closed: 18 years ago
Resolution: --- → INVALID
| Reporter | ||
Comment 2•18 years ago
|
||
Hello,
as I read the above logs, Zarafa does not change the data. Both the Zarafa web ui and Lightning display the all day event in UTC (which means +2 hours for my local time).
But shouldn't the original all day event be created in _my_ local timezone Europe/Berlin, and not in UTC?
BEGIN:VCALENDAR
..
CALSCALE:GREGORIAN
BEGIN:VEVENT
...
UID:6c321ee3-e917-46da-a810-a0dd3e522c4a
SUMMARY:AllDayLightning
DTSTART;VALUE=DATE:20080708
DTEND;VALUE=DATE:20080709
...
If not, how can any calendar server work correctly if it has users that live in different time zones?
Best regards,
Lars
Status: RESOLVED → UNCONFIRMED
Resolution: INVALID → ---
Comment 3•18 years ago
|
||
(In reply to comment #2)
> But shouldn't the original all day event be created in _my_ local timezone
> Europe/Berlin, and not in UTC?
That's true for events with a time, but not for all-day events, because July 18 is everywhere the same. If you want to have an event that lasts e.g. 24 hours beginning at midnight in one timezone, and should be shown shifted in another timezone, you have to create it with a time starting at 0:00 and ending after 24 hours.
Comment 4•18 years ago
|
||
(In reply to comment #2)
> Hello,
>
> as I read the above logs, Zarafa does not change the data. Both the Zarafa web
> ui and Lightning display the all day event in UTC (which means +2 hours for my
> local time).
Lightning PUTs:
DTSTART;VALUE=DATE:20080708
DTEND;VALUE=DATE:20080709
and GETs from Zafara:
DTSTART
:20080708T000000Z
DTEND
:20080709T000000Z
thus Zafara falsifies the DATE values to a UTC DATE-TIME (dataloss).
> But shouldn't the original all day event be created in _my_ local timezone
> Europe/Berlin, and not in UTC?
All-day events (as Martin pointed out, too), are lasting a whole day regardless of the timezone; imagine e.g. new years eve is on the same day all over the world, regardless of the timezone. That way all-day DATEs *don't specify a point in time*.
> If not, how can any calendar server work correctly if it has users that live in
> different time zones?
If you want to specify all-day events bound to a specific timezone, you need to use DATE-TIMEs, e.g. 00:00-24:00 (Europe/Paris).
Status: UNCONFIRMED → RESOLVED
Closed: 18 years ago → 18 years ago
Resolution: --- → INVALID
| Reporter | ||
Comment 5•18 years ago
|
||
All right. Thanks for the explanation!
Best regards,
Lars
You need to log in
before you can comment on or make changes to this bug.
Description
•