// JavaScript Document
//will hold the newyears date in milliseconds representing utc time
var newYearsDateObj = Date.UTC(new Date().getFullYear() + 1, 0, 1);
//set the time components, represented in milliseconds
var oneDay = 86400000;
var oneHour = 3600000;
var oneMinute = 60000;
var oneSecond = 1000;
 
 //this is a function that will show the countdown to New Years day based on the offset on 2 labels. One for the days left and one for 
 //the time left. Once called, this will set a timeout to call itself again every second
 function showNewYearsCountdownText(hoursOffset, daysElementId, timeElementId)
 {	
	//get todays date in UTC milliseconds
	var today = new Date();
	today = Date.UTC(today.getUTCFullYear(), today.getUTCMonth(), today.getUTCDate(), today.getUTCHours(), today.getUTCMinutes(), today.getUTCSeconds());
	
	//add the hours offset
	var utcOffset = oneHour * hoursOffset;
	
	var milisecondsLeft = (newYearsDateObj - today) - utcOffset;
	
	var daysLeft = Math.floor(milisecondsLeft / oneDay);
	var hoursLeft = Math.floor((milisecondsLeft % (oneDay)) / oneHour);
	var minutesLeft = Math.floor(((milisecondsLeft % (oneDay)) % (oneHour)) / oneMinute);
	var secondsLeft = Math.floor((((milisecondsLeft % (oneDay)) % (oneHour)) % (oneMinute)) / oneSecond);
	
	if (minutesLeft < 10)
		minutesLeft = "0" + minutesLeft;
		
	if (secondsLeft < 10)
		secondsLeft = "0" + secondsLeft;
	
	document.getElementById(daysElementId).innerHTML = daysLeft;
	document.getElementById(timeElementId).innerHTML = hoursLeft + ":" + minutesLeft + ":" + secondsLeft;
	
	var methodCall = "showNewYearsCountdownText(" + hoursOffset + ", '" + daysElementId + "', '" + timeElementId + "')";
	//call this method again in 1 second
	window.setTimeout(methodCall, 1000);
 }//end of showNewYearsCountdownText
