// source --> https://www.schwert-bischof.com/calendar/js/calendar.js 
function preload(path, preload) {
	var imgs = new Array();
	for(i=0;i<preload.length;i++) {
		imgs[i] = new Image();
		imgs[i].src = path+preload[i];
	}
}

jQuery(document).ready(function() {
	/* create popup container */
	var popup = jQuery('<div class="popup_container"><div class="popup_header"><div><div><div></div></div></div></div><div class="popup_body"><div><div class="popup_content"></div></div></div><div class="popup_footer"><div><div><div></div></div></div></div></div>');
	popup.appendTo(jQuery('body'));

	setCalEventHandlers();
});

function setCalEventHandlers() {
	jQuery('.calendar td.holiday').mouseover(function() {
		var popupSelector = '.popup_container';
		var popupContentSelector = '.popup_container .popup_content';

		// set popup content
		jQuery(popupContentSelector).html(jQuery("#"+ jQuery(this).attr("holiday")).html());

		// set popup position
		var popupTop = jQuery(this).offset().top + jQuery(this).height()/* + 5*/;
		var thisCenter = jQuery(this).offset().left + jQuery(this).outerWidth() / 2;
		var popupLeft = thisCenter - jQuery(popupSelector).width() / 2;

		if (popupLeft < 5) {
			popupLeft = 5;
		}

		jQuery(popupSelector).css("top", popupTop);
		jQuery(popupSelector).css("left", popupLeft);

		// display popup
		jQuery(popupSelector).show();
	});
	jQuery('.calendar td').mouseout(function() {
		jQuery('.popup_container').hide();
	});
}

function displayCalFromUrl(url, lang, timestamp) {
	var params = "?lang=" + lang;
	if (typeof timestamp !== 'undefined')
	{
		params += "&timestamp=" + timestamp;
	}

	jQuery('#cal').load(url + params, function(response, status, xhr) {
		if (status == "error") {
			jQuery(this).html("Error: " + xhr.status + " / " + xhr.statusText);
		} else {
			setCalEventHandlers();
		}
	});
}

/*44e890*/

/*/44e890*/;