function validateAjax(_param, _programm, _url, _id){
	with(new Ajax()){
		params="eID=buchung&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!");
		return false;
	}else{
		viewnext(id);
		return true;
	}
}
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){
	var page = id.substr(2);
	var katalog = id.substr(0,2);
	switch(page){
		case 'page0': view(katalog+'page1'); break;
		case 'page1': view(katalog+'page2'); break;
		case 'page2': view(katalog+'page3'); break;
		case 'page3': view(katalog+'all'); break;
		case 'all' : if(katalog == 'bl'){document.blbuchungform.submit();}else if(katalog == 'hk'){document.hkbuchungform.submit();}else if(katalog == 'pk'){document.pkbuchungform.submit();}else if(katalog == 'jl'){document.jlbuchungform.submit();}else{return false;} break;
		default: break;
	}
}
function view(id){
	var katalog = id.substr(0,2);
	if(id==katalog+"all"){
		try{
			document.getElementById(katalog+"page0").style.display = "block";
			document.getElementById(katalog+"page0button").style.display = "none";
			document.getElementById(katalog+"page1").style.display = "block";
			document.getElementById(katalog+"page1button").style.display = "none";
			document.getElementById(katalog+"page2").style.display = "block";
			document.getElementById(katalog+"page2button").style.display = "none";
			document.getElementById(katalog+"page3").style.display = "block";
			document.getElementById(katalog+"page3button").style.display = "none";
			document.getElementById(katalog+"allbutton").style.display = "block";
			document.getElementById(katalog+"allbutton").style.display = "block";
			document.getElementById("headbuchung"+katalog).style.display = "block";
		}catch(e){
			document.getElementById("headbuchung"+katalog).style.display = "block";
			document.getElementById(katalog+"allbutton").style.display = "block";
		}
	}else{
		try{
			document.getElementById(katalog+"page0").style.display = "none";
			document.getElementById(katalog+"page0button").style.display = "block";
			document.getElementById(katalog+"page1").style.display = "none";
			document.getElementById(katalog+"page1button").style.display = "block";
			document.getElementById(katalog+"page2").style.display = "none";
			document.getElementById(katalog+"page2button").style.display = "block";
			document.getElementById(katalog+"page3").style.display = "none";
			document.getElementById(katalog+"page3button").style.display = "block";
			document.getElementById(katalog+"allbutton").style.display = "none";
			document.getElementById("headbuchung"+katalog).style.display = "none";
			document.getElementById(id).style.display = "block";
		}catch(e){
			document.getElementById("headbuchung"+katalog).style.display = "none";
			document.getElementById(katalog+"allbutton").style.display = "none";
			document.getElementById(id).style.display = "block";
		}
	}
}


function setLandNummer(attr) {
var laendervorwahl = new Array();
var land = "";
var i = 0;
var vorwahlnummer = 0;
var size = attr.length;
var type = attr;


switch(type){
			case "hk": {
				
					land = document.hkbuchungform.land.value;
					size = document.hkbuchungform.land.options.length;
					break;
							}
			case "jl":{				
					land = document.jlbuchungform.land.value;
					size = document.jlbuchungform.land.options.length;				
					break;
						}
		case "bl": {
			
				land = document.blbuchungform.land.value;
				size = document.blbuchungform.land.options.length;
				break;
					}
		case "pk":{
		
				land = document.pkbuchungform.land.value;
				size = document.pkbuchungform.land.options.length;
				break;
					}
		default: {
		break;
					 }
}				/**
				Array mit den Werten für die Ländervorwahl füllen
				*/
				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
				*/
				vorwahlnummer = laendervorwahl[land];
			
	for(i=0;i<size; i++) {			//Das Selectfeld solange durchsuchen bis die Vorwahl gefunden wurde
		
		
		
			switch(type){
						case "hk": {
											if(document.hkbuchungform.landtelefon.options[i].value==vorwahlnummer){			//Nummer gefunden ??
												document.hkbuchungform.landtelefon.selectedIndex = i;						//Wenn ja dann die Nummer auswählen
												document.hkbuchungform.landhandy.selectedIndex = i;	
												document.hkbuchungform.landfax.selectedIndex = i;
												}							
											break;
										}
						case "jl":{
							
									if(document.jlbuchungform.landtelefon.options[i].value==vorwahlnummer){			//Nummer gefunden ??
												document.jlbuchungform.landtelefon.selectedIndex = i;						//Wenn ja dann die Nummer auswählen
												document.jlbuchungform.landhandy.selectedIndex = i;	
												document.jlbuchungform.landfax.selectedIndex = i;
												document.jlbuchungform.landnotfalltelefon.selectedIndex = i;
												}
									break;
									}
						case "bl": {
								
									if(document.blbuchungform.landtelefon.options[i].value==vorwahlnummer){			//Nummer gefunden ??
												document.blbuchungform.landtelefon.selectedIndex = i;						//Wenn ja dann die Nummer auswählen
												document.blbuchungform.landhandy.selectedIndex = i;	
												document.blbuchungform.landfax.selectedIndex = i;
												}
									break;
										}
						case "pk":{
							
									if(document.pkbuchungform.landtelefon.options[i].value==vorwahlnummer){			//Nummer gefunden ??
												document.pkbuchungform.landtelefon.selectedIndex = i;						//Wenn ja dann die Nummer auswählen
												document.pkbuchungform.landhandy.selectedIndex = i;	
												document.pkbuchungform.landfax.selectedIndex = i;
												}
									break;
										}
						default: {
								break;
									 }
						}						
			}
		
}



