// JavaScript Document
// pass this function the target date in a string format like this:
// June 7, 2008
// will return an associative array with the days, hours, minutes, seconds left
// this is only good if you are getting the time left once. not good for countdown
function count_down_static(targetDateString){
	var oneSec = 1000;
	var oneMin = 60 * oneSec;
	var oneHr = 60 * oneMin;
	var oneDay = 24 * oneHr;

	var targetDate = new Date(targetDateString);
	var targetInMS = targetDate.getTime();

	var nowInMS = new Date().getTime();
    var diff = targetInMS - nowInMS;
    var scratchPad = diff / oneDay;
	var timeLeft = new Array;
    timeLeft['days'] = Math.floor(scratchPad);
    // hours left
    diff -= (timeLeft['days'] * oneDay);
    scratchPad = diff / oneHr;
    timeLeft['hours'] = Math.floor(scratchPad);
    // minutes left
    diff -= (timeLeft['hours'] * oneHr);
    scratchPad = diff / oneMin;
    timeLeft['minutes'] = Math.floor(scratchPad);
    // seconds left
    diff -= (timeLeft['minutes'] * oneMin);
    scratchPad = diff / oneSec;
    timeLeft['seconds'] = Math.floor(scratchPad);
    
    return timeLeft;
}

var oneSec = 1000;
var oneMin = 60 * oneSec;
var oneHr = 60 * oneMin;
var oneDay = 24 * oneHr;
function start_count_down(targetDateString, divId){
	var targetDate = new Date(targetDateString);
	var targetInMS = targetDate.getTime();
	
	var outputDiv = document.getElementById(divId);
	outputDiv.innerHTML = "Loading...";
	setInterval('count_down_format('+targetInMS+', "'+divId+'")', 1000);
}
function count_down_format(targetInMS, divId){
	var outputDiv = document.getElementById(divId);
	timeLeft = count_down(targetInMS);
	
	var dayPl = 'day';
	if(timeLeft["days"] > 1)
		dayPl = 'days';
	var string = '<p class="days">'+ timeLeft["days"] +' '+dayPl+'</p>';
	string += '<p class="hours">'+ timeLeft["hours"] +' hours</p>';
	string += '<p class="minutes">'+ timeLeft["minutes"] +' min</p>';
	string += '<p class="seconds">'+ timeLeft["seconds"] +' sec</p>';
	outputDiv.innerHTML = string;
}
function count_down(targetInMS) {
	var nowInMS = new Date().getTime();
    var diff = targetInMS - nowInMS;
    var scratchPad = diff / oneDay;
	var timeLeft = new Array;
    timeLeft["days"] = Math.floor(scratchPad);
    // hours left
    diff -= (timeLeft["days"] * oneDay);
    scratchPad = diff / oneHr;
    timeLeft["hours"] = Math.floor(scratchPad);
    // minutes left
    diff -= (timeLeft["hours"] * oneHr);
    scratchPad = diff / oneMin;
    timeLeft["minutes"] = Math.floor(scratchPad);
    // seconds left
    diff -= (timeLeft["minutes"] * oneMin);
    scratchPad = diff / oneSec;
    timeLeft["seconds"] = Math.floor(scratchPad);
    
    return timeLeft;
}
