Activism Networking - Exporting iCal Feeds

I'm working on getting Activism Network to export the events into several iCal feeds so that they can be imported into your personal calendar or that of your website. For instance, Drupal and Google Calendar both support iCal. I think all the major calendar applications do so. Hopefully this will make it easier for IMC and other activist sites to include events from the calendar!

Note: Activism Network also has RSS feeds for the calendar and other things (new people, new groups, new resources) - though they are kind of hidden/buried.

I'm using iCalcreator to do this (a php library that lets you create iCal files).

Dealing with event standards and the whole idea of trying to get hundreds of groups to share their events is pretty crazy, but so far it is working fine. I've been importing the iCal feed into Google Calendar to test it and unfortunately Google Calendar is rather slow. I've also been using an iCal Validator.

I plan for Activism Network to offer multiple iCal feeds. So far I'm thinking of having two choices for date (either all the events, or upcoming events) and also having one feed per geographical scope. Thus local events will be in one feed, and regional events in another. Having all the events in one feed - makes for a big feed (perhaps 2 mb?).

In the future, I'm considering using phpiCalendar to serve as an alternative format for displaying calendars on Activism Network - for people who want to see the week or month view, instead of the current tabular system.

I'm also hoping to work on implementing reoccuring events. A major problem with this is how to maintain accurate information on them. I don't want a calendar full of reoccuring events that don't actually happen! For instance, I might ask the event organizer to confirm every 3 months (by simply clicking on a link) that their weekly or monthly event is still happenning at the same time and place.

Ultimately a local calendar for a big city could be really overloaded with weekly reoccuring events (say you have 20-100 groups and they all meet once a week). Weekly meetings are likely to outnumber more significant events - like speakers, because it will typically take a group several meetings to plan a major event. Perhaps putting reoccuring events in a seperate feed would help solve this. Then people could choose whether to see the regular events, the reoccuring ones, or both.