Wednesday, May 31, 2006

Jalali Calendar for Google Calendar

A couple weeks ago, I wrote the Jalali GCal user script (a JavaScript that Firefox runs on the web page if you have GreaseMonkey extension installed) to add Jalali Calendar (A.K.A. Iranian Calendar) to Google Calendar application.

As you can see in the screenshot, it adds Jalali year, month, and month days beside the Gregorian ones. (which makes it really useful for me! ;) This version (v1.1) supports all views: Day, Week, Month, Next 4 Days, and Agenda!

To use it, you should install GreaseMonkey (for Firefox 1.5), then open Jalali GCal user script and install it. Now refresh Google Calendar page.

Of course it's under LGPL license. I hope you like it.

Update: Jalali GCal moved to Google Code

Your Google public Calendar is NOT public!

I use Google Calendar in day life and also maintain GUADEC 2006 iCal file and keep it synced with the schedule of The GNOME Conference. Stop! don't try to add that iCal link to your Google Calendar account. It doesn't work and you will get an error message.

Here are what happens:

  1. Google's robots crawl the web and index all calendar files (i.e. iCal), and of course they check the robots.txt file to make sure they are allowed to do this.

  2. Unfortunately, Google Calendar AJAX application checks robots.txt. May be it uses the indexed file at Google's server and so it's a side effect of the previous fact.

  3. Unfortunately again Google's robots.txt file doesn't allow crawlers to index your public calendars.

Our iCal link is just an HTTP forward to the address of the file on Google's server. And yes, because of facts 2 and 3, you cannot add our iCal URL to your Google Calendar account! Not Google only, you cannot use it on any other web application that respect to robots.txt files. And of course you won't have your public calendar indexed in any search engine; but Google! It reminds me on how Microsoft tried to make its website somehow Netscape couldn't show it properly.

By the way, if you want to add GUADEC 2006 calendar to your Google Calendar account, just search for "GUADEC 2006" there, and add it directly. And send me a note if you need write access to it.

Update: Problems:

  1. An organizer application (feed reader, calendar, etc) SHOULD NOT use robots.txt files, as it's NOT a crawler, it's just a user agent which do exactly what a user tells it (like a browser).

  2. Google MUST allow other web crawlers to index public calendars, and NOT make a monopoly .