function countdown_clock(year, month, day, hour, minute, format) { //I chose a div as the container for the timer, but //it can be an input tag inside a form, or anything //who's displayed content can be changed through //client-side scripting. html_code = '
'; document.write(html_code); Today = new Date(); Todays_Year = Today.getFullYear() - 2000; Todays_Month = Today.getMonth() + 1; //Computes the time difference between the client computer and the server. Server_Date = (new Date(24, 5, 8, 15, 23, 1)).getTime(); Todays_Date = (new Date(Todays_Year, Todays_Month, Today.getDate(), Today.getHours(), Today.getMinutes(), Today.getSeconds())).getTime(); month = month - 1; countdown(year, month, day, hour, minute, (Todays_Date - Server_Date), format); } function countdown(year, month, day, hour, minute, time_difference, format) { Today = new Date(); Todays_Year = Today.getFullYear() - 2000; //Todays_Month = Today.getMonth() + 1; //wrong since months are calculated from 0 to 11 Todays_Month = Today.getMonth(); //Convert 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. //Taking into account the time differential between the client computer and the server. Time_Left = Math.round((Target_Date - Todays_Date + time_difference) / 1000); if(Time_Left < 0) { Time_Left = 0; // added to reload the page when the time left = 0 //window.location.reload( false ); document.all.countdown.innerHTML = ''; return; } switch(format) { case 0: //The simplest way to display the time left. document.all.countdown.innerHTML = Time_Left + ' seconds'; break; case 1: //More datailed. 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 = 'en'; hps = ''; mps = ''; sps = 'n'; //ps is short for plural suffix. if(days == 1) { dps ='dag'; } else { dps = 'dagen'; }; if(hours <= 1) { hps ='uur'; } else { hps = 'uren'; }; if(minutes == 1) { mps ='minuut'; } else { mps = 'minuten'; }; if(seconds <= 1) { sps ='seconde'; } else { sps = 'seconden'; }; document.all.countdown.innerHTML = 'Nog ' + days + ' ' + dps + ' '; document.all.countdown.innerHTML += hours + ' ' + hps + ' '; document.all.countdown.innerHTML += minutes + ' ' + mps + ' en '; document.all.countdown.innerHTML += seconds + ' ' + sps; break; default: document.all.countdown.innerHTML = Time_Left + sps; } //Recursive call, keeps the clock ticking. setTimeout('countdown(' + year + ',' + month + ',' + day + ',' + hour + ',' + minute + ',' + time_difference + ', ' + format + ');', 1000); }