function validateAjax(_param, _programm, _url, _id){
	with(new Ajax()){
		params="eID=ajax&validate="+_id+"&"+_param;
		method="POST";
		url=_url;
		onSuccess=_programm;
		successparams=_id;
		doRequest();
	}
}
function check(id){
	setClean(id);
	var param="", validate="";
	var domNodes = readElementsById(id);
	if(domNodes.length){
		for(var i=0; i<domNodes.length; i++){
			if(domNodes[i]["name"] && domNodes[i]["value"]){
				param+=domNodes[i]["name"]+"="+domNodes[i]["value"]+"&";
			}
		}
		param = param.substr(0, -1+(param.length));
		validateAjax(param, setError, "index.php", id);
	}else{
		validateAjax("", setError, "index.php", id);
	}
}
function setError(id, txt, xml){
	var labelNode, fieldNode, inputNode;
	if(xml.getElementsByTagName("field").length > 0){
		for(var i=0; i<xml.getElementsByTagName("field").length; i++){
			fieldNode = xml.getElementsByTagName("field")[i];
			try{
				labelNode = fieldNode.getElementsByTagName("label")[0].firstChild;
				labelNode = document.getElementById(labelNode.nodeValue);
				setClassError(labelNode, getClassname(labelNode));
			}catch(e){}
			try{
				inputNode = fieldNode.getElementsByTagName("userfield")[0].firstChild;
				inputNode = document.getElementById(inputNode.nodeValue);
				setClassError(inputNode, getClassname(inputNode));
			}catch(e){}
		}
		alert("Bitte füllen Sie die rot gekennzeichneten Felder korrekt aus!");
	}else{
		if(id=="all"){
			document.buchung.submit();
		}
		viewnext(id);
	}
}
function setClean(id){
	var domLabel = document.getElementById(id).getElementsByTagName("label");
	for(var i=0; i<domLabel.length; i++){
		setClassNoError(domLabel[i], getClassname(domLabel[i]));
	}
	var inputLabel = document.getElementById(id).getElementsByTagName("INPUT");
	for(var i=0; i<inputLabel.length; i++){
		setClassNoError(inputLabel[i], getClassname(inputLabel[i]));
	}
	inputLabel = document.getElementById(id).getElementsByTagName("SELECT");
	for(var i=0; i<inputLabel.length; i++){
		setClassNoError(inputLabel[i], getClassname(inputLabel[i]));
	}
	inputLabel = document.getElementById(id).getElementsByTagName("TEXTAREA");
	for(var i=0; i<inputLabel.length; i++){
		setClassNoError(inputLabel[i], getClassname(inputLabel[i]));
	}
	return true;
}
function getClassname(element){
	try{
		var classname = element.className;
	}catch(e){
		return false;
	}
	if(classname.length > 0 || classname != "undefined"){
		if(classname.lastIndexOf(" ")){
			var result="";
			var classarray = classname.split(" ");
			for(var i=0; i<classarray.length; i++){
				if(classarray[i] != "error"){
					result+=classarray[i]+" ";
				}
			}
			return result.substr(0, -1+(result.length));
		}
		if(classname != "error"){
			return classname;
		}
		return false;
	}
	return false;
}
function setClassError(element, value){
	if(value){
		element.className = value+" error";
	}else{
		element.className = "error";
	}
	return true;
}
function setClassNoError(element, value){
	if(value){
		element.className = value;
	}else{
		element.className = "";
	}
	return true;
}
function readElementsById(id){
	var i = 0;
	var result = new Array();
	var domNode = document.getElementById(id);
	var elements = domNode.getElementsByTagName("SELECT");
	for(var h=0; h<elements.length; h++){
		if(readSelect(elements[h])){
			result[i] = new Object();
			result[i]["name"] = elements[h].getAttribute('NAME');
			result[i]["value"] = readSelect(elements[h]);
			i++;
		}
	}
	elements = domNode.getElementsByTagName("TEXTAREA");
	for(var h=0; h<elements.length; h++){
		if(readText(elements[h])){
			result[i] = new Object();
			result[i]["name"] = elements[h].getAttribute('NAME');
			result[i]["value"] = readText(elements[h]);
			i++;
		}
	}
	elements = domNode.getElementsByTagName("INPUT");
	for(var h=0; h<elements.length; h++){
		if(selectElement(elements[h])){
			result[i] = new Object();
			result[i]["name"] = elements[h].getAttribute('NAME');
			result[i]["value"] = selectElement(elements[h]);
			i++;
		}
	}
	if(result.length>0){
		return result;
	}else{
		return false;
	}
}
function selectElement(element){
	var typ = element.getAttribute("type");
	switch(typ.toLowerCase()){
		case 'text': return readText(element); break;
		case 'checkbox': return readChecked(element); break;
		case 'radio': return readChecked(element); break;
		default: break;
	}
	return false;
}
function readSelect(element){
	try{
		return element.options[element.selectedIndex].value;
	}catch(e){
		return false;
	}
}
function readChecked(element){
	if(element.checked){
		return element.value;
	}else{
		return false;
	}
}
function readText(element){
	if(element.value.length > 0){
		return element.value;
	}else{
		return false;
	}
}
function viewnext(id){
	switch(id){
		case 'page0': view('page1'); break;
		case 'page1': view('page2'); break;
		case 'page2': view('all'); break;
		default: break;
	}
}
function view(id){
	if(id=="all"){
		try{
			$("page0").addClassName("nobackground");
			$("page1").addClassName("nobackground");
			$("page2").addClassName("nobackground");
			$("page0").show();
			$("page0button").hide();
			$("page1").show();
			$("page1button").hide();
			$("page2").show();
			$("page2button").hide();
			$("allbutton").show();
			$("tophead").show();
			$("buchung-head1").hide();
			$("buchung-head2").hide();
			$("buchung-head3").hide();
		}catch(e){
			$("page0").addClassName("nobackground");
			$("page1").addClassName("nobackground");
			$("page2").addClassName("nobackground");
			$("allbutton").show();
			$("tophead").show();
		}
	}else{
		try{
			$("page0").removeClassName("nobackground");
			$("page1").removeClassName("nobackground");
			$("page2").removeClassName("nobackground");
			$("page0").hide();
			$("page0button").show();
			$("page1").hide();
			$("page1button").show();
			$("page2").hide();
			$("page2button").show();
			$("allbutton").hide();
			$("tophead").hide();
			$(id).show();
			$("buchung-head1").show();
			$("buchung-head2").show();
			$("buchung-head3").show();
//			document.getElementById(id).style.display = "block";
		}catch(e){
			$("page0").removeClassName("nobackground");
			$("page1").removeClassName("nobackground");
			$("page2").removeClassName("nobackground");
			$("tophead").hide();
			$("allbutton").hide();
			$(id).show();
//			document.getElementById(id).style.display = "block";
		}
	}
}

function setLandNummer(form){
	if(form == "land"){
		var land = document.buchung.land.value;
		var size = document.buchung.telefonland.options.length;
	}else{
		var land = document.buchung.kontaktland.value;
		var size = document.buchung.kontakttelefonland.options.length;
	}
	/**
	Array mit den Werten für die Ländervorwahl füllen
	*/
	var laendervorwahl = new Array();
	laendervorwahl["Belgien"]=32;
	laendervorwahl["Daenemark"]=45;
	laendervorwahl["Deutschland"]=49;
	laendervorwahl["Estland"]=372;
	laendervorwahl["Finnland"]=358;
	laendervorwahl["Frankreich"]=33;
	laendervorwahl["Griechenland"]=30;
	laendervorwahl["Großbritannien"]=44;
	laendervorwahl["Irland"]=353;
	laendervorwahl["Italien"]=39;
	laendervorwahl["Lettland"]=371;
	laendervorwahl["Litauen"]=370;
	laendervorwahl["Luxembourg"]=352;
	laendervorwahl["Malta"]=356;
	laendervorwahl["Niederlande"]=31;
	laendervorwahl["Norwegen"]=47;
	laendervorwahl["Oesterreich"]=43;
	laendervorwahl["Polen"]=48;
	laendervorwahl["Portugal"]=351;
	laendervorwahl["Schweden"]=46;
	laendervorwahl["Schweiz"]=41;
	laendervorwahl["Slowakei"]=421;
	laendervorwahl["Slowenien"]=386;
	laendervorwahl["Spanien"]=34;
	laendervorwahl["Tschechien"]=420;
	laendervorwahl["Ungarn"]=36;
	laendervorwahl["Zypern"]=357;
	/**
	 Vorwahl des Ausgewählten Landes in eine Variable speichern
	*/
	var vorwahlnummer = laendervorwahl[land];
	for(var i=0;i<size; i++){	//Das Selectfeld solange durchsuchen bis die Vorwahl gefunden wurde
		if(form == "land"){
			if(document.buchung.telefonland.options[i].value == vorwahlnummer){	//Nummer gefunden ??
				document.buchung.telefonland.selectedIndex = i;					//Wenn ja dann die Nummer auswählen
				document.buchung.handyland.selectedIndex = i;
				document.buchung.faxland.selectedIndex = i;
			}
		}else{
			if(document.buchung.kontakttelefonland.options[i].value == vorwahlnummer){	//Nummer gefunden ??
				document.buchung.kontakttelefonland.selectedIndex = i;					//Wenn ja dann die Nummer auswählen
				document.buchung.kontakthandyland.selectedIndex = i;
			}
		}
	}
}
function showhochschule(select){
	if(select.options[select.options.selectedIndex].value == 2){
		$("showhochschule").show();
	}else{
		$("showhochschule").hide();
	}
}