$(document).ready(function() {
	
	if ($("#counter-text").length) {
		
		var targetDate = SETTINGS.countdown_datetime;
		var countActive = true;
		var countStepper = -1;
		var leadingZero = false;
		var displayFormat = "%%D%% days, %%H%% hours, %%M%% minutes, %%S%% seconds";
		
		function calculate(secs, num1, num2) {
			s = ((Math.floor(secs/num1))%num2).toString();
			if (leadingZero && s.length < 2) {
				s = "0" + s;
			}
			return s;
		}

		function countBack(secs) {
			
			//The countdown is done.
			if (secs < 0) {
				return;
			}
			
			displayStr = displayFormat.replace(/%%D%%/g, calculate(secs, 86400, 100000));
			displayStr = displayStr.replace(/%%H%%/g, calculate(secs, 3600, 24));
			displayStr = displayStr.replace(/%%M%%/g, calculate(secs, 60, 60));
			displayStr = displayStr.replace(/%%S%%/g, calculate(secs, 1, 60));
		
			document.getElementById("counter-text").innerHTML = displayStr;
			if (countActive) {
				var timeout = function() {
					countBack(secs+countStepper);
					Cufon.refresh();
				}
				setTimeout(timeout, setTimeOutPeriod);
			}
		}

		countStepper = Math.ceil(countStepper);
		if (countStepper == 0) {
			countActive = false;
		}
		var setTimeOutPeriod = (Math.abs(countStepper)-1)*1000 + 990;
		var dThen = new Date(targetDate);
		var dNow = new Date();
		if(countStepper > 0) {
			ddiff = new Date(dNow-dThen);
		} else {
			ddiff = new Date(dThen-dNow);
		}
		gsecs = Math.floor(ddiff.valueOf()/1000);
		countBack(gsecs);
	}	
});
