Simon Wistow (deflatermouse) wrote,
Simon Wistow

Floating events

Graham Gough got in contact to say that Data::ICal::DateTime was barfing on an export of his Palm pilot calendar to .ics and saying

    Couldn't find end *or* duration:                                                  
    DESCRIPTION:Check 2341 assessment\n##F@@@@@@@@@@@@@@@@\n                          
    SUMMARY:Check 2341 assessment                                                     
    UID:palm-datebook-007f9a18-000076ef-Graham Gough@rpc204                           

Which is right because there's no DTEND. Except it turns out the evnt was a floating event - as per section 6.2 of rfc2445 - recommended practices :

    A calendar entry with a "DTSTART" property but no "DTEND"
    property does not take up any time. It is intended to represent
    an event that is associated with a given calendar date and time
    of day, such as an anniversary. Since the event does not take up
    any time, it MUST NOT be used to record busy time no matter what
    the value for the "TRANSP" property.

At first I did some sort of horrific hack that turned a floating event into an 'all day' event but that was, well, bogus. When I got back $business trip abroad I ripped it out and did the sensible, cleaner, correct option of having a floating() method and getting rid of the requirement to have a DTSTART and either a DURATION or DTEND.

Tags: bogus, business trip, calendar, contact, correct option, datetime, graham, hack, horrific, ical, ics, palm pilot, ripped

  • 90s Music Moving

    I realised that it's stupid posting my 90s Music Monday stuff to both LJ and Vox every week so I've decided that I'm going to keep LJ as my technical…

  • On Vox: 90s Music Monday

    At the same time that this was released The Divine Comedy also released a track called " Something For The Weekend" - or " Something…

  • On Vox: 90s Music Monday

    We're going a little leftfield here. And showing my age. This is one of the classic 16 bit demos - technically some of the graphics aren't…

  • Post a new comment


    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.