
function startTimer(targetDate, showSeconds) {
	setInterval("updateTimer('" + targetDate + "', '" + showSeconds + "')", 500);
}

function redirect(url) {
	 window.location = url;
}

function hide(id) {
	document.getElementById(id).style.display = 'none';
}

function show(id) {
	document.getElementById(id).style.display = '';
}

function updateTimer(targetDate, showSeconds) {
	showSeconds = (showSeconds == "true" ? true : false);

	var pattern = new RegExp("^[0-9]{4}-[0-9]{2}-[0-9]{2} [0-2][0-9]:[0-5][0-9]:[0-5][0-9]$");
	var match = pattern.test(targetDate);
	if (match) {
		dateElements = targetDate.split(" ");
		targetDate = dateElements[0].split("-");
		var targetTime = dateElements[1].split(":");

		var targetYear = parseInt(targetDate[0], 10);
		var targetMonth = parseInt(targetDate[1], 10) - 1;
		var targetDay = parseInt(targetDate[2], 10);
		var targetHour = parseInt(targetTime[0], 10);
		var targetMinute = parseInt(targetTime[1], 10);
		var targetSecond = parseInt(targetTime[2], 10);
		
		var currentDate = new Date();
		targetDate = new Date(targetYear, targetMonth, targetDay, targetHour, targetMinute, targetSecond);

		var timeDifference = targetDate.getTime() - currentDate.getTime();
		var remains = timeDifference;
		var differenceDays = 0;
		var differenceHours = 0;
		var differenceMinutes = 0;
		var differenceSeconds = 0;

		var second = 1000;
		var minute = 60 * second;
		var hour = 60 * minute;
		var day = 24 * hour;

		while (remains >= day) {
			remains -= day;
			differenceDays++;
		}
		while (remains >= hour) {
			remains -= hour;
			differenceHours++;
		}
		while (remains >= minute) {
			remains -= minute;
			differenceMinutes++;
		}
		while (remains >= second) {
			remains -= second;
			differenceSeconds++;
		}
		
		differenceHours = ( differenceHours < 10 ? "0" : "" ) + differenceHours;
		differenceMinutes = ( differenceMinutes < 10 ? "0" : "" ) + differenceMinutes;
		differenceSeconds = ( differenceSeconds < 10 ? "0" : "" ) + differenceSeconds;

		var differenceDaysString = "";
		switch (differenceDays) {
			case 0:
				break;
			case 1:
				differenceDaysString = "Nog " + differenceDays + " dag plus";
				break;
			default:
				differenceDaysString = "Nog " + differenceDays + " dagen plus";
				break;
		}

		var currentTimeString = differenceDaysString +
			" " + differenceHours +
			":" + differenceMinutes;
		if (showSeconds) {
			currentTimeString += ":" + differenceSeconds;
		}
	}
	else {
		currentTimeString = "--:--:--";
	}
	document.getElementById('time').innerHTML = currentTimeString;

}
