I've been mulling over a problem with dates and timezones using the Event module, and would like to put across some thoughts and ask where current thinking is on this issue.
It seems to me that, when a user creates an Event in Drupal, there are potentially a number of different times (and timezones) involved:
1) UTC time (this is the kind of zero baseline, and really the only thing that can be relied on)
2) Local timezone on the server.
3) The user's local timezone (as specified in Drupal user profile).
4) The timezone where the event is to take place.
5) The timezone of the anonymous user looking at the event.
Here is a scenario - somebody tell me if I have got my sums or assumptions wrong!
Suppose that I have enabled "Configurable time zones" in "Settings", and set the default time zone to +0200 (because most of my users are in Continental Europe - and we are on summer time)
Suppose now that my web site is hosted in the USA (New York: -0500).
A user in the UK (+0100 on British Summer Yime) now creates an event which is to take place at midday the next day, in Calcutta (India: +0530)
Let us suppose that the user has set his (UK) timezone profile, then the event will be timed at BST 1200 (ie UTC 1100)
Now a user from India logs in, and notices that there is an event in Calcutta. Since his profile has his timezone set to local time (UTC +0530), he sees the event advertised at UTC 1100 +0530, ie at 16:30, and turns up only to find that it has already finished.