neokoenig / RoomBooking

This is an open source application for booking rooms via a web based calendar, using cfWheels, Bootstrap3, jQuery, FullCalendar.js, and other bits. AKA the OxAlto RoomBooking System
http://roombooking.readme.io
187 stars 73 forks source link

Outlook 2007 ics issue #18

Open internaut19 opened 10 years ago

internaut19 commented 10 years ago

Subscribing to the calendar system works without a glitch using outlook 2007 and the meetings are displayed correctly but when I do a send/receive I get a bunch of errors:

Task 'Internet Calendar Subscription' reported error (0x00040015): 'The VEVENT, "Meeting Name", defined near line 7, contains a property that references an undeclared time zone with a TZID of "Eastern Time". The property is being treated as a floating time zone. Double-click to open this item.'

Task 'Internet Calendar Subscription' reported error (0x00040023): 'The VEVENT, "Meeting Name", defined near line 7, contains a floating DTSTART. Outlook supports floating time got all-day events only. Double-click to open this item.'

Task 'Internet Calendar Subscription' reported error (0x00040020): 'The VEVENT, "Meeting Name", defined near line 7, contains a floating DTEND. Outlook supports floating time got all-day events only. Double-click to open this item.'

The most annoying thing about this outlook error is that it shows up in the down-right corner as a send/receive error making you think that there is something wrong with the email system.

Cheers, Cristian.

neokoenig commented 10 years ago

Thanks, will look into it - it's almost definitely to do with timezones (which are all currently hard coded as UTC) and how all day events are flagged. Annoying I've not got outlook 2007 to test with, but I'll read up on the spec again and see what I can find: seem to be similar issues here: http://sourceforge.net/p/dday-ical/discussion/656447/thread/0c07ae2a/

internaut19 commented 10 years ago

I can help testing if needed ...

internaut19 commented 10 years ago

I managed to create my own Ical system based on php and MySQL. While setting up my system I end up receiving the same error as above but managed to fix it. The resulting ics file looks like this:

BEGIN:VCALENDAR CALSCALE:GREGORIAN METHOD:PUBLISH VERSION:2.0 PRODID:-//Cristian ICS Generator//Programare Sali//EN BEGIN:VTIMEZONE TZID:Europe/Bucharest BEGIN:DAYLIGHT DTSTART:19970330T030000 RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=3 TZNAME:EEST TZOFFSETFROM:+0200 TZOFFSETTO:+0300 END:DAYLIGHT BEGIN:STANDARD DTSTART:19971026T040000 RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10 TZNAME:EET TZOFFSETFROM:+0300 TZOFFSETTO:+0200 END:STANDARD END:VTIMEZONE BEGIN:VEVENT UID:caf44ffd9af51cd60bedcb12ab6d3041domain.ro ORGANIZER;CN="Cristian":mailto:cristian@domain.ro DTEND;TZID=Europe/Bucharest:20140126T230000 DTSTART;TZID=Europe/Bucharest:20140126T203000 DTSTAMP:20140125T155010Z LOCATION:Undeva SUMMARY: Sedinta DESCRIPTION: Blabla END:VEVENT END:VCALENDAR

Declaring the time zone using VTIMEZONE fixed the problem.

Cheers, Cristian.

neokoenig commented 10 years ago

Many thanks - I@ll use that as a template on this one (need to implement site wide timezones first!)