I developt a extension for mediawiki, which allows to the actual status of zimbrausers.
for example:
<Icsread>USERNAME</Icsread>
If there is no shedule in the moment, the name will be shown normaly, if there is a shedule, the name will be shown as a link where you can se subject, organisator, attendees and so on....
Right now, my code makes this:
- get the name from the Icsread-Tag
- reading the ics file http://zimbra/service/home/<USERNAME>/calendar.ics
- reading every "event start" and "event end" and save the lines in an array (DATE 1: begin:X end:Y) something like that

- then comparing the start and the ende-date with the actual date
- if it fits return an link with the known values, if not, go on
- -> next ICS-file
Is there anyway to optimize the ics files? After thousands of shedules, the ics-File became very big and my extension very slow... or does anybody know a better algorithm for reading out actual shedules?