//alert("ja");
/*letzte aenderung:  12.08.2008
datenbanktiger antje manhold
- wird von topmenu.inc.php verwendet
- eingebunden in projectsearch.php, project.php
ruft request.php auf*/
var W3CDOM = (document.createElement && document.getElementsByTagName);

//Nach dem Laden von sprachen.php soll die Funktion initialisieren() ausgeführt werden:
window.onload = initialisieren;

//Was unmittelbar nach dem Laden ausgeführt werden soll:
function initialisieren(){
	/*Browsertest. Wenn JavaScript abgeschaltet ist:*/
	if(W3CDOM){
  };

  /*Allen <select>-Tags wird zugewiesen, was bei onchange ausgeführt werden soll, und zwar soll dann Funktionen ausgefuehrt werden:*/
	var dropdown = document.getElementsByTagName("select");
  for (i=0; i<dropdown.length; i++){
  	if(dropdown[i].className=="languageselect"){
      dropdown[i].onchange = auswahl;
    };
  };


  /*Allen <img>-Tags mit der class "translation" wird zugewiesen, was bei onclick ausgeführt werden soll, und zwar soll dann die Funktion request() ausgefuehrt werden:*/
	var translation = document.getElementsByTagName("img");
  for (i=0; i<translation.length; i++){
  	if(translation[i].className=="translation"){
      translation[i].onclick = request;
    };
  };
};


//Sprachwahl topmenu:
function auswahl(){
	//Zuordnung (aktuelles dokument) von action der form:
	document.language.action = document.location;
	//alert(document.language.action);
	//Auswerten der Benuter-Auswahl im Dropdownfeld:
	var index = this.options.selectedIndex;
	//Ermitteln des Wertes zur Benutzerauswahl. Der Wert entpricht der id des ausgewählten Eintrages in der Datenbank und wird in der WHERE-Klausel verwendet:
	var val = this.options[index].value;
	//alert(val);
	//Zuordnung von value des hidden-inputs in topmenu.inc.php:
	var x = document.getElementById("hiddeninput");
	x.value = val;
	//alert(x.value);
};


/*Der Variable wird in der Funktion request() ein Wert zugewiesen. In der Funktion ausgabe() wird die Variable ausgewertet. Sie steuert, an welcher Stelle in der Tabelle das Request-Ergebnis ausgegeben wird. Ihr Inhalt entspricht dem Betreffenden im selbstdefinierten Attribut projektid von <select>:*/
var ort;
ort="";

/*Wird vom Event onchange eines select aufgerufen. Ermittelt die Benutzerauswahl und die Tabellenzeile und übergibt die Werte im Aufruf an die Funktion macheRequest():*/
function request(){
//Auswerten der Attribute des angeklickten Bildes:
	var idsprache = this.getAttribute("idsprache");
	var projektid = this.getAttribute("projektid");
	var feld = this.getAttribute("feld");
	//alert(idsprache+projektid+feld);

	ort=feld;

/*Aufruf der Funktion macheRequest. request.php wird mit den übergebenen Variablen ausgeführt und das Ergebnis zurückgegeben:*/
macheRequest("projektrequest.php?w="+feld+"&v="+projektid+"&x="+idsprache);
};

/*Der Request wird ausgeführt:*/
var httprequest = false;
//function macheRequest(url,zeile) {
function macheRequest(url) {
	httprequest = false;
	if (window.XMLHttpRequest) { // Mozilla, Safari,...
   httprequest = new XMLHttpRequest();
  	if (httprequest.overrideMimeType) {
	      httprequest.overrideMimeType('text/xml');
	  }
		} else if (window.ActiveXObject) { // IE
    	try {
	      httprequest = new ActiveXObject("Msxml2.XMLHTTP");
	    } catch (e) {
	    try {
	        httprequest = new ActiveXObject("Microsoft.XMLHTTP");
	    } catch (e) {}
  	}
	}
	if (!httprequest) {
	  alert('Ende :( Kann keine XMLHTTP-Instanz erzeugen');
	  return false;
	}
  //Zuweisung der Funktion ausgabe();
	httprequest.onreadystatechange = ausgabe;
	httprequest.open('GET', url, true);
	httprequest.send(null);
}

//Die Funktion steuert, wohin die Ausgabe erfolgen soll, falls der request fehlerfrei war:
function ausgabe() {
  if (httprequest.readyState == 4) {

    if (httprequest.status == 200) {
        //ort=document.getElementById(zelle);
				ort=document.getElementById(ort);
        text=httprequest.responseText;
				//alert(text);
        ort.innerHTML=text;
				if (text=='okay'){sichtbar();}
				else {unsichtbar();}
    }
    else {
        alert('Bei dem Request ist ein Problem aufgetreten.');
    }
  }
}

