// JScript source code
function countdown_clock(strID,strCSSClass,year, month, day, hour, minute, format, strTargetURL,showPerc,intEntries,intPercent)
{
	var strCounterName = "countdown_" + strID + "";
	//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.
	if(strCSSClass.length > 0)
	{
		html_code = '<div id="countdown_' + strID + '" class="' + strCSSClass + '"></div>';
	}
	else
	{
		html_code = '<span id="countdown_' + strID + '" class="' + strCSSClass + '"></span>';
	}

	document.write(html_code);

	countdown("countdown_" + strID,year, month, day, hour, minute, format, strTargetURL,showPerc,intEntries,intPercent);
}

function countdown(strID,year, month, day, hour, minute, format, strTargetURL,showPerc,intEntries,intPercent)
{
	Today = new Date();
	Todays_Year = Today.getFullYear() - 2000;
	Todays_Month = Today.getMonth() + 1;
	Todays_Day = Today.getDate();
	//alert("Today>> Year: " + Todays_Year + " - Month: " + Todays_Month + " - Day: " + Todays_Day);
	//alert("Target>> Year: " + year + " - Month: " + month + " - Day: " + day);

	//Convert both today's date and the target date into miliseconds.                           
	Todays_Date = (new Date(Todays_Year, Todays_Month, Todays_Day, 
						 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;
	}
	//Time_Left = 0;
	
	var objClock = document.getElementById(strID);
	if (objClock)
	{
		if (Time_Left == 0)
		{
			var strEntries = "";
			if (showPerc)
			{
				if ((intEntries + "")!="")
				{
					strEntries = "<span class=\"Entries\">" + intEntries + "</span> entries have been received.<br>";
				}
			}
			else
			{
				if ((intPercent + "")!="")
				{
					strEntries = "Cycle Tour is <span class=\"Entries\">" + intPercent + "%</span> full.<br>";
				}
			}
			objClock.innerHTML = strEntries + 'Online entries have opened!<br>Click <a href=\"' + strTargetURL + '\" target=\"_blank\">HERE</a> to enter.';
		}
		else
		{
			switch(format)
			{
			case 0:
				//The simplest way to display the time left.
				
				objClock.innerHTML = '<b>' + Time_Left + '</b> secs';
				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 = '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 ='';
				
				var strDays = "";
				if(days<=9)
				{
					strDays = "<img border=\"0\" alt=\"\" src=\"images/countdown/digi_0.gif\" class=\"imgDigit\">"
					strDays += "<img border=\"0\" alt=\"\" src=\"images/countdown/digi_0.gif\" class=\"imgDigit\">"
					strDays += "<img border=\"0\" alt=\"\" src=\"images/countdown/digi_" + days + ".gif\" class=\"imgDigit\">"
				}
				else if(days<=99)
				{
					strDays = "<img border=\"0\" alt=\"\" src=\"images/countdown/digi_0.gif\" class=\"imgDigit\">"
					strDays += "<img border=\"0\" alt=\"\" src=\"images/countdown/digi_" + Math.floor(days/10) + ".gif\" class=\"imgDigit\">"
					strDays += "<img border=\"0\" alt=\"\" src=\"images/countdown/digi_" + (days%10) + ".gif\" class=\"imgDigit\">"
				}
				else
				{
					strDays = "<img border=\"0\" alt=\"\" src=\"images/countdown/digi_" + Math.floor(days/100) + ".gif\" class=\"imgDigit\">"
					strDays += "<img border=\"0\" alt=\"\" src=\"images/countdown/digi_" +  (Math.floor(days/10)%10) + ".gif\" class=\"imgDigit\">"
					strDays += "<img border=\"0\" alt=\"\" src=\"images/countdown/digi_" + (days%10) + ".gif\" class=\"imgDigit\">"
				}
			    
				var strHrs = "";
				if(hours<=9)
				{
					strHrs = "<img border=\"0\" alt=\"\" src=\"images/countdown/digi_0.gif\" class=\"imgDigit\">"
					strHrs += "<img border=\"0\" alt=\"\" src=\"images/countdown/digi_" + hours + ".gif\" class=\"imgDigit\">"
				}
				else
				{
					strHrs = "<img border=\"0\" alt=\"\" src=\"images/countdown/digi_" + Math.floor(hours/10) + ".gif\" class=\"imgDigit\">"
					strHrs += "<img border=\"0\" alt=\"\" src=\"images/countdown/digi_" + (hours%10) + ".gif\" class=\"imgDigit\">"
				}
			    
				var strMins = "";
				if(minutes<=9)
				{
					strMins = "<img border=\"0\" alt=\"\" src=\"images/countdown/digi_0.gif\" class=\"imgDigit\">"
					strMins += "<img border=\"0\" alt=\"\" src=\"images/countdown/digi_" + minutes + ".gif\" class=\"imgDigit\">"
				}
				else
				{
					strMins = "<img border=\"0\" alt=\"\" src=\"images/countdown/digi_" + Math.floor(minutes/10) + ".gif\" class=\"imgDigit\">"
					strMins += "<img border=\"0\" alt=\"\" src=\"images/countdown/digi_" + (minutes%10) + ".gif\" class=\"imgDigit\">"
				}
			    
				var strSecs = "";
				if(seconds<=9)
				{
					strSecs = "<img border=\"0\" alt=\"\" src=\"images/countdown/digi_0.gif\" class=\"imgDigit\">"
					strSecs += "<img border=\"0\" alt=\"\" src=\"images/countdown/digi_" + seconds + ".gif\" class=\"imgDigit\">"
				}
				else
				{
					strSecs = "<img border=\"0\" alt=\"\" src=\"images/countdown/digi_" + Math.floor(seconds/10) + ".gif\" class=\"imgDigit\">"
					strSecs += "<img border=\"0\" alt=\"\" src=\"images/countdown/digi_" + (seconds%10) + ".gif\" class=\"imgDigit\">"
				}
			    
				objClock.innerHTML = "<span class=\"jsClockText\">Online Entries Open In:</span><br>"
				objClock.innerHTML += '' + strDays + ' day' + hps + ' ';
				objClock.innerHTML += '' + strHrs + ' hr' + hps + ' ';
				objClock.innerHTML += '' + strMins + ' min' + mps + ' ';
				objClock.innerHTML += '' + strSecs + ' sec' + sps;
				break;
			default: 
				objClock.innerHTML = Time_Left + '</b> secs';
			}
			//Recursive call, keeps the clock ticking.
			//alert(strID);
			setTimeout('countdown("' + strID + '",' + year + ',' + month + ',' + day + ',' + hour + ',' + minute + ',' + format + ');', 1000);
		}
	}
}