/*
window.onerror = Fehlerbehandlung;

function Fehlerbehandlung (Nachricht, Datei, Zeile) {
  Fehler = "Fehlermeldung:\n" + Nachricht + "\n" + Datei + "\n" + Zeile;
  zeigeFehler();
  return true;
}
function zeigeFehler () {
  alert(Fehler);
  return true;
}
*/
var bformdata=new Array();
var orderType="undefined";
bformdata['buchung']=new Array();
bformdata['buchung']['ru_language']="";
bformdata['buchung']['mr_count']=0;
bformdata['buchung']['mietr']=new Array();
bformdata['mr_errors']=new Array();
bformdata['buchung']['reisedatum']=new Array();
var zl=new Array();
lFormType="de";
var fTypes=new Array();
fTypes["usa"] = new Array("1112168461_76369545","1112168390_12524213","1142940169_57793819","1112168402_78534313");						
var hp_ab=12;
var zahlenAb=3;//ab 3 Jahren wird berhaupt erst gebucht/bzw. kalkuliert
var buchbarAb=3;//mindest-Abstand in Tagen vor Buchungstag, kann von der Reise überschrieben werden
var monthLength = new Array(31,29,31,30,31,30,31,31,30,31,30,31);
var selectedVorschlag="";
var oneDay=3600*24*1000;//Millisekunden!
var personen=0;
var verteilt=0;
var rest=0;
var maxZimmer=4;
var setMaxZimmer=new Array();
setMaxZimmer['DO-WB7a']=3;
setMaxZimmer['DO-WB7b']=3;
setMaxZimmer['DO-WB7g']=3;
if(setMaxZimmer[reisekennung] !=null)
	maxZimmer=setMaxZimmer[reisekennung];
var maxZimmerSpec=new Array();
maxZimmerSpec["NL-N7"]=3;
maxZimmerSpec["NL-S7"]=3;
maxZimmerSpec["DO-SPP7h"]=3;
maxZimmerSpec["DO-SPP7p"]=3;
if(maxZimmerSpec[reisekennung]!=null)
	maxZimmer=maxZimmerSpec[reisekennung];
var zv=new Array();
var zvErg=new Array();
var zvAvail=new Array();
var currentB=0;
var currentP=0;
var reiseVK=new Array();
reiseVK['ezZuschlag']=0;
var minAlter=0;//ab wann darf die Reise gebucht werden?
var zVer=new Array();
var vollzahler=0;//Anzahl der Vollzahler im EZ, DZ und die ersten beiden im MZ
var sendData=new Array();
var scanPhone=false;
var saveStationen=new Array();
var sendStationen=new Array();
var paketDef=new Array();
var sendPreise=new Array();
var gesendet=false;
var pluralSelect="s";
var aborted=false;
var radtage=new Array();
radtage['start']=-1;
radtage['ende']=-1;
var gTransport=new Array();
var zlZnacht=new Array();
var zlZnachtHP=new Array();
var stationenZNHPchecked=new Array();
var orgStatIndex=new Array();
var externDebug=(document.location.search.indexOf("debug")>-1) ? true : false;
var tznOverall=false;
var lastDay=0;//msecs!
var strohTypes=new Array();
strohTypes['BO-Str5']=true;
strohTypes['BO-Str4']=true;
var idIndex=1;
var sendZL=new Array();
var createDate=new Date(1227225094000);
var createStamp=createDate.getTime();
if(externDebug)
	createStamp="debug";
var raeder=new Object();
var withFrabatt=false;
var frabatt=new Object();
var sRabatt=new Object();
var srabattBetrag=0;
if(typeof sonderrabatt != "undefined")
{
	if(sonderrabatt.indexOf(";")>-1)
	{
		var trSplit=sonderrabatt.split(";");
		sRabatt['bezug']=trSplit[1];
		sRabatt['art']="betrag";
		if(trSplit[0].indexOf("%")>-1)
		{
			sRabatt['art']="prozent";
			sRabatt['betrag']=parseFloat(trSplit[0].replace(/%/,"").replace(/,/,"."));
		}
		else
			sRabatt['betrag']=parseFloat(trSplit[0].replace(/,/,"."));
	}
}
var zlInTime=new Object();
var no_znsperre=false;
var zn_vor_beginn=false;
var ru_languages=new Array();
var rulang_ref=new Array();
rulang_ref['de']="Deutsch";
rulang_ref['en']="English";
rulang_ref['fr']="Française";
rulang_ref['it']="Italiano";
rulang_ref['nl']="Nederlands";
rulang_ref['es']="Español";
rulang_ref['cz']="&#268;esky";
rulang_ref['no']="Norsk";
//bezeichner,feldtyp,required
var realRdatum="";
var firstDatum=0;//ms!
var lastDatum=0;//ms!
var firstOrt="";//ms!
var lastOrt="";//ms!
porte=new Array();//die Orte, an denen ein bestimmtes Paket gehängt werden kann, gilt nur für mehr als eine Ort pro Paket
									
pDataDef=new Array();




tv=new Array();

if(document.location.search.indexOf("debug")>-1)
{
	tv["vorname"] = "Testheinz";
	tv["name"] = "Testmüller";
	tv["firma"] = "";
	tv["strasse"] = "am testsee 32";
	tv["plz"] = "78465";
	tv["ort"] = "Testhausen";
	tv["tel"] = "79097";
	tv["mobil"] = "01736644329";
	tv["fax"] = "997509";
	tv["email"] = "test@watis.com";
	tv["gebdatum"] = "24.12.1967";
	pDataDef["de"]=new Array();
	pDataDef["de"].push(new Array("anrede","anrede",false,""));//wieder auf true!!
	pDataDef["de"].push(new Array("vorname","standard",true,"Norbert"));
	pDataDef["de"].push(new Array("name","standard",true,"Annabring"));
	pDataDef["de"].push(new Array("firma","standard",false,"datensee"));
	pDataDef["de"].push(new Array("strasse","standard",true,"am see 32"));
	pDataDef["de"].push(new Array("plz","plz",true,"78465"));
	pDataDef["de"].push(new Array("ort","standard",true,"Konstanz"));
	pDataDef["de"].push(new Array("tel","phone",false,"79097"));
	pDataDef["de"].push(new Array("fax","phone",false,"997509"));
	pDataDef["de"].push(new Array("mobil","phone",false,"01736644329"));
	pDataDef["de"].push(new Array("email","standard",true,"annabring@datensee.de"));
	pDataDef["de"].push(new Array("gebdatum","datum",true,"24.2.1967"));
	
	pDataDef["usa"]=new Array();
	pDataDef["usa"].push(new Array("anrede","anrede",false,""));
	pDataDef["usa"].push(new Array("vorname","standard",true));
	pDataDef["usa"].push(new Array("name","standard",true));
	pDataDef["usa"].push(new Array("firma","standard",false));
	pDataDef["usa"].push(new Array("strasse","standard",true));
	pDataDef["usa"].push(new Array("ort","standard",true));
	pDataDef["usa"].push(new Array("state","state",true));
	pDataDef["usa"].push(new Array("plz","plz",true));
	pDataDef["usa"].push(new Array("tel","phone",false));
	pDataDef["usa"].push(new Array("fax","phone",false));
	pDataDef["usa"].push(new Array("mobil","phone",false));
	pDataDef["usa"].push(new Array("email","standard",true));
	pDataDef["usa"].push(new Array("gebdatum","datum",true));
}
else
{
	pDataDef["de"]=new Array();
	pDataDef["de"].push(new Array("anrede","anrede",true,""));//wieder auf true!!
	pDataDef["de"].push(new Array("vorname","standard",true,"Norbert"));
	pDataDef["de"].push(new Array("name","standard",true,"Annabring"));
	pDataDef["de"].push(new Array("firma","standard",false,"datensee"));
	pDataDef["de"].push(new Array("strasse","standard",true,"am see 32"));
	pDataDef["de"].push(new Array("plz","plz",true,"78465"));
	pDataDef["de"].push(new Array("ort","standard",true,"Konstanz"));
	pDataDef["de"].push(new Array("tel","phone",true,"79097"));
	pDataDef["de"].push(new Array("fax","phone",false,"997509"));
	pDataDef["de"].push(new Array("mobil","phone",false,"01736644329"));
	pDataDef["de"].push(new Array("email","standard",true,"annabring@datensee.de"));
	pDataDef["de"].push(new Array("gebdatum","datum",true,"24.2.1967"));
	
	pDataDef["usa"]=new Array();
	pDataDef["usa"].push(new Array("anrede","anrede",true,""));
	pDataDef["usa"].push(new Array("vorname","standard",true));
	pDataDef["usa"].push(new Array("name","standard",true));
	pDataDef["usa"].push(new Array("firma","standard",false));
	pDataDef["usa"].push(new Array("strasse","standard",true));
	pDataDef["usa"].push(new Array("ort","standard",true));
	pDataDef["usa"].push(new Array("state","state",true));
	pDataDef["usa"].push(new Array("plz","plz",true));
	pDataDef["usa"].push(new Array("tel","phone",true));
	pDataDef["usa"].push(new Array("fax","phone",false));
	pDataDef["usa"].push(new Array("mobil","phone",false));
	pDataDef["usa"].push(new Array("email","standard",true));
	pDataDef["usa"].push(new Array("gebdatum","datum",true));
}

var restText=langText("zv_rest");
var restText0=langText("zv_rest0");


String.prototype.trim = function () {
    return (this.replace(/\s+$/,"").replace(/^\s+/,""));
  };
function bform_submit_ordertype(oType){
	orderType=oType;
	bformdata['dataReady']['ordertype']=true;
	bformdata['steps']['reisedatum']=true;	
	writeBForm();
}

function bform_buchungst_ordertype(){
	var erg="";
	if(bformdata['dataReady']['ordertype']==true)
	{
		var buttonTxt=(orderType=="fake") ? langText("button_type_fake") : langText("button_type_real");
		erg= ''+
		'<div style="width:750px;">'+
			'<table border="0" cellpadding="0" cellspacing="0" style="width:750px;">'+
				'<tr>'+				
					'<td class="copytextGr" align="left">'+
						buttonTxt+
					'</td>'+					
				'</tr>'+
			'</table>'+
		'</div>';
		/*
		'<div style="width:100%;text-align:right;">'+
			'<input type="Button" onclick="changeStep(\'ordertype\');" name="change_pdata" class="wbutton2" value="'+langText("change")+'">'+
		'</div>';
		*/
	}
	else
	{			
		erg+= ''+
			'<div style="width:750px;white-space:nowrap;text-align:center;">'+
				'<input onclick="bform_submit_ordertype(\'fake\');" type="Button" name="change_ordertype1" class="BigButton3" value="'+langText("button_type_fake")+'" style="" />'+
				'<input onclick="bform_submit_ordertype(\'real\');" type="Button" name="change_ordertype2" class="BigButton3" value="'+langText("button_type_real")+'" style="margin-left:20px;" />'+
			'</div>';

		showButton=false;
		//debug(erg);			
	}
	return erg;
}
function findNextBDatum(msStartDate){
	var erg;//sql-Stamp
	var oneDay=3600*24*1000;
	var iStamp=0;	
	var sqlDate=getSqlFromMs(msStartDate);
	var tStamp=getMsecsFromSql(sqlDate);	
	var b;
	var found=false;
	for(b=0;b<reiseData['buchbar'].length;b++)
	{
		if(reiseData['buchbar'][b]==sqlDate)
			return tStamp;
		iStamp=getMsecsFromSql(reiseData['buchbar'][b]);
		if(iStamp > tStamp)
		{
			return iStamp;	
		}
	}
	return tStamp;
}
function bform_submit_reisedatum(){
	/*
	
	*/
	var today,tDate;	
	cDate=true;
	if(typeof bformdata['buchung']['reisedatum']['vorschlag'] != "undefined")
	{
		if(selectedVorschlag!="")
		{
			cDate=false;
			bformdata['buchung']['reisedatum']['selected']=selectedVorschlag;
			realRdatum=selectedVorschlag;
			//alert(selectedVorschlag);
			dSplit=selectedVorschlag.split("-");
			reiseData['tDatum']=new Date(myParseInt(dSplit[0]),myParseInt(dSplit[1])-1,myParseInt(dSplit[2]));
			bformdata['buchung']['reisedatum']['datum']=getDateStr(selectedVorschlag);			
			bformdata['dataReady']['reisedatum']=true;
			bformdata['steps']["land"]=true;
			selectedVorschlag="";
			setSaison();
			writeBForm();
		}
		else
		{
			cDate=true;
		}
	}
	if(cDate)
	{
		today=createDate;
		var minStamp=getMsecsFromSql(getSqlFromMs(today.getTime()))+(3600*24*1000*buchbarAb);//3 Tage ab heute buchbar!
		var tag=myParseInt(document.createForm.rdatum_tag.value);
		var monat=myParseInt(document.createForm.rdatum_monat.value);
		var jahr=myParseInt(reisejahr);
		while(!checkDate(tag,monat,jahr))
		{
			tag--;	
		}		
		tDate=new Date(jahr,monat-1,tag);
		/*
		if(tDate < minStamp)
		{
			//beginn liegt vor erlaubter Zeit
			//reiseData['beginn']=getSqlFromMs(minStamp);
			tDate=new Date(findNextBDatum(minStamp));
			//alert(getSqlFromMs(today));		
		}
		else if(tDate > minStamp)
		{
			tDate=new Date(findNextBDatum(tDate));
		}
		*/
		//alert(tag+"."+monat+"."+jahr);
		var tStamp=tDate.getTime();
		//tStamp=findNextBDatum(tStamp);
		var datum=getSqlFromMs(tStamp);
		document.getElementById("bform_submitdiv_reisedatum").innerHTML=loader;	
		sendRequest( "/pageAjax/checkReisedatum.php", "reisekennung="+reisekennung+"&reisejahr="+reisejahr+"&kunde="+kunde+"&language="+language+"&datum="+datum, 0, 'reisedatum');			
	}	
}

function bform_buchungst_reisedatum(){
	var erg="";
	var numRJ=parseInt(reisejahr);
	if(bformdata['dataReady']['reisedatum']==true)
	{
		erg= ''+
		'<div style="width:546px;">'+
			'<table border="0" cellpadding="0" cellspacing="0" style="width:546px;">'+
				'<tr>'+				
					'<td class="copytextGr" align="left">'+
						bformdata['buchung']['reisedatum']['datum']+
					'</td>'+					
				'</tr>'+
			'</table>'+
		'</div>'+
		'<div style="width:100%;text-align:right;">'+
			'<input onclick="changeStep(\'reisedatum\');" type="Button" name="change_land" class="wbutton2" value="'+langText("change")+'">'+
		'</td>';
	}
	else
	{	
		var useStartDate;
		var today=createDate;
		var beginnStamp=getMsecsFromSql(reiseData['beginn']);
		var minStamp=getMsecsFromSql(getSqlFromMs(today.getTime()))+(3600*24*1000*buchbarAb);//3 Tage ab heute buchbar!		
		if(beginnStamp<minStamp)
		{
			//beginn liegt vor erlaubter Zeit
			//reiseData['beginn']=getSqlFromMs(minStamp);
			today=new Date(findNextBDatum(minStamp));
			//alert(getSqlFromMs(today));		
		}
		else if(beginnStamp > minStamp)
		{
			today=new Date(findNextBDatum(minStamp));
		}
		else
			today=new Date(beginnStamp);
		var vSplit=reiseData['beginn'].split("-");
		var vStr=vSplit[2]+"."+vSplit[1];
		var vMonat=myParseInt(vSplit[1]);
		var bSplit=reiseData['ende'].split("-");
		var bStr=bSplit[2]+"."+bSplit[1]+"."+bSplit[0];
		var bMonat=myParseInt(bSplit[1]);
		//var thisDay=myParseInt(vSplit[2]);				
		if(numRJ != today.getFullYear())
		{
			//alert("hier");
			var tMonat=bMonat;
			var thisDay=myParseInt(vSplit[2]);
		}
		else
		{
			var thisDay=today.getDate();
			var tMonat=today.getMonth()+1;
			if(vMonat < tMonat)
				vMonat=tMonat;
		}
		//alert(thisDay);
		if(typeof bformdata['buchung']['reisedatum']['vorschlag']!="undefined")
		{
			selectedVorschlag="";
			var thisData=bformdata['buchung']['reisedatum']['vorschlag'];
			//showArray(thisData);
			selDatum=getDateStr(bformdata['buchung']['reisedatum']['selected']);
			nbKennung="datum_voll";
			if(bformdata['buchung']['reisedatum']['nb'] != null)
				nbKennung="datum_nichtbuchbar";
			erg+= ''+
				'<div style="width:546px;">'+
					'<div class="copybold">'+
						langText(nbKennung).replace(/#datum/g,selDatum)+langtxt[language]["datum_zusatz"]+
					'</div>'+
						'<table border="0" cellpadding="3" cellspacing="0">';
			if(	typeof thisData['back']=="object")
			{
				for(b=0;b<thisData['back'].length;b++)
				{
					if(thisData['back'][b]['datum']!=null)
					{
						dStr=getDateStr(thisData['back'][b]['datum']);
						erg+= '<tr>'+				
										'<td align="left">'+
											'<input onclick="selectedVorschlag=\''+thisData['back'][b]['datum']+'\';" type="radio" name="rd_vorschlag" value="'+thisData['back'][b]['datum']+'">'+
										'</td>'+
										'<td align="left" class="copytext">'+
											dStr+
										'</td>'+
									'</tr>';
						}
				}
			}
			if(	typeof thisData['forward']=="object")
			{
				for(f=0;f<thisData['forward'].length;f++)
				{
					if(thisData['forward'][f]['datum']!=null)
					{
						dStr=getDateStr(thisData['forward'][f]['datum']);
						erg+= '<tr>'+				
										'<td align="left">'+
											'<input onclick="selectedVorschlag=\''+thisData['forward'][f]['datum']+'\';" type="radio" name="rd_vorschlag" value="'+thisData['forward'][f]['datum']+'">'+
										'</td>'+
										'<td align="left" class="copytext">'+
											dStr+
										'</td>'+
									'</tr>';
					}
				}
			}
			erg+= '</table>'+
						'</div>'+
						'<div style="margin-top:16px;">'+
							'<table border="0" cellpadding="3" cellspacing="0">'+
							'<tr>'+				
								'<td align="left">'+
									'<select class="Fields" name="rdatum_tag">';
			for(var t=1;t<=31;t++)
			{
				dselected=(thisDay==t) ? " selected" : "";
				erg+='<option value="'+t+'"'+dselected+'>'+t+'</option>';
			}			
			erg+= 					'</select>'+
								'</td>'+
								'<td align="left">'+
									'<select class="Fields" name="rdatum_monat">';
			for(var m=vMonat;m<=bMonat;m++)
			{
				erg+='<option value="'+m+'">'+m+'</option>';
			}			
			erg+= 					'</select>'+
								'</td>'+
								'<td align="left" class="copybold">'+reisejahr+'</td>'+							
							'</tr>'+
						'</table>'+
						'</div>';
		}
		else
		{			
			erg+= ''+
					'<div style="width:546px;">'+
						'<div class="copybold">'+
							langText("st_reisedatum_hr")+
						'</div>'+
						'<div class="copytext">'+
							langText("buchbar")+' '+vStr+" - "+bStr+
						'</div>'+
					'</div>'+
					'<div style="width:546px;">'+
						'<table border="0" cellpadding="3" cellspacing="0">'+
							'<tr>'+				
								'<td align="left">'+
									'<select class="Fields" name="rdatum_tag">';
			for(var t=1;t<=31;t++)
			{
				dselected=(thisDay==t) ? " selected" : "";
				erg+='<option value="'+t+'"'+dselected+'>'+t+'</option>';
			}			
			erg+= 					'</select>'+
								'</td>'+
								'<td align="left">'+
									'<select class="Fields" name="rdatum_monat">';
			for(var m=vMonat;m<=bMonat;m++)
			{
				erg+='<option value="'+m+'">'+m+'</option>';
			}			
			erg+= 					'</select>'+
								'</td>'+
								'<td align="left" class="copybold">'+reisejahr+'</td>'+							
							'</tr>'+
						'</table>'+
					'</div>';
		}
		showButton=true;
		//debug(erg);			
	}
	return erg;
}
function bform_submit_land(){
	var val=document.createForm.land.value;
	var val2=document.createForm.land_frei.value;
	var temp;
	if(val!="null")
	{
		if(val=="other")
		{
			if(val2!="")
			{
				temp=new Array();
				temp['id']="nn";
				temp['name']=val2;
				temp['fVw']="";
				temp['fType']="de";		
				bformdata['buchung']['land']=temp;
				//bformdata['buchung']['land']['name']=val2;
				bformdata['dataReady']['land']=true;
				bformdata['steps']['pdata']=true;
				writeBForm();
			}
		}	
		else
		{
			lSplit=val.split("|");
			temp=new Array();
			temp['id']=lSplit[0];
			temp['name']=lSplit[1];
			temp['fVw']=lSplit[2];
			temp['fType']="de";	
			//alert(temp['id']);
			goon=true;		
			for(var x in fTypes)
			{
				for(y=0;y<fTypes[x].length;y++)
				{
					if(	fTypes[x][y]==temp['id'])
					{					
						temp['fType']=x;
						goon=false;					
						break;
					}
				}
				if(!goon)
					break;
			}
			bformdata['buchung']['land']=temp;
			bformdata['dataReady']['land']=true;
			bformdata['steps']['pdata']=true;
			writeBForm();
		}
	}
	else
	{
		alert(langtxt[language]["kein_land"]);
	}
}

function bform_buchungst_land(){
	var erg="";
	if(bformdata['dataReady']['land']==true)
	{
		erg= ''+
		'<div style="width:546px;">'+
			'<table border="0" cellpadding="0" cellspacing="0" style="width:546px;">'+
				'<tr>'+				
					'<td class="copytextGr" align="left">'+
						bformdata['buchung']['land']['name']+
					'</td>'+					
				'</tr>'+
			'</table>'+
		'</div>'+
		'<div style="width:100%;text-align:right;">'+
			'<input onclick="changeStep(\'land\');" type="Button" name="change_land" class="wbutton2" value="'+langText("change")+'">'+
		'</td>';
	}
	else
	{		
		erg+= ''+
				'<div class="copybold" style="width:546px;">'+
					langText("st_land_hr")+
				'</div>'+
				'<div style="width:546px;">'+
					'<span>'+
						'<select name="land" class="formSelect" onchange="landSelected();">'+
							'<option value="null">-----------------</option>';
		for(lkey in laender)
		{
			lval=laender[lkey];
			erg+= '<option class="formSelectO1" value="null">'+lkey+'</option>';
			for(l=0;l<lval.length;l++)
			{
				selected="";
				if(language=="de" && lval[l]['land']=="Deutschland")
					selected=" selected";
				if(language=="nl" && lval[l]['land']=="Niederlande")
					selected=" selected";
				erg+= '<option value="'+lval[l]['id']+'|'+lval[l]['land']+'|'+lval[l]['vw']+'"'+selected+'>&nbsp;&nbsp;&nbsp;'+lval[l]['land']+'</option>';	
			}
		}
		erg+= ''+
							'<option class="formSelectO1" value="other">'+langText("sland_nil")+' -> </option>'+
						'</select>'+
					'</span>'+
					'<span id="otherinput" style="display:none;">'+
						'<input type="text" class="formText" style="width:150px;" name="land_frei">'+
					'</span>'+
				'</div>';
		showButton=true;
		//debug(erg);			
	}
	return erg;
}
function bform_submit_pdata(){
	var tMietr,tGroesse,nGroesse,bez,typ,req,val,tint,tvw,tnummer,xml;
	bformdata['buchung']['pdata']=new Array();
	if(orderType=="real")
	{
		for(p=0;p<pDataDef[bformdata['buchung']['land']['fType']].length;p++)
		{
			bez=pDataDef[bformdata['buchung']['land']['fType']][p][0];
			typ=pDataDef[bformdata['buchung']['land']['fType']][p][1];
			req=pDataDef[bformdata['buchung']['land']['fType']][p][2];
			if(typ=="datum")
			{
				eval('var tag=document.createForm.'+bez+'_tag.value;');	
				eval('var monat=document.createForm.'+bez+'_monat.value;');
				eval('var jahr=document.createForm.'+bez+'_jahr.value;');
				var iTag=(tag=="") ? 0 : myParseInt(tag);
				var iMonat=(monat=="") ? 0 : myParseInt(monat);
				var iJahr=(jahr=="") ? 0 : myParseInt(jahr);
				if((iTag+iMonat+iJahr)==0 || (!tag && !monat && !jahr))
				{
					if(req)
					{
						bformdata['perrors'][bez]=true;
					}
				}
				else if(checkDate(iTag,iMonat,iJahr,true))
				{
					today=reiseData['tDatum'];
					past=new Date(iJahr,iMonat-1,iTag);
					jahre=Math.floor((today-past)/31536000000);
					if(today>past)
					{
						bformdata['buchung']['pdata'][bez]=new Array();
						bformdata['buchung']['pdata'][bez]['tag']=makeString(iTag);
						bformdata['buchung']['pdata'][bez]['monat']=makeString(iMonat);
						bformdata['buchung']['pdata'][bez]['jahr']=makeString(iJahr);
						bformdata['buchung']['pdata'][bez]['alter']=jahre;
						bformdata['perrors']=elimElement(bez,bformdata['perrors']);
					}
					else
					{
						bformdata['buchung']['pdata'][bez]=new Array();
						bformdata['buchung']['pdata'][bez]['tag']=makeString(tag);
						bformdata['buchung']['pdata'][bez]['monat']=makeString(monat);
						bformdata['buchung']['pdata'][bez]['jahr']=makeString(jahr);
						bformdata['perrors']=elimElement(bez,bformdata['perrors']);
					}
				}
				else
				{				
					bformdata['buchung']['pdata'][bez]=new Array();
					bformdata['buchung']['pdata'][bez]['tag']=makeString(tag);
					bformdata['buchung']['pdata'][bez]['monat']=makeString(monat);
					bformdata['buchung']['pdata'][bez]['jahr']=makeString(jahr);
					bformdata['perrors'][bez]=true;
				}
			}
			else if(typ=="phone")
			{
				eval('tint=document.createForm.'+bez+'_int.value;');	
				eval('tvw=document.createForm.'+bez+'_vw.value;');
				eval('tnummer=document.createForm.'+bez+'_nummer.value;');
				bformdata['buchung']['pdata'][bez]=new Array();
				if(tint!="" || tnummer!="")
				{
					bformdata['buchung']['pdata'][bez]['int']=tint;
					bformdata['buchung']['pdata'][bez]['vw']=tvw;
					bformdata['buchung']['pdata'][bez]['nummer']=tnummer;
				}
				if(req)
				{
					if(tint=="" || tvw=="" || tnummer=="")
						bformdata['perrors'][bez]=true;
					else
						bformdata['perrors']=elimElement(bez,bformdata['perrors']);
				}
				else
				{
					if((tvw!="" || tnummer!="") && (tvw=="" || tnummer=="") )
						bformdata['perrors'][bez]=true;
					else
						bformdata['perrors']=elimElement(bez,bformdata['perrors']);	
				}
			}
			else if(bez=="email")
			{
				val=document.createForm.email.value;
				val=val.replace(/</g,"");
				val=val.replace(/>/g,"");
				if(val=="")
				{
					if(req)
					{
						bformdata['perrors'][bez]=true;
					}
				}
				else if(email_validate(val))
				{
					bformdata['buchung']['pdata'][bez]=val;
					bformdata['perrors']=elimElement(bez,bformdata['perrors']);
				}
				else
				{
					bformdata['buchung']['pdata'][bez]=val;
					bformdata['perrors'][bez]=true;
				}
			}
			else if(pDataDef[bformdata['buchung']['land']['fType']][p][1]=="plz")
			{
				eval('val=document.createForm.'+bez+'.value;');
				if(val!="")
				{
					bformdata['buchung']['pdata'][bez]=val;
					bformdata['perrors']=elimElement(bez,bformdata['perrors']);
				}
				else
				{
					bformdata['buchung']['pdata'][bez]=val;
					bformdata['perrors'][bez]=true;
				}
			}
			else
			{
				eval('val=document.createForm.'+bez+'.value;');
				
				if(val=="" || val=="null")
				{
					if(req)
						bformdata['perrors'][bez]=true;	
				}
				else
				{
					val=val.replace(/</g,"");
					val=val.replace(/>/g,"");
					bformdata['buchung']['pdata'][bez]=val;
					bformdata['perrors']=elimElement(bez,bformdata['perrors']);
				}
			}
		}
	}
	if(zl['mietrad']!=null)
	{
		tMietr=document.createForm.mietrad_0.value;
		if(tMietr!="null")
		{
			bformdata['buchung']['pdata']['mietrad']=tMietr;
			tGroesse=document.createForm.groesse_0.value;
			nGroesse=myParseInt(tGroesse);
			if(isNaN(nGroesse) || nGroesse<50)
			{
				bformdata['perrors']['mietrad']=true;
			}
			else
			{
				bformdata['buchung']['pdata']['groesse']=nGroesse;
				bformdata['perrors']=elimElement('mietrad',bformdata['perrors']);
			}
		}
		else
			bformdata['perrors']=elimElement('mietrad',bformdata['perrors']);
	}
	bformdata['buchung']['pdata']['mr']=(document.createForm.pdata_mr[1].checked) ? "true" : "false";
	//if(bformdata['buchung']['pdata']['mr']=="true")
	//{
	//auskommentiert, wird nun in bfsteps_mr erledigt
	/*
		zv=new Array();
		rest=personen;
		zvErg=new Array();
		bformdata['dataReady']["zv"]=false;
		bformdata['buchung']['hp']=new Array();
		bformdata['dataReady']["mr"]=false;
	*/
	//}
	langtxt[language]["st_mr_save"] = langtxt[language]["st_mr"];
	if(bformdata['buchung']['pdata']['mr']=="true")
		langtxt[language]["st_mr"] = langtxt[language]["st_mrb"];
	else
		langtxt[language]["st_mr"] = langtxt[language]["st_mr_save"];

	errors=false;
	for(var x in bformdata['perrors'])
	{
		errors=true;
		break;	
	}
	if(!errors)
	{
		bformdata['buchung']['pdata']['land']=bformdata['buchung']['land']['id'];
		bformdata['dataReady']['pdata']=true;
		bformdata['steps']['mr']=true;
		if(orderType=="real")
		{
			myParser=new xmlparser(bformdata['buchung']['pdata'],"");
			xml=myParser.n_makeXMLFromArray();	
			xml=resetEntities(xml);
			sendRequest( "/pageAjax/sendPData.php", "step=pdata&micro="+createStamp+"&debug=true&reisekennung="+reisekennung+"&reisejahr="+reisejahr+"&kunde="+kunde+"&language="+language+"&xml="+xml, 2, 'sendpdata');			
		}
	}
	//showArray(bformdata['buchung']['pdata']);
	getPreise();
	writeBForm();
}
function de_bform_buchungst_pdata(){
	//alert("ok");
	var erg="";
	var errors=false;
	var tGroesse,styleAdd;
	for(var x in bformdata['perrors'])
	{
		errors=true;
		break;	
	}
	if(bformdata['dataReady']["pdata"]==true)
	{
		erg+= ''+
			'<div style="width:546px;">'+
				'<table border="0" cellpadding="0" cellspacing="0" style="width:546px;">'+
					'<tr>	'+						
						'<td class="copytextGr" align="left">';
		if(orderType=="real")
		{
			for(p=0;p<pDataDef[bformdata['buchung']['land']['fType']].length;p++)
			{
				erg+= createErg(pDataDef[bformdata['buchung']['land']['fType']][p][0],pDataDef[bformdata['buchung']['land']['fType']][p][1],pDataDef[bformdata['buchung']['land']['fType']][p][2]);
			}
		}
		if(zl['mietrad']!=null)
		{
			if(bformdata['buchung']['pdata']['mietrad']!=null)
			{				
				/*
				erg+= ''+
					'<div>'+
						'<table border="0" cellpadding="2" cellspacing="0" style="">'+
							'<tr>'+
								'<td class="copytextGr" style="width:120px;">'+
									langText("mietrad")+
								'</td>'+
								'<td class="copytextGr" style="width:400px;">'+									
									bformdata['mietrad_name'][bformdata['buchung']['pdata']['mietrad']]+
									' ('+realPreis(raeder[bformdata['buchung']['pdata']['mietrad']]['VK'],false)+' &euro; / P.)'+
								'</td>'+
							'</tr>'+
							'<tr>'+
								'<td class="copyboldGr" style="width:120px;">'+
									langText("groesse")+
								'</td>'+
								'<td class="copytextGr" style="width:400px;">'+
									bformdata['buchung']['pdata']['groesse']+' cm'+
								'</td>'+
							'</tr>'+
						'</table>'+
					'</div>';
				*/		
				erg+= ''+
					'<div>'+
						'<table border="0" cellpadding="2" cellspacing="0" style="">'+
							'<tr>'+
								'<td class="copytextGr" style="width:120px;">'+
									langText("mietrad")+
								'</td>'+
								'<td class="copytextGr" style="width:400px;">'+									
									bformdata['mietrad_name'][bformdata['buchung']['pdata']['mietrad']]+
								'</td>'+
							'</tr>';
				if(orderType!="fake")
				{
					erg+= ''+
							'<tr>'+
								'<td class="copyboldGr" style="width:120px;">'+
									langText("groesse")+
								'</td>'+
								'<td class="copytextGr" style="width:400px;">'+
									bformdata['buchung']['pdata']['groesse']+' cm'+
								'</td>'+
							'</tr>';
				}
				erg+= ''+
						'</table>'+
					'</div>';
				
			}
			else
			{
				erg+= ''+
					'<div>'+
						'<table border="0" cellpadding="2" cellspacing="0" style="width:546px;">'+
							'<tr>'+
								'<td class="copytextGr" style="width:120px;">'+
									langText("mietrad")+
								'</td>'+
								'<td class="copytextGr" style="width:400px;">	'+									
									langText("kein_mietrad")+
								'</td>'+
							'</tr>'+
						'</table>'+
					'</div>';
			}
		}
		erg+= ''+
						'</td>'+						
					'</tr>'+
				'</table>'+
			'</div>';
		if(bformdata['buchung']['pdata']['mr']!=null)
		{
			if(bformdata['buchung']['pdata']['mr']=="true")
			{
				erg+= '<div style="margin-top:16px;">'+
								'<table border="0" cellpadding="2" cellspacing="0" style="width:546px;">'+
									'<tr>'+
										'<td style="width:120px;" align="right">'+
											'&nbsp;'+
										'</td>'+
										'<td class="copyboldGr" style="width:400px;">'+
											langText('pdata_mr')+
										'</td>'+
									'</tr>'+
								'</table>'+
							'</div>';
			}
		}		
		erg+='<div style="width:100%;text-align:right;">'+
				'<input type="Button" onclick="changeStep(\'pdata\');" name="change_pdata" class="wbutton2" value="'+langText("change")+'">'+
			'</div>';
		
	}
	else
	{
		erg+= ''+
			'<div class="copytext" style="margin-bottom:10px;">'+
				langText("required_hr")+
			'</div>';
		if(orderType=="real")
		{	
			for(p=0;p<pDataDef[bformdata['buchung']['land']['fType']].length;p++)
			{
				erg+= createField(pDataDef[bformdata['buchung']['land']['fType']][p][0],pDataDef[bformdata['buchung']['land']['fType']][p][1],pDataDef[bformdata['buchung']['land']['fType']][p][2]);
			}
		}	
		if(reiseData['mietrad']!=null)
		{
			styleAdd=(bformdata['perrors']["mietrad"] != null) ? "border:1px solid #CC0000;" : "";
			
			erg+= ''+
					'<div style="margin-top:16px;">'+
						'<table border="0" cellpadding="2" cellspacing="0" style="width:546px;">'+
							'<tr>'+
								'<td style="width:120px;">&nbsp;</td>'+
								'<td class="copytext">'+
									langText("mietrad_hr")+
								'</td>'+
							'</tr>'+
							'<tr>'+
								'<td id="mietrad0" class="copytext" style="width:120px;">'+
									langText("mietrad")+
								'</td>'+
								'<td style="width:400px;">'+
									'<select name="mietrad_0" class="formSelect" onchange="radSelected(0);">'+
										'<option value="null">'+langText("kein_mietrad2")+'</option>'+
										'<option value="null">----------------------------</option>';
			bformdata['mietrad_name']=new Array();
			for(m=0;m<reiseData['mietrad'].length;m++)
			{
				selected="";
				if(typeof bformdata['buchung']['pdata']!="undefined")				
					selected=(bformdata['buchung']['pdata']['mietrad']==reiseData['mietrad'][m]['mainid']) ? " selected" : "";
				//erg+= '<option value="'+reiseData['mietrad'][m]['mainid']+'"'+selected+'>'+reiseData['mietrad'][m]['name']+' ('+realPreis(raeder[reiseData['mietrad'][m]['mainid']]['VK'],false)+' &euro; / P.)</option>';
				erg+= '<option value="'+reiseData['mietrad'][m]['mainid']+'"'+selected+'>'+reiseData['mietrad'][m]['name']+'</option>';
				bformdata['mietrad_name'][reiseData['mietrad'][m]['mainid']]=reiseData['mietrad'][m]['name'];
			}
			tGroesse="";
			if(typeof bformdata['buchung']['pdata']!="undefined")
				tGroesse=(bformdata['buchung']['pdata']['groesse']!=null) ? bformdata['buchung']['pdata']['groesse'] : "";			
			grDisplay="none";
			if(typeof bformdata['buchung']['pdata']!="undefined")
			{
				if(bformdata['buchung']['pdata']['mietrad']!=null)
				{
					grDisplay="block";
				}
			}
			if(orderType=="fake")
				tGroesse="180";
			erg+= ''+
									'</select>'+
								'</td>'+
							'</tr>'+
						'</table>'+
					'</div>'+
					'<div id="grdiv0" style="display:'+grDisplay+';">'+
						'<table border="0" cellpadding="2" cellspacing="0" style="width:546px;">'+
							'<tr>'+
								'<td class="copybold" style="width:120px;">'+
									langText("groesse_hr")+
								'</td>'+
								'<td style="width:100px;">'+
									'<input type="text" name="groesse_0" class="formText" style="width:100px;'+styleAdd+'" value="'+tGroesse+'">'+
								'</td>'+
								'<td style="width:298px;" class="copybold">'+
									'cm'+
								'</td>'+
							'</tr>'+
						'</table>'+
					'</div>';			
		}
		var tChecked1=" checked";
		var tChecked2="";
		if(bformdata['buchung']['pdata']!=null)
		{
			if(typeof bformdata['buchung']['pdata']['mr']!="undefined")
			{
				if(bformdata['buchung']['pdata']['mr']=="true")
				{
					 tChecked1="";
					 tChecked2=" checked";
				}
			}
		}
		erg+= ''+
					'<div style="margin-top:16px;">'+
						'<table border="0" cellpadding="2" cellspacing="0" style="width:546px;">'+
							'<tr>'+
								'<td style="width:120px;" align="right">'+
									'<input type="radio" class="formText" name="pdata_mr" value="FALSE"'+tChecked1+'>'+
								'</td>'+
								'<td class="copytext" style="width:400px;">'+
									langText('pdata_mr1')+
								'</td>'+
							'</tr>'+
								'<tr>'+
								'<td style="width:120px;" align="right">'+
									'<input type="radio" class="formText" name="pdata_mr" value="TRUE"'+tChecked2+'>'+
								'</td>'+
								'<td class="copytext" style="width:400px;">'+
									langText('pdata_mr')+
								'</td>'+
							'</tr>'+
						'</table>'+
					'</div>';
		if(errors)
		{
			erg+= ''+
				'<div class="redbold" style="margin-top:16px;width:460px;margin-left:10px;margin-bottom:5px;text-align:center;padding:5px;border:2px solid #CC0000;">'+
					langText("error_msg")+
				'</div>';
		}
		showButton=true;
	}
	return erg;
}
function bform_submit_mr(){
	var tMietr,tGroesse,nGroesse;
	if(bformdata['dataReady']["mr"]==true)
	{
		//alert("ok");	
	}	
	else
	{
		var val=myParseInt(document.createForm.mr_count.value);
		val=(isNaN(val)) ? 0 : val;
		var tMr=new Array();
		var radioVal;
		for(m=1;m<=bformdata['buchung']['mr_count'];m++)
		{
			if(m<=val)
				tMr[m]=bformdata['buchung']['mr'][m];
		}
		bformdata['buchung']['mr']=tMr;
		bformdata['buchung']['mr_count']=val;
		if(personen != val)
		{
			bformdata['dataReady']["mr"]=false;
			zv=new Array();
			zvErf=new Array();	
		}
		personen=val;
		rest=val;
		var ta=new Array();
		bformdata['mr_errors']=ta;
		if(val==0)
		{
			pluralSelect="s";
			bformdata['dataReady']["mr"]=true;
			if(strohTypes[reisekennung]==null)
			{
				bformdata['steps']['zv']=false;			
				bformdata['dataReady']["zv"]=true;
			}
			bformdata['buchung']['mr']=new Array();	
			if(zl['hp']!=null)
			{
				bformdata['steps']['hp']=true;
			}
			else
			{
				if(bformdata['buchung']['reisedatum']['pakete']!=null)
					bformdata['steps']['pakete']=true;
				else
					bformdata['steps']['zn']=true;
			}
			zVer=new Array();
		}
		else
		{
			tp=bformdata['buchung']['mr_count']+1;//alle Mitreisenden plus der Hauptbucher
			if(bformdata['buchung']['pdata']!=null)
			{
				if(typeof bformdata['buchung']['pdata']['mr']!="undefined")
				{
					if(bformdata['buchung']['pdata']['mr']=="true")
						 tp=bformdata['buchung']['mr_count'];//nur die Reisenden!
				}
			}
			pluralSelect=(tp>1) ? "p" : "s";
			if(bformdata['buchung']['mr']==null)
				bformdata['buchung']['mr']=new Array();
			fehler=false;
			for(m=1;m<=bformdata['buchung']['mr_count'];m++)
			{	
				if(bformdata['buchung']['mr'][m]==null)
				{
					temp=new Array();
					if(externDebug)
					{
						temp['vorname']="VN "+m;
						temp['name']="NN "+m;
						temp['gebdatum']=new Array();
						temp['gebdatum']['tag']=m;
						temp['gebdatum']['monat']=m;
						temp['gebdatum']['jahr']=1966+m;
					}
					else
					{						
						temp['vorname']="";
						temp['name']="";
						temp['gebdatum']=new Array();
						if(orderType=="fake")
						{
							temp['gebdatum']['tag']=1;
							temp['gebdatum']['monat']=1;
							temp['gebdatum']['jahr']=1966;
						}
					}
					fehler=true;
					bformdata['buchung']['mr'][m]=temp;
				}
				else
				{
					tErrors=new Array();
					if(orderType=="real")
					{
						eval('vorname=document.createForm.mr_vorname'+m+'.value;');
						eval('name=document.createForm.mr_name'+m+'.value;');
					}
					eval('tag=myParseInt(document.createForm.mr_tag'+m+'.value);');
					eval('monat=myParseInt(document.createForm.mr_monat'+m+'.value);');
					eval('jahr=myParseInt(document.createForm.mr_jahr'+m+'.value);');
					if(orderType=="real")
					{
						vorname=vorname.replace(/</g,"");
						vorname=vorname.replace(/>/g,"");
						name=name.replace(/</g,"");
						name=name.replace(/>/g,"");					
						bformdata['buchung']['mr'][m]['vorname']=vorname;
						if(vorname=="")					
							tErrors['vorname']=true;
						bformdata['buchung']['mr'][m]['name']=name;
						if(name=="")
							tErrors['name']=true;
					}
					else
					{
						//mr radios abfangen:
						radioVal=(document.getElementById("mrRadioK_"+m).checked == true) ? "kind" : "erwachsener";
						if(radioVal=="erwachsener")
						{
							//fakes für Erwachsene
							tag=1;
							monat=1;
							jahr=1966;
						}
					}
					//Geburtstag:
					bformdata['buchung']['mr'][m]['gebdatum']=new Array();
					bformdata['buchung']['mr'][m]['gebdatum']['tag']=tag;
					bformdata['buchung']['mr'][m]['gebdatum']['monat']=monat;
					bformdata['buchung']['mr'][m]['gebdatum']['jahr']=jahr;					
					if(checkDate(tag,monat,jahr,true))
					{						
						today=reiseData['tDatum'];
						past=new Date(jahr,monat-1,tag);						
						if(today>past)
						{							
							bformdata['buchung']['mr'][m]['gebdatum']['alter']=Math.floor((today-past)/31536000000);
						}
						else
							tErrors['gebdatum']=true;
						//unset(bformdata['mr_errors'][m]['gebdatum']);
					}
					else
					{
						tErrors['gebdatum']=true;							
					}
					
					if(zl['mietrad']!=null)
					{
						eval('tMietr=document.createForm.mr_mietrad'+m+'.value');
						if(tMietr == "null")
						{
							bformdata['buchung']['mr'][m]=elimElement('mietrad',bformdata['buchung']['mr'][m]);
							bformdata['buchung']['mr'][m]=elimElement('groesse',bformdata['buchung']['mr'][m]);
							tErrors=elimElement('groesse',tErrors);
						}
						else
						{
							bformdata['buchung']['mr'][m]['mietrad']=tMietr;
							eval('tGroesse=document.createForm.mr_groesse'+m+'.value');
							nGroesse=myParseInt(tGroesse);
							if(isNaN(nGroesse) || nGroesse<50)
							{
								tErrors['groesse']=true;
							}
							else
							{
								bformdata['buchung']['mr'][m]['groesse']=nGroesse;
							}							
						}
					}
					for(var me in tErrors)
					{
						bformdata['mr_errors'][m]=tErrors;
						fehler=true;
						break;
					}
					//showArray(bformdata['buchung']['mr']);
				}
			}
			if(!fehler)
			{
				bformdata['dataReady']["mr"]=true;
				if(strohTypes[reisekennung]==null)
					bformdata['steps']['zv']=true;
				else
					bformdata['steps']['zn']=true;
				if(bformdata['buchung']['pdata']['mr']=="true" && val==1)
				{
					zVer=new Array();
					bformdata['dataReady']["mr"]=true;
					if(strohTypes[reisekennung]==null)
					{
						bformdata['steps']['zv']=false;			
						bformdata['dataReady']["zv"]=true;
					}
					else
					{
						bformdata['steps']['zn']=true;
					}
					if(zl['hp']!=null)
					{
						bformdata['steps']['hp']=true;
					}
					else
					{
						if(bformdata['buchung']['reisedatum']['pakete']!=null)
							bformdata['steps']['pakete']=true;
						else
							bformdata['steps']['zn']=true;
					}
				}
			}
			else if(strohTypes[reisekennung]==null)
				bformdata['steps']['zv']=false;
			else
				bformdata['steps']['zn']=true;	
		}
	}
	getPreise();
	writeBForm();
	if(externDebug)
		showArray2(getMrAlter());
}
function bform_buchungst_mr(){
	var erg="";
	var tGroesse,styleAdd,mrDisplay,mrGebStr,radioCheckedE,radioCheckedK,mrGebDisplay;
	var mrAdd=(bformdata['buchung']['pdata']['mr']=="true") ? "b" : "";
	if(bformdata['dataReady']["mr"]==true)
	{
		if(bformdata['buchung']['mr_count']==0)
		{
			erg+= ''+
				'<div>'+
					'<table border="0" cellpadding="0" cellspacing="0" style="width:546px;">'+
						'<tr>				'+			
							'<td class="copytextGr" align="left">'+
								langText("mr_keine")+
							'</td>'+
						'</tr>'+
					'</table>'+
				'</div>'+
				'<div style="width:100%;text-align:right;">'+
					'<input type="Button" onclick="changeStep(\'mr\');" name="change_pdata" class="wbutton2" value="'+langText("change")+'">'+
				'</div>';
		}
		else
		{
			erg+= ''+
			'<div>'+
				'<table border="0" cellpadding="4" cellspacing="0">';
			for(m=1;m<=bformdata['buchung']['mr_count'];m++)
			{
				thisMr=bformdata['buchung']['mr'][m];
				thisMr['gebdatum']['tag']=(typeof thisMr['gebdatum']['tag']=="undefined") ? "" : thisMr['gebdatum']['tag'];
				thisMr['gebdatum']['monat']=(typeof thisMr['gebdatum']['monat']=="undefined") ? "" : thisMr['gebdatum']['monat'];
				thisMr['gebdatum']['jahr']=(typeof thisMr['gebdatum']['jahr']=="undefined") ? "" : thisMr['gebdatum']['jahr'];
				thisMr['gebdatum']['tag']=(isNaN(thisMr['gebdatum']['tag'])) ? "" : thisMr['gebdatum']['tag'];
				thisMr['gebdatum']['monat']=(isNaN(thisMr['gebdatum']['monat'])) ? "" : thisMr['gebdatum']['monat'];
				thisMr['gebdatum']['jahr']=(isNaN(thisMr['gebdatum']['jahr'])) ? "" : thisMr['gebdatum']['jahr'];
				mrGebStr=(""+thisMr['gebdatum']['jahr'])+(""+thisMr['gebdatum']['monat'])+(""+thisMr['gebdatum']['tag']);
				mrDisplay=langText("mr_titel");
				if(orderType=="real")
					mrDisplay=thisMr['vorname']+' '+thisMr['name'];
				erg+= ''+
					'<tr>'+
						'<td class="copyboldGr" valign="top" style="width:120px;">'+
							m+'. '+langText("mr_titel"+mrAdd)+
						'</td>'+
						'<td valign="top">'+
							'<span class="copytextGr">'+
							mrDisplay;
				if(orderType=="real" || thisMr['gebdatum']['jahr']!=1966)
				{
					erg+= '<br>'+
							pDataTxt[language]['gebdatum_pur']+': '+thisMr['gebdatum']['tag']+'.'+thisMr['gebdatum']['monat']+'.'+thisMr['gebdatum']['jahr'];
				}
				if(reiseData['mietrad']!=null)
				{
					if(thisMr['mietrad']!=null)
					{
						erg+= ''+
							'<br>'+
							langText("mietrad")+': '+bformdata['mietrad_name'][thisMr['mietrad']]+' (á '+realPreis(zl['mietrad']['vk'],false)+' )';
						if(orderType=="real")
						{
							erg+= '<br>'+
							langText("groesse")+': '+thisMr['groesse']+' cm';
						}
					}
					else
					{
						erg+= ''+
							'<br>'+
							langText("mietrad")+': '+langText("kein_mietrad");	
					}
				}
				erg+= '</span>';
				if(thisMr['gebdatum']['alter']!=null && thisMr['gebdatum']['alter']<zahlenAb)
				{
					//keine Buchung unter ... ENTFERNT!!
					/*
					erg+= ''+
						'<br>'+
						'<span class="copyitalicGr">'+
						langText("hinweis_alter").replace(/#zahlenAb/,zahlenAb)+
						'</span>';
					*/
				}
				erg+= ''+
						'</td>'+
					'</tr>';
			}
			
			erg+= ''+
				'</table>'+
			'</div>'+
			'<div style="width:100%;text-align:right;">'+
				'<input type="Button" onclick="changeStep(\'mr\');" name="change_mr" class="wbutton2" value="'+langText("change")+'">'+
			'</div>';
			if(orderType=="real")
			{
				myParser=new xmlparser(bformdata['buchung']['mr'],"");
				xml=myParser.n_makeXMLFromArray();	
				xml=resetEntities(xml);
				sendRequest( "/pageAjax/sendPData.php", "step=mitreisende&micro="+createStamp+"&debug=true&xml="+xml, 2, 'sendpdata');	
			}
		}
		if(strohTypes[reisekennung]!=null)
		{
			bformdata['steps']["zv"]=true;
			bformdata['dataReady']["zv"]=true;
		}
	}
	else
	{							
		mrCount=0;
		if(bformdata['buchung']['mr_count']!=null)
			mrCount=bformdata['buchung']['mr_count'];
		selected0=(mrCount==0) ? " selected" : "";		
		erg+= ''+
				'<div>'+
					'<table border="0" cellpadding="0" cellspacing="0" style="">'+
						'<tr>'+
							'<td class="copybold">'+
								langText("mr_1"+mrAdd)+'&nbsp;'+
							'</td>'+
							'<td>'+
								'<select onchange="mr_changed();" name="mr_count" class="formSelect">';
		if(bformdata['buchung']['pdata']['mr']=="false")
		{
			erg+= 		'<option value="0"'+selected0+'>'+langText("keine")+'</option>';
		}
		for(i=1;i<=30;i++)
		{
			selected=(i==mrCount) ? " selected" : "";
			erg+= '<option value="'+i+'"'+selected+'>'+i+'</option>';	
		}
		erg+= ''+
								'</select>'+
							'</td>'+
							'<td class="copybold">'+
								'&nbsp;'+langText("mr_2"+mrAdd)+
							'</td>'+
						'</tr>'+
					'</table>'+
				'</div>';
		error=false;
		if(bformdata['mr_errors']!=null && bformdata['mr_errors'].length>0)
		{
			for(e=1;e<=bformdata['mr_errors'].length;e++)
			{
				if(bformdata['mr_errors'][e]!=null)
				{
					error=true;
					break;	
				}
			}
		}
		if(bformdata['mr_errors'].length>0)
		{					
			erg+= ''+
				'<div class="redbold" style="margin-bottom:10px;">'+
					langText("error_msg")+
				'</div>';
		}
		if(bformdata['buchung']['mr']!=null && bformdata['buchung']['mr'].length>0)
		{
			for(m=1;m<=bformdata['buchung']['mr_count'];m++)
			{
				thisMr=bformdata['buchung']['mr'][m];
				//Fehler markieren
				mark=new Array();
				check=new Array("vorname","name","gebdatum","groesse");
				for(c=0;c<check.length;c++)
				{
					mark[check[c]]="";
					if(bformdata['mr_errors'][m]!=null)
					{
						if(bformdata['mr_errors'][m][check[c]])
							mark[check[c]]="border:1px solid #CC0000;";
					}
				}
				thisMr['gebdatum']['tag']=(typeof thisMr['gebdatum']['tag']=="undefined") ? "" : thisMr['gebdatum']['tag'];
				thisMr['gebdatum']['monat']=(typeof thisMr['gebdatum']['monat']=="undefined") ? "" : thisMr['gebdatum']['monat'];
				thisMr['gebdatum']['jahr']=(typeof thisMr['gebdatum']['jahr']=="undefined") ? "" : thisMr['gebdatum']['jahr'];
				thisMr['gebdatum']['tag']=(isNaN(thisMr['gebdatum']['tag'])) ? "" : thisMr['gebdatum']['tag'];
				thisMr['gebdatum']['monat']=(isNaN(thisMr['gebdatum']['monat'])) ? "" : thisMr['gebdatum']['monat'];
				thisMr['gebdatum']['jahr']=(isNaN(thisMr['gebdatum']['jahr'])) ? "" : thisMr['gebdatum']['jahr'];
				mrGebStr=(""+thisMr['gebdatum']['jahr'])+(""+thisMr['gebdatum']['monat'])+(""+thisMr['gebdatum']['tag']);
				tag=(thisMr['gebdatum']['tag']!=0) ? makeString(thisMr['gebdatum']['tag']) : "";
				monat=(thisMr['gebdatum']['monat']!=0) ? makeString(thisMr['gebdatum']['monat']) : "";
				jahr=(thisMr['gebdatum']['jahr']!=0) ? thisMr['gebdatum']['jahr'] : "";
				erg+= ''+
					'<div style="margin-top:12px;">'+
						'<div class="copybold">'+
							m+'. '+langText("mr_titel"+mrAdd)+
						'</div>'+
						'<div>'+
						'<table border="0" cellpadding="2" cellspacing="0" style="width:546px;">';
				if(orderType=="real")
				{
					erg+=	'<tr>'+
								'<td class="copytext" style="width:120px;">'+
									pDataTxt[language]['vorname']+
								'</td>'+
								'<td style="width:400px;'+mark['vorname']+'">'+
									'<input type="text" name="mr_vorname'+m+'" class="formText" style="width:250px;'+styleAdd+'" value="'+thisMr['vorname']+'">'+
								'</td>'+
							'</tr>'+
							'<tr>'+
								'<td class="copytext" style="width:120px;">'+
									pDataTxt[language]['name']+
								'</td>'+
								'<td style="width:400px;'+mark['name']+'">'+
									'<input type="text" name="mr_name'+m+'" class="formText" style="width:250px;'+styleAdd+'" value="'+thisMr['name']+'">'+
								'</td>'+
							'</tr>'+
							'<tr>'+
								'<td class="copytext" style="width:120px;">'+
									pDataTxt[language]['gebdatum_pur']+
								'</td>'+
								'<td style="width:400px;'+mark['gebdatum']+'">'+
									'<table border="0" cellpadding="0" cellspacing="0">'+
										'<tr>'+
											'<td><input type="text" class="formText" maxlength="2" style="width:20px;'+styleAdd+'" name="mr_tag'+m+'" value="'+tag+'"></td>'+
											'<td class="copytext">&nbsp;:&nbsp;</td>'+
											'<td><input type="text" class="formText" maxlength="2" style="width:20px;'+styleAdd+'" name="mr_monat'+m+'" value="'+monat+'"></td>'+
											'<td class="copytext">&nbsp;:&nbsp;</td>'+
											'<td><input type="text" class="formText" maxlength="4" style="width:40px;'+styleAdd+'" name="mr_jahr'+m+'" value="'+jahr+'"></td>'+
											'<td class="copytext">&nbsp;(TT : MM : JJJJ)</td>'+
										'</tr>'+
									'</table>'+										
								'</td>'+
							'</tr>';
				}
				else
				{
					mrGebDisplay="none";
					if(mrGebStr=="" || mrGebStr=="196611")
					{
						radioCheckedE="checked";
						radioCheckedK="";
					}
					else
					{
						radioCheckedE="";
						radioCheckedK="checked";
						mrGebDisplay="block";
					}
					if(mark['gebdatum']!="")
					{
						radioCheckedE="";
						radioCheckedK="checked";
						mrGebDisplay="block";
					}
					erg+=	'<tr>'+
								'<td colspan="2" style="width:520px;">'+
									'<table border="0" cellpadding="0" cellspacing="0">'+
										'<tr>'+
											'<td>'+
												'<input id="mrRadioE_'+m+'" onclick="mrClickedFake(\'erwachsener\','+m+');" type="radio" name="mrRadio_'+m+'" value="erwachsener"'+radioCheckedE+' />'+
											'</td>'+
											'<td class="copybold">'+
												'&nbsp;'+langText("erwachsener")+
											'</td>'+
										'</tr>'+
										'<tr>'+
											'<td>'+
												'<input id="mrRadioK_'+m+'" onclick="mrClickedFake(\'kind\','+m+');" type="radio" name="mrRadio_'+m+'" value="kind"'+radioCheckedK+' />'+
											'</td>'+
											'<td class="copybold">'+
												'&nbsp;'+langText("kind")+
											'</td>'+
										'</tr>'+
									'</table>'+
									'<div id="fakeGeb_'+m+'" style="display:'+mrGebDisplay+';">'+
										'<table border="0" cellpadding="0" cellspacing="0" style="width:520px;">'+
											'<tr>'+
												'<td class="copytext" style="width:120px;">'+
													pDataTxt[language]['gebdatum_pur']+
												'</td>'+
												'<td style="width:400px;'+mark['gebdatum']+'">'+
													'<table border="0" cellpadding="0" cellspacing="0">'+
														'<tr>'+
															'<td><input type="text" class="formText" maxlength="2" style="width:20px;'+styleAdd+'" name="mr_tag'+m+'" value="'+tag+'"></td>'+
															'<td class="copytext">&nbsp;:&nbsp;</td>'+
															'<td><input type="text" class="formText" maxlength="2" style="width:20px;'+styleAdd+'" name="mr_monat'+m+'" value="'+monat+'"></td>'+
															'<td class="copytext">&nbsp;:&nbsp;</td>'+
															'<td><input type="text" class="formText" maxlength="4" style="width:40px;'+styleAdd+'" name="mr_jahr'+m+'" value="'+jahr+'"></td>'+
															'<td class="copytext">&nbsp;(TT : MM : JJJJ)</td>'+
														'</tr>'+
													'</table>'+										
												'</td>'+
											'</tr>'+
										'</table>'+
									'</div>'+
								'</td>'+
							'</tr>';					
				}				
				if(reiseData['mietrad']!=null)
				{
					styleAdd=(bformdata['mr_errors']["groesse"] != null) ? "border:1px solid #CC0000;" : "";
					erg+= ''+
							'<tr>'+
								'<td class="copytext" style="width:120px;">'+
									langText("mietrad")+
								'</td>'+
								'<td style="width:400px;">'+
									'<select name="mr_mietrad'+m+'" class="formSelect">'+
										'<option value="null">'+langText("kein_mietrad2")+'</option>'+
										'<option value="null">----------------------------</option>';
							for(mi=0;mi<reiseData['mietrad'].length;mi++)
							{
								selected=(thisMr['mietrad']==reiseData['mietrad'][mi]['mainid']) ? " selected" : "";
								erg+= '<option value="'+reiseData['mietrad'][mi]['mainid']+'"'+selected+'>'+reiseData['mietrad'][mi]['name']+'</option>';
								bformdata['mietrad_name'][reiseData['mietrad'][mi]['mainid']]=reiseData['mietrad'][mi]['name'];
							}
							tGroesse=(typeof thisMr['groesse']!="undefined") ? thisMr['groesse'] : "";			

							erg+= ''+
									'</select>'+
								'</td>'+
							'</tr>';
					if(orderType=="real")
					{
						erg+= ''+
							'<tr>'+
								'<td class="copytext" style="width:120px;">'+
									langText("groesse")+
								'</td>'+
								'<td style="width:400px;'+mark['groesse']+'">'+
									'<input type="text" name="mr_groesse'+m+'" class="formText" style="width:50px;'+styleAdd+'" value="'+tGroesse+'">'+
									'<span class="copytext">&nbsp;cm</span>'+
								'</td>'+
							'</tr>';
					}
					else
					{
						erg+= '<tr><td colspan="2"><input type="hidden" name="mr_groesse'+m+'" class="formText" value="170"></td></tr>';
					}
				}
				erg+= ''+
					'</table>'+
				'</div>';
			}
		}
		showButton=true;
		//print_r(bformdata['mr_errors']);die();
	}
	return erg;
}
function mr_changed(){
	zv=new Array();
	rest=personen;
	zvErg=new Array();
	bformdata['dataReady']["zv"]=false;
	bformdata['buchung']['hp']=new Array();
	bformdata['dataReady']["mr"]=false;
}
function mrClickedFake(what,m){
	var tDisplay;
	if(what=="erwachsener")
	{
		tDisplay="none";
	}
	else
	{
		tDisplay="block";
		if(typeof bformdata['buchung']['mr'][m]['gebdatum']['jahr'] != "undefined")
		{
			if(bformdata['buchung']['mr'][m]['gebdatum']['jahr']==1966)
			{
				eval('document.createForm.mr_tag'+m+'.value="";');
				eval('document.createForm.mr_monat'+m+'.value="";');
				eval('document.createForm.mr_jahr'+m+'.value="";');
			}
		}
	}
	document.getElementById("fakeGeb_"+m).style.display=tDisplay;
}
function bform_submit_zv(){
	if(bformdata['buchung']['mr']!=null && bformdata['buchung']['mr'].length>0)
	{		
		if(rest==0)
		{			
			bformdata['dataReady']['zv']=true;
			if(bformdata['steps']["hp"]!=null)
				bformdata['steps']["hp"]=true;
			else if(bformdata['buchung']['reisedatum']['pakete']!=null)
				bformdata['steps']["pakete"]=true;	
			else
				bformdata['steps']["zn"]=true;
			zverteilung();			
			var tZV=new Array();
			vollzahler=0;
			for(var z=0;z<zVer.length;z++)
			{
				tZV.push(zVer[z]['betten']);
				if(zVer[z]['betten']<3)
					vollzahler+=parseInt(zVer[z]['betten']);
				else
					vollzahler+=2;
			}
			//debug2("Vollzahler: "+vollzahler);
			if(orderType=="real")
			{
				myParser=new xmlparser(tZV,"");
				xml=myParser.n_makeXMLFromArray();	
				xml=resetEntities(xml);			
				sendRequest( "/pageAjax/sendPData.php", "step=zimmerverteilung&micro="+createStamp+"&debug=true&xml="+xml, 2, 'sendpdata');	
			}
			writeBForm();
		}
		else
		{
			alert(langtxt[language]["zv_alert"]);
		}
	}
	else
	{
		
	}
}
function bform_buchungst_zv(){
	var erg="";
	var tPersonen;
	//alert(personen);
	if(bformdata['dataReady']["zv"]==true)
	{
		erg+=	'<div>';
		if(strohTypes[reisekennung]!=null)
		{
			erg+=	'<div class="copyboldGr">'+langText('zv_stroh')+'</div>';
		}
		else
		{
			for(var x in zvErg)
			{
				erg+=	'<div class="copyboldGr">'+zvErg[x]+' x '+getZimmername(myParseInt(x))+'</div>';
			}
			if(bformdata['buchung']['mr']!=null && bformdata['buchung']['mr'].length>0)
			{
				erg+= 	'<div style="width:100%;text-align:right;">'+
									'<input type="Button" onclick="changeStep(\'zv\');" name="change_mr" class="wbutton2" value="'+langText("change")+'">'+
								'</div>';
			}
		}
		erg+='</div>';
		
	}
	else
	{
		if(bformdata['buchung']['mr']!=null && bformdata['buchung']['mr'].length>0)
		{			
			if(bformdata['dataReady']["zv"])
			{
				
				erg+= 	'<div>';
				for(var zx in zvErg)
				{
					erg+=	'<div class="copyboldGr">'+
								zvErg[zx]+'&nbsp;'+getZimmername(zx)+
							'</div>';
				}
				erg+= 	'</div>';
			}
			else
			{											
				mrAlter=getMrAlter();
				//Gesamtanzahl ermitteln:
				
				tPersonen=0;
				for(m=0;m<mrAlter.length;m++)
				{
					if(mrAlter[m]>=zahlenAb)
						tPersonen++;
				}				
				personen=mrAlter.length;
				var pstart=(personen<=maxZimmer) ? personen : maxZimmer;			
				for(var z=pstart;z>0;z--)
				{
					zvx=getZBelegung(z,personen);
					for(var p=1;p<=personen;p++)
					{
						if(zvx[p])
						{
							zv[z+'_'+p]=false;
							zvAvail[z+'_'+p]=true;
						}
					}
				}
				erg+= '<div class="copytext">'+
								tPersonen+' '+langText("zv_head").replace(/#alter/,zahlenAb)+
							'</div>'+
							'<div style="margin-left:30px;">'+
								'<table border="0" cellpadding="2" cellspacing="0" style="width:535px;">'+
									'<tr>'+
										'<td class="copybold">'+
											'<!--'+langText("zv_zimmertyp")+'-->&nbsp;'+
										'</td>'+
										'<td class="copybold">'+
											langText("zv_zanzahl")+
										'</td>'+
										'<td class="copybold">'+
											'<span class="redbold" id="zvRest">'+
												langText("zv_rest").replace(/#anzahl/g,personen)+
											'</span>'+
										'</td>'+
									'</tr>'+
								'</table>'+
							'</div>'+
							'<div style="margin-top:10px;">'+					
								'<table border="0" cellpadding="0" cellspacing="0" style="width:535px;">'+
									'<tr>'+
										'<td>'+
											'<table border="0" cellpadding="4" cellspacing="0" style="">';
				for(var z=pstart;z>0;z--)
				{
					var zvx=getZBelegung(z,personen);
					erg+= 		'<tr>'+
											'<td class="copytext">'+
												getZimmername(z)+
											'</td>'+
											'<td class="copybold">'+
												'<table border="0" cellpadding="0" cellspacing="0" style="">'+
													'<tr>';
					xcount=1;
					for(var p=1;p<=personen;p++)
					{
						if(zvx[p])
						{
							erg+= ''+
														'<td align="center" style="width:25px;">'+
															'<div id="b_'+z+'_'+p+'" style="width:25px;text-align:center;">'+
																'<input id="r_'+z+'_'+p+'" type="radio" name="zradio_'+z+'" value="'+p+'" onclick="zvChecked('+z+','+p+');">'+
																'<br />'+
																'<span class="copytext">'+
																	xcount+
																'</span>'+
															'</div>'+
														'</td>';
							xcount++;
						}
						else
						{
							//erg+= '<td style="width:25px;">&nbsp;</td>';
							if(z==1)
								xcount++;
						}
					}
					erg+= 					'</tr>'+
												'</table>'+
											'</td>'+
										'</tr>';
				}
				erg+= 		'</table>'+
								'</td>'+
								'<td>&nbsp;</td>'+
								'<td>'+
									'<div id="zvButton" style="display:block;">'+
										'<input onclick="resetZv();" type="Button" class="wbutton" value="<-- '+langText("zv_button")+'">'+
									'</div>'+
								'</td>'+
							'</tr>'+
						'</table>'+
						'</div>'+
						'<div id="zvButton" style="position:absolute;left:300px;top:100px;display:none;">'+
							'<input onclick="resetZv();" type="Button" class="wbutton" value="<-- '+langText("zv_button")+'">'+
						'</div>';
				showButton=true;
			}
			resetZv();
		}
		else
		{
			zvErg=new Array();
			erg+= ''+
				'<div class="copytextGr">'+
					langText("mr_keine_zv")+
				'</div>';
		}
	}	
	return erg;
}
function bform_submit_zn(es,soft){
	//alert(es);
	soft=(typeof soft=="undefined") ? false : true;
	es=(typeof es=="undefined") ? -1 : es;
	bformdata['buchung']['reiseverlauf']=new Array();
	sendVerlauf=new Array();	
	var sendVerlaufLocal=new Array();
	var thisMsecs=getMsecsFromSql(bformdata['buchung']['reisedatum']['selected']);
	var hasZN=false;
	var vzn,diff,sendReisedatum;
	if(sendReisedatum=="")
		sendReisedatum=bformdata['buchung']['reisedatum']['selected'];
	tznOverall=false;
	for(s=0;s<reiseData['stationen'].length;s++)
	{
		eval('val=parseInt(document.createForm.selZN'+s+'.value);');
		if(soft && es > -1)
		{
			if(s > es)
				val=0;
		}
		temp=reiseData['stationen'][s];
		//if(temp['original']=="true")
		//	temp['orgIndex']=s;
		//ZN bei erster Station: Reisedatum verschieben!
		if(s==0 && (reiseData['stationen'][0]['nosleep']=="true" || zn_vor_beginn))
		{
			//nur in diesem Fall können ZN VOR den eigentlichen Reisebeginn gesetzt werden
			//ermitteln es originalen Reisebeginns;
			vzn=reiseData['stationen'][0]['zn'];
			diff=vzn-val;//so wird verschoben
			bformdata['buchung']['reisedatum']['selected']=moveDate(bformdata['buchung']['reisedatum']['selected'],diff);//sqlDate!! neuer Reisestart
			thisMsecs=getMsecsFromSql(bformdata['buchung']['reisedatum']['selected']);
			sendReisedatum=moveDate(sendReisedatum,val);
			//realRdatum=sendReisedatum;
		}
		temp["msecs"]=thisMsecs;
		reiseData['stationen'][s]['zn']=val;
		if(reiseData['stationen'][s]['original']=="true")
			bformdata['buchung']['reiseverlauf'].push(temp);
		if(reiseData['stationen'][s]['nosleep']!="true")
		{
			sendVerlaufLocal.push(s);
			sendVerlauf.push(s);
		}
		for(var zn=0;zn<val;zn++)
		{
			hasZN=true;
			tznOverall=true;
			thisMsecs+=oneDay;
			temp=reiseData['stationen'][s];
			//if(temp['original']=="true")
				//temp['orgIndex']=s;
			temp["msecs"]=thisMsecs;
			bformdata['buchung']['reiseverlauf'].push(temp);			
			sendVerlauf.push(s);
			if(s==0 && reiseData['stationen'][0]['nosleep']=="true")
			{}
			else
				sendVerlaufLocal.push(s);
		}
		thisMsecs+=oneDay;
	}
	if(orderType=="real")
	{
		myParser=new xmlparser(reiseData['stationen'],"");
		xml=myParser.n_makeXMLFromArray();	
		xml=resetEntities(xml);
		sendRequest( "/pageAjax/sendPData.php", "step=verlauf&micro="+createStamp+"&debug=true&xml="+xml, 2, 'sendpdata');	
	}
	document.getElementById("bform_submitdiv_zn").innerHTML=loader;	
	//rearrangeStationen();
	if(soft)
		writeBForm();
	else
	{
		bformdata['buchung']['notransfer']=false;
		bformdata['buchung']['transfer']=-1;
		if(hasZN)
		{			
			sendRequest( "/pageAjax/checkReisedatum.php", "reisekennung="+reisekennung+"&reisejahr="+reisejahr+"&kunde="+kunde+"&language="+language+"&datum="+realRdatum+"&verlauf="+sendVerlaufLocal.join(","), 0, 'reiseverlauf');			
		}
		else
		{
				bformdata['dataReady']['zn']=true;
				nextStep('zn');
				/*
				if(zl['transfer']!=null)
				{
					if(zl['transfer']['zusatz'].length > 0 || zl['transfer']['enthalten']['stornierbar']!=null)
						bformdata['steps']['transfer']=true;
					else if(zl['buchbar']!=null)
					{
						bformdata['steps']['buchbar']=true;
					}
					else
						bformdata['steps']['freitext']=true;
				}
				else if(zl['buchbar']!=null)
				{
					bformdata['steps']['buchbar']=true;
				}
				else
					bformdata['steps']['freitext']=true;
				*/
				writeBForm();
		}
	}	
}

function bform_buchungst_zn(){
	var erg="";
	var tCheckZN,o,s,thisDatum,thisDay,zn_nosleep_add,zn_nosleep_key,znPrecheck,l,znhpOK,znhpChecked;
	var hpCount,hp,hasHP;	
	hasHP=false;	
	if(bformdata["buchung"]["hp"]!=null)
	{
		hpCount=0;
		for(hp=0;hp<bformdata["buchung"]["hp"].length;hp++)
		{
			if(	bformdata["buchung"]["hp"][hp])
			{
				hpCount++;
			}
		}
		if(hpCount>0)
			hasHP=true;
	}
	zn_nosleep_add="";
	if(bformdata['dataReady']['zn']==true)
	{
		erg+= 	'<div style="width:546px;">'+
						'<table border="0" cellpadding="2" cellspacing="0">';
		//alert(bformdata['buchung']['reisedatum']['selected']);
		var thisMsecs=getMsecsFromSql(bformdata['buchung']['reisedatum']['selected']);
		var rIndex=0;
		var lastElement=new Array();
		for(s=0;s<reiseData['stationen'].length;s++)
		{
			thisDatum=getStrFromMs(thisMsecs);
			if(s==0)
				firstDatum=thisMsecs;
			if((s+1)==reiseData['stationen'].length)
				lastDatum=thisMsecs;
			thisDay=getDayFromMsecs(thisMsecs);			
			if(reiseData['stationen'][s]['nosleep']=="true" && reiseData['stationen'][s]['original']=="true")
			{
				zn_nosleep_key=(s==0) ? "zn_nosleep_start" : "zn_nosleep2";
				if(reiseData['stationen'][s]['zn']==0)
				{
					erg+= 	'<tr>'+
										'<td class="copytextGr">'+thisDay+', </td>'+
										'<td class="copytextGr">'+thisDatum+'</td>'+
										'<td class="copyboldGr">'+langText("region")+'&nbsp;'+reiseData['stationen'][s]['ort']+'</td>'+
									'</tr>'+
									'<tr>'+
										'<td colspan="2">&nbsp;</td>'+
										'<td class="copytextGr">'+langText(zn_nosleep_key)+'</td>'+
									'</tr>';
				}
			}	
			else if(reiseData['stationen'][s]['original']=="true")
			{
				erg+= 	'<tr>'+
							'<td class="copytextGr">'+thisDay+', </td>'+
							'<td class="copytextGr">'+thisDatum+'</td>'+
							'<td class="copyboldGr">'+langText("region")+'&nbsp;'+reiseData['stationen'][s]['ort']+'</td>'+
						'</tr>';
			}
			if(reiseData['stationen'][s]['original']=="true")
				lastElement=reiseData['stationen'][s];
			if(reiseData['stationen'][s]['original']=="false" || reiseData['stationen'][s]['nosleep']=="true")
			{
				rIndex--;
				thisMsecs-=oneDay;
				//lastDatum-=oneDay;
			}
			lastDay=thisMsecs;
			if(reiseData['stationen'][s]['nosleep']=="false")
				lastDay+=oneDay;
			for(z=0;z<reiseData['stationen'][s]['zn'];z++)
			{
				rIndex++;
				thisMsecs+=oneDay;
				if(reiseData['stationen'][s]['original']=="true")
				{
					lastDay=thisMsecs+oneDay;					
				}
				thisDatum=getStrFromMs(thisMsecs);
				thisDay=getDayFromMsecs(thisMsecs);
				erg+= 	'<tr>'+
									'<td class="copytextGr">'+thisDay+', </td>'+
									'<td class="copytextGr">'+thisDatum+'</td>'+
									'<td><span class="copyboldGr">'+langText("region")+'&nbsp;'+reiseData['stationen'][s]['ort']+'</span>&nbsp;<span class="copytextGr">('+langText("zn_zn2")+')</span></td>'+
								'</tr>';
				lastElement=reiseData['stationen'][s];
			}
			thisMsecs+=oneDay;			
			rIndex++;			
		}
		var hasAbreise=true;     
		if(lastElement['nosleep']=="true" &&  (lastElement['zn']==null || lastElement['zn'].length==0))
			hasAbreise=false;
		//hasAbreise=false;	
		if(externDebug)
		{
			//showArray2(reiseData);
		}
		if(hasAbreise)
		{
			thisDatum=getStrFromMs(thisMsecs);
			thisDay=getDayFromMsecs(thisMsecs);
			erg+= 	'<tr>'+
						'<td class="copytextGr">'+thisDay+', </td>'+
						'<td class="copytextGr">'+thisDatum+'</td>'+
						'<td><span class="copyboldGr"><span class="copytextGr">('+langText("zn_abreise")+')</span></td>'+
					'</tr>';
		}
		erg+=		'</table>'+
							'</div>'+
							'<div style="width:100%;text-align:right;">'+
								'<input type="Button" onclick="changeStep(\'zn\');" name="change_pdata" class="wbutton2" value="'+langText("change")+'">'+
							'</div>';		
	}
	else if(bformdata['buchung']['znok']==null || bformdata['buchung']['znok']=="null")
	{
		erg+= 	'<div style="width:546px;">'+
							'<table border="0" cellpadding="2" cellspacing="0">'+
								'<tr>'+
									'<td class="copybold">'+
										langText("zn_frage1")+
									'<td><input type="Button" onclick="setZnOk(true);" name="znOk" class="wbutton" value="'+langText("ja")+'"></td>'+
									'<td><input type="Button" onclick="setZnOk(false);" name="znOk" class="wbutton" value="'+langText("nein")+'"></td>'+
								'</tr>'+
							'</table>'+
						'</div>';
	}
	else if(bformdata['buchung']['znok']=="true")
	{					
		erg+= '<div style="width:546px;">'+
						'<table border="0" cellpadding="2" cellspacing="0" style="width:546px;">';
		var thisMsecs=getMsecsFromSql(bformdata['buchung']['reisedatum']['selected']);
	
		for(s=0;s<reiseData['stationen'].length;s++)
		{
			znhpOK=false;
			for(l=0;l<reiseData['stationen'][s]['leistungen'].length;l++)
			{
				lId=reiseData['stationen'][s]['leistungen'][l];
				//debug2(thisDatum);return;												
				if(zlZnachtHP[lId]!=null)
				{
					znhpOK=true;
					break;
				}
			}
			if(reiseData['stationen'][s]['zn']==null)
				reiseData['stationen'][s]['zn']=0;
			if(isNaN(reiseData['stationen'][s]['zn']))
				reiseData['stationen'][s]['zn']=0;
			if(s>0 && parseInt(reiseData['stationen'][s-1]['zn'])>0)
			{
				thisMsecs+=oneDay*parseInt(reiseData['stationen'][s-1]['zn']);
			}
			thisDatum=getStrFromMs(thisMsecs);
			thisDay=getDayFromMsecs(thisMsecs);
			if(reiseData['stationen'][s]['original']=="false")
			{
				erg+=			'<tr>'+
										'<td colspan="3" class="copytext">&nbsp;</td>'+
									'</tr>'+
									'<tr>'+
										'<td colspan="3" class="copytext">'+langText("zn_znretour")+'</td>'+
									'</tr>';
			}
			erg+= 	'<tr>'+
								'<td class="copytext">'+thisDay+', </td>'+
								'<td class="copytext">'+thisDatum+'</td>'+
								'<td class="copybold">'+langText("region")+'&nbsp;'+reiseData['stationen'][s]['ort']+'</td>'+
							'</tr>'+
							'<tr>'+
								'<td colspan="2">&nbsp;</td>'+
								'<td>';
			znPrecheck=checkZn(s,thisMsecs);
			if(	reiseData['stationen'][s]['original']=="false" 
				|| 
				(no_znsperre && znPrecheck.length>0)
				|| 
				(zn_vor_beginn && s==0)
			)
			{
				tCheckZN=new Array(1,2,3,4,5,6,7);
			}
			else
				tCheckZN=znPrecheck;
			if((s+1)<reiseData['stationen'].length)
			{
				//noch nicht am ende angelangt!
				if(s==0 && zn_vor_beginn)
				{}
				else if(reiseData['stationen'][s]['ort']==reiseData['stationen'][s+1]['ort'])
				{
					tCheckZN=new Array();
				}
			}
			//if(typeof reiseData['stationen'][s]['leistungen']!="object")
			//	tCheckZN=new Array();
			if(tCheckZN.length > 0)
			{
				erg+=		'<table border="0" cellpadding="0" cellspacing="0">';
				if(reiseData['stationen'][s]['nosleep']=="true")
				{
					zn_nosleep_add=(s==0) ? "_start" : "";
					erg+=		'<tr>'+
									'<td colspan="3" class="copytext">'+langText("zn_nosleep"+zn_nosleep_add)+'</td>'+
								'</tr>';
				}
				
				erg+=			'<tr>'+
									'<td>'+
										'<select name="selZN'+s+'" class="Fields" onchange="bform_submit_zn('+s+',true);">'+
											'<option value="0">'+langText("all_keine")+'</option>';
				for(o=0;o<tCheckZN.length;o++)
				{
					oSel=(reiseData['stationen'][s]['zn'] == tCheckZN[o]) ? " selected" : "";				
					erg+=					'<option value="'+tCheckZN[o]+'"'+oSel+'>'+tCheckZN[o]+'</option>';
				}
				erg+=					'</select>'+
										'</td>'+
										'<td>&nbsp;</td>'+
										'<td class="copytext">'+langText("zn_zn")+'</td>'+
									'</tr>';				
				if(reiseData['stationen'][s]['zn']!=null)
				{
					/*
					Bei vorhandener HP-Leistung dieser Etappe und gesetzter HP
					checkbox anbieten (Standard: gesetzt)
					*/
					if(reiseData['stationen'][s]['zn']>0 && hasHP && znhpOK)
					{
						znhpChecked=" checked";
						if(stationenZNHPchecked[s]!=null)
						{
							if(stationenZNHPchecked[s]==false)
								znhpChecked="";
						}
						else
						{
							stationenZNHPchecked[s]=true;
						}
						erg+=		'<tr>'+
										'<td align="right"><input onclick="setZNHPchecked('+s+',this);" type="checkbox" name="znhp_'+s+'" value="TRUE" '+znhpChecked+' /></td>'+
										'<td>&nbsp;</td>'+
										'<td class="copytext">'+langText("st_hp")+'</td>'+
									'</tr>';
					}
				}
				erg+=				'</table>';
			}
			else
			{
				erg+=	'<span class="copytext"><em>'+langText("zn_nozn")+'</em></span>'+
							'<input type="hidden" name="selZN'+s+'" value="0">';
			}
			erg+=		'</td>'+
						'</tr>';
			if(reiseData['stationen'][s]['nosleep']=="false")
				thisMsecs+=oneDay;					
		}           
		erg+=		'</table>'+
				'</div>';
		showButton=true;
		//debug(erg);			
	}
	else
	{
		erg+= 	'<div style="width:546px;" class="copyboldGr">'+
					langText("zn_keine")+
				'</div>'+
				'<div style="width:100%;text-align:right;">'+
					'<input type="Button" onclick="changeStep(\'zn\');" name="change_pdata" class="wbutton2" value="'+langText("change")+'">'+
				'</div>';
	}
	return erg;
}
function setZNHPchecked(s,ref){
	stationenZNHPchecked[s]=ref.checked;
}
function bform_submit_transfer(){
	//alert(es);
	var noval,val,t,c;
	if(typeof document.createForm.notransfer!="undefined")
		noval=document.createForm.notransfer.checked;
	else
		noval=false;
	if(noval)
	{
		//Rücktransfer abgelehnt
		bformdata['buchung']['transfer']=-1;
		bformdata['buchung']['notransfer']=true;
	}
	else
	{
		bformdata['buchung']['notransfer']=false;
		bformdata['buchung']['transfer']=-1;
		if(typeof document.createForm.cbtransfer != "undefined")
		{
			if(typeof document.createForm.cbtransfer.checked != "undefined")
			{
				//bei nur einer checkbox?
				if(document.createForm.cbtransfer.checked)
				{			
					val=document.createForm.cbtransfer.value;				
					if(val!="enthalten")
					{
						bformdata['buchung']['transfer']=parseInt(val);
					}
				}
			}
			else
			{			
				for(c=0;c<document.createForm.cbtransfer.length;c++)
				{
					if(document.createForm.cbtransfer[c].checked)
					{			
						val=document.createForm.cbtransfer[c].value;	
						if(val!="enthalten")
							bformdata['buchung']['transfer']=parseInt(val);
						break;
					}
				}
			}
		}
	}
	if(bformdata['buchung']['transfer']==-1 && bformdata['buchung']['notransfer']==false && zl['transfer']['enthalten']['stornierbar']==null)
		bformdata['buchung']['notransfer']=true;
	if(bformdata['buchung']['transfer']!=null)
	{		
		var sendXML=new Array();
		sendXML.push(bformdata['buchung']['transfer']);
		if(bformdata['buchung']['notransfer'])
			sendXML=new Array("kein Transfer");
		if(orderType=="real")
		{
			myParser=new xmlparser(sendXML,"");
			xml=myParser.n_makeXMLFromArray();	
			xml=resetEntities(xml);
			sendRequest( "/pageAjax/sendPData.php", "step=transfer&micro="+createStamp+"&debug=true&xml="+xml, 2, 'sendpdata');	
		}
	}
	bformdata['dataReady']['transfer']=true;
	if(zl['buchbar']!=null)
	{
		bformdata['steps']['buchbar']=true;
	}
	else
		bformdata['steps']['freitext']=true;
	writeBForm();
	
}
function bform_buchungst_transfer(){
	//showArray2(zl);return;
	var erg="";
	var t,s,tDisplayX,hasTransfer,tChecked,trDisplay,aDays,nDisplay,zDisplay,tCheckedE,transferDisplay_hin,transferDisplay_back,lastS;
	var showTTage,notransText;
	if(bformdata['buchung']['transfer']==null)
		bformdata['buchung']['transfer']=-1;	
	if(bformdata['dataReady']['transfer']==true)
	{
		erg+= 	'<div style="width:546px;">'+
							'<table border="0" cellpadding="2" cellspacing="0">';
		if(bformdata['buchung']['notransfer'])
		{
			notransText=langText("transfer_notrans");
			if(zl['transfer']['enthalten']['stornierbar']!=null)
			{
				if(zl['transfer']['enthalten']['vkred']!=null)
				{
					if(parseFloat(zl['transfer']['enthalten']['vkred'])!=0)
					{
						notransText=langText("transfer_notrans2").replace(/#wert/,realPreis(parseFloat(zl['transfer']['enthalten']['vkred']),false));
					}
				}
			}
			erg+= 	'<tr>'+
						'<td class="copyboldGr">'+notransText+'</td>'+
					'</tr>'
		}
		else if(bformdata['buchung']['transfer']>-1)
		{
			tDisplayX=zl['transfer']['zusatz'][bformdata['buchung']['transfer']]['display_'+language];
			if(zl['transfer']['zusatz'][bformdata['buchung']['transfer']]['tdisplay_'+language]!=null)
				tDisplayX=zl['transfer']['zusatz'][bformdata['buchung']['transfer']]['tdisplay_'+language];
			erg+= 	'<tr>'+
						'<td class="copyboldGr">'+tDisplayX+'</td>'+
					'</tr>';
		}
		else if(zl['transfer']['enthalten']['art']!=null)
		{
			erg+= 	'<tr>'+
						'<td class="copyboldGr" colspan="3">'+zl['transfer']['enthalten']['display_'+language]+'</td>'+
					'</tr>';
		}
		erg+=		'</table>'+
				'</div>'+
				'<div style="width:100%;text-align:right;">'+
					'<input type="Button" onclick="changeStep(\'transfer\');" name="change_pdata" class="wbutton2" value="'+langText("change")+'">'+
				'</div>';
	}
	else	
	{					
		erg+= 	'<div style="width:546px;">'+
				'<table border="0" cellpadding="0" cellspacing="0" style="">';
		hasTransfer=false;
		zDisplay=langText("transfer_zusatz");
		if(zl['transfer']['enthalten']['art']!=null)
		{
			hasTransfer=true;
			if(bformdata['buchung']['notransfer']==null)
				bformdata['buchung']['notransfer']=false;
			//zDisplay=langText("transfer_option");
			erg+= 	'<tr>'+
						'<td class="copybold" colspan="3">'+langText("transfer_enth")+'</td>'+
					'</tr>'+
					'<tr>'+
						'<td class="copytext" colspan="3">'+zl['transfer']['enthalten']['display_'+language]+'</td>'+
					'</tr>';
		}
		if(zl['transfer']['zusatz'].length>0)
		{			
			erg+= 	'<tr>'+
								'<td colspan="3">&nbsp;</td>'+
							'</tr>'+
							'<tr>'+
								'<td colspan="3" class="copytext">'+zDisplay+'</td>'+
							'</tr>';
			if(zl['transfer']['enthalten']['art']!=null)
			{
				if(bformdata['buchung']['notransfer']==null)
					bformdata['buchung']['notransfer']=false;
				tCheckedE=(bformdata['buchung']['transfer']<0 && bformdata['buchung']['notransfer']==false) ? " checked" : "";
				erg+= 	'<tr>'+
							'<td><input type="radio" name="cbtransfer" value="enthalten"'+tCheckedE+' onclick="setTransfer(0);"></td>'+
							'<td>&nbsp;</td>'+
							'<td class="copytext">'+zl['transfer']['enthalten']['display_'+language]+'</td>'+
						'</tr>';
			}
		}
		for(t=0;t<zl['transfer']['zusatz'].length;t++)
		{			
			trDisplay=zl['transfer']['zusatz'][t]['display_'+language]+" ("+realPreis(parseFloat(zl['transfer']['zusatz'][t]['vk']),false)+" &euro; "+langText("proPerson")+")";
			if(zl['transfer']['zusatz'][t]['transfer_typ']!=null)
			{
				if(zl['transfer']['zusatz'][t]['transfer_typ']=="hin")
				{
					trDisplay=	langText("transfer_dir_hin").replace(/#datum/,getStrFromMs(firstDatum))+
								zl['transfer']['zusatz'][t]['display_'+language];
					//trDisplay=trDisplay.replace("#von",lastOrt);
					//trDisplay=trDisplay.replace("#nach",firstOrt);					
				}
				else
				{
					trDisplay=	langText("transfer_dir_back").replace(/#datum/,getStrFromMs(lastDatum))+
								zl['transfer']['zusatz'][t]['display_'+language];;
					//trDisplay=trDisplay.replace("#von",lastOrt);
					//trDisplay=trDisplay.replace("#nach",firstOrt);										
				}
				zl['transfer']['zusatz'][t]['tdisplay_'+language]=trDisplay;
			}
			if(getTransfer(t))
			{
				//hasTransfer=true;
				tChecked=(bformdata['buchung']['transfer']==t) ? " checked" : "";
				elemTyp=(zl['transfer']['zusatz'].length == 1 && zl['transfer']['enthalten']['art']==null) ? "checkbox" : "radio";
				erg+= 	'<tr>'+
									'<td><input type="'+elemTyp+'" name="cbtransfer" value="'+t+'"'+tChecked+' onclick="setTransfer(0);"></td>'+
									'<td>&nbsp;</td>'+
									'<td class="copytext">'+trDisplay+'</td>'+
								'</tr>';
			}
			else
			{
				aDays=getDayList(zl['transfer']['zusatz'][t]);
				nDisplay=langText("transfer_not").replace(/#tage/,aDays);
				erg+= 	'<tr>'+
									'<td><input type="radio" name="cbtransfer" value="'+t+'" disabled></td>'+
									'<td>&nbsp;</td>'+
									'<td class="copytext">'+trDisplay+'</td>'+
								'</tr>'+
								'<tr>'+
									'<td>&nbsp;</td>'+
									'<td>&nbsp;</td>'+
									'<td class="copytext">'+nDisplay+'</td>'+
								'</tr>';
			}
		} 
		if(hasTransfer)
		{
			if(bformdata['buchung']['notransfer']==null)
				bformdata['buchung']['notransfer']=false;
			nChecked=(bformdata['buchung']['notransfer']) ? " checked" : "";
			notransText=langText("transfer_notrans");
			if(zl['transfer']['enthalten']['stornierbar']!=null)
			{
				if(zl['transfer']['enthalten']['vkred']!=null)
				{
					if(parseFloat(zl['transfer']['enthalten']['vkred'])!=0)
					{
						notransText=langText("transfer_notrans2").replace(/#wert/,realPreis(parseFloat(zl['transfer']['enthalten']['vkred']),false));
					}
				}
			}
			erg+= 	'<tr>'+
								'<td colspan="3">&nbsp;</td>'+
							'</tr>'+
							'<tr>'+
								'<td><input type="checkbox" name="notransfer" value="TRUE"'+nChecked+' onclick="setTransfer(1);"></td>'+
								'<td>&nbsp;</td>'+
								'<td class="copybold">'+notransText+'</td>'+
							'</tr>';
		}    		
		erg+=		'</table>'+
				'</div>';
		showButton=true;
		//debug(erg);			
	}
	return erg;
}
function bform_submit_anreise(){
	val=document.createForm.anreise.value;
	bformdata['buchung']['anreise']=parseInt(val);
	bformdata['dataReady']['anreise']=true;
	bformdata['steps']["gvon"]=true;
	if(orderType=="real")
	{
		myParser=new xmlparser(new Array(bformdata['buchung']['anreise']),"");
		xml=myParser.n_makeXMLFromArray();	
		xml=resetEntities(xml);
		sendRequest( "/pageAjax/sendPData.php", "step=anreise&micro="+createStamp+"&debug=true&xml="+xml, 2, 'sendpdata');	
	}
	writeBForm();
}
function bform_buchungst_anreise(){
	var erg=""
	var sel;
	if(bformdata['dataReady']['anreise']==true)
	{
		erg+=	'<div style="width:546px;" class="copyboldGr">'+
						langText("st_anreise_hr1_"+pluralSelect)+
						'&nbsp;'+
						anreiseDef[language][bformdata['buchung']['anreise']]+
						'&nbsp;'+
						langText("st_anreise_hr2")+
					'</div>'+
					'<div style="width:100%;text-align:right;">'+
						'<input type="Button" onclick="changeStep(\'anreise\');" name="change_pdata" class="wbutton2" value="'+langText("change")+'">'+
					'</div>';
	}
	else
	{
		erg+=	'<div style="width:546px;">'+
						'<table border="0" cellpadding="2" cellspacing="0">'+
							'<tr>'+
								'<td class="copytext">'+
									langText("st_anreise_hr1_"+pluralSelect)+									
								'</td>'+
								'<td>'+
									'<select class="FBL" name="anreise">';
		for(var a=0;a<anreiseDef[language].length;a++)
		{
			sel="";
			if(bformdata['buchung']['anreise']!=null)
			{
				if(bformdata['buchung']['anreise']==a)
					sel=" selected";
			}
			erg+= '<option value="'+a+'"'+sel+'>'+anreiseDef[language][a]+'</option>';
		}
		erg+=					'</select>'+
								'</td>'+
								'<td class="copytext">'+
									langText("st_anreise_hr2")+
								'</td>'+
							'</tr>'+
						'</table>'+
					'</div>';		
		showButton=true;
	}
	return erg;
}
function bform_submit_pakete(){
	var thisPakete=bformdata['buchung']['reisedatum']['pakete'];
	//if(externDebug)
		//showArray2(thisPakete);
	var hasPakete=false;
	var p,s,pChecked,pVal,sendReisedatum;
	for(p=0;p<thisPakete.length;p++)
	{
		if(porte[thisPakete[p]['mainid']].length > 0)
		{
			eval('pChecked=document.createForm.pakete_'+p+'.checked;');
			if(pChecked)
			{
				bformdata['buchung']['pakete'][p]=true;
				for(s=0;s<porte[thisPakete[p]['mainid']].length;s++)
				{
					if(paketOrteCount[p]==1)
						eval('pChecked=document.createForm.paketeRadio_'+p+'.checked;');
					else
						eval('pChecked=document.createForm.paketeRadio_'+p+'['+s+'].checked;');
					bformdata['buchung']['pakete'][p]=(pChecked) ? true	: false;
					if(pChecked)
					{
						hasPakete=true;
						bformdata['buchung']['reisedatum']['pakete'][p]['station']=porte[thisPakete[p]['mainid']][s];
						if(paketDef[thisPakete[p]['kennung']]==null)
							sendRequest( "/pageAjax/getReise.php", "reisekennung="+thisPakete[p]['kennung']+"&reisejahr="+reisejahr+"&kunde="+kunde+"&language="+language, 0, 'getPaket|'+thisPakete[p]['kennung']);
						break;
					}
				}
			}
			else
			{
				if(bformdata['buchung']['reisedatum']['pakete'][p]['station']!=null)
				{
					if(bformdata['buchung']['reisedatum']['pakete'][p]['station']==0 && zn_vor_beginn)
					{
						//Reisedatum wieder zurücksetzen!
						resetRealRdatum();
					}
				}
				bformdata['buchung']['pakete'][p]=false;
				bformdata['buchung']['reisedatum']['pakete'][p]['station']=null;
				
			}
		}
		else
		{
			eval('pChecked=document.createForm.pakete_'+p+'.checked;');
			bformdata['buchung']['pakete'][p]=(pChecked) ? true	: false;
			if(pChecked)
			{
				hasPakete=true;
				if(paketDef[thisPakete[p]['kennung']]==null)
					sendRequest( "/pageAjax/getReise.php", "reisekennung="+thisPakete[p]['kennung']+"&reisejahr="+reisejahr+"&kunde="+kunde+"&language="+language, 0, 'getPaket|'+thisPakete[p]['kennung']);
			}
		}
	}
	//showArray2(bformdata['buchung']['reisedatum']['pakete']);
	//jetzt orgStationen umdefinieren:
	if(hasPakete)
		arrangeStationen();
	else
	{
		bformdata['buchung']['reiseverlauf']=new Array();
		reiseData['stationen']=new Array();
		reiseData['stationen']=copyArray(saveStationen);
		resetReiseverlauf();
	}
	//showArray2(reiseData['stationen']);return;
	bformdata['steps']["zn"]=true;
	bformdata['dataReady']['pakete']=true;
	writeBForm();		
}
function paket_showOrte(p,ref){
	if(ref.checked)
		document.getElementById('paketorte_'+p).style.display="block";
	else
		document.getElementById('paketorte_'+p).style.display="none";
}
function bform_buchungst_pakete(){
	var erg="";
	var displayName;
	var m,hp_erst,sel,selP,pChecked,tDisplay,tPaketDef;
	//var aPersonen=getMrAlter();
	if(bformdata['dataReady']['pakete']==true)
	{		
		erg+=	'<div style="width:570px;">'+
					'<table border="0" cellpadding="2" cellspacing="0">';
		thisPakete=bformdata['buchung']['reisedatum']['pakete'];			
		for(p=0;p<thisPakete.length;p++)
		{
			//tPaketDef=paketDef[bformdata['buchung']['pakete'][p]['kennung']];
			if(bformdata['buchung']['pakete'][p]==true)
			{
				displayName=(thisPakete[p]['display_'+language]!=null) ? thisPakete[p]['display_'+language] : thisPakete[p]['katalogname'];
				//displayName=thisPakete[p]['katalogname'];
				erg+=	'<tr>'+
							'<td class="copyboldGr">'+displayName+'</td>'+		
						'</tr>';
			}
		}
		erg+=		'</table>'+
				'</div>'+
				'<div style="width:100%;text-align:right;">'+
					'<input type="Button" onclick="changeStep(\'pakete\');" name="change_pdata" class="wbutton2" value="'+langText("change")+'">'+
				'</div>';
	}
	else
	{
		erg+=	'<div class="copybold" style="margin-bottom:12px;">'+langText("st_pakete_hr")+'</div>'+
					'<div style="width:570px;">'+
						'<table border="0" cellpadding="2" cellspacing="0">';
		thisPakete=bformdata['buchung']['reisedatum']['pakete'];
		paketOrteCount=new Array();
		for(p=0;p<thisPakete.length;p++)
		{
			//tPaketDef=paketDef[thisPakete[p]['kennung']];
			paketOrteCount[p]=0;			
			if(bformdata['buchung']['pakete']==null)
				bformdata['buchung']['pakete']=new Array();
			if(bformdata['buchung']['pakete'][p]==null)
				bformdata['buchung']['pakete'][p]=false;
			
			thisPreis=0;
			for(y in thisPakete[p]['preis'])
			{
				thisPreis=parseFloat(thisPakete[p]['preis'][y]);
				break;
			}
			sel=(bformdata['buchung']['pakete'][p]==true) ? " checked" : "";			
			if(porte[thisPakete[p]['mainid']].length>0)
			{
				displayName=(thisPakete[p]['display_'+language]!=null) ? thisPakete[p]['display_'+language] : thisPakete[p]['katalogname'];
				//displayName=thisPakete[p]['katalogname'];
				tDisplay=(bformdata['buchung']['pakete'][p]==true) ? "block" : "none";
				erg+=	'<tr>'+
								'<td><input type="checkbox" name="pakete_'+p+'"'+sel+' onclick="paket_showOrte('+p+',this);"></td>'+
								'<td class="copytext">'+displayName+' ('+realPreis(thisPreis,false)+'&nbsp;&euro;&nbsp;'+langText("proPerson")+'&nbsp;'+langText("imDZ")+')</td>'+		
							'</tr>'+
							'<tr>'+
								'<td>&nbsp;</td>'+
								'<td class="copyitalic">'+langText("pakete_ortselect")+':</td>'+		
							'</tr>'+
							'<tr>'+
								'<td>&nbsp;</td>'+
								'<td valign="top">'+
									'<table id="paketorte_'+p+'" style="display:'+tDisplay+';" border="0" cellpadding="2" cellspacing="0">';
				for(s=0;s<reiseData['stationen'].length;s++)
				{
					if(inArray(s,porte[thisPakete[p]['mainid']]))
					{
						paketOrteCount[p]++;
						selP=(thisPakete[p]['station']==s) ? " checked" : "";
						erg+=	'<tr>'+
										'<td><input type="radio" name="paketeRadio_'+p+'" value="'+s+'"'+selP+'></td>'+
										'<td>&nbsp;</td>'+
										'<td class="copytext">'+(s+1)+' '+langText("region")+'&nbsp;'+reiseData['stationen'][s]['ort']+'</td>'+
									'</tr>';
					}
					else
					{
						erg+=	'<tr>'+
										'<td>&nbsp;</td>'+
										'<td>&nbsp;</td>'+
										'<td class="copytextGr">'+(s+1)+' '+langText("region")+'&nbsp;'+reiseData['stationen'][s]['ort']+'</td>'+
									'</tr>';
					}
				}
				erg+=			'</table>'+
								'</td>'+		
							'</tr>';
			}
			else
			{				
				displayName=(thisPakete[p]['display_'+language]!=null) ? thisPakete[p]['display_'+language] : thisPakete[p]['katalogname'];
				//displayName=thisPakete[p]['katalogname'];
				erg+=	'<tr>'+
								'<td><input type="checkbox" name="pakete_'+p+'" value="TRUE"'+sel+'></td>'+
								'<td class="copytext">'+displayName+' ('+realPreis(thisPreis,false)+'&nbsp;&euro;&nbsp;'+langText("proPerson")+'&nbsp;'+langText("imDZ")+')</td>'+		
							'</tr>';
			}
		}
		
		erg+=		'</table>'+
				'</div>';
		showButton=true;
	}
	//if(externDebug)
		//showArray2(reiseData['stationen']);
	return erg;
}
function bform_submit_hp(){
	if(bformdata['buchung']['pdata']['mr']=="false")
		bformdata['buchung']['hp'][0]=document.createForm.hp_0.checked;
	if(bformdata['buchung']['mr_count']!=null)
	{
		for(m=1;m<=bformdata['buchung']['mr_count'];m++)
		{
			eval('bformdata["buchung"]["hp"]['+m+']=document.createForm.hp_'+m+'.checked;');
		}
	}
	if(bformdata['buchung']['reisedatum']['pakete']!=null)
		bformdata['steps']["pakete"]=true;
	else
		bformdata['steps']["zn"]=true;
	bformdata['dataReady']['hp']=true;
	if(bformdata['buchung']['hp']!=null && bformdata['buchung']['hp'].length > 0 && orderType=="real")
	{
		myParser=new xmlparser(bformdata['buchung']['hp'],"");
		xml=myParser.n_makeXMLFromArray();	
		xml=resetEntities(xml);
		sendRequest( "/pageAjax/sendPData.php", "step=hp&micro="+createStamp+"&debug=true&xml="+xml, 2, 'sendpdata');	
	}
	writeBForm();		
}
function bform_buchungst_hp(){
	var erg="";
	var m,hp_erst,sel;
	var hasN=true;
	if(bformdata['buchung']['pdata']['name']==null)
		hasN=false;
	else if(bformdata['buchung']['pdata']['name']=="")
		hasN=false;
	
	//var aPersonen=getMrAlter();
	if(bformdata['dataReady']['hp']==true)
	{
		erg+=	'<div style="width:570px;">'+
					'<table border="0" cellpadding="2" cellspacing="0">';
		if(bformdata['buchung']['hp'][0] && bformdata['buchung']['pdata']['mr']=="false")
		{
			if(hasN)
			{
				erg+=	'<tr>'+
							'<td class="copytextGr">'+bformdata['buchung']['pdata']['vorname']+'&nbsp;'+bformdata['buchung']['pdata']['name']+'</td>'+		
						'</tr>';
			}
			else
			{
				erg+=	'<tr>'+
							'<td class="copytextGr">'+langText("zn_person")+'&nbsp;1</td>'+		
						'</tr>';
			}
		}
		if(bformdata['buchung']['mr_count']!=null)
		{
			for(m=1;m<=bformdata['buchung']['mr_count'];m++)
			{
				if(bformdata['buchung']['hp'][m])
				{
					if(orderType=="real")
					{
						erg+= 	'<tr>'+
									'<td class="copytextGr">'+bformdata['buchung']['mr'][m]['vorname']+'&nbsp;'+bformdata['buchung']['mr'][m]['name']+'</td>'+		
								'</tr>';
					}
					else	
					{
						erg+= 	'<tr>'+
									'<td class="copytextGr">'+m+'.&nbsp;'+langText("mr_titel")+'</td>'+		
								'</tr>';
					}
				}
			}	
		}		
		erg+=		'</table>'+
				'</div>'+
				'<div style="width:100%;text-align:right;">'+
					'<input type="Button" onclick="changeStep(\'hp\');" name="change_pdata" class="wbutton2" value="'+langText("change")+'">'+
				'</div>';		
	}
	else
	{
		if(bformdata['buchung']['hp']==null)
			bformdata['buchung']['hp']=new Array();
		sel=(bformdata['buchung']['hp'][0] != null && bformdata['buchung']['hp'][0]==true) ? " checked" : "";
		erg+=	'<div class="copytext" style="margin-bottom:12px;">'+langText("hp_frage")+'</div>'+
					'<div style="width:570px;">'+
						'<table border="0" cellpadding="2" cellspacing="0">';
		if(bformdata['buchung']['pdata']['mr']=="false")
		{
			if(hasN)
			{
				erg+=	'<tr>'+
								'<td><input type="checkbox" name="hp_0" value="TRUE"'+sel+'></td>'+
								'<td class="copytext">'+bformdata['buchung']['pdata']['vorname']+'&nbsp;'+bformdata['buchung']['pdata']['name']+'</td>'+		
							'</tr>';
			}
			else
			{
				erg+=	'<tr>'+
								'<td><input type="checkbox" name="hp_0" value="TRUE"'+sel+'></td>'+
								'<td class="copytext">'+langText("zn_person")+'&nbsp;1</td>'+		
							'</tr>';
			}
		}
		if(bformdata['buchung']['mr_count']!=null)
		{
			for(m=1;m<=bformdata['buchung']['mr_count'];m++)
			{
				if(bformdata['buchung']['mr'][m]['gebdatum']['alter'] < hp_ab)
				{
					hp_erst=langText("hp_erst").replace(/#alter/,hp_ab);
					if(hasN)
					{
						erg+= 	'<tr>'+
									'<td><input type="checkbox" name="hp_'+m+'" value="TRUE" disabled></td>'+
									'<td class="copytext">('+bformdata['buchung']['mr'][m]['vorname']+'&nbsp;'+bformdata['buchung']['mr'][m]['name']+': '+hp_erst+')</td>'+		
								'</tr>';
					}
					else
					{
						erg+= 	'<tr>'+
									'<td><input type="checkbox" name="hp_'+m+'" value="TRUE" disabled></td>'+
									'<td class="copytext">('+m+'.&nbsp;'+langText("mr_titel")+': '+hp_erst+')</td>'+		
								'</tr>';
					}
				}
				else
				{
					sel=(bformdata['buchung']['hp'][m] != null && bformdata['buchung']['hp'][m]==true) ? " checked" : "";
					if(hasN)
					{
						erg+= 	'<tr>'+
									'<td><input type="checkbox" name="hp_'+m+'" value="TRUE"'+sel+'></td>'+
									'<td class="copytext">'+bformdata['buchung']['mr'][m]['vorname']+'&nbsp;'+bformdata['buchung']['mr'][m]['name']+'</td>'+		
								'</tr>';
					}
					else
					{
						erg+= 	'<tr>'+
									'<td><input type="checkbox" name="hp_'+m+'" value="TRUE"'+sel+'></td>'+
									'<td class="copytext">'+m+'.&nbsp;'+langText("mr_titel")+'</td>'+		
								'</tr>';
					}
				}
			}	
		}		
		erg+=		'</table>'+
				'</div>'+
				'<div class="copytext" style="margin-top:12px;">'+langText("hp_comment")+'</div>';
		showButton=true;
	}
	return erg;
}
function bform_submit_buchbar(){
	var b,m;
	for(b=0;b<zl['buchbar'].length;b++)
	{
		if(bformdata['buchung']['pdata']['mr']=="false")
		{
			eval('bformdata["buchung"]["buchbar"][b][0]=document.createForm.buchbar_'+b+'_0.checked;');
		}
		if(bformdata['buchung']['mr_count']!=null)
		{
			for(m=1;m<=bformdata['buchung']['mr_count'];m++)
			{
				eval('bformdata["buchung"]["buchbar"][b][m]=document.createForm.buchbar_'+b+'_'+m+'.checked;');
			}
			
		}
	}
	bformdata['steps']['freitext']=true;
	bformdata['dataReady']['buchbar']=true;
	if(bformdata['buchung']['buchbar']!=null && bformdata['buchung']['buchbar'].length > 0 && orderType=="real" && 1==2)
	{
		//erst mal abgeklemmt
		myParser=new xmlparser(bformdata['buchung']['buchbar'],"");
		xml=myParser.n_makeXMLFromArray();	
		xml=resetEntities(xml);
		sendRequest( "/pageAjax/sendPData.php", "step=hp&micro="+createStamp+"&debug=true&xml="+xml, 2, 'sendpdata');	
	}
	writeBForm();		
}
function bform_buchungst_buchbar(){
	var erg="";
	var b,m,sel;
	var hasN=true;
	if(bformdata['buchung']['pdata']['name']==null)
		hasN=false;
	else if(bformdata['buchung']['pdata']['name']=="")
		hasN=false;
	//var aPersonen=getMrAlter();
	if(bformdata['dataReady']['buchbar']==true)
	{
		erg+=	'<div style="width:570px;">';
					
		for(b=0;b<zl['buchbar'].length;b++)
		{
			sel=(bformdata['buchung']['buchbar'][b] != null && bformdata['buchung']['buchbar'][b]==true) ? " checked" : "";
			erg+= 	'<div style="margin-bottom:12px;">'+
						'<div class="copyboldGr">'+
							zl['buchbar'][b]['display_'+language]+
						'</div>'+
						'<div class="copytextGr">';
			if(bformdata['buchung']['pdata']['mr']=="false")
			{
				if(bformdata['buchung']['buchbar'][b][0] != null && bformdata['buchung']['buchbar'][b][0]==true)
				{
					if(hasN)
					{
						erg+= 	bformdata['buchung']['pdata']['vorname']+'&nbsp;'+bformdata['buchung']['pdata']['name']+'<br />';
					}
					else
					{
						erg+= 	langText("zn_person")+'&nbsp;1<br />';
					}
				}
			}
			if(bformdata['buchung']['mr_count']!=null)
			{
				for(m=1;m<=bformdata['buchung']['mr_count'];m++)
				{
					if(bformdata['buchung']['buchbar'][b][m] != null && bformdata['buchung']['buchbar'][b][m]==true)
					{
						if(hasN)
						{
							erg+= 	bformdata['buchung']['mr'][m]['vorname']+'&nbsp;'+bformdata['buchung']['mr'][m]['name']+'<br />';
						}
						else
						{
							erg+= 	m+'.&nbsp;'+langText("mr_titel")+'<br />';
						}
					}					
				}
				
			}
			erg+= 	'</div>';						
		}		
		erg+=	'</div>'+
				'<div style="width:100%;text-align:right;">'+
					'<input type="Button" onclick="changeStep(\'buchbar\');" name="change_pdata" class="wbutton2" value="'+langText("change")+'">'+
				'</div>';		
	}
	else
	{
		if(bformdata['buchung']['buchbar']==null)
			bformdata['buchung']['buchbar']=new Array();
		erg+=	'<div style="width:570px;">';
					
		for(b=0;b<zl['buchbar'].length;b++)
		{
			if(bformdata['buchung']['buchbar'][b]==null)
				bformdata['buchung']['buchbar'][b]=new Array();
			erg+= 	'<div style="margin-bottom:12px;">'+
						'<div class="copybold">'+
							zl['buchbar'][b]['display_'+language]+
						'</div>'+
						'<div class="copytext">'+
							realPreis(zl['buchbar'][b]['vk'])+' &euro; / '+langText("zn_person")+
						'</div>'+
						'<table border="0" cellpadding="2" cellspacing="0">';
			if(bformdata['buchung']['pdata']['mr']=="false")
			{
				sel=(bformdata['buchung']['buchbar'][b][0] != null && bformdata['buchung']['buchbar'][b][0]==true) ? " checked" : "";
				if(hasN)
				{
					erg+=		'<tr>'+
									'<td><input type="checkbox" name="buchbar_'+b+'_0" value="TRUE"'+sel+'></td>'+
									'<td class="copytext">'+bformdata['buchung']['pdata']['vorname']+'&nbsp;'+bformdata['buchung']['pdata']['name']+'</td>'+		
								'</tr>';
				}
				else
				{
					erg+=		'<tr>'+
									'<td><input type="checkbox" name="buchbar_'+b+'_0" value="TRUE"'+sel+'></td>'+
									'<td class="copytext">'+langText("zn_person")+'&nbsp;1</td>'+		
								'</tr>';
				}
			}
			if(bformdata['buchung']['mr_count']!=null)
			{
				for(m=1;m<=bformdata['buchung']['mr_count'];m++)
				{
					sel=(bformdata['buchung']['buchbar'][b][m] != null && bformdata['buchung']['buchbar'][b][m]==true) ? " checked" : "";
					if(hasN)
					{
						erg+=	'<tr>'+
									'<td valign="top"><input type="checkbox" name="buchbar_'+b+'_'+m+'" value="TRUE"'+sel+'></td>'+
									'<td class="copytext">'+bformdata['buchung']['mr'][m]['vorname']+'&nbsp;'+bformdata['buchung']['mr'][m]['name']+'</td>'+		
								'</tr>';
					}
					else
					{
						erg+=	'<tr>'+
									'<td valign="top"><input type="checkbox" name="buchbar_'+b+'_'+m+'" value="TRUE"'+sel+'></td>'+
									'<td class="copytext">'+m+'.&nbsp;'+langText("mr_titel")+'</td>'+		
								'</tr>';
					}
				}
				
			}
			erg+=		'</table>'+
					'</div>';
		}		
		erg+=	'</div>';
		showButton=true;
	}
	return erg;
}
function bform_submit_agb(){
	if(pluralSelect=="s" && document.createForm.agb1.checked)
	{
		bformdata['dataReady']['agb']=true;	
		bformdata['steps']['agb']=true;	
	}
	else if(document.createForm.agb1.checked && document.createForm.agb2.checked)
	{
		bformdata['dataReady']['agb']=true;	
		bformdata['steps']['agb']=true;	
	}
	else
	{
		alert(langText("noAgb"));
	}	
	var sendXML=new Object();
	sendXML['agb']='akzeptiert';
	if(orderType=="real")
	{
		myParser=new xmlparser(sendXML,"");
		xml=myParser.n_makeXMLFromArray();	
		xml=resetEntities(xml);
		sendRequest( "/pageAjax/sendPData.php", "step=agb&micro="+createStamp+"&debug=true&xml="+xml, 2, 'sendpdata');	
	}
	writeBForm();		
}
function bform_buchungst_agb(){
	var erg="";
	if(bformdata['dataReady']['agb']==true)
	{		
		if(pluralSelect=="p")
		{
			erg= '<div style="width:570px;">'+
						'<table border="0" cellpadding="2" cellspacing="0">'+
							'<tr>'+
								'</td>'+
								'<td class="copytextGr">'+
									langText("agb1")+
								'</td>'+
							'</tr>'+
							'<tr>'+
								'<td class="copytextGr">'+
									langText("agb2")+
								'</td>'+
							'</tr>'+
						'</table>'+
					'</div>';
		}
		else
		{
			erg= '<div style="width:570px;">'+
						'<table border="0" cellpadding="2" cellspacing="0">'+
							'<tr>'+
								'</td>'+
								'<td class="copytextGr">'+
									langText("agb1")+
								'</td>'+
							'</tr>'+
						'</table>'+
					'</div>';
		}
	}
	else
	{
		if(pluralSelect=="p")
		{
			erg= '<div style="width:570px;">'+
						'<table border="0" cellpadding="2" cellspacing="0">'+
							'<tr>'+
								'<td>'+
									'<input type="checkbox" name="agb1" value="TRUE">'+
								'</td>'+
								'<td class="copytext">'+
									langText("agb1")+
								'</td>'+
							'</tr>'+
							'<tr>'+
								'<td>'+
									'<input type="checkbox" name="agb2" value="TRUE">'+
								'</td>'+
								'<td class="copytext">'+
									langText("agb2")+
								'</td>'+
							'</tr>'+
						'</table>'+
					'</div>';
		}
		else
		{
			erg= '<div style="width:570px;">'+
						'<input type="hidden" name="agb2" value="TRUE">'+
						'<table border="0" cellpadding="2" cellspacing="0">'+
							'<tr>'+
								'<td>'+
									'<input type="checkbox" name="agb1" value="TRUE">'+
								'</td>'+
								'<td class="copytext">'+
									langText("agb1")+
								'</td>'+
							'</tr>'+
						'</table>'+
					'</div>';
		}
		showButton=true;
	}
	
	return erg;
}
function bform_submit_freitext(){
	var tText;
	tText=document.createForm.ftext.value;
	tText=tText.replace(/</g,"");
	tText=tText.replace(/>/g,"");
	bformdata['buchung']['freitext']=tText;
	bformdata['dataReady']['freitext']=true;
	bformdata['steps']['anreise']=true;
	if(ru_languages.length>1)
	{
		bformdata['buchung']['ru_language']=document.createForm.ruselect_languages.value;
	}
	writeBForm();		
}
function bform_buchungst_freitext(){
	/*
	erweitert um die Reiseunterlagen
	*/
	if(orderType=="fake")
	{
		bformdata['dataReady']['freitext']=true;
		bformdata['steps']['anreise']=false;
		bformdata['steps']['freitext']=false;
		bformdata['steps']['preise']=true;
		return "";
	}
	var erg="";
	var tText="";
	var r,sel;
	if(bformdata['buchung']['freitext']!=null)
		tText=bformdata['buchung']['freitext'];
	if(bformdata['dataReady']['freitext']==true)
	{		
		if(ru_languages.length>1 && bformdata['buchung']['ru_language']!="")
		{
			erg+=	'<div class="copytextGr">'+
						langText("ru_head")+rulang_ref[bformdata['buchung']['ru_language']]+
					'</div>'
		}
		erg+=	'<div class="copytextGr">'+
					tText.replace(/\n/g,"<br />")+
				'</div>'+
				'<div style="width:100%;text-align:right;">'+
					'<input type="Button" onclick="changeStep(\'freitext\');" name="change_pdata" class="wbutton2" value="'+langText("change")+'">'+
				'</div>';
	}
	else
	{
		if(ru_languages.length>0)
		{
			erg+=	'<table cellspacing="0" cellpadding="0" border="0" style="margin-bottom:16px;">'+
						'<tr>'+
							'<td class="copytext">'+langText("ru_head")+'</td>'+
							'<td>'+
								'<select name="ruselect_languages" class="FBL" style="margin-left:6px;">';
			for(r=0;r<ru_languages.length;r++)
			{
				sel="";
				if(bformdata['buchung']['ru_language']!="")
				{
					if(bformdata['buchung']['ru_language']==ru_languages[r])
						sel=" selected";
				}
				else if(ru_languages[r]==language)
					sel=" selected";
				erg+=				'<option value="'+ru_languages[r]+'"'+sel+'>'+rulang_ref[ru_languages[r]]+'</option>';
				
				
			}
			erg+=				'</select>'+
							'</td>'+
						'</tr>'+
					'</table>';
		}
		erg+= 	'<div style="width:570px;">'+
					'<div class="copytext">'+langText("st_freitext_hr")+'</div>'+
					'<div>'+
						'<textarea name="ftext" class="FBL" style="width:400px;height:100px;border:1px solid #666666;">'+tText+'</textarea>'+
					'</div>'+
				'</div>';
		showButton=true; 
	}	
	return erg;
}

function bform_buchungst_preise(){
	var erg="";
	getPreise();
	sendZL['mietrad']=new Array();
	sendZL['inkludiert']=new Array();
	sendZL['hp']=new Array();
	sendZL['transfer']=new Array();
	var z,tzn,znCount,znErg,vkBasis,aPersonen,realPersonen,a,pSaison,y,pPreis,tPaket,z,zs,transZahl,tVK,znErg2,hasUndef,aGrenze,thisZL;
	var ti,tiSplit,tV,tB,tAb,vorOrt;
	var voRows="";
	hasUndef=false;
	sendPreise=new Array();
	realPersonen=0;
	aPersonen=getMrAlter();	
	for(a=0;a<aPersonen.length;a++)
	{
		if(aPersonen[a]>=zahlenAb)
		{
			realPersonen++;
		}
	}
	sPreis=bformdata['buchung']['reisedatum']['saisonpreis'];
	erg= '<div style="width:570px;text-align:right;">'+
					'<div class="copybold" style="margin-bottom:10px;white-space:nowrap;text-align:right;">'+
						langText("preise_head")+
					'</div>'+
					'<div style="text-align:right;">'+
						'<table border="0" cellpadding="2" cellspacing="0" align="right">';
	var summe=0;
	for(var x in reiseVK['preise'])
	{
		erg+=		'<tr>'+
						'<td class="copytext" align="right">';
		if(x=="standard")
		{			
			tpreis=sPreis;
			summe+=tpreis*reiseVK['preise'][x];
			erg+=			reiseVK['preise'][x]+" x "+langText("preise_standard")+" á "+
						'</td>'+
						'<td class="copybold" align="right">'+
							realPreis(tpreis,true)+'&nbsp;&euro;'+
						'</td>';
			sendPreise.push(reiseVK['preise'][x]+" x "+langText("preise_standard")+" á "+realPreis(tpreis,true)+' EUR');
		}
		else
		{
			kSplit=x.split("_");
			ePreis=parseInt(kSplit[1])/100;			
			if(kSplit[0]=="preis" && ePreis>0)
			{
				tpreis=ePreis;
				summe+=tpreis*reiseVK['preise'][x];
				erg+=			reiseVK['preise'][x]+" x "+langText("preise_erm")+" á"+
							'</td>'+
							'<td class="copybold" align="right">'+
								realPreis(tpreis,true)+'&nbsp;&euro;'+
							'</td>';
				sendPreise.push(reiseVK['preise'][x]+" x "+langText("preise_erm")+" á "+realPreis(tpreis,true)+' EUR');
			}
			else
			{
				tpreis=sPreis-(sPreis*(ePreis/100));
				summe+=tpreis*reiseVK['preise'][x];
				erg+=			reiseVK['preise'][x]+" x "+langText("preise_erm")+'&nbsp;('+ePreis+'%)'+" á "+
							'</td>'+
							'<td class="copybold" align="right">'+
								realPreis(tpreis,true)+'&nbsp;&euro;'+
							'</td>';
				sendPreise.push(reiseVK['preise'][x]+" x "+langText("preise_erm")+' ('+ePreis+'%)'+" á "+realPreis(tpreis,true)+' EUR');
			}
		}
		erg+=		'</tr>';
	}
	if(reiseVK['ezZuschlag']>0 && strohTypes[reisekennung]==null)
	{
		ezzErg=parseFloat(zl['ezz']['vk']);
		summe+=ezzErg*reiseVK['ezZuschlag'];
		erg+=		'<tr>'+
							'<td class="copytext" align="right">'+
								reiseVK['ezZuschlag']+' x '+langText("preise_ezz")+" á "+
							'</td>'+
							'<td class="copybold" align="right">'+
								realPreis(ezzErg,true)+'&nbsp;&euro;'+
							'</td>'+
						'</tr>';
		sendPreise.push(reiseVK['ezZuschlag']+' x '+langText("preise_ezz")+" á "+realPreis(ezzErg,true)+' EUR');
	}
	//Mieträder:
	var hasMietrad=false;
	var mietradCount=0;
	var collectMietr=new Array();
	var mi,mKey,mietrSumme,voText;
	mietrSumme=0;
	if(bformdata['buchung']['pdata']['mr'])
	{
		if(bformdata['buchung']['pdata']['mietrad']!=null && bformdata['buchung']['pdata']['groesse']!=null)
		{
			mietradCount++;
			hasMietrad=true;
			if(collectMietr[bformdata['buchung']['pdata']['mietrad']]==null)
				collectMietr[bformdata['buchung']['pdata']['mietrad']]=0
			collectMietr[bformdata['buchung']['pdata']['mietrad']]++;
		}
	}
	if(bformdata['buchung']['mr_count']!=null)
	{
		for(m=1;m<=bformdata['buchung']['mr_count'];m++)
		{
			if(bformdata['buchung']['mr'][m]['mietrad']!=null)
			{
				mietradCount++;
				hasMietrad=true;
				if(collectMietr[bformdata['buchung']['mr'][m]['mietrad']]==null)
					collectMietr[bformdata['buchung']['mr'][m]['mietrad']]=0
				collectMietr[bformdata['buchung']['mr'][m]['mietrad']]++;
				
			}
		}	
	}	
	if(hasMietrad)
	{
		erg+=		'<tr>'+
							'<td colspan="2">&nbsp;</td>'+
						'</tr>';
		sendZL['mietrad']['id']=zl['mietrad']['mainid'];
		sendZL['mietrad']['name']=zl['mietrad']['display_de'];
		sendZL['mietrad']['werkstatt']=zl['mietrad']['fverleih'];
		sendZL['mietrad']['anzahl']=getMietradTage();
		sendZL['mietrad']['mietrad']=new Array();
		for(mi in collectMietr)
		{
			mietrPreis=raeder[mi]['VK'];
			summe+=mietrPreis*collectMietr[mi];
			mietrSumme+=mietrPreis*collectMietr[mi];
			mKey=mi+"_"+zl['mietrad']['mainid'];
			sendZL['mietrad']['mietrad']['mietrad:'+mKey]=collectMietr[mi];
			erg+=		'<tr>'+
								'<td class="copytext" align="right">'+
									collectMietr[mi]+' x '+bformdata['mietrad_name'][mi]+" á "+							
								'</td>'+
								'<td class="copybold" align="right">'+
									realPreis(mietrPreis,true)+'&nbsp;&euro;'+
								'</td>'+
							'</tr>';
			sendPreise.push(collectMietr[mi]+' x '+bformdata['mietrad_name'][mi]+':'+" á "+realPreis(mietrPreis,true)+' EUR');
		}
		sendZL['mietrad']['zlVK']=mietrSumme;
	}
	if(bformdata["buchung"]["hp"]!=null)
	{
		hpCount=0;
		for(hp=0;hp<bformdata["buchung"]["hp"].length;hp++)
		{
			if(	bformdata["buchung"]["hp"][hp])
				hpCount++;
		}
		if(hpCount>0)
		{
			hpErg=zl['hp']['vk'];
			summe+=hpErg*hpCount;
			erg+=		'<tr>'+
								'<td class="copytext" align="right">'+
									hpCount+' x '+langText("st_hp")+" á "+
								'</td>'+
								'<td class="copybold" align="right">'+
									realPreis(hpErg,true)+'&nbsp;&euro;'+
								'</td>'+
							'</tr>';
			sendPreise.push(hpCount+' x Halbpension  á '+realPreis(hpErg,true)+' EUR');
			sendZL['hp']['anzahl']=hpCount;
			sendZL['hp']['id']=zl['hp']['mainid'];
			sendZL['hp']['zlVK']=hpErg*hpCount;
			sendZL['hp']['name']="Halbpension";
		}
	}
	//Zusatznächte:
	tzn=testZn2();
	if(tzn>0)
	{
		tznAdd=(tzn==1) ? "" : tzn+'&nbsp;';
		erg+=			'<tr><td colspan="2">&nbsp;</td></tr>'+
							'<tr><td colspan="2" class="copybold" align="right">'+
								tznAdd+langText("zn_hr")+':'+
							'</td></tr>';
		//showArray2(reiseVK);			
		for(x in reiseVK['zn'])
		{
			if(x.indexOf("_")>0)
			{
				kSplit=x.split("_");
				ePreis=parseInt(kSplit[1])/10000;	
				for(zs in reiseVK['zn'][x])
				{
					tVK=parseFloat(reiseVK['zn'][x][zs]['vk']);
					if(tVK>-1)
					{
						znErg=tVK-(ePreis*tVK);
						znErg=parseInt(znErg*100);
						znErg=znErg/100;
						summe+=znErg*reiseVK['zn'][x][zs]['anzahl'];
						znErg2=realPreis(znErg,true);
					}
					else
					{
						hasUndef=true;
						znErg2="?";
					}
					erg+=		'<tr>'+
										'<td class="copytext" align="right">'+
											reiseVK['zn'][x][zs]['anzahl']+' x '+reiseVK['zn'][x][zs]['display']+" ("+langText("zn_erm2")+") á "+
										'</td>'+
										'<td class="copybold" align="right">'+
											znErg2+'&nbsp;&euro;'+
										'</td>'+
									'</tr>';
					sendPreise.push(reiseVK['zn'][x][zs]['anzahl']+' x '+reiseVK['zn'][x][zs]['display']+" ("+langText("zn_erm2")+") a "+znErg2+' EUR');
				}
			}
			else
			{
				for(zs in reiseVK['zn'][x])
				{
					tVK=parseFloat(reiseVK['zn'][x][zs]['vk']);
					if(tVK>-1)
					{
						//znErg=tVK-(ePreis*tVK);
						znErg=tVK;
						summe+=znErg*reiseVK['zn'][x][zs]['anzahl'];
						znErg2=realPreis(znErg,true);
					}
					else
					{
						hasUndef=true;
						znErg2="?";
					}
					erg+=		'<tr>'+
										'<td class="copytext" align="right">'+
											reiseVK['zn'][x][zs]['anzahl']+' x '+reiseVK['zn'][x][zs]['display']+" á "+
										'</td>'+
										'<td class="copybold" align="right">'+
											znErg2+'&nbsp;&euro;'+
										'</td>'+
									'</tr>';
					sendPreise.push(reiseVK['zn'][x][zs]['anzahl']+' x '+reiseVK['zn'][x][zs]['display']+" á "+znErg2+' EUR');
				}
			}
		}
		for(x in reiseVK['znhp'])
		{
			tVK=parseFloat(zlZnachtHP[x]['vk']);
			if(tVK>-1)
			{
				//znErg=tVK-(ePreis*tVK);
				znErg=tVK;
				summe+=znErg*reiseVK['znhp'][x];
				znErg2=realPreis(znErg,true);
			}
			else
			{
				hasUndef=true;
				znErg2="?";
			}
			erg+=		'<tr>'+
								'<td class="copytext" align="right">'+
									reiseVK['znhp'][x]+' x '+zlZnachtHP[x]['display_'+language]+" á "+
								'</td>'+
								'<td class="copybold" align="right">'+
									znErg2+'&nbsp;&euro;'+
								'</td>'+
							'</tr>';
			sendPreise.push(reiseVK['znhp'][x]+' x '+zlZnachtHP[x]['display_'+language]+" á "+znErg2+' EUR');
		}
	}
	//}
	if(bformdata['buchung']['pakete']!=null)
	{		
		for(p in reiseVK['pakete'])
		{			
			thisPaket=bformdata['buchung']['reisedatum']['pakete'][p];
			//showArray2(paketDef[thisPaket['kennung']]);return;
			erg+=			'<tr><td colspan="2">&nbsp;</td></tr>'+
							'<tr><td colspan="2" class="copybold" align="right">'+
								langText("st_pakete")+':&nbsp;'+bformdata['buchung']['reisedatum']['pakete'][p]['katalogname']+
							'</td></tr>';
			sendPreise.push("Paket: "+bformdata['buchung']['reisedatum']['pakete'][p]['katalogname']+":");
			pPreis=0;
			thisVK=reiseVK['pakete'][p];
			for(y in thisPaket['preis'])
			{
				pPreis=parseFloat(thisPaket['preis'][y]);
				break;
			}
			
			for(x in thisVK)
			{
				erg+=		'<tr>'+
								'<td class="copytext" align="right">';
				if(x=="paketeStandard")
				{
					tpreis=pPreis;
					summe+=tpreis*thisVK[x];
					erg+=		thisVK[x]+" x "+langText("preise_standard")+" á "+
								'</td>'+
								'<td class="copybold" align="right">'+
									realPreis(tpreis,true)+'&nbsp;&euro;'+
								'</td>';
					sendPreise.push(thisVK[x]+" x Reisepreis á "+realPreis(tpreis,true)+" EUR");
				}
				else if(x=="paketeEZ")
				{
					//Paket-EZ-Zuschlag ermitteln!
					tPaket=paketDef[thisPaket['kennung']];
					if(tPaket['zleistungen']!=null)
					{
						for(z=0;z<tPaket['zleistungen'].length;z++)
						{
							if(tPaket['zleistungen'][z]['ltyp']=='zuschlag_ez')
							{
								pPreis+=parseFloat(tPaket['zleistungen'][z]['vk']);
								break;
							}
						}
					}
					tpreis=pPreis;
					summe+=tpreis*thisVK[x];
					erg+=		thisVK[x]+" x "+langText("preise_standard")+" á "+
								'</td>'+
								'<td class="copybold" align="right">'+
									realPreis(tpreis,true)+'&nbsp;&euro;'+
								'</td>';
					sendPreise.push(thisVK[x]+" x Reisepreis á "+realPreis(tpreis,true)+" EUR");
				}
				else
				{
					kSplit=x.split("_");
					ePreis=parseInt(kSplit[1])/100;			
					if(kSplit[0]=="preis" && ePreis>0)
					{
						tpreis=ePreis;
						summe+=tpreis*thisVK[x];
						erg+=			thisVK[x]+" x "+langText("preise_erm")+" á "+
									'</td>'+
									'<td class="copybold" align="right">'+
										realPreis(tpreis,true)+'&nbsp;&euro;'+
									'</td>';
						sendPreise.push(thisVK[x]+" x ermäßigter Reisepreis á "+realPreis(tpreis,true)+" EUR");
					}
					else
					{
						//prozente
						tpreis=pPreis -(pPreis*(ePreis/100));
						summe+=tpreis*thisVK[x];
						erg+=			thisVK[x]+" x "+langText("preise_erm")+'&nbsp;('+ePreis+'%)'+" á "+
									'</td>'+
									'<td class="copybold" align="right">'+
										realPreis(tpreis,true)+'&nbsp;&euro;'+
									'</td>';
						sendPreise.push(thisVK[x]+' x ermäßigter Reisepreis&nbsp;('+ePreis+'%)'+" á "+realPreis(tpreis,true)+" EUR");
					}
				}
				erg+=		'</tr>';
			}
		}
	}
	if(bformdata['buchung']['transfer']!=null)
	{
		//realPersonen
		if(bformdata['buchung']['transfer']>-1)
		{
			thisZL=zl['transfer']['zusatz'][bformdata['buchung']['transfer']];
			transZahl=realPersonen;
			tpreis=parseFloat(thisZL['vk']);
			vorOrt=false;
			if(thisZL['vorort']!=null)
			{
				if(thisZL['vorort']=="t")
					vorOrt=true;
			}
			tA='á';
			if(thisZL['labh']!=null)
			{
				if(thisZL['labh']=="Personen" && thisZL['lpreise']!=null)
				{
					tA='';
					for(ti=0;ti<thisZL['lpreise'].length;ti++)
					{
						tiSplit=thisZL['lpreise'][ti]['lpreise_param'].split("-");
						tV=parseInt(tiSplit[0]);
						tB=parseInt(tiSplit[1]);
						if(tV<=transZahl && transZahl<=tB)
						{
							tpreis=parseFloat(thisZL['lpreise'][ti]['lpreise_vk']);
							transZahl=1;
							break;
						}
					}
				}
			}			
			if(vorOrt)
			{				
				voRows+=		'<tr>'+
									'<td class="copytext" align="right">'+transZahl+' x '+thisZL['display_'+language]+' <b>('+langText("zVorOrt")+' '+tA+'</b></td>'+
									'<td class="copybold" align="right"> '+realPreis(tpreis,true)+' &euro;)</td>'+
								'</tr>';
				sendPreise.push("("+transZahl+" x "+thisZL['display_de']+"&nbsp;zahlbar vor Ort "+tA+" "+realPreis(tpreis,true)+" EUR)");
			}
			else
			{				
				summe+=tpreis*transZahl;
				erg+=			'<tr><td colspan="2">&nbsp;</td></tr>'+
								'<tr>'+
									'<td class="copytext" align="right">'+transZahl+' x '+thisZL['display_'+language]+' '+tA+'</td>'+
									'<td class="copybold" align="right"> '+realPreis(tpreis,true)+' &euro;</td>'+
								'</tr>';
				sendPreise.push(transZahl+" x "+thisZL['display_de']+"&nbsp; "+tA+" "+realPreis(tpreis,true)+" EUR");
			}
			
			
			sendZL['transfer']=new Array();
			sendZL['transfer']['id']=thisZL['mainid'];
			sendZL['transfer']['anzahl']=transZahl;
			sendZL['transfer']['name']=thisZL['display_de'];
			sendZL['transfer']['zlVK']=tpreis*transZahl;
			sendZL['transfer']['zahlbar_vorort']=(vorOrt) ? "true" : "false";
		}
		else if(zl['transfer']!=null)
		{
			if(zl['transfer']['enthalten']!=null)
			{
				if(zl['transfer']['enthalten']['stornierbar']!=null && bformdata['buchung']['notransfer'])
				{
					transZahl=realPersonen;
					tA='á';
					if(zl['transfer']['enthalten']['vkred']!=null)
					{				
						tpreis=parseFloat(zl['transfer']['enthalten']['vkred']);
						summe-=transZahl*tpreis;
						if(tpreis!=0)
						{
							notransText=langText("transfer_notrans2").replace(/#wert/,realPreis(tpreis,false));										
							erg+=	'<tr><td colspan="2">&nbsp;</td></tr>'+
									'<tr>'+
										'<td class="copytext" align="right">'+notransText+' '+tA+'</td>'+
										'<td class="copybold" align="right">- '+realPreis(tpreis,false)+' &euro;</td>'+
									'</tr>';
							
						}
						notransText=notransText.replace(/€/,"EUR");
						sendPreise.push(notransText+" "+tA+" -"+realPreis(tpreis,true)+" EUR");
					}
				}
			}
		}
	}	
	if(zl['buchbar']!=null)
	{		
		if(sendZL['buchbar']==null)
			sendZL['buchbar']=new Object();
		var bbData=new Object();
		var bkey;
		for(b=0;b<zl['buchbar'].length;b++)
		{
			thisZL=zl['buchbar'][b];
			vorOrt=false;
			if(thisZL['vorort']!=null)
			{
				if(thisZL['vorort']=="t")
					vorOrt=true;
			}
			if(bformdata['buchung']['pdata']['mr']=="false")
			{
				if(bformdata['buchung']['buchbar'][b][0] != null && bformdata['buchung']['buchbar'][b][0]==true)
				{
					if(bbData[zl['buchbar'][b]['mainid']]==null)
					{
						bbData[zl['buchbar'][b]['mainid']]=new Object();
						bbData[zl['buchbar'][b]['mainid']]['id']=zl['buchbar'][b]['mainid'];
						bbData[zl['buchbar'][b]['mainid']]['name']=zl['buchbar'][b]['display_'+language];
						bbData[zl['buchbar'][b]['mainid']]['name_de']=zl['buchbar'][b]['display_de'];
						bbData[zl['buchbar'][b]['mainid']]['anzahl']=0;
						bbData[zl['buchbar'][b]['mainid']]['vk']=zl['buchbar'][b]['vk'];
					}
					bbData[zl['buchbar'][b]['mainid']]['anzahl']++;
				}
			}
			if(bformdata['buchung']['mr_count']!=null)
			{
				for(m=1;m<=bformdata['buchung']['mr_count'];m++)
				{
					if(bformdata['buchung']['buchbar'][b][m] != null && bformdata['buchung']['buchbar'][b][m]==true)
					{
						if(bbData[zl['buchbar'][b]['mainid']]==null)
						{
							bbData[zl['buchbar'][b]['mainid']]=new Object();
							bbData[zl['buchbar'][b]['mainid']]['name']=zl['buchbar'][b]['display_'+language];
							bbData[zl['buchbar'][b]['mainid']]['id']=zl['buchbar'][b]['mainid'];
							bbData[zl['buchbar'][b]['mainid']]['name_de']=zl['buchbar'][b]['display_de'];
							bbData[zl['buchbar'][b]['mainid']]['anzahl']=0;
							bbData[zl['buchbar'][b]['mainid']]['vk']=zl['buchbar'][b]['vk'];
						}
						bbData[zl['buchbar'][b]['mainid']]['anzahl']++;
					}					
				}
				
			}
		}
		for(bkey in bbData)
		{
			tPreis=parseFloat(bbData[bkey]['vk']);			
			if(vorOrt)
			{				
				voRows+=		'<tr>'+
									'<td class="copytext" align="right">'+bbData[bkey]['anzahl']+' x '+bbData[bkey]['name']+' <b>('+langText("zVorOrt")+'</b></td>'+
									'<td class="copybold" align="right"> '+realPreis(tPreis,true)+' &euro;)</td>'+
								'</tr>';
				//sendPreise.push("("+transZahl+" x "+thisZL['display_de']+"&nbsp;zahlbar vor Ort "+tA+" "+realPreis(tpreis,true)+" EUR)");
			}
			else
			{
				summe+=tPreis*bbData[bkey]['anzahl'];
				erg+=		'<tr>'+
									'<td class="copytext" align="right">'+
										bbData[bkey]['anzahl']+' x '+bbData[bkey]['name']+" á "+
									'</td>'+
									'<td class="copybold" align="right">'+
										realPreis(tPreis,true)+'&nbsp;&euro;'+
									'</td>'+
								'</tr>';
			}
			sendPreise.push(bbData[bkey]['anzahl']+" x "+bbData[bkey]['name']+" á "+realPreis(tPreis,true)+" EUR");
			temp=new Array();
			temp['id']=bkey;
			temp['anzahl']=bbData[bkey]['anzahl'];
			temp['zlVK']=tPreis * bbData[bkey]['anzahl'];
			temp['name']=bbData[bkey]['name_de'];
			sendZL['buchbar'][bkey]=temp;
		}
	}
	if(zl['inkludiert']!=null)
	{
		sendZL['inc']=new Array();		
		var zlInclude=new Array();	
		for(z=0;z<zl['inkludiert'].length;z++)
		{
			aGrenze=0;
			if(zl['inkludiert'][z]['altersgrenze']!=null)
			{
				if(parseInt(zl['inkludiert'][z]['altersgrenze'])>0)
					aGrenze=parseInt(zl['inkludiert'][z]['altersgrenze']);
			}
			for(a=0;a<aPersonen.length;a++)
			{
				if(aPersonen[a]>=aGrenze)
				{
					if(zlInclude[z]==null)
						zlInclude[z]=0;
					zlInclude[z]++;
				}
			}
		}
		if(zlInclude.length>0)
		{
			erg+=			'<tr><td colspan="2">&nbsp;</td></tr>';
			for(z in zlInclude)
			{
				tPreis=zlInclude[z] * parseFloat(zl['inkludiert'][z]['vk']);
				summe+=tPreis;
				erg+=		'<tr>'+
									'<td class="copytext" align="right">'+
										zlInclude[z]+' x '+zl['inkludiert'][z]['display_'+language]+" á "+
									'</td>'+
									'<td class="copybold" align="right">'+
										realPreis(parseFloat(zl['inkludiert'][z]['vk']),true)+'&nbsp;&euro;'+
									'</td>'+
								'</tr>';
				sendPreise.push(zlInclude[z]+' x '+zl['inkludiert'][z]['display_'+language]+" á "+realPreis(parseFloat(zl['inkludiert'][z]['vk']),true)+" EUR");
				temp=new Array();
				temp['id']=zl['inkludiert'][z]['mainid'];
				temp['anzahl']=zlInclude[z];
				temp['zlVK']=tPreis;
				temp['name']=zl['inkludiert'][z]['display_de'];
				sendZL['inc'].push(temp);
			}
		}
	}
	if(withFrabatt)
	{
		if(frabatt['typ']=="fix_person")
		{
			if(vollzahler==0)
				vollzahler=1;
			frabatt['summe']=vollzahler*frabatt['wert'];
			erg+=		'<tr>'+
								'<td class="copytext" align="right">'+
									langText("fbrabatt_list")+
									'&nbsp;('+
									langText("fbrabatt_listadd_fixperson").replace(/#betrag/,realPreis(frabatt['wert'],false))+
									')'+
								'</td>'+
								'<td class="copybold" align="right">-'+
									realPreis(frabatt['summe'],true)+'&nbsp;&euro;'+
								'</td>'+
							'</tr>';
			sendPreise.push("abzüglich Frühbucherrabatt (Fixpreis: "+vollzahler+" Vollzahler): "+realPreis(frabatt['summe'],true)+" EUR");
		}
		summe-=frabatt['summe'];
	}
	if(voRows!="")
		voRows=			'<tr><td colspan="2">&nbsp;</td></tr>'+voRows;	
	if(sRabatt['bezug']!=null)
	{
		erg+=			'<tr><td colspan="2">&nbsp;</td></tr>'+
						'<tr>'+
							'<td class="copytext" style="font-style:italic;" align="right">'+langText("preise_gesamt")+'</td>'+
							'<td class="copytext" style="font-style:italic;" align="right">'+realPreis(summe,true)+'&nbsp;&euro;</td>'+
						'</tr>';	
		if(sRabatt['art']=="prozent" && sRabatt['bezug']=="reise")
		{
			srabattBetrag=summe*sRabatt['betrag']/100;
			erg+=		'<tr>'+
							'<td class="copybold" align="right">'+langText("rabatt")+' ('+sRabatt['betrag']+'%)</td>'+
							'<td class="copybold" align="right">-'+realPreis(srabattBetrag,true)+'&nbsp;&euro;</td>'+
						'</tr>';	
			sendPreise.push('abzüglich Rabatt ('+sRabatt['betrag']+'%) '+realPreis(srabattBetrag,true)+' EUR');
		}
		else if(sRabatt['art']=="betrag" && sRabatt['bezug']=="person")
		{
			if(personen==0)
				personen=1;
			srabattBetrag=sRabatt['betrag']*personen;
			erg+=		'<tr>'+
							'<td class="copybold" align="right">'+langText("rabatt")+' ('+sRabatt['betrag']+'&nbsp;&euro;/'+langText("zn_person")+')</td>'+
							'<td class="copybold" align="right">-'+realPreis(srabattBetrag,true)+'&nbsp;&euro;</td>'+
						'</tr>';
			sendPreise.push('abzüglich Rabatt ('+sRabatt['betrag']+'/Person) '+realPreis(srabattBetrag,true)+' EUR');
		}		
		summe-=srabattBetrag;
	}
	erg+=			'<tr><td colspan="2">&nbsp;</td></tr>'+
					'<tr>'+
						'<td class="copybold" align="right">'+langText("preise_gesamt")+'</td>'+
						'<td class="copybold" align="right">'+realPreis(summe,true)+'&nbsp;&euro;</td>'+
					'</tr>'+voRows;		
	if(hasUndef)
	{
		erg+=			'<tr>'+
							'<td class="copytext" align="right" colspan="2">'+langText("preise_undef")+'</td>'+
						'</tr>';
	}				
	erg+=		'</table>'+
			'</div>'+
		'</div>';	
	sendPreise.push('Gesamtsumme '+realPreis(summe,true)+" EUR");
	return erg;
}
function startRealOrder(){
	orderType="real";
	var testGeb;
	/*
	for(var key in bformdata['steps'])
	{
		if(key!="ordertype" && key!="reisedatum")
		{
			bformdata['steps'][key]=false;
			bformdata['dataReady'][key]=false;
		}
	}
	*/
	//bformdata['dataReady']['pdata']=false;
	bformdata['dataReady']['land']=false;
	bformdata['dataReady']['pdata']=false;
	bformdata['dataReady']['mr']=false;
	bformdata['dataReady']['freitext']=false;
	bformdata['steps']['land']=true;
	bformdata['steps']['mr']=false;
	bformdata['steps']['pdata']=false;
	bformdata['steps']['freitext']=true;		
	//bformdata['steps']['preise']=false;
	bformdata['buchung']['pdata']['groesse']=elimElement("groesse",bformdata['buchung']['pdata']);
	if(bformdata['buchung']['mr_count']>0)
	{
		for(m=1;m<=bformdata['buchung']['mr_count'];m++)
		{
			testGeb=	bformdata['buchung']['mr'][m]['gebdatum']['tag']+
						"-"+
						bformdata['buchung']['mr'][m]['gebdatum']['monat']+
						"-"+
						bformdata['buchung']['mr'][m]['gebdatum']['jahr'];
			if(testGeb=="1-1-1966")
				bformdata['buchung']['mr'][m]['gebdatum']=new Object();
			if(bformdata['buchung']['mr'][m]['groesse']!=null)
				bformdata['buchung']['mr'][m]=elimElement("groesse",bformdata['buchung']['mr'][m]);
		}	
	}
	window.scrollTo(0,9);
	writeBForm();
}
function bform_submit_gvon(){
	if(bformdata['buchung']['gvon']!=null && !isNaN(bformdata['buchung']['gvon']['index']))
	{
		bformdata['dataReady']['gvon']=true;
		bformdata['steps']['agb']=true;
		writeBForm();		
	}	
}
function checkGvon(gindex,isFt){
	if(bformdata['buchung']['gvon']==null)
		bformdata['buchung']['gvon']=new Array();
	bformdata['buchung']['gvon']['index']=gindex;
	if(isFt)
	{
		bformdata['buchung']['gvon']['gneu']=document.createForm.gvon_neu.value;
		document.createForm.gvon_neu.focus();
	}
	else
		document.createForm.gvon_neu.value="";
}
function bform_buchungst_gvon(){
	var erg="";
	var gvonA,gSplit,rChecked,gNeu,gChecked,isFt;
	if(bformdata['buchung']['gvon']!=null)
		tText=bformdata['buchung']['gvon'];
	if(bformdata['dataReady']['gvon']==true)
	{		
		erg+=	'<div class="copytextGr">';
		gvonA=langText("pdata_gvon").split(",");
		gSplit=gvonA[bformdata['buchung']['gvon']['index']].split("|");
		erg+=gSplit[1];
		if(gSplit[2]=="ft" && typeof bformdata['buchung']['gvon']['gneu']!="undefined")
		{
			erg+='<br />'+bformdata['buchung']['gvon']['gneu'];
		}
		erg+=	'</div>'+
					'<div style="width:100%;text-align:right;">'+
						'<input type="Button" onclick="changeStep(\'gvon\');" name="change_pdata" class="wbutton2" value="'+langText("change")+'">'+
					'</div>';
	}
	else
	{
		erg+=	'<div class="copybold">'+
						langText("st_gvon_hr")+
					'</div>'+
					'<div>'+
						'<table border="0" cellpadding="0" cellspacing="0">';
		
		gvonA=langText("pdata_gvon").split(",");
		gChecked=-1;
		if(bformdata['buchung']['gvon']!=null)
		{
			if(typeof bformdata['buchung']['gvon']['index']!="undefined")
				gChecked=bformdata['buchung']['gvon']['index'];
		}
		for(var g=0;g<gvonA.length;g++)
		{
			gSplit=gvonA[g].split("|");
			if(gChecked==-1)
			{
				if(gSplit[2]=="standard")
				{
					gChecked=g;
					if(bformdata['buchung']['gvon']==null)
						bformdata['buchung']['gvon']=new Array();
					bformdata['buchung']['gvon']['index']=g;
				}
			}
			rChecked=(gChecked == g) ? " checked" : "";
			isFt=(gSplit[2]=="ft") ? "true" : "false";
			erg+=		'<tr>'+
								'<td><input onclick="checkGvon('+g+','+isFt+');" type="radio" name="gvon" value="'+g+'"'+rChecked+'></td>'+
								'<td>&nbsp;</td>'+
								'<td class="copytext">'+gSplit[1]+'</td>'+
							'</tr>';
			if(gSplit[2]=="ft")
			{
				gNeu="";
				if(bformdata['buchung']['gvon']!=null)
				{
					if(typeof bformdata['buchung']['gvon']['gneu']!="undefined")
						gNeu=bformdata['buchung']['gvon']['gneu'];
				}
				erg+=		'<tr>'+
									'<td>&nbsp;</td>'+
									'<td>&nbsp;</td>'+
									'<td><input onblur="checkGvon('+g+','+isFt+');" onfocus="checkGvon('+g+','+isFt+');" type="text" class="FBL" name="gvon_neu" value="'+gNeu+'"></td>'+
								'</tr>';
			}
		}	
		erg+=		'</table>'+
					'</div>';
		showButton=true;
	}	
	return erg;
}
function resetEntities(txt){
	txt=txt.replace(/&nbsp;/g," ");
	txt=txt.replace(/ä/g,"ä");
	txt=txt.replace(/Ä/g,"Ä");
	txt=txt.replace(/ö/g,"ö");
	txt=txt.replace(/Ö/g,"Ö");
	txt=txt.replace(/ü/g,"ü");
	txt=txt.replace(/Ü/g,"Ü");
	txt=txt.replace(/ß/g,"ß");
	txt=txt.replace(/&/g,"und");
	return txt;
}
function inArray(val,tArray){
	for(var x in tArray)
	{
		if(tArray[x]==val)
			return true;
	}
	return false;
}
function copyArray(quelle){
	var ziel=new Array();
	for(var x in quelle)
	{
		if(typeof quelle[x]=="object")
		{
			ziel[x]=new Array();
			ziel[x]=copyArray(quelle[x]);
		}
		else
		{
			ziel[x]=quelle[x];
		}
	}
	return ziel;
}
function realPreis(x,nullen){
	nullen=(typeof nullen=="undefined") ? false : true;
	var nFloat,nNumberStr,nSplit,rVal;
	var y=(""+x).replace(/,/g,".");
	if(y.indexOf(".")>-1)
	{
		nNumber=parseFloat(y);
		nSplit=y.split(".");
		if(nSplit[1].length>2)
		{
			nSplit[1]=nSplit[1].substring(0,2);			
		}
		if(nSplit[1].length==0)
			nSplit[1]=(nullen) ? "00" : "-";
		if(nSplit[1].length==1)
			nSplit[1]+="0";
		nNumberStr=	nSplit[0]+","+nSplit[1].substring(0,2);		
	}
	else
	{
		nNumberStr=(nullen) ? y+",00" : y+",-";
	}
	return nNumberStr;
}
function makeString(x){
	var erg="";
	var check="";
	check=x+"";
	erg=check;
	if (check.length<2)
		erg="0"+check ;
	return erg;
}
function email_validate(str) {

	var at="@"
	var dot="."
	var lat=str.indexOf(at)
	var lstr=str.length
	var ldot=str.indexOf(dot)
	if (str.indexOf(at)==-1){
	   return false;
	}

	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
	   return false;
	}

	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
	    return false;
	}

	 if (str.indexOf(at,(lat+1))!=-1){
	    return false;
	 }

	 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
	    return false;
	 }

	 if (str.indexOf(dot,(lat+2))==-1){
	   return false;
	 }
	
	 if (str.indexOf(" ")!=-1){
	   return false;
	 }

	 return true;				
}
function elimElement(key,tdata){
	var thisData=new Array();
	for(var x in tdata)
	{
		if(x != key)
			thisData[x]=tdata[x];
	}
	return thisData;
}
function langText(kennung){
	var erg="";
	//alert(kennung);
	if(typeof langtxt[language][kennung]!="undefined")
	{
		erg=langtxt[language][kennung];
		erg=erg.replace(/#zahlenAb/g,zahlenAb);
	}
	return erg;
}
function Numsort (a, b) {
  return a - b;
}
function getDayList(ref){
	var erg="";
	var ta=new Array();
	var tSplit;
	if(ref['transtage']!=null)
	{
		tSplit=ref['transtage'].split(",");
		for(var t=0;t<tSplit.length;t++)
		{
			if(days2[language][tSplit[t]]!=null)
				ta.push(days2[language][tSplit[t]]);
		}
	}
	erg=ta.join(", ");
	return erg;
}
function  getDateStr(sqlDate){
	//alert(sqlDate);
	var dSplit=sqlDate.split("-");
	var erg=dSplit[2]+"."+dSplit[1]+"."+dSplit[0];
	return erg;
}
function getMsecsFromSql(sqlDate){
	var dSplit=sqlDate.split("-");
	var tag=myParseInt(dSplit[2]);
	var monat=myParseInt(