Re: displaying free/busy information from remote iCals
Philipp Kewisch <[email protected]> Mon, 25 May 2015 22:24:02 +0200
| Newsgroups | gmane.comp.mozilla.devel.calendar |
|---|---|
| Message-ID | <[email protected]> |
On 5/23/15 5:54 PM, Petr Špaček wrote: > Hello, > > I would like to get an advice how to display "busy" information from > remote iCal in the same way as any other events. > > Imagine that remote iCal contains some public events represented by > VEVENT blocks and also some non-public events which represented by > VFREEBUSY blocks. > > Currently Lightning displays only events (VEVENT) and (seemingly?) > ignores free/busy blocks (VFREEBUSY). > > Is there a way to display VFREEBUSY in the same way as VEVENT? > > I'm willing to work on this functionality but I need some guidance from > person knowledgable about this part of code, I'm total > Mozilla/Thunderbird newbie. > > Maybe something simple like translating VFREEBUSY blocks to equivalent > VEVENT blocks could work? Does it make sense? I guess that this needs to > be optional, maybe per calendar? > > Thank you for advices and your time! > Hi Petr, please check out this bug, which describes your request. https://bugzilla.mozilla.org/show_bug.cgi?id=415376 I've set myself for needinfo on that bug, as I can't give you an elaborate reply right now. Could you make a quick comment there that you'd like to work on the bug so I don't forget why I set needinfo? Just from the top of my head, I think the right way to do this would be to support VFREEBUSY the same way we currently support VEVENT, as a top-level component. This would require a bit of work because we have a lot of code that assumes that if something is not an event it is a task. On a related note, an attempt was made a while back to support VJOURNAL elements (bug 185537), that kind of got lost in reviews and bitrot. The right way to go about this would be to take small steps. The VJOURNAL code can be used as a base, maybe a good first step would be to have a tested component that extends calIItemBase for VFREEBUSY. Then we can adapt the ics parser to emit the events and make sure the storage provider supports saving these components. Then there might be a few more steps in between, then we can adapt the UI to show these components similar to events. As you see its not that simple, but even one step in that direction would be beneficial. I'd be delighted if you could help get things started! Philipp