var xmlHttp = null;
// Mozilla, Opera, Safari sowie Internet Explorer 7
if (typeof XMLHttpRequest != 'undefined') {
    xmlHttp = new XMLHttpRequest();
}
if (!xmlHttp) {
    // Internet Explorer 6 und älter
    try {
        xmlHttp  = new ActiveXObject("Msxml2.XMLHTTP");
    } catch(e) {
        try {
            xmlHttp  = new ActiveXObject("Microsoft.XMLHTTP");
        } catch(e) {
            xmlHttp  = null;
        }
    }
}

function escapeplus(str){
	return escape(str).replace(/\+/g,"%2B");
}

function getNewXmlHttp(){
var xmlHttpNew = null;
// Mozilla, Opera, Safari sowie Internet Explorer 7
if (typeof XMLHttpRequest != 'undefined') {
    xmlHttpNew = new XMLHttpRequest();
}
if (!xmlHttp) {
    // Internet Explorer 6 und älter
    try {
        xmlHttpNew  = new ActiveXObject("Msxml2.XMLHTTP");
    } catch(e) {
        try {
            xmlHttpNew  = new ActiveXObject("Microsoft.XMLHTTP");
        } catch(e) {
            xmlHttpNew  = null;
        }
    }
}

return xmlHttpNew;
}

    function getFormValues(fobj,valFunc){
       var str = "";
       var valueArr = null;
       var val = "";
       var cmd = "";
       for(var i = 0;i < fobj.elements.length;i++){
           switch(fobj.elements[i].type){
               case "text":
//                    if(valFunc){
//                        //use single quotes for argument so that the value of
//                        //fobj.elements[i].value is treated as a string not a literal
//                        cmd = valFunc + "(" + 'fobj.elements[i].value' + ")";
//                        val = eval(cmd)
//                    }
                    str += fobj.elements[i].name +
                     "=" + escapeplus(fobj.elements[i].value) + "&";
                     break;
                case "hidden":
//                    if(valFunc){
//                        //use single quotes for argument so that the value of
//                        //fobj.elements[i].value is treated as a string not a literal
//                        cmd = valFunc + "(" + 'fobj.elements[i].value' + ")";
//                        val = eval(cmd)
//                    }
                    str += fobj.elements[i].name +
                     "=" + escapeplus(fobj.elements[i].value) + "&";
                     break;
                case "textarea":
                    str += fobj.elements[i].name +
                     "=" + escapeplus(fobj.elements[i].value) + "&";
                     break;
               case "file":
               		alert(escape(fobj.elements[i]));
                    str += fobj.elements[i].name +
                     "=" + escapeplus(fobj.elements[i].value) + "&";
                     break;
               case "select-one":
                    str += fobj.elements[i].name +
                    "=" + escapeplus(fobj.elements[i].options[fobj.elements[i].selectedIndex].value) + "&";
                    break;
           }
       }
       str = str.substr(0,(str.length - 1));
       return str;
    }
    
function ladeBilderTabelle(){
	var xmlHttp2=getNewXmlHttp(); 
	if (xmlHttp) {
    xmlHttp.open('GET', 'BilderTabelle.php', true);
    xmlHttp.onreadystatechange = function(){
        if (xmlHttp.readyState == 4) {
            document.getElementById('BilderTabelle').innerHTML=xmlHttp.responseText;
        }
	};
    xmlHttp.send(null);
  }
}

function miniZulassungenNeuladen(Sort, Direction, OtherGETs){
  if (xmlHttp) {
    xmlHttp.open('GET', 'adminminis/MiniZulassungenAdmin.php?sort='+Sort+'&direction='+Direction+'&'+OtherGETs, true);
    xmlHttp.onreadystatechange = function(){
        if (xmlHttp.readyState == 4) {
            document.getElementById('Nav3').innerHTML=xmlHttp.responseText;
        }
	};
    xmlHttp.send(null);
  }
}

function bigZulassungenNeuladen(Sort, Direction, OtherGETs){
  if (xmlHttp) {
    xmlHttp.open('GET', 'bigPersonTabelle.php?sort='+Sort+'&direction='+Direction+'&'+OtherGETs, true);
    xmlHttp.onreadystatechange = function(){
        if (xmlHttp.readyState == 4) {
            document.getElementById('BigPersonen').innerHTML=xmlHttp.responseText;
        }
	};
    xmlHttp.send(null);
  }
}

function miniBilderNeuladen(Formular,OtherGETs){
  var xmlHttp2=getNewXmlHttp();
  if (OtherGETs!=""){
  	OtherGETs="?"+OtherGETs;
  }
  var toSend = "";
  if(Formular!=null){
  	toSend=getFormValues(Formular,"validate");
  }
  if (xmlHttp2) {
  	
    xmlHttp2.open('POST', 'adminminis/MiniBilderAdmin.php'+OtherGETs, true);
    xmlHttp2.setRequestHeader("Content-Type","multipart/form-data");
    xmlHttp2.onreadystatechange = function(){
        if (xmlHttp2.readyState == 4) {
            document.getElementById('Nav4').innerHTML=xmlHttp2.responseText;
        }
	};
    xmlHttp2.send(toSend);
  }
}

function textAnpassen(ID, SITE){
if (xmlHttp) {
    xmlHttp.open('GET', 'seitenteile/fenster.php?SITE='+SITE+'&ID='+ID, true);
    xmlHttp.onreadystatechange = function(){
        if (xmlHttp.readyState == 4) {
            document.getElementById(ID).innerHTML=xmlHttp.responseText;
        }
	};
    xmlHttp.send(null);
	}
}

function lernUebersichtAnpassen(ID){
if (xmlHttp) {
    xmlHttp.open('GET', 'seitenteile/lernuebersichtBearbeiten.php?ID='+ID, true);
    xmlHttp.onreadystatechange = function(){
        if (xmlHttp.readyState == 4) {
            document.getElementById(ID).innerHTML=xmlHttp.responseText;
        }
	};
    xmlHttp.send(null);
	}
}

function lernUebersichtKursAnpassen(ID){
if (xmlHttp) {
    xmlHttp.open('GET', 'seitenteile/lernuebersichtKursBearbeiten.php?ID='+ID, true);
    xmlHttp.onreadystatechange = function(){
        if (xmlHttp.readyState == 4) {
            document.getElementById(ID).innerHTML=xmlHttp.responseText;
        }
	};
    xmlHttp.send(null);
	}
}


function antwortenOnMouseOver(KursID,PersonID){
if (xmlHttp) {
    xmlHttp.open('GET', 'Popups/fragenUebersicht.php?KursID='+KursID+'&PersonID='+PersonID, true);
    xmlHttp.onreadystatechange = function(){
        if (xmlHttp.readyState == 4) {
        desc = 
"<table bgcolor=#dddddd>"+
"<tr>"+
"<td>"+
xmlHttp.responseText +
"</td>"+
"</tr>"+
"</table>";

		document.getElementById('Antwort').innerHTML=desc;
        }
	};
    xmlHttp.send(null);
	}
}


function alleFragenLaden(AnzahlFragen,KursID){
	alleFragenLadenHilfe(AnzahlFragen,KursID,1);
}

function alleFragenLadenHilfe(AnzahlFragen,KursID,counter){
	if (xmlHttp) {
    	xmlHttp.open('GET', 'adminbigs/BigFragenAdmin/grundgeruest.php?frageNr='+counter+'&KursID='+KursID+'', true);
  	 	xmlHttp.onreadystatechange = function ReadystateChanged(){
  		   	if (xmlHttp.readyState == 4) {
       				document.getElementById('Frage'+counter).innerHTML=xmlHttp.responseText;
       				if(counter<AnzahlFragen){
       					alleFragenLadenHilfe(AnzahlFragen,KursID,(counter+1));
       				}
       		}
		};
		xmlHttp.send(null);
	}
}

function alleAuswertungenLaden(AnzahlFragen,KursID,PersonID){
	alleAuswertungenLadenHilfe(AnzahlFragen,KursID,PersonID,1);
}

function alleAuswertungenLadenHilfe(AnzahlFragen,KursID,PersonID,counter){
	if (xmlHttp) {
    	xmlHttp.open('GET', 'adminbigs/BigAuswertungAdmin/grundgeruest.php?PersonID='+PersonID+'&frageNr='+counter+'&KursID='+KursID+'', true);
  	 	xmlHttp.onreadystatechange = function ReadystateChanged(){
  		   	if (xmlHttp.readyState == 4) {
       				document.getElementById('Frage'+counter).innerHTML=xmlHttp.responseText;
       				if(counter<AnzahlFragen){
       					alleAuswertungenLadenHilfe(AnzahlFragen,KursID,PersonID,(counter+1));
       				}
       		}
		};
		xmlHttp.send(null);
	}
}

function eineFrageSubmit(Nr,KursID,formular,speichern){
	var toSend=getFormValues(formular,"validate");
	if (xmlHttp){
    	xmlHttp.open('POST', 'adminbigs/BigFragenAdmin/grundgeruest.php?scripte='+speichern+'&frageNr='+Nr+'&KursID='+KursID+'', true);
    	xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=iso-8859-1");
  	 	xmlHttp.onreadystatechange = function ReadystateChanged(){
  		   	if (xmlHttp.readyState == 4) {
       				document.getElementById('Frage'+Nr).innerHTML=xmlHttp.responseText;
       		}
		};
		xmlHttp.send(toSend);
	}
}


/* Andere */
function buttonFree(FrageNr){
	document.getElementById('Speichern'+FrageNr).disabled=false;
}

function addEintrag(FrageNr, FrageID, SubID, antworten_counter, AntwortArt, RekursionsStufe){
	var URL = '';
	
	switch (AntwortArt){
		case 1:
			URL='adminbigs/BigFragenAdmin/AddEintraege-Teile/add_eines_auswaehlen.php?antworten_counter='+antworten_counter+'&FrageNr='+FrageNr+'&FrageID='+FrageID+'&AntwortArt='+AntwortArt+'&RekursionsStufe='+RekursionsStufe;
			break;
		case 2:
			URL='adminbigs/BigFragenAdmin/AddEintraege-Teile/add_mehrere_auswaehlen.php?antworten_counter='+antworten_counter+'&FrageNr='+FrageNr+'&FrageID='+FrageID+'&AntwortArt='+AntwortArt+'&RekursionsStufe='+RekursionsStufe;
			break;
		case 4:
			incSubIDdesEndesDerFrage(FrageNr);
			URL='adminbigs/BigFragenAdmin/AddEintraege-Teile/add_luecke_auswaehlen_neuerVortext.php?antworten_counter='+(getHighestAntwortCount(FrageNr)+1)+'&FrageNr='+FrageNr+'&FrageID='+FrageID+'&AntwortArt='+AntwortArt+'&RekursionsStufe='+RekursionsStufe+'&SubID='+SubID;
			break;
		case 5:
			incSubIDdesEndesDerFrage(FrageNr);
			URL='adminbigs/BigFragenAdmin/AddEintraege-Teile/add_luecke_eintragen_neuerVortext.php?antworten_counter='+(getHighestAntwortCount(FrageNr)+1)+'&FrageNr='+FrageNr+'&FrageID='+FrageID+'&AntwortArt='+AntwortArt+'&RekursionsStufe='+RekursionsStufe+'&SubID='+SubID;
			break;
	}
	
	buttonFree(FrageNr);
	if (xmlHttp) {
    	xmlHttp.open('GET', URL, true);
    	xmlHttp.onreadystatechange = 
    		function(){
     			if (xmlHttp.readyState == 4) {
       	    		document.getElementById('Neu'+RekursionsStufe+FrageNr).innerHTML=xmlHttp.responseText;
       			}
			};
    	xmlHttp.send(null);
	}
}

function addAuswahl(FrageNr, FrageID, SubID, antworten_counter, AntwortArt, RekursionsStufe){
	var URL = '';
	
	switch (AntwortArt){
		case 4:
			incSubIDdesEndesDerFrage(FrageNr);
			URL='adminbigs/BigFragenAdmin/AddEintraege-Teile/add_luecke_auswaehlen_alter_Vortext.php?antworten_counter='+(getHighestAntwortCount(FrageNr)+1)+'&FrageNr='+FrageNr+'&FrageID='+FrageID+'&AntwortArt='+AntwortArt+'&RekursionsStufe='+RekursionsStufe+'&SubID='+SubID;
			break;
		case 5:
			incSubIDdesEndesDerFrage(FrageNr);
			URL='adminbigs/BigFragenAdmin/AddEintraege-Teile/add_luecke_eintragen_alter_Vortext.php?antworten_counter='+(getHighestAntwortCount(FrageNr)+1)+'&FrageNr='+FrageNr+'&FrageID='+FrageID+'&AntwortArt='+AntwortArt+'&RekursionsStufe='+RekursionsStufe+'&SubID='+SubID;
			break;
	}
	
	buttonFree(FrageNr);
	if (xmlHttp) {
    	xmlHttp.open('GET', URL, true);
    	xmlHttp.onreadystatechange = 
    		function(){
     			if (xmlHttp.readyState == 4) {
       	    		var Element=document.getElementById('NeueAuswahl'+RekursionsStufe+SubID+'InFrage'+FrageNr);
       	    		Element.id="";
       	    		Element.innerHTML=xmlHttp.responseText;
       			}
			};
		if(document.getElementById('NeueAuswahl'+RekursionsStufe+SubID+'InFrage'+FrageNr) != null){
    		xmlHttp.send(null);
    	}
	}
}

function incSubIDdesEndesDerFrage(frageNr){

	var AntwortCount=document.getElementById('Ende'+frageNr).value;
	var Forumlar = document.getElementById('FormFrage'+frageNr);
	
	var GruppenIDFeldDesEndes = null;
	
	//GruppenID Feld finden
	for(var i = 0;i < Forumlar.elements.length;i++){
		if(Forumlar.elements[i].name=='GruppeID'+AntwortCount){
			GruppenIDFeldDesEndes = Forumlar.elements[i];
		}
	}
	
	GruppenIDFeldDesEndes.value = parseInt(GruppenIDFeldDesEndes.value)+1;
	
}

function getHighestAntwortCount(frageNr){
	var AntwortCounter=0;
	var Forumlar = document.getElementById('FormFrage'+frageNr);
	//GruppenID Feld finden
	for(var i = 0;i < Forumlar.elements.length;i++){
		if(Forumlar.elements[i].name.substr(0,6)=='Punkte'){
			AntwortCounter++;
		}
	}
	return AntwortCounter;
}


function markierungAnwenden(){
	var todo = document.getElementById('markierungen').value;
	switch(todo){
		case "alleAuswaehlen": 
			alleAuswaehlen();
		break;
		case "auswahl entfernen":
			auswahlEntfernen();
		break;
		case "auswahl invertieren":
			auswahlInvertieren();
		break;
		case "kurs zugelassen":
			alleAuswaehlenKursZugelassen()
		break;
		case "kurs bezahlt":
			alleAuswaehlenKursBezahlt();
		break;
		case "kurs nicht bezahlt":
			alleAuswaehlenKursNichtBezahlt();
		break;
	}
	document.getElementById('markierungen').options[0].selected = true;
}




function alleAuswaehlen(){
	var i=1;
	while(document.getElementById('Checkbox'+i) != null){
		document.getElementById('Checkbox'+i).checked=true;
		i++;
	}
}

function auswahlEntfernen(){
	var i=1;
	while(document.getElementById('Checkbox'+i) != null){
		document.getElementById('Checkbox'+i).checked=false;
		i++;
	}
}

function auswahlInvertieren(){
	var i=1;
	while(document.getElementById('Checkbox'+i) != null){
		var cb = document.getElementById('Checkbox'+i);
		if(cb.checked){
			cb.checked=false;
		}else{
			cb.checked=true;
		}
		i++;
	}
}

function alleAuswaehlenKursZugelassen(){
	var kursID=window.prompt("Bitte KursID eingeben! (1-Mathe / 2-Prog)");
	var i=1;
	while(document.getElementById('Checkbox'+i) != null){
		var cb = document.getElementById('Checkbox'+i);
		var zulassung = document.getElementById('ZulassungNr'+i+'Kurs'+kursID);
		if(zulassung != null && zulassung.value=='ja'){
			cb.checked=true;
		}else{
			cb.checked=false;
		}
		i++;
	}
}

function alleAuswaehlenKursBezahlt(){
	var kursID=window.prompt("Bitte KursID eingeben! (1-Mathe / 2-Prog)");
	var i=1;
	while(document.getElementById('Checkbox'+i) != null){
		var cb = document.getElementById('Checkbox'+i);
		var zulassung = document.getElementById('BezahltNr'+i+'Kurs'+kursID);
		if(zulassung != null && zulassung.value=='ja'){
			cb.checked=true;
		}else{
			cb.checked=false;
		}
		i++;
	}
}

function alleAuswaehlenKursNichtBezahlt(){
	var kursID=window.prompt("Bitte KursID eingeben! (1-Mathe / 2-Prog)");
	var i=1;
	while(document.getElementById('Checkbox'+i) != null){
		var cb = document.getElementById('Checkbox'+i);
		var zulassung = document.getElementById('BezahltNr'+i+'Kurs'+kursID);
		if(zulassung != null && zulassung.value=='nein'){
			cb.checked=true;
		}else{
			cb.checked=false;
		}
		i++;
	}
}