<!--

var ajax_dir = '/BAR/';

function AJAX_makeRequest(url,placeHolderName) {
	var http_request = false;

	if (window.XMLHttpRequest) { // Mozilla, Safari, ...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) {
			http_request.overrideMimeType('text/xml');
			// See note below about this line
		}
	} else if (window.ActiveXObject) { // IE
		try {
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {}
		}
	}

	if (!http_request) {
		alert('Error - problem loading data (AJAX 1)');
		return false;
	}
	
	http_request.onreadystatechange = function() { AJAX_handle_data(http_request,placeHolderName); };
	http_request.open('GET', url, true);
	http_request.send(null);

}

function AJAX_handle_data(http_request,placeHolderName) {

	if (http_request.readyState == 4) {
		if (http_request.status == 200) {
			
			//var respText = urlDecode(http_request.responseText);
			var respText = http_request.responseText;
			
			document.getElementById(placeHolderName).innerHTML = respText;
			
		} else {
			alert('Error - problem loading data (AJAX 2)');
		}
	}

}


function AJAX_getCalendar(placeHolderName,apartment_id,year,month) {
	var url = ajax_dir + "calendar.php";
	url = url + "?aid=" + apartment_id + "&y=" + year + "&m=" + month;
	//document.getElementById(placeHolderName).innerHTML = " ... loading ... ";
	AJAX_makeRequest(url,placeHolderName);
}


function AJAX_getComment(placeHolderName,apartment_id,comment_id,revolving) {
	var url = ajax_dir + "comment.php";
	url = url + "?aid=" + apartment_id + "&cid=" + comment_id + "&rev=" + revolving;
	//document.getElementById(placeHolderName).innerHTML = " ... loading ... ";
	AJAX_makeRequest(url,placeHolderName);	
}


function urlencode(str) {
	str = escape(str);
	str = str.replace('+', '%2B');
	str = str.replace('%20', '+');
	str = str.replace('*', '%2A');
	str = str.replace('/', '%2F');
	str = str.replace('@', '%40');
	return str;
}


function urlDecode( encoded )
{
	var HEXCHARS = "0123456789ABCDEFabcdef";
	var plaintext = "";
	var i = 0;
	while (i < encoded.length) {
		var ch = encoded.charAt(i);
		if (ch == "+") {
			plaintext += " ";
			i++;
		} else if (ch == "%") {
			if (i < (encoded.length-2)
			&& HEXCHARS.indexOf(encoded.charAt(i+1)) != -1
			&& HEXCHARS.indexOf(encoded.charAt(i+2)) != -1 ) {
				plaintext += unescape( encoded.substr(i,3) );
				i += 3;
			} else {
				plaintext += "%[ERROR]";
				i++;
			}
		} else {
			plaintext += ch;
			i++;
		}
	}
	return plaintext;
};



//-->