// JavaScript Document

var http_request = false;
var ziel_container=false;
var ziel_function=false;

function loadContent(url)
{
	http_request = false;

	if (window.XMLHttpRequest) // Mozilla, Safari,...
	{
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType)
		{
			http_request.overrideMimeType('text/xml');
		}
	}
	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('Fehler: XMLHTTP-Instanz konnte nicht erzeugt werden');
		return false;
	}
	http_request.open('GET', url, true);
	http_request.onreadystatechange = handleContent;
	http_request.send(null);
}

function loadContentIC(url,obj)
{
	ziel_container=obj;
	ziel_function=false;
	loadContent(url);
}
function loadContentIFnc(url,fnc)
{
	ziel_function=fnc;
	ziel_container=false;
	loadContent(url);
}

function handleContent()
{
	var ret_text='';
	switch(http_request.readyState)
	{
		case 0: // nicht initialisiert
			ret_text='nicht initialisiert';
			break;
		case 1: // lade
			ret_text='<img src="/img/icons/loading.gif" alt="Lade Daten" />';
			break;
		case 2: // geladen
			ret_text='Daten geladen';
			break;
		case 3: // interaktiv
			ret_text='interaktiv';
			break;
		case 4: // vollständig
			switch(http_request.status)
			{
				case 200: // alles korrekt geladen				
					ret_text=http_request.responseText;
					break;
				case 404: // nicht gefunden
					ret_text='Bei der Anfrage ist ein Problem aufgetreten: ';	
					ret_text+='Die Seite wurde nicht gefunden';
					break;
				case 500: // interner Server-Fehler
					ret_text='Bei der Anfrage ist ein Problem aufgetreten: ';
					ret_text+='Ein interner Server-Fehler ist aufgetreten';
					break;
				default: // unbekannter Fehler
					ret_text='Bei der Anfrage ist ein Problem aufgetreten: ';
					ret_text+='Ein unbekannter Fehler ist aufgetreten';
					break;
			}
			break;
		default:
			ret_text='Status konnte nicht abgefragt werden';
			//unbekannter Status
			break;
	}
	
	if(!ziel_container)
	{
		//return ret_text
		if(!ziel_function)
		{
			
		}
		else
		{
			window[ziel_function](http_request.responseXML.documentElement,ret_text);
		}
	}
	else
	{
		ziel_container.innerHTML=ret_text;
	}
}