/*
Visit http://rainbow.arch.scriptmania.com/scripts/
 for this script and many more
*/

var month = '12';     //  '*' for next month, '0' for this month or 1 through 12 for the month 
var day = '11';       //  Offset for day of month day or + day  
var hour = 18;        //  0 through 23 for the hours of the day
var tz = 9;         //  Offset for your timezone in hours from UTC
var lab = '.tzcd';    //  The id of the page entry where the timezone countdown is to show

function setTZCountDown(month,day,hour,tz) 
{
    var toDate = new Date();
    if (month == '*')toDate.setMonth(toDate.getMonth() + 1);
    else if (month > 0) 
    { 
        if (month <= toDate.getMonth())toDate.setYear(toDate.getYear() + 1);
        toDate.setMonth(month-1);
    }
    
    if (day.substr(0,1) == '+') 
        {var day1 = parseInt(day.substr(1));
        toDate.setDate(toDate.getDate()+day1);
    } 
        else{toDate.setDate(day);
    }
    
    toDate.setHours(hour);
    toDate.setMinutes(0-(tz*60));
    toDate.setSeconds(0);
    var fromDate = new Date();
    fromDate.setMinutes(fromDate.getMinutes() + fromDate.getTimezoneOffset());
    var diffDate = new Date(0);
    diffDate.setMilliseconds(toDate - fromDate);
    return Math.floor(diffDate.valueOf()/1000);
}

function displayTZCountDown(countdown,tzcd) 
{
//     if (countdown < 0) {
//         $$('.tzcd').each(function(e) {e.update("<h1>It's on now!</h1>"); }); 
//         }
//    else {
        var secs = countdown % 60; 
    
        if (secs < 10) secs = '0'+secs;
    
        var countdown1 = (countdown - secs) / 60;
        var mins = countdown1 % 60; 
    
        if (mins < 10) mins = '0'+mins;
        countHours = (countdown1 - mins) / 60;
        
        var hours = countHours % 24;
        var days = (countHours - hours) / 24;
        
        $$('.days').each(function(e) {e.update(days);});
        $$('.chours').each(function(e) {e.update(countHours);});
        $$('.hours').each(function(e) {e.update(hours);});
        $$('.mins').each(function(e) {e.update(mins);});
        $$('.secs').each(function(e) {e.update(secs);});
       
        var timestr = countHours+ ' hour' + (countHours == 1 ? '&nbsp;' : 's') + ' : ' +mins+ ' minute' + (mins == 1 ? '&nbsp;' : 's') +' : '+secs+' second' + (secs == 1 ? '&nbsp;' : 's');
       
        $$('.tzcd').each(function(e) {e.update(timestr);});
        
        setTimeout('displayTZCountDown('+(countdown-1)+',\''+tzcd+'\');',999);
//    }
}

document.observe("dom:loaded", function() {
  displayTZCountDown(setTZCountDown(month,day,hour,tz), lab);
});
