

var httpreq = false;

/*
 *	Erzeugt ein XMLHttpRequest Objekt, wenns nicht klappt wird false zur?ckgegeben 
 */
function erzeugeXMLHttpRequest() {

	if (window.XMLHttpRequest) {
    	// F?r Mozillabrowser
    	httpreq = new XMLHttpRequest();
  	} else if (window.ActiveXObject) {
	    // Wenn das oben nicht geklappt hat, jetzt f?r M$ probieren
	   	// F?r neuere M$ Browser
	   	try {
			httpreq = new ActiveXObject("Msxml2.XMLHTTP");		
		} catch (e) {
			try {
		        httpreq = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {

			}
			//F?r alte M$ Browser			
		}
 	}
	return httpreq;
}

/* 
	Schickt ein Request mit der sagenId an den Server um die damit assoziierten Artikel zu erhalten
*/
function fordereZugehoerigeArtikel (sagenId) {
	
	//Die sagenId ist gleich der id für die zelle
	if (!httpreq) {
		httpreq = erzeugeXMLHttpRequest();
	}
	//Dann gehts halt nicht
	if (!httpreq) {	
		document.getElementById(sagenId).innerHTML = "Tut mir leid. Ihr Browser ist nicht in der Lage diese Funktion auszuf&uuml;hren.";
	} else {
		var anfrage = "./SageArtikelAJ.php?sagenId="+sagenId;
		httpreq.open("get", anfrage, true);
		httpreq.onreadystatechange = behandleSagenResponse;
		httpreq.send(null);
	}
}


/*
	Nimmt die Antwort entgegen und stellt den Text (die Links zu den Artikeln) 
	in der zugeh?rigen Zelle (Sage) dar.
 */
function behandleSagenResponse() {

	if ( httpreq.readyState == 4 ) {
		antwort = httpreq.responseText.split(";");
		var zelle = document.getElementById(antwort[0]);
		zelle.innerHTML = antwort[1];
	}
}

/* 
	Stellt eine Anfrage an den Server, damit er nach dem Stichwort sucht.
*/
function anfrageNachStichwort(schlagwort) {
	
	var suchfeld = false;
	//Falls eins aus dem Suchfeld geholt werden soll
	if (schlagwort == "+suchfeld") {
		suchfeld = true;
		//Das Schlagwort wird aus dem Eingabefeld geholt
		var schlagwort = document.getElementById("schlagwortFeld").value;
	}

	if (!httpreq) {
		httpreq = erzeugeXMLHttpRequest();
	}
	//Dann gehts halt nicht
	if (!httpreq) {	
		document.getElementById("schlagwortAW").innerHTML = "Tut mir leid. Ihr Browser ist nicht in der Lage diese Funktion auszuf&uuml;hren.";
	} else {
		var url = "./AJStichwortSuche.php";
		httpreq.open("post", url, true);
		//Wo die Serverantwort hingeschrieben werden soll, h?ngt davon ab ob das Wort eingegeben oder in der Gesamttabelle angeklickt wurde
		if (suchfeld == true) {
			httpreq.onreadystatechange = behandleAntwortNachStichwort;
		} else {
			httpreq.onreadystatechange = behandleAntwortNachStichwortKlick;
		}
		httpreq.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		schlagwort = escape(schlagwort);
		httpreq.send("schlagwort=" +schlagwort);
	}
}


/*

*/
function anfrageAlleStichworte() {

	if (!httpreq) {
		httpreq = erzeugeXMLHttpRequest();
	}
	//Dann gehts halt nicht
	if (!httpreq) {
		document.getElementById(sagenId).innerHTML = "Tut mir leid. Ihr Browser ist nicht in der Lage diese Funktion auszuf&uuml;hren.";
	} else {
		var url = "./AJStichwortSuche.php?alle=true";
		httpreq.open("get", url, true);
		httpreq.onreadystatechange = behandleAntwortNachStichwort;
		httpreq.send(null);
	}
}

/*
	Zeigt um p-Bereich mit der id schlagwortAW die Antwort des Servers an.
	Das sind entweder alle Stichworte oder das was zu dem eingegebenen Suchwort passt.
 */
function behandleAntwortNachStichwort () {
	
	antwort = httpreq.responseText.split(";;");
	
	if ( httpreq.readyState == 4 ) {
		var antwortDiv = document.getElementById("schlagwortAW");
		antwortDiv.innerHTML =  antwort[1];
	}
}

/* 
	Schreibt die Serverantwort in die Tabellenzelle in der Tabelle mit allen Stichworten
*/
function behandleAntwortNachStichwortKlick() {
	
	antwort = httpreq.responseText.split(";;");
	
	if ( httpreq.readyState == 4 ) {
		var antwortDiv = document.getElementById(antwort[0]);
		antwortDiv.innerHTML = antwort[1];
	}
}




