function isEventDate(year, month, day) {

	if (dateIsHFTERMINE(year, month, day))
		return true;
	else if (dateIsJTERMINE(year, month, day))
		return true;
	else if (dateIsGTERMINE(year, month, day))
		return true;
	else if (dateIsATERMINE(year, month, day))
		return true;
	else if (dateIsVTERMINE(year, month, day))
		return true;
	else if (isToday(year, month, day))
		return true;
	else
		return false;
};

function isToday(year, month, day) {

	var now = new Date();
	if((year == now.getFullYear()) && (month == now.getMonth()) & (day == now.getDate())) {
		return true;
	}
	
	return false;
};

function getEventTitle(year, month, day, tag) {

	var retval = "";

	if (dateIsHFTERMINE(year, month, day))
		retval = getEventTitleFromArray(HFTERMINE,year, month, day);
	else if (dateIsJTERMINE(year, month, day))
		retval = getEventTitleFromArray(JTERMINE,year, month, day);
	else if (dateIsGTERMINE(year, month, day))
		retval = getEventTitleFromArray(GTERMINE,year, month, day);
	else if (dateIsATERMINE(year, month, day))
		retval = getEventTitleFromArray(ATERMINE,year, month, day);
	else if (dateIsVTERMINE(year, month, day))
		retval = getEventTitleFromArray(VTERMINE,year, month, day);

	if(retval.length <= 18) {
		
		if(retval == "") {
		
			retval += "&nbsp;</br>" + tag;	
		} else {
			
			retval += " am " + tag + "</br></br>Per Mausklick zu den Terminen.";	
		}
	} else {

		retval += " am " + tag + "</br>Per Mausklick zu den Terminen.";	
	}
	
	return retval;
};

function getEventTitleFromArray(eventArray, year, month, day) {
	
	var retval = "";

	if(dateIsSpecial(eventArray, year, month, day)) {
		
		if((eventArray[year][month][day] != "")) {
		
			retval = eventArray[year][month][day];
		} else {
		
			retval = eventArray["title"];
		}
	}
	
	return retval;
}; 

function dateIsHFTERMINE(year, month, day) {

	return dateIsSpecial(HFTERMINE, year, month, day);
};

function dateIsJTERMINE(year, month, day) {

	return dateIsSpecial(JTERMINE, year, month, day);
};

function dateIsGTERMINE(year, month, day) {

	return dateIsSpecial(GTERMINE, year, month, day);
};

function dateIsATERMINE(year, month, day) {

	return dateIsSpecial(ATERMINE, year, month, day);
};

function dateIsVTERMINE(year, month, day) {

	return dateIsSpecial(VTERMINE, year, month, day);
};

function dateIsSpecial(eventArray, year, month, day) {

//alert(year + "," + month + "," + day);
	if((eventArray != null) && (eventArray[year] != null) && (eventArray[year][month] != null) && (eventArray[year][month][day] != null)) {

		var now = new Date();

		if (((now.getFullYear() * 10000) + (now.getMonth() * 100) + now.getDate()) > ((year * 10000) + (month * 100) + day)) {
			return false;
		}

		return true;
	}
	
	return false;
};

function dateChanged(calendar) {
	
	if (calendar.dateClicked) {

		var y = calendar.date.getFullYear();
		var m = calendar.date.getMonth(); // integer, 0..11
		var d = calendar.date.getDate(); // integer, 1..31

		// redirect...
		if (dateIsHFTERMINE(y, m, d))
			window.location = HFTERMINE["link"];
		else if (dateIsJTERMINE(y, m, d))
			window.location = JTERMINE["link"];
		else if (dateIsGTERMINE(y, m, d))
			window.location = GTERMINE["link"];
		else if (dateIsATERMINE(y, m, d))
			window.location = ATERMINE["link"];
		else if (dateIsVTERMINE(y, m, d))
			window.location = VTERMINE["link"];
	}
};

function ourDateStatusFunc(date, y, m, d) {

	if (dateIsHFTERMINE(y, m, d))
		return "hfTerminAsv";
	else if (dateIsJTERMINE(y, m, d))
		return "jTerminAsv";
	else if (dateIsGTERMINE(y, m, d))
		return "gTerminAsv";
	else if (dateIsATERMINE(y, m, d))
		return "aTerminAsv";
	else if (dateIsVTERMINE(y, m, d))
		return "vTerminAsv";
	else 
		return false;
};

