/**
 *	Ersetzt element.innerHTML
 *	wird von mw_insert_content aufgerufen
 */

function mw_intern_replace_content(page_request, containerid){
	if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1)){
	 document.getElementById(containerid).innerHTML=page_request.responseText;
	}
	else{
		page_request.abort;
	}
}

/**
 *	Daten über URL laden und Element aktualisieren
 */
function mw_insert_content(url,containerid){
	var mw_http_request;
	var requestCounter = 0;
	var maximumRequest = 10;			//max. requests for each xmlhttprequest-object
	var MAXIMUM_WAITING_TIME = 10000;	//timeout for xmlhttprequest-object
	
	//timeout setzen
	var requestTimer = setTimeout(function() {
       mw_http_request.abort();
       //hier timeout abfangen, ggf. user benachrichtigen
    }, MAXIMUM_WAITING_TIME);
	
	//xmlhttp-request object erstellen
	if (window.XMLHttpRequest){ // if Mozilla, Opera, Safari ACHTUNG: auch IE7!!
		 mw_http_request = new XMLHttpRequest();
	}
	else if (window.ActiveXObject){ // if IE 5.5 + IE 6
		 try {
		 mw_http_request = new ActiveXObject("Msxml2.XMLHTTP");
		 }
		 catch (e){
			 try{
			 mw_http_request = new ActiveXObject("Microsoft.XMLHTTP");
			 }
			 catch (e){
			 }
		 }
	}
	else {
		return false;
	}

/*
	if(mw_http_request==false){
		return false;
	}
*/

	try{
		mw_http_request.onreadystatechange = function(){
			if (mw_http_request.readyState != 4)  { return; }
			clearTimeout(requestTimer);
			if (mw_http_request.status != 200)  {
				return false;
			}
			mw_intern_replace_content(mw_http_request, containerid);
			requestCounter += 1;
			if (requestCounter >= maximumRequest){
				mw_http_request.abort();
			}
		}
		mw_http_request.open('GET', url, true); //true=async
		mw_http_request.setRequestHeader('If-Modified-Since','Sat, 1 Jan 2000 00:00:00 GMT');
		mw_http_request.setRequestHeader('Content-Type','text/html; charset=ISO-8859-1');
		mw_http_request.send(null);
	}
	catch (e){
		//fehlerbehandlung
	}
}

