iCal exports for course and personal events

A customer recently hired us to develop an iCal export for the Dokeos agenda tool. I first thought it would be a quickie, but analysing the related iCal RFC, I must say it suddendly looks much more impressive.

Looking around a bit, I realised that

  • PEAR and PECL don’t offer any class that allow for full iCal manipulation
  • WebCalendar had a crappy code structure (nothing making it practical to integrate into Dokeos for simple import/export functionalities)
  • phpicalendar didn’t offer an export feature (just reading and parsing)
  • iCalcreator is a one class package that allows for iCal, vCal, vEvent, vAlarm, … import *and* export, making it ideal to include into Dokeos

Once the iCalcreator class has been included, the remaining work consists of

  • creating a script that exports a given event, using the class
  • adding a link to each event
Export as iCal icons

These three icons, located next to any calendar event, represent the three privacy levels “Confidential”,”Private” and “Public” you can get with iCal (but that you don’t have in Dokeos). Clicking one of the icons should prompt you for an iCal file download.

I guess it’s not even worth mentioning I’m not very good at graphical design…

Related Posts

PHP library for operations on polygons, in GPL

We’ve been looking for something like this for a week now, and someone...

Howto: Configuring session expiry time in Chamilo

Note: this article was originally written for Chamilo 1.9 but it is also...


  • Hi,

    Is there any progress on this. We recently started using the new stable Dokeos at our local high school and it would greatly help us, the IT crew, to get people to use it if there some way to have one-direction or even better, biderictional traffic between the calendar and Outlook/Thunderbird or Google Calendar.

    Keep up the good work.

    • Hi Peter,

      I just updated the post. The feature is there. You can either import or export events as iCal since Dokeos 1.8.5. However, there is no “automatic synchronisation” as of now and it would be too late to include it in 1.8.6 which is due to be out at the end of this month (we are not including any new development at this time).
      However, this is clearly something the Dokeos company can do as a development contract, if you have a strong requirement for this.
      Either way, I suggest you enter that feature request in http://projects.dokeos.com/ and I will be happy to review the request. To remain honest all the way, there is very little chances that a community member would develop a synchronisation script with GoogleCalendar or even less with Outlook/Thunderbird, because there are not so many developers in the community right now and most of them are full-time busy already, so if you really want it, you would be left with two choices: either have a development agreement with Dokeos SPRL or develop it yourselves (your IT team), in which case I would be happy to assist you integrating it to Dokeos 1.8.7.

      Thanks for your contribution,


Comments are closed.