var DEBUG = 0;

function setContent(id,content) {
	if(DEBUG) { console.debug("setContent: id=" + id + "\n"); }
	try {
		var elem = document.getElementById(id);
		elem.innerHTML = content;
		show(id);
	}
	catch(ex) { }
}

function getRequestObject() {
	var request = false;
	if(window.XMLHttpRequest) { request = new XMLHttpRequest(); }
	else if(window.ActiveXObject) { request = new ActiveXObject("Microsoft.XMLHTTP"); }
	return request;
}


// workaround browser permission denied message when url accessed with/without www
function setUrl(server) {
	var finalserver = server;
	if(/www/.test(window.location)) { }
	else { finalserver = server.replace(/www./g,""); }
	return finalserver;
}

function postClick(server) {
	if(DEBUG) { console.debug("postClick: server=" + server + "\n"); }
	postData('clicked','div1',server);
}

function postData(post,id,server) {
	if(DEBUG) { console.debug("postData: post=" + post + " id= " + id + " server=" + server + "\n"); }
	if(DEBUG) { console.debug("postData: url=" + window.location + "\n"); }
	try {
		server = setUrl(server);
		if(DEBUG) { console.debug("postData: server=" + server + "\n"); }
		var request = getRequestObject();
		if(request) {
			request.open("POST",server);
			//request.open("GET",server,"true");
			request.onreadystatechange = function() { loaderCallback(request,id); }
			request.send(post);
		}
	}
	catch(ex) { 
		if(DEBUG) { console.debug("postData: ex=" + ex + "\n"); }
	}
}

function loaderCallback(request,id) {
	if(DEBUG) { console.debug("loaderCallback: request=" + request + " : " + request.responseText + "\n"); }
	if(DEBUG) { console.debug("loaderCallback: request.status=" + request.status + "\n"); }
	try { 
		if(request.status == 302){
			var pattern = /(http.+)(">.+)/;
			var url = request.responseText.match(pattern);
			if(DEBUG) { console.debug("loaderCallback: url.length=" + url.length + "\n"); }
			if(DEBUG) { console.debug("loaderCallback: url=" + url[1] + "\n"); }
			if(DEBUG) { console.debug("loaderCallback: location=" + location + "\n"); }
			// NOTE: works only in Firefox, need to figure out IE 
			window.location = url[1];
		} 
		else if(request.readyState == 4 && request.status == 200){ 
			if(DEBUG) { console.debug("loaderCallback: id=" + id + "\n"); }
			setContent(id,request.responseText);
		} 
	}
	catch(e) { }
}

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


