/* AJAX Framework
	 Version 1.0
   Copyright 2008 by Michael Reese (webmaster@mr-action.de)
*/

var debug = false;


function showworking(){
	if(window.innerHeight){
		var y = window.innerHeight/2 + window.pageYOffset;
	}else{
		var y = document.body.clientHeight/2 + document.body.scrollTop;
	}

	if(window.innerWidth){
		var x = window.innerWidth/2 + window.pageXOffset;
	}else{
		var x = document.body.clientWidth/2 + document.body.scrollLeft;
	}
	
	y -= 50;
	x -= 200;
	
	document.getElementById("ajax_working").style.top = y;
	document.getElementById("ajax_working").style.left = x;
	document.getElementById("ajax_working").style.display = "";
}

function hideworking(){
	document.getElementById("ajax_working").style.display = "none";
}

function showmessage(themessage){
	if(window.innerHeight){
		var y = window.innerHeight/2 + window.pageYOffset;
	}else{
		var y = document.body.clientHeight/2 + document.body.scrollTop;
	}

	if(window.innerWidth){
		var x = window.innerWidth/2 + window.pageXOffset;
	}else{
		var x = document.body.clientWidth/2 + document.body.scrollLeft;
	}
	
	y -= 50;
	x -= 200;
	
	document.getElementById("ajax_message").style.top = y;
	document.getElementById("ajax_message").style.left = x;
	document.getElementById("ajax_message").style.display = "";
	document.getElementById("ajax_message_text").innerHTML = themessage;
}

function hidemessage(){
	document.getElementById("ajax_message").style.display = "none";
	document.getElementById("ajax_message_text").innerHTML = "";
}

function send_post_text(thedata, theurl, callback, hide){
	var http_request = false;
	
	if(hide == false){
		showworking();
	}
						
	if(window.XMLHttpRequest){
		http_request = new XMLHttpRequest();
	}else if(window.ActiveXObject){
 		try{
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		}catch(e){
			try{
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			}catch(e){}
		}
	}
		
	if(!http_request){
		return true;
	}else{
		http_request.onreadystatechange = function(){
			if(http_request.readyState == 4 && http_request.status == 200){
				if(debug){
					alert(http_request.responseText);
				}
//				callback(http_request.responseText);
				eval(http_request.responseText);
				delete http_request;
				http_request = null;
			}
		}
		
		if(debug){
			alert("sende: "+thedata+"\nan: "+theurl);
		}
		http_request.open('POST', theurl);
		http_request.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		http_request.setRequestHeader('If-Modified-Since', 'Sat, 1 Jan 2000 00:00:00 GMT');
		http_request.send(thedata);
		return false;
	}
}

function send_get_text(thedata, theurl, callback, hide){
	var http_request = false;
	
	if(hide == false){
		showworking();
	}

	if(window.XMLHttpRequest){
		http_request = new XMLHttpRequest();
	}else if(window.ActiveXObject){
 		try{
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		}catch(e){
			try{
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			}catch(e){}
		}
	}
		
	if(!http_request){
		return true;
	}else{
		http_request.onreadystatechange = function(){
			if(http_request.readyState == 4 && http_request.status == 200){
				if(debug){
					alert(http_request.responseText);
				}
//				callback(http_request.responseText);
				eval(http_request.responseText);
				delete http_request;
				http_request = null;
			}
		}
		
		if(debug){
			alert("sende: "+thedata+"\nan: "+theurl);
		}
		http_request.open('GET', theurl+thedata);
		http_request.setRequestHeader('If-Modified-Since', 'Sat, 1 Jan 2000 00:00:00 GMT');
		http_request.send(null);
		return false;
	}
}
