window.onload = function() { //onload events
    CheckTime();
}

var mThen = -1;

function SetTimes() {
    var oTzones = document.getElementById("timezones").getElementsByTagName("span");
    var tz = new Date();
    var dateStr = tz.toUTCString();
    dateStr = dateStr.substr(0,dateStr.length - 3); //convert UTC
    var milliNow = Date.parse(dateStr); //convert to msec
    for (var i=0;i<oTzones.length; i++) {
        if(oTzones[i].className.indexOf("utc")==0) 
        {
	        var offset = Number(oTzones[i].className.substring(3)); //decimal hours
	        var milliOffset = offset*3600*1000; //convert to msec
	        var daylight = 0;
	        tz.setTime(milliNow + milliOffset); //set
	        oTzones[i].innerHTML = String(TwoDPHrs(tz.getHours() + daylight)) + ":" + String(TwoDPMins(tz.getMinutes())); //update doc
        }
    }
}

function CheckTime() { //watchdog
    var now = new Date();
    var mNow = now.getUTCMinutes();
    if(mNow!=mThen) {
        mThen = mNow;
        SetTimes();
    }
    t = setTimeout("CheckTime()",2000); //recursive
}

function TwoDPHrs(h) {
    if(h > 9) return(h);
    return("0"+h);
}
function TwoDPMins(m) {
    if(m > 9) return(m);
    return("0"+m);
}
