
		// Request erzeugen
		if (window.XMLHttpRequest) {
			xmlHttp = new XMLHttpRequest(); // Mozilla, Safari, Opera
		} else {
			try {
				xmlHttp = new ActiveXObject('Msxml2.XMLHTTP'); // IE 5
			} catch (e) {
				try {
					xmlHttp = new ActiveXObject('Microsoft.XMLHTTP'); // IE 6
				} catch (e) {}
			}
		}


queue = new Array();

function setRequest(file, div, tag, queryString ) {
	if(xmlHttp) {
		/* Request Daten in die Warteschlange setzen, falls der vorherige noch nicht abgeschlossen ist */
		if(xmlHttp.readyState == 1 || xmlHttp.readyState == 2 || xmlHttp.readyState == 3) {
			queueLength = queue.length;
			queue[queueLength] = new Array();
			queue[queueLength][0] = file;
			queue[queueLength][1] = div;
			queue[queueLength][2] = tag;
			queue[queueLength][3] = queryString;
			if (tag == "value") document.getElementById(div).value = 'Bitte warten, wird berechnet'; //Optionaler Infotext
			if (tag == "innerHTML") document.getElementById(div).innerHTML = 'Bitte warten, wird berechnet'; //Optionaler Infotext
		} else {
			
				xmlHttp.open('POST', 'ajax/'+file.toString(), true);
				xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
				xmlHttp.send(queryString);

				xmlHttp.onreadystatechange = function () {
				if(xmlHttp.readyState == 2) {
					if (tag == "value") document.getElementById(div).value = 'Lade Inhalt...';
					if (tag == "innerHTML") document.getElementById(div).innerHTML = 'Lade Inhalt...';
				}
				if(xmlHttp.readyState == 4) {
					if(xmlHttp.status == 200) {
						if (tag == "value") document.getElementById(div).value = xmlHttp.responseText;
						if (tag == "innerHTML") document.getElementById(div).innerHTML = xmlHttp.responseText;
					} else if(xmlHttp.status == 404) {
						if (tag == "value") document.getElementById(div).value = 'Die Datei wurde nicht gefunden!';
						if (tag == "innerHTML") document.getElementById(div).innerHTML = 'Die Datei wurde nicht gefunden!';
					}
					/* Warteschlange abarbeiten */
					queueLength = queue.length;
					if(queueLength != 0) {
						setRequest(queue[0][0], queue[0][1], queue[0][2], queue[0][3]);
						queue.shift(); //Erstes Element entfernen, den Rest eine Position nach vorne rücken
					}
				}
		   };
		  if(queryString == "") {
				xmlHttp.send(null);
		  }
		}
	}
}
