A few things to keep in mind.
Store all event dates in UTC
Yes, this cannot be avoided.
Find out all the timestamps ...
... all users in the system. You can use the following detection script: http://site.pageloom.com/automatic-timezone-detection-with-javascript . He will give you the time zone key, for example, America / Phoenix.
In your case, you need to save the time zone along with the event, since the user can switch the time zone, but the event will always occur in a specific one. (Argh)
Choose a display engine
Javascript, ( , script). : https://github.com/mde/timezone-js.
, , :
var dt = new timezoneJS.Date(UTC_TIMESTAMP, 'America/New_York');
var dt = new timezoneJS.Date(2006, 9, 29, 1, 59, 'America/Los_Angeles');
UTC_TIMESTAMP , , 1193855400000. America/New_York - , , .
dt, , JavaScript Date. "" ( DST).
, - , . , , . , UTC → . .