function ajax(){
	var request= false;
	
 //	Argumente
	var url,func,postvars,args= arguments.length;
	if(args<2){
		debug.push("Funktionen erwartet 2 Parameter: url, func");
		return false;
	}else{
		url = arguments[0];
		func= arguments[1];
		if(args>2)
		postvars= arguments[2];
	}
	
 // FireFox, Opera, Safari, usw
	if(window.XMLHttpRequest){
		request= new XMLHttpRequest();
	}
	
 // Internet Explorer
	else if(window.ActiveXObject){
		try{
        	request= new ActiveXObject("Msxml2.XMLHTTP");
        }
		catch(e){
        	try {
            	request= new ActiveXObject("Microsoft.XMLHTTP");
            }
			catch(e){}
        }
	}
	
 // Kein Request-Objekt möglich
	if(!request){
		debug.push("Konnte kein Request Objekt erstellen.");
		return false;
	}

 // Warte-Klasse aktivieren
	document.body.className= 'ajaxwait';

 // Funktion bei Statusänderung
	request.onreadystatechange= function(){
			if(request.readyState==4)
			if(request.status==200){
				document.body.className= '';
				func(request.responseText);
			}
	}
	
 // POST oder GET
	if(postvars){
		var sendVars= '';
		for(v in postvars){
			sendVars+= '&'+v+'='+postvars[v];	
		}
		request.open('POST', url,true);
        request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=ISO-8859-1");
		request.send( sendVars.substr(1) );
	}else{
		request.open('GET', url,true);
		request.send(null);
	}
}