[horde] Recurrent Appointments not reading timezone info correctly?

Michael J Rubinsky mrubinsk at horde.org
Tue May 27 00:38:43 UTC 2014


Quoting Simon Wilson <simon at simonandkate.net>:

> ----- Message from simon at simonandkate.net ---------
>    Date: Tue, 20 May 2014 15:25:04 +1000
>    From: simon at simonandkate.net
> Subject: Re: [horde] Recurrent Appointments not reading timezone info
> correctly?
>      To: mrubinsk at horde.org
>      Cc: horde at lists.horde.org
>
>>> On 20 May 2014, at 1:47 pm, Michael J Rubinsky <mrubinsk at horde.org>
>>> wrote:
>>>
>>> Quoting Michael J Rubinsky <mrubinsk at horde.org>:
>>>
>>>> Quoting Simon Wilson <simon at simonandkate.net>:
>>>>
>>>>> Horde 5.1.6, Kronolith 4.1.5
>>>>>
>>>>> We setup TWO appointments in my wife's calendar, both inviting me as
>>>>> an attendee.
>>>>>
>>>>> First one was a SINGLE non-recurrent event that came through with
>>>>> times fine, displaying both in Katie's calendar all fine, and showing
>>>>> in my Imp ics viewer fine, and accepted and showing in Kronolith fine.
>>>>>
>>>>> <SNIP>
>>>>>  
>>>>
>>>> Does the ics file look the same if it exported directly from Katie's
>>>> calendar?
>>>
>>> This may or may not be fixed by
>>>
> https://github.com/horde/horde/commit/7f6f41619c7ce923a56ba6f5d678aba30818daa8#diff-3115bd8529b81bde2eeba73f7cdde96d
> (this fixed a number of timezone related issues I uncovered while trying to
> track this
>>> down).
>>>
>>> --
>>> mike
>>
>> I'll check tonight, also what the ics looks like when exported from
>> Katie's calendar.
>>
>> Thanks Mike :)
>>
>> Simon.
>
> Hi Mike,
>
> Not fixed unfortunately. :(
>
> Changes applied to kronolith/lib/Application.php as per the push. Stopped
> httpd, horde-clear-cache, cleared xcache. Restarted everything. (Any
> way to confirm that it's taken effect?)
>
> I generated a test recurrent appointment for 8th July, every two weeks,
> 11am to 12 noon, in Katie's calendar, with me as an attendee. 
>
> Appears in Katie's calendar fine, but the invite to me appears in Imp
> and imports as 10am to
> 11am. 
>
> Three ics files following.
>
> Simon
>
>
>
> First is the ics as sent to me
> Second is the ics exported from Katie's calendar
> Third is the ics exported from MY calendar after accepting it.
>
> Both first two have the same information, with the event showing from
> 11am to 12 noon
>
> DTSTART;TZID=Australia/Brisbane:20140708T110000
> DTEND;TZID=Australia/Brisbane:20140708T120001
>
> My Imp displays it 10 to 11am, and it imports the same. The export
> from my calendar then shows:
>
> DTSTART;TZID=Australia/Brisbane:20140708T100000
> DTEND;TZID=Australia/Brisbane:20140708T110001
>
> ics as sent to me:
>
> BEGIN:VCALENDAR
> VERSION:2.0
> METHOD:REQUEST
> X-WR-CALNAME:Calendar of Katie Wilson
> PRODID:-//The Horde Project//Horde iCalendar Library//EN
> BEGIN:VEVENT
> DTSTART;TZID=Australia/Brisbane:20140708T110000
> DTEND;TZID=Australia/Brisbane:20140708T120001
> DTSTAMP:20140520T091239Z
> UID:20140520191239.rPFpybvjG1ykk_SLJ3vD6A6 at mail.simonandkate.net
> CREATED:20140520T091239Z
> LAST-MODIFIED:20140520T091239Z
> SUMMARY:Test
> ORGANIZER;CN=Katie Wilson:mailto:katie at simonandkate.net
> CLASS:PUBLIC
> STATUS:CONFIRMED
> TRANSP:OPAQUE
> ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=TRUE:mailto:simon@
>  simonandkate.net
> ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=TRUE:mailto:katie@
>  simonandkate.net
> RRULE:FREQ=WEEKLY;INTERVAL=1;BYDAY=TU;COUNT=5
> BEGIN:VALARM
> ACTION:DISPLAY
> DESCRIPTION:Test
> TRIGGER;VALUE=DURATION:-PT15M
> END:VALARM
> END:VEVENT
> BEGIN:VTIMEZONE
> TZID:Australia/Brisbane
> BEGIN:DAYLIGHT
> TZOFFSETFROM:+1000
> TZOFFSETTO:+1100
> DTSTART:19170101T000100
> TZNAME:EST
> END:DAYLIGHT
> BEGIN:STANDARD
> TZOFFSETFROM:+1100
> TZOFFSETTO:+1000
> DTSTART:19170325T020000
> TZNAME:EST
> END:STANDARD
> BEGIN:DAYLIGHT
> TZOFFSETFROM:+1000
> TZOFFSETTO:+1100
> DTSTART:19420101T020000
> TZNAME:EST
> END:DAYLIGHT
> BEGIN:STANDARD
> TZOFFSETFROM:+1100
> TZOFFSETTO:+1000
> DTSTART:19420329T020000
> TZNAME:EST
> END:STANDARD
> BEGIN:DAYLIGHT
> TZOFFSETFROM:+1000
> TZOFFSETTO:+1100
> DTSTART:19420927T020000
> TZNAME:EST
> END:DAYLIGHT
> BEGIN:STANDARD
> TZOFFSETFROM:+1100
> TZOFFSETTO:+1000
> DTSTART:19430328T020000
> RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=3;UNTIL=19440325T16000Z
> TZNAME:EST
> END:STANDARD
> BEGIN:DAYLIGHT
> TZOFFSETFROM:+1000
> TZOFFSETTO:+1100
> DTSTART:19431003T020000
> TZNAME:EST
> END:DAYLIGHT
> BEGIN:DAYLIGHT
> TZOFFSETFROM:+1000
> TZOFFSETTO:+1100
> DTSTART:19711031T020000
> RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10;UNTIL=19711030T16000Z
> TZNAME:EST
> END:DAYLIGHT
> BEGIN:STANDARD
> TZOFFSETFROM:+1100
> TZOFFSETTO:+1000
> DTSTART:19720227T020000
> RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=2;UNTIL=19720226T16000Z
> TZNAME:EST
> END:STANDARD
> BEGIN:DAYLIGHT
> TZOFFSETFROM:+1000
> TZOFFSETTO:+1100
> DTSTART:19891029T020000
> RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10;UNTIL=19911026T16000Z
> TZNAME:EST
> END:DAYLIGHT
> BEGIN:STANDARD
> TZOFFSETFROM:+1100
> TZOFFSETTO:+1000
> DTSTART:19900304T020000
> RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=1SU;UNTIL=19920229T16000Z
> TZNAME:EST
> END:STANDARD
> END:VTIMEZONE
> END:VCALENDAR
>
> And as exported from the event in Katie's calendar:
>
> BEGIN:VCALENDAR
> VERSION:2.0
> X-WR-CALNAME:Calendar of Katie Wilson
> PRODID:-//The Horde Project//Horde iCalendar Library//EN
> BEGIN:VEVENT
> DTSTART;TZID=Australia/Brisbane:20140708T110000
> DTEND;TZID=Australia/Brisbane:20140708T120001
> DTSTAMP:20140520T091305Z
> UID:20140520191239.rPFpybvjG1ykk_SLJ3vD6A6 at mail.simonandkate.net
> CREATED:20140520T091239Z
> LAST-MODIFIED:20140520T091239Z
> SUMMARY:Test
> ORGANIZER;CN=Katie Wilson:mailto:katie at simonandkate.net
> CLASS:PUBLIC
> STATUS:CONFIRMED
> TRANSP:OPAQUE
> ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=TRUE:mailto:simon@
>  simonandkate.net
> ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=TRUE:mailto:katie@
>  simonandkate.net
> RRULE:FREQ=WEEKLY;INTERVAL=1;BYDAY=TU;COUNT=5
> BEGIN:VALARM
> ACTION:DISPLAY
> DESCRIPTION:Test
> TRIGGER;VALUE=DURATION:-PT15M
> END:VALARM
> END:VEVENT
> BEGIN:VTIMEZONE
> TZID:Australia/Brisbane
> BEGIN:DAYLIGHT
> TZOFFSETFROM:+1000
> TZOFFSETTO:+1100
> DTSTART:19170101T000100
> TZNAME:EST
> END:DAYLIGHT
> BEGIN:STANDARD
> TZOFFSETFROM:+1100
> TZOFFSETTO:+1000
> DTSTART:19170325T020000
> TZNAME:EST
> END:STANDARD
> BEGIN:DAYLIGHT
> TZOFFSETFROM:+1000
> TZOFFSETTO:+1100
> DTSTART:19420101T020000
> TZNAME:EST
> END:DAYLIGHT
> BEGIN:STANDARD
> TZOFFSETFROM:+1100
> TZOFFSETTO:+1000
> DTSTART:19420329T020000
> TZNAME:EST
> END:STANDARD
> BEGIN:DAYLIGHT
> TZOFFSETFROM:+1000
> TZOFFSETTO:+1100
> DTSTART:19420927T020000
> TZNAME:EST
> END:DAYLIGHT
> BEGIN:STANDARD
> TZOFFSETFROM:+1100
> TZOFFSETTO:+1000
> DTSTART:19430328T020000
> RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=3;UNTIL=19440325T16000Z
> TZNAME:EST
> END:STANDARD
> BEGIN:DAYLIGHT
> TZOFFSETFROM:+1000
> TZOFFSETTO:+1100
> DTSTART:19431003T020000
> TZNAME:EST
> END:DAYLIGHT
> BEGIN:DAYLIGHT
> TZOFFSETFROM:+1000
> TZOFFSETTO:+1100
> DTSTART:19711031T020000
> RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10;UNTIL=19711030T16000Z
> TZNAME:EST
> END:DAYLIGHT
> BEGIN:STANDARD
> TZOFFSETFROM:+1100
> TZOFFSETTO:+1000
> DTSTART:19720227T020000
> RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=2;UNTIL=19720226T16000Z
> TZNAME:EST
> END:STANDARD
> BEGIN:DAYLIGHT
> TZOFFSETFROM:+1000
> TZOFFSETTO:+1100
> DTSTART:19891029T020000
> RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10;UNTIL=19911026T16000Z
> TZNAME:EST
> END:DAYLIGHT
> BEGIN:STANDARD
> TZOFFSETFROM:+1100
> TZOFFSETTO:+1000
> DTSTART:19900304T020000
> RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=1SU;UNTIL=19920229T16000Z
> TZNAME:EST
> END:STANDARD
> END:VTIMEZONE
> END:VCALENDAR
>
> ics exported from my calendar:
>
> BEGIN:VCALENDAR
> VERSION:2.0
> X-WR-CALNAME:Calendar of Simon Wilson
> PRODID:-//The Horde Project//Horde iCalendar Library//EN
> BEGIN:VEVENT
> DTSTART;TZID=Australia/Brisbane:20140708T100000
> DTEND;TZID=Australia/Brisbane:20140708T110001
> DTSTAMP:20140520T093228Z
> UID:20140520191239.rPFpybvjG1ykk_SLJ3vD6A6 at mail.simonandkate.net
> CREATED:20140520T093211Z
> LAST-MODIFIED:20140520T093211Z
> SUMMARY:Test
> CLASS:PUBLIC
> STATUS:CONFIRMED
> TRANSP:OPAQUE
> RRULE:FREQ=WEEKLY;INTERVAL=1;BYDAY=TU;COUNT=5
> BEGIN:VALARM
> ACTION:DISPLAY
> DESCRIPTION:Test
> TRIGGER;VALUE=DURATION:-PT15M
> END:VALARM
> END:VEVENT
> BEGIN:VTIMEZONE
> TZID:Australia/Brisbane
> BEGIN:DAYLIGHT
> TZOFFSETFROM:+1000
> TZOFFSETTO:+1100
> DTSTART:19170101T000100
> TZNAME:EST
> END:DAYLIGHT
> BEGIN:STANDARD
> TZOFFSETFROM:+1100
> TZOFFSETTO:+1000
> DTSTART:19170325T020000
> TZNAME:EST
> END:STANDARD
> BEGIN:DAYLIGHT
> TZOFFSETFROM:+1000
> TZOFFSETTO:+1100
> DTSTART:19420101T020000
> TZNAME:EST
> END:DAYLIGHT
> BEGIN:STANDARD
> TZOFFSETFROM:+1100
> TZOFFSETTO:+1000
> DTSTART:19420329T020000
> TZNAME:EST
> END:STANDARD
> BEGIN:DAYLIGHT
> TZOFFSETFROM:+1000
> TZOFFSETTO:+1100
> DTSTART:19420927T020000
> TZNAME:EST
> END:DAYLIGHT
> BEGIN:STANDARD
> TZOFFSETFROM:+1100
> TZOFFSETTO:+1000
> DTSTART:19430328T020000
> RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=3;UNTIL=19440325T16000Z
> TZNAME:EST
> END:STANDARD
> BEGIN:DAYLIGHT
> TZOFFSETFROM:+1000
> TZOFFSETTO:+1100
> DTSTART:19431003T020000
> TZNAME:EST
> END:DAYLIGHT
> BEGIN:DAYLIGHT
> TZOFFSETFROM:+1000
> TZOFFSETTO:+1100
> DTSTART:19711031T020000
> RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10;UNTIL=19711030T16000Z
> TZNAME:EST
> END:DAYLIGHT
> BEGIN:STANDARD
> TZOFFSETFROM:+1100
> TZOFFSETTO:+1000
> DTSTART:19720227T020000
> RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=2;UNTIL=19720226T16000Z
> TZNAME:EST
> END:STANDARD
> BEGIN:DAYLIGHT
> TZOFFSETFROM:+1000
> TZOFFSETTO:+1100
> DTSTART:19891029T020000
> RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10;UNTIL=19911026T16000Z
> TZNAME:EST
> END:DAYLIGHT
> BEGIN:STANDARD
> TZOFFSETFROM:+1100
> TZOFFSETTO:+1000
> DTSTART:19900304T020000
> RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=1SU;UNTIL=19920229T16000Z
> TZNAME:EST
> END:STANDARD
> END:VTIMEZONE
> END:VCALENDAR


Looked at this some again tonight. I've narrowed it down to the fact  
that Horde seems to generate the wrong UTC offset when importing the  
ics in Horde_Icalendar::_parseDateTime(). I have yet to figure out WHY  
this happens, or if the tz data in the ics has the wrong info...


-- 
mike
The Horde Project
http://www.horde.org
https://www.facebook.com/hordeproject
https://www.twitter.com/hordeproject
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 5869 bytes
Desc: S/MIME Signature
URL: <http://lists.horde.org/archives/horde/attachments/20140526/602cbddd/attachment.bin>


More information about the horde mailing list