HWB3Mask = function() {
	this.dtArr = new Date();
	this.nights = 1;
	this.minnights=1;
	this.maxnights=1;
	this.align='Bl';

	this.setArrival = function() {
		var a=document.getElementById('arrivalmmyy').value.split("/");
		var ad=document.getElementById('arrivalday'),m=a[0],y=a[1],d=ad.value,dim=new Date(y,m,0).getDate(),tm=new Date(y,m-1,1);
		ad.options.length=0;
		for(var i=1;i<=dim;i++)
			ad.options[i-1] = new Option(i,i);
		ad.value=d>dim?dim:d;
		document.getElementById('arrdate').value=m+'/'+d+'/'+y;
		adjustDeparture();
		setNights();
	}
	this.setDeparture = function() {
		var a=document.getElementById('departuremmyy').value.split("/");
		var dd=document.getElementById('departureday'),m=a[0],y=a[1],d=dd.value,dim=new Date(y,m,0).getDate(),tm=new Date(y,m-1,1);
		dd.options.length=0;
		for(var i=1;i<=dim;i++)
			dd.options[i-1] = new Option(i,i);
		dd.value=d>dim?dim:d;
		document.getElementById('depdate').value=m+'/'+d+'/'+y;
		setNights();
	}

	var setNights = function() {
		var dt1 = new Date(document.getElementById('arrdate').value);
		var dt2 = new Date(document.getElementById('depdate').value);
		var n = ((dt2.getTime()-dt1.getTime())/86400000);
		document.getElementById('nights').value=(n>0&&n<40)?n:1;
		if(n>40) adjustDeparture(1);
		else if(n<1) {
			var amy=document.getElementById('arrivalmmyy');
			var dmy=document.getElementById('departuremmyy');
			if( amy.selectedIndex==dmy.selectedIndex )
			{
				dmy.selectedIndex=dmy.selectedIndex+1;
				setDeparture();
			}
			else
				adjustArrival(-1);
		}
	}
	var adjustDeparture=function(n) {
		var n=n||document.getElementById('nights').value;
		var dt1=new Date(document.getElementById('arrdate').value);
		var dt2=new Date(dt1.getTime()+(86400000*n));
		var d=dt2.getDate(),m=dt2.getMonth()+1,y=dt2.getFullYear();
		document.getElementById('depdate').value=m+'/'+d+'/'+y;
		setDates('departure',dt2);
	}
	var adjustArrival=function(n) {
		var n=n||document.getElementById('nights').value;
		var dt1 = new Date(document.getElementById('depdate').value);
		var dt2 = new Date(dt1.getTime()+(86400000*n));
		var d=dt2.getDate(),m=dt2.getMonth()+1,y=dt2.getFullYear();
		document.getElementById('arrdate').value=m+'/'+d+'/'+y;
		setDates('arrival',dt2);
	}
	var setDates=function(fn,dt) {
		var d=dt.getDate().toString(),m=(dt.getMonth()+1).toString(),y=dt.getFullYear().toString(),dim=new Date(y,m,0).getDate();
		var od=document.getElementById(fn+'day');
		od.options.length=0;
		for(var i=1;i<=dim;i++)
			od.options[i-1] = new Option(i,i);
		document.getElementById(fn+'mmyy').value=m+'/'+y;
		document.getElementById(fn+'day').value=d;
	};
	this.showRooms=function(o) {
		var max=o[o.selectedIndex].value;
		for(var i=1; i<=o.options.length;i++)
		{
			if(i<=max)
				document.getElementById('hwbro'+String(i)).style.display='';
			else
				document.getElementById('hwbro'+String(i)).style.display='none';
		}
	};
	this.setArr=function(cal) {setDates('arrival',cal.date); adjustDeparture(); setNights(); }
	this.setDep=function(cal) {setDates('departure',cal.date); setNights(); }
	this.create=function(dtArr,nights,minnights,align) {
		var dtArr = dtArr||new Date();
		var nights = nights||1;
		var minnights=minnights||1;
		this.align=align||'Bl';

		var ad=document.getElementById('arrivalday'),dd=document.getElementById('departureday'),amy=document.getElementById('arrivalmmyy'),dmy=document.getElementById('departuremmyy');
		ad.onchange=this.setArrival;
		amy.onchange=this.setArrival;
		dd.onchange=this.setDeparture;
		dmy.onchange=this.setDeparture;

		var dt=dtArr,y=dt.getFullYear(),m=dt.getMonth()+1;
		amy.options.length=0;
		dmy.options.length=0;
		for(var i=m;i<=24;i++) {
			amy.options[amy.options.length]=new Option(dt.print('%b. %y'),m+'/'+y);
			dmy.options[dmy.options.length]=new Option(dt.print('%b. %y'),m+'/'+y);
			dt=new Date(y,m,1);
			y=dt.getFullYear(),m=dt.getMonth()+1;
		}
		var dtD = dtArr;
		dtD=new Date(dtD.getDate() + Math.round(nights * 86400000));

		setDates('arrival', dtArr);
		setDates('departure', dtD);
		document.getElementById('nights').value = nights;
		this.setArrival();
		this.setDeparture();

		Calendar.setup({inputField:"arrdate",ifFormat:"%m/%d/%Y",button:"hwbdt1",align:this.align,singleClick:true,weekNumbers:false,onUpdate:this.setArr,range:[dtArr.getFullYear(),dtArr.getFullYear()+1],dateStatusFunc:function(date){return(dtArr.getTime()-86400000<date.getTime()?false:true)}});
		Calendar.setup({inputField:"depdate",ifFormat:"%m/%d/%Y",button:"hwbdt2",align:this.align,singleClick:true,weekNumbers:false,onUpdate:this.setDep,range:[dtArr.getFullYear(),dtArr.getFullYear()+1],dateStatusFunc:function(date){return(new Date(document.getElementById('arrdate').value).getTime()<date.getTime()?false:true)}});
	}

	this.display=function() {
	
	var out='<div id="HWBMask">';
	out+="<form method=\"post\" target=\"_bookingwindow\" action=\"https://secure.hotelwebservice.de/reservation/?hotelID=C3B09F67-215A-CD30-7A0C297BDA31D51F&amp;lang=DE&amp;company=0\" onsubmit=\"window.open('','_bookingwindow','width=600,height=520,status=yes,scrollbars=yes,resizable=yes')\">";
	out+='<input type="hidden" name="dates.nights" id="nights" value="1" /><input type="hidden" name="dates.dtarrival" value="" id="arrdate" /><input type="hidden" name="dates.dtdeparture" id="depdate" value="" />';
	out+='<table width="100%" cellspacing="0" cellpadding="0" border="0">';
	
	out+='<tr><td><label for="arrivalday">Anreise:</label></td>';
	out+='<td><select name="dates.arrivalDay" id="arrivalday" style="width:45px;"></select></td>';
	out+='<td><select name="dates.arrivalMMYY" id="arrivalmmyy"></select></td>';
	out+='<td><img src="http://secure.hotelwebservice.de/media/_.gif" id="hwbdt1" alt="Datum wählen" title="Datum wählen" /></td></tr>';
	
	out+='<tr><td><label for="departureday">Abreise:</label></td>';
	out+='<td><select name="dates.departureDay" id="departureday" style="width:45px;"></select></td>';
	out+='<td><select name="dates.departureMMYY" id="departuremmyy"></select></td>';
	out+='<td><img src="http://secure.hotelwebservice.de/media/_.gif" id="hwbdt2" alt="Datum wählen" title="Datum wählen" /></td></tr>';
	
	out+='<tr><td><label for="roomsamount">Zimmer:</label></td>';
	out+='<td colspan="3"><select name="dates.iRooms" id="roomsamount" onchange="HWBMask.showRooms(this)" style="width: 45px;"><option value="1">1</option><option value="2">2</option><option value="3">3</option></select></td></tr>';
	out+='</table><br />';
	
	out+='<table width="100%" cellspacing="0" cellpadding="0" border="0"><col width="30%" /><col width="23%" /><col width="23%" /><col width="23%" />';
	out+='<tr><td rowspan="2" valign="top">Zimmer</td><td rowspan="2" valign="top">Erw.</td><td colspan="2" align="center">Kinder</td></tr>';
	
	out+='<tr><td valign="top" align="center">bis 6<br />Jahre</td><td valign="top" align="center">bis 12<br />Jahre</td></tr>';
	out+='</table>';
	
	out+='<div id="hwbro1">';
	out+='<table width="100%" cellspacing="0" cellpadding="0" border="0"><col width="30%" /><col width="23%" /><col width="23%" /><col width="23%" />';
	out+='<tr><td><label for="e1">#01</label></td><td><select name="dates.e_1" id="e1"><option value="1">1</option><option value="2">2</option></select></td>';
	out+='<td align="center"><select name="dates.k1_1"><option value=" "></option><option value="1">1</option></select></td>';out+='<td align="center"><select name="dates.k2_1"><option value=" "></option><option value="1">1</option></select></td>';
	out+='</tr></table></div>';
	
	out+='<div id="hwbro2" style="display: none;">';
	out+='<table width="100%" cellspacing="0" cellpadding="0" border="0"><col width="30%" /><col width="23%" /><col width="23%" /><col width="23%" />';
	out+='<tr><td><label for="e2">#02</label></td><td><select name="dates.e_2" id="e2"><option value="1">1</option><option value="2">2</option></select></td>';
	out+='<td align="center"><select name="dates.k1_2"><option value=" "></option><option value="1">1</option></select></td>';out+='<td align="center"><select name="dates.k2_2"><option value=" "></option><option value="1">1</option></select></td>';
	out+='</tr></table></div>';
	
	out+='<div id="hwbro3" style="display: none;">';
	out+='<table width="100%" cellspacing="0" cellpadding="0" border="0"><col width="30%" /><col width="23%" /><col width="23%" /><col width="23%" />';
	out+='<tr><td><label for="e3">#03</label></td><td><select name="dates.e_3" id="e3"><option value="1">1</option><option value="2">2</option></select></td>';
	out+='<td align="center"><select name="dates.k1_3"><option value=" "></option><option value="1">1</option></select></td>';out+='<td align="center"><select name="dates.k2_3"><option value=" "></option><option value="1">1</option></select></td>';
	out+='</tr></table></div>';
	
	out+='<br /><table width="100%" cellspacing="0" cellpadding="0" border="0"><tr>';
	//out+='<td>&nbsp;Promotion code (optional):<br />';
	out+='<td>&nbsp;Login TreueCard (optional)<br />';
	out+='&nbsp;<input type="text" name="dates.promocode" id="promocode" maxlength="20" style="width:90%;" value="" /></td>';
	out+='</tr></table>';
	
	out+='<div id="hwbbutton" style="width:100%;">';
	out+="<input type=\"submit\" name=\"dosearch\" value=\"Verf&uuml;gbarkeit pr&uuml;fen\" class=\"submit\" onmouseover=\"this.className='submitOver';\" onmouseout=\"this.className='submit';\" />&nbsp;";
	out+='</div></form></div>'; 
	document.write(out);
	this.create();
	}
}
HWBMask = new HWB3Mask();

document.write('<script type="text/javascript" src="http://secure.hotelwebservice.de/media/_js/calendar/cal10.js"><\/script>');
document.write('<script type="text/javascript" src="http://secure.hotelwebservice.de/media/_js/calendar/lang/calendar-de.js"><\/script>');

/*
var mybuscr = "CMnet/dv/hotel-sommerfeld/templates2010/js/buchungsmaske/";
document.write('<script type="text/javascript" src="' + mybuscr + 'cal10.js"><\/script>');
document.write('<script type="text/javascript" src="' + mybuscr + 'calendar-de.js"><\/script>');
*/
