var timerID;
var timerRunning = false;
var today = new Date();
var count = new Date();
var secPerDay = 0;
var minPerDay = 0;
var hourPerDay = 0;
var secsLeft = 0;
var secsRound = 0;
var secsRemain = 0;
var minLeft = 0;
var minRound = 0;
var dayRemain = 0;
var minRemain = 0;
var Expire = 0;
var timeRemain = 0;
var timeUp = "Type Anything You Want"    // enter text to be displayed when countdown is finished
var time = "Time's Up!" //do not modify this text

function stopclock (){
	if(timerRunning)
		clearTimeout(timerID);
	timerRunning = false;
}

function startclock () {
	stopclock();
	showtime();
}


function showtime () {
	today = new Date();
	count = new Date("April 17, 2007 23:59:59");   // enter date to count down to (use the same format)
	secsPerDay = 1000 ;
	minPerDay = 60 * 1000 ;
	hoursPerDay = 60 * 60 * 1000;
	PerDay = 24 * 60 * 60 * 1000;
	Expire = (count.getTime() - today.getTime())

		/*Seconds*/

		secsLeft = (count.getTime() - today.getTime()) / minPerDay;

	secsRound = Math.round(secsLeft);

	secsRemain = secsLeft - secsRound;

	secsRemain = (secsRemain < 0) ? secsRemain = 60 - ((secsRound - secsLeft) * 60) : secsRemain = (secsLeft - secsRound) * 60;

	secsRemain = Math.round(secsRemain);


	/*Minutes*/

	minLeft = ((count.getTime() - today.getTime()) / hoursPerDay);

	minRound = Math.round(minLeft);

	minRemain = minLeft - minRound;

	minRemain = (minRemain < 0) ? minRemain = 60 - ((minRound - minLeft)  * 60) : minRemain = ((minLeft - minRound) * 60);

	minRemain = Math.round(minRemain - 0.495);


	/*Hours*/

	hoursLeft = ((count.getTime() - today.getTime()) / PerDay);

	hoursRound = Math.round(hoursLeft);

	hoursRemain = hoursLeft - hoursRound;

	hoursRemain = (hoursRemain < 0) ? hoursRemain = 24 - ((hoursRound - hoursLeft)  * 24) : hoursRemain = ((hoursLeft - hoursRound) * 24);

	hoursRemain = Math.round(hoursRemain - 0.5);

	/*Days*/

	daysLeft = ((count.getTime() - parseInt(today.getTime())) / PerDay);

	daysLeft = (daysLeft);

	daysRound = Math.round(daysLeft);

	daysRemain = daysRound;


	/*Fixes*/

	if (daysRemain < 10) daysRemain = "0" + daysRemain;
	else daysRemain = daysRemain + ""; 

	if (hoursRemain < 10) hoursRemain = "0" + hoursRemain + ":";
	else hoursRemain = hoursRemain + ":";

	if (minRemain < 10) minRemain = "0" + minRemain + ":";
	else minRemain = minRemain + ":";

	if (secsRemain < 10) { secsRemain = "0" + secsRemain; }
	else { secsRemain = secsRemain + ""; }


	/*Time*/

	timeRemain = hoursRemain + minRemain + secsRemain;

	window.status = "";
	myday = document.getElementById( 'day' );
	myday.value = daysRemain;
	document.clock.face.value = timeRemain;
	timerID = setTimeout("showtime()",1000);
	timerRunning = true;

	if (Expire <= 0){
		myday.value = "";
		document.clock.face.value = time;  // choose either "time" or "timeUp"  (without quotes)
		stopclock()
	}

}
