var hourText = 'hour';
var minText = 'minute';
var secText = 'second';
var andText = 'and';
var hoursText = 'hours';
var minsText = 'minutes';
var secsText = 'seconds';


function countdown_clock(year, month, day, hour, minute, sec, format, CountDownName) {
    html_code = '<div id="' + CountDownName + '"></div>';         
    document.write(html_code);
         
    countdown((year - 2000), month, day, hour, minute, format, CountDownName);                
}
         
function countdown(year, month, day, hour, minute, format, CountDownName) {
    
     Today = new Date(); 
     Todays_Year = Today.getFullYear() - 2000; 
     Todays_Month = Today.getMonth() + 1;                   
          
     //Convert both today's date and the target date into miliseconds.                            
     Todays_Date = (new Date(Todays_Year, Todays_Month, Today.getDate(), 
                                 Today.getHours(), Today.getMinutes(), Today.getSeconds())).getTime();                                  
     Target_Date = (new Date(year, month, day, hour, minute, 00)).getTime();                   
          
     //Find their difference, and convert that into seconds.                   
     Time_Left = Math.round((Target_Date - Todays_Date) / 1000); 
     
     if(Time_Left < 0)
        Time_Left = 0;
     
     switch(format)
           {
           case 0:
                //The simplest way to display the time left.
                document.getElementById(CountDownName).innerHTML = Time_Left + ' seconds';
                break;
           case 1:
                //Conventional 
                days = Math.floor(Time_Left / (60 * 60 * 24)); 
                Time_Left %= (60 * 60 * 24); 
                hours = Math.floor(Time_Left / (60 * 60)); 
                Time_Left %= (60 * 60); 
                minutes = Math.floor(Time_Left / 60); 
                Time_Left %= 60; 
                seconds = Time_Left; 
                
                dps = 's'; hps = 's'; mps = 's'; sps = 's';
                //ps is short for plural suffix.
                if(days == 1) dps ='';
                if(hours == 1) hps ='';
                if(minutes == 1) mps ='';
                if(seconds == 1) sps ='';
                
                HTMLToDisplay = '';
                if (days > 0) 
                    HTMLToDisplay += days + ' day' + dps + ' ';
                if (hours > 0)
                    HTMLToDisplay += hours + ' ' + hourText + hps + ' ';                    

                if (minutes > 0) {
                    if ((days > 0) || (hours > 0)) {
                        HTMLToDisplay += '<br />'
                    }
                    HTMLToDisplay += minutes + ' ' + minText + mps + ' ' + andText + ' ';                
                }
                    
                HTMLToDisplay += seconds + ' ' + secText + sps;
                
                document.getElementById(CountDownName).innerHTML = HTMLToDisplay
                break;
           default: 
                document.getElementById(CountDownName).innerHTML = Time_Left + secsText;
           }
           
     //Recursive call, keeps the clock ticking.
     setTimeout('countdown(' + year + ',' + month + ',' + day + ',' + hour + ',' + minute + ',' + format + ', \'' + CountDownName + '\');', 1000);
}
         

