// JavaScript Document

/* vol */
function validateForm_vol(form) {
	var orig = document.bookFlightsForm.origin.value;
	var dest = document.bookFlightsForm.dest.value;
	orig = orig.replace("ä", "ae");
	orig = orig.replace("Ä", "Ae");
	orig = orig.replace("ü", "ue");
	orig = orig.replace("Ü", "Ue");
	orig = orig.replace("ö", "oe");
	orig = orig.replace("Ö", "Oe");
	orig = orig.replace("ß", "ss");
	orig = orig.replace("é", "e");
	orig = orig.replace("è", "e");
	orig = orig.replace("ê", "e");
	orig = orig.replace("à", "a");
	orig = orig.replace("ô", "o");
	orig = orig.replace("î", "i");
	orig = orig.replace("â", "a");
	orig = orig.replace("ï", "i");
	orig = orig.replace("Â", "a");
	orig = orig.replace("Î", "i");
	orig = orig.replace("Ï", "i");
	dest = dest.replace("ä", "ae");
	dest = dest.replace("Ä", "Ae");
	dest = dest.replace("ü", "ue");
	dest = dest.replace("Ü", "Ue");
	dest = dest.replace("ö", "oe");
	dest = dest.replace("Ö", "Oe");
	dest = dest.replace("ß", "ss");
	dest = dest.replace("é", "e");
	dest = dest.replace("è", "e");
	dest = dest.replace("ê", "e");
	dest = dest.replace("à", "a");
	dest = dest.replace("ô", "o");
	dest = dest.replace("î", "i");
	dest = dest.replace("â", "a");
	dest = dest.replace("ï", "i");
	dest = dest.replace("Â", "a");
	dest = dest.replace("Î", "i");
	dest = dest.replace("Ï", "i");
	
    document.bookFlightsForm.origin.value = orig;
    document.bookFlightsForm.dest.value = dest;

	if (document.bookFlightsForm.origin.value.length < 3) {
		alert("Please select a departure airport.");
		document.bookFlightsForm.origin.focus();
		return false;
	} else if (document.bookFlightsForm.dest.value.length < 3) {
		alert("Please enter a destination city or airport code.");
		document.bookFlightsForm.dest.focus();
		return false;
	} 
	if(checkValidDay_vol()){}else{return false;}
	//if(testAge()){}else{return false;}

	return true;
}


function checkValidDay_vol(){

	var dep = document.bookFlightsForm.departdate.value;
	//alert(dep);
	var dep_day = dep.substr(0,2);
	//alert(dep_day);
	var dep_month = dep.substr(3,2);
	//alert(dep_month);
	var dep_year = dep.substr(6,4);
	//alert(dep_year);
	
	var ret = document.bookFlightsForm.returndate.value;
	//alert(ret);
	var ret_day = ret.substr(0,2);
	//alert(ret_day);
	var ret_month = ret.substr(3,2);
	//alert(ret_month);
	var ret_year = ret.substr(6,4);
	//alert(ret_year);
	
	if (dep == "dd/mm/yyyy") {
		alert("Invalid departure date.");
		return false;
		}
		
		if (ret == "dd/mm/yyyy") {
		alert("Invalid return date.");
		return false;
		}


	var depday_max = GetMonthMaxDays(dep_year,dep_month-1);
	var retday_max = GetMonthMaxDays(ret_year,ret_month-1);

	// Validation for Dates
	if(dep_day > depday_max)
		{
			alert("Invalid departure date.");
			return false;
		}

		if(ret_day > retday_max)
		{
			alert("Invalid return date.");
			return false;
		}
	if(ret_year < dep_year)
	{
		alert("Invalid return date.");
		return false;
	}else{
		if((ret_month < dep_month) && (ret_year == dep_year)){
			alert("Invalid return date.");
			return false;
		}else if( (ret_month == dep_month) && (ret_day < dep_day) ){
			alert("Invalid return date.");
			return false;
		}
	}

	return true;
}

/* fin vol */
/**************************************************************************************************************************/
/* hotel */
function validateHotel(){

var orig = document.bookHotelsForm.market.value;
	orig = orig.replace("ä", "ae");
	orig = orig.replace("Ä", "Ae");
	orig = orig.replace("ü", "ue");
	orig = orig.replace("Ü", "Ue");
	orig = orig.replace("ö", "oe");
	orig = orig.replace("Ö", "Oe");
	orig = orig.replace("ß", "ss");
	orig = orig.replace("é", "e");
	orig = orig.replace("è", "e");
	orig = orig.replace("ê", "e");
	orig = orig.replace("à", "a");
	orig = orig.replace("ô", "o");
	orig = orig.replace("â", "a");
	orig = orig.replace("î", "i");
	orig = orig.replace("ï", "i");
	orig = orig.replace("Â", "a");
	orig = orig.replace("Î", "i");
	orig = orig.replace("Ï", "i");
	document.bookHotelsForm.market.value = orig;
	
	if (document.bookHotelsForm.market.value.length < 3) {
		alert("Choose a destination city");
		document.bookHotelsForm.market.focus();
		return false;
	}

	if(checkValidDay_hotel()){}else{return false;}



	return true;
}

function checkValidDay_hotel(){
	
	var dep = document.bookHotelsForm.checkin.value;
	//alert(dep);
	var dep_day = dep.substr(0,2);
	//alert(dep_day);
	var dep_month = dep.substr(3,2);
	//alert(dep_month);
	var dep_year = dep.substr(6,4);
	//alert(dep_year);
	
	var ret = document.bookHotelsForm.checkout.value;
	//alert(ret);
	var ret_day = ret.substr(0,2);
	//alert(ret_day);
	var ret_month = ret.substr(3,2);
	//alert(ret_month);
	var ret_year = ret.substr(6,4);
	//alert(ret_year);
	
	if (dep == "dd/mm/yyyy") {
		alert("Invalid departure date.");
		return false;
		}
		
		if (ret == "dd/mm/yyyy") {
		alert("Invalid return date.");
		return false;
		}


	var depday_max = GetMonthMaxDays(dep_year,dep_month-1);
	var retday_max = GetMonthMaxDays(ret_year,ret_month-1);

	// Validation for Dates
	if(dep_day > depday_max)
		{
			alert("Invalid departure date.");
			return false;
		}

		if(ret_day > retday_max)
		{
			alert("Invalid return date.");
			return false;
		}

	if(ret_year < dep_year)
	{
		alert("Invalid return date.");
		return false;
	}else{
		if((ret_month < dep_month) && (ret_year == dep_year)){
			alert("Invalid return date.");
			return false;
		}else if( (ret_month == dep_month) && (ret_day < dep_day) ){
			alert("Invalid return date.");
			return false;
		}
	}

	return true;
}


/* debut calcul */
/* fin calcul */

/* fin hotel */
/**************************************************************************************************************************/

/* debut car */
function validateCar() {
	var pickcity = document.bookCarsForm.pickup.value;
	var dropcity = document.bookCarsForm.dropoff.value;
	var orig = document.bookCarsForm.pickup.value;
	var dest = document.bookCarsForm.dropoff.value;
	//alert(orig);
	orig = orig.replace("ä", "ae");
	orig = orig.replace("Ä", "Ae");
	orig = orig.replace("ü", "ue");
	orig = orig.replace("Ü", "Ue");
	orig = orig.replace("ö", "oe");
	orig = orig.replace("Ö", "Oe");
	orig = orig.replace("ß", "ss");
	orig = orig.replace("é", "e");
	orig = orig.replace("è", "e");
	orig = orig.replace("ê", "e");
	orig = orig.replace("à", "a");
	orig = orig.replace("ô", "o");
	orig = orig.replace("â", "a");
	orig = orig.replace("î", "i");
	orig = orig.replace("ï", "i");
	orig = orig.replace("Â", "a");
	orig = orig.replace("Î", "i");
	orig = orig.replace("Ï", "i");

	dest = dest.replace("ä", "ae");
	dest = dest.replace("Ä", "Ae");
	dest = dest.replace("ü", "ue");
	dest = dest.replace("Ü", "Ue");
	dest = dest.replace("ö", "oe");
	dest = dest.replace("Ö", "Oe");
	dest = dest.replace("ß", "ss");
	dest = dest.replace("é", "e");
	dest = dest.replace("è", "e");
	dest = dest.replace("ê", "e");
	dest = dest.replace("à", "a");
	dest = dest.replace("ô", "o");
	dest = dest.replace("â", "a");
	dest = dest.replace("î", "i");
	dest = dest.replace("ï", "i");
	dest = dest.replace("Â", "a");
	dest = dest.replace("Î", "i");
	dest = dest.replace("Ï", "i");
	
	document.bookCarsForm.pickup.value = orig;
	document.bookCarsForm.dropoff.value = dest;
	
	//Validation Starts here

		if(pickcity.length < 3)
		{
			alert("Please indicate the city name or airport code and try again.");
			return false;
		}
	
			if(dropcity.length < 3)
			{
				alert("Please indicate the city name or airport code and try again.");
				return false;
			}

	var dep = document.bookCarsForm.pickupdate.value;
	//alert(dep);
	var dep_day = dep.substr(0,2);
	//alert(dep_day);
	var dep_month = dep.substr(3,2);
	//alert(dep_month);
	var dep_year = dep.substr(6,4);
	//alert(dep_year);
	
	var ret = document.bookCarsForm.dropoffdate.value;
	//alert(ret);
	var ret_day = ret.substr(0,2);
	//alert(ret_day);
	var ret_month = ret.substr(3,2);
	//alert(ret_month);
	var ret_year = ret.substr(6,4);
	//alert(ret_year);
	
	if (dep == "dd/mm/yyyy") {
		alert("Invalid departure date.");
		return false;
		}
		
		if (ret == "dd/mm/yyyy") {
		alert("Invalid return date.");
		return false;
		}

	var depday_max = GetMonthMaxDays(dep_year,dep_month-1);
	var retday_max = GetMonthMaxDays(ret_year,ret_month-1);
	if(dep_day > depday_max)
		{
			alert("Invalid departure date.");
			return false;
		}

		if(ret_day > retday_max)
		{
			alert("Invalid return date.");
			return false;
		}

	if(ret_year < dep_year)
	{
		alert("Invalid return date.");
		return false;
	}else{
		if((ret_month < dep_month) && (ret_year == dep_year)){
			alert("Invalid return date.");
			return false;
		}else if( (ret_month == dep_month) && (ret_day < dep_day) ){
			alert("Invalid return date.");
			return false;
		}
	}


	return true;
}


		
/* fin car */
/**************************************************************************************************************************/
/*  vol + hotel */
function validateDyna(form) {

	var orig = document.bookDynaForm.origin.value;
	var dest = document.bookDynaForm.dest.value;
	orig = orig.replace("ä", "ae");
	orig = orig.replace("Ä", "Ae");
	orig = orig.replace("ü", "ue");
	orig = orig.replace("Ü", "Ue");
	orig = orig.replace("ö", "oe");
	orig = orig.replace("Ö", "Oe");
	orig = orig.replace("ß", "ss");
	orig = orig.replace("é", "e");
	orig = orig.replace("è", "e");
	orig = orig.replace("ê", "e");
	orig = orig.replace("à", "a");
	orig = orig.replace("ô", "o");
	orig = orig.replace("î", "i");
	orig = orig.replace("â", "a");
	orig = orig.replace("ï", "i");
	orig = orig.replace("Â", "a");
	orig = orig.replace("Î", "i");
	orig = orig.replace("Ï", "i");
	dest = dest.replace("ä", "ae");
	dest = dest.replace("Ä", "Ae");
	dest = dest.replace("ü", "ue");
	dest = dest.replace("Ü", "Ue");
	dest = dest.replace("ö", "oe");
	dest = dest.replace("Ö", "Oe");
	dest = dest.replace("ß", "ss");
	dest = dest.replace("é", "e");
	dest = dest.replace("è", "e");
	dest = dest.replace("ê", "e");
	dest = dest.replace("à", "a");
	dest = dest.replace("ô", "o");
	dest = dest.replace("î", "i");
	dest = dest.replace("â", "a");
	dest = dest.replace("ï", "i");
	dest = dest.replace("Â", "a");
	dest = dest.replace("Î", "i");
	dest = dest.replace("Ï", "i");	
    document.bookDynaForm.origin.value = orig;
    document.bookDynaForm.dest.value = dest;

	if (document.bookDynaForm.origin.value.length < 3) {
		alert("Please select a departure airport.");
		document.bookDynaForm.origin.focus();
		return false;
	} else if (document.bookDynaForm.dest.value.length < 3) {
		alert("Please enter a destination city or airport code.");
		document.bookDynaForm.dest.focus();
		return false;
	} 
	if(checkValidDay_dyna()){}else{return false;}


	return true;
}

function checkValidDay_dyna(){

var dep = document.bookDynaForm.departdate.value;
	//alert(dep);
	var dep_day = dep.substr(0,2);
	//alert(dep_day);
	var dep_month = dep.substr(3,2);
	//alert(dep_month);
	var dep_year = dep.substr(6,4);
	//alert(dep_year);
	
	var ret = document.bookDynaForm.returndate.value;
	//alert(ret);
	var ret_day = ret.substr(0,2);
	//alert(ret_day);
	var ret_month = ret.substr(3,2);
	//alert(ret_month);
	var ret_year = ret.substr(6,4);
	//alert(ret_year);
	
	if (dep == "dd/mm/yyyy") {
		alert("Invalid departure date.");
		return false;
		}
		
		if (ret == "dd/mm/yyyy") {
		alert("Invalid return date.");
		return false;
		}


	var depday_max = GetMonthMaxDays(dep_year,dep_month-1);
	var retday_max = GetMonthMaxDays(ret_year,ret_month-1);

	// Validation for Dates
	if(dep_day > depday_max)
		{
			alert("Invalid departure date.");
			return false;
		}

		if(ret_day > retday_max)
		{
			alert("Invalid return date.");
			return false;
		}

	if(ret_year < dep_year)
	{
		alert("Invalid return date.");
		return false;
	}else{
		if((ret_month < dep_month) && (ret_year == dep_year)){
			alert("Invalid return date.");
			return false;
		}else if( (ret_month == dep_month) && (ret_day < dep_day) ){
			alert("Invalid return date.");
			return false;
		}
	}

	return true;
}
/* fin vol + hotel */

/***********************************************************************************************************************/
/* tous produits */

/**/
var ddd;
var mmm;
var yyy;
var errFlight01 = 'naam van stad of luchthaven van vertrek';
var errFlight02 = 'naam van stad of luchthaven van aankomst.';
var errFlight03 = 'datum van vertrek.';
var errFlight04 = 'datum van aankomst.';
var errs = new Array();
var htlLoad = true;
var lbls = new Array();
var tdate = new Date();
var req;
var udCtr = 0;
var stctr = 0;
var calClose = 0;
var charList="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ\300\301\302\303\304\305\310\311\312\313\314\315\316\317\321\322\323\324\325\326\331\332\333\334\335\340\341\342\343\344\345\350\351\352\353\354\355\356\357\360\361\362\363\364\365\366\371\372\373\374\375\377,[]- ";
var monthNames1 = new Array('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December');

var xdate;
var xrdate;
var myDate = new Date();
var myFromDate = new Date(); 
        xdate = myFromDate.getDate() + "/" + (myFromDate.getMonth()+1) + "/" + myFromDate.getFullYear();
        xrdate = myFromDate.getDate() + "/" + (myFromDate.getMonth()+1) + "/" + myFromDate.getFullYear()
function BC (id)
{
 var obj = document.getElementById(id);
 return obj;
}


function GetMonthMaxDays(y,m) // accepts 0 index month
{
	return new Date(y,m+1,0).getDate();
}



function CreateDay(y,m,d,t)
{ // Function to create table cells for each day of month and all empty days
	if(t=='flret'||t=='chkout'||t=='drop' || t=='ahret'){
		var today = new Date(yyy,mmm-1,ddd);
	}else{
		var today = new Date();
	}
	var c = document.createElement('td');
	if (y == 0 && m == 0)
	{
		c.innerHTML = '&nbsp;';
		//c.style.backgroundColor = '#ddd;';
	}
	else if ( (t == 'dpdep' || t == 'dpret') && (y < today.getFullYear() || (y == today.getFullYear() && m-1 < today.getMonth()) || 	(y == today.getFullYear() && m-1 == today.getMonth() && d < (today.getDate()+3))) ){
		c.style.textDecoration = 'line-through';
		c.innerHTML = d;
	}
	else if ( (t != 'dpdep' && t != 'dpret') && (y < today.getFullYear() || (y == today.getFullYear() && m-1 < today.getMonth()) || 	(y == today.getFullYear() && m-1 == today.getMonth() && d < today.getDate())) ) {
		c.style.textDecoration = 'line-through';
		c.innerHTML = d;
		//c.style.backgroundColor = '#fdd;';
	} else {
		c.innerHTML = '<span onclick="SetDates('+y+','+m+','+d+',\''+t+'\')" class="active_dates">' + d +'<\/span>'
		//c.style.backgroundColor = '#cfc;';
	}
	return c;
}

function CloseCalendar()
{
 BC('cal').style.display = 'none';
 if((req == 'fldep') || (req == 'flret'))
				{
					//BC('childAges2').style.visibility = 'visible';
					//BC('childAges3').style.visibility = 'visible';
					//BC('children').style.visibility = 'visible';
					BC('adults').style.visibility = 'visible';
				}
else if((req == 'chkin') || (req == 'chkout'))
				{
					//BC('nbnuit').style.visibility = 'visible';
					//BC('nbchambre').style.visibility = 'visible';
					BC('guests').style.visibility = 'visible';
				}
else if((req == 'ahdep') || (req == 'ahret'))
				{
					BC('tguests').style.visibility = 'visible';
				}
else if((req == 'pick') || (req == 'drop'))
				{
					BC('driversage').style.visibility = 'visible';
				}
calClose = 0;

}

function findPosX(obj)
{
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;
	return curleft;
}

function findPosY(obj)
{
	var curtop = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
	return curtop;
}

function ShowHideCalendar(requestor,elem,pos)
{
	req = requestor;
	if (req == 'close' || calClose == 1){ CloseCalendar(); calClose == 0;}
	else {
		calClose = 1;
		var doCar = '';
		var y = 0;
		var m = 0;
		var d = 0;
		var xpos = findPosX(elem);
		var ypos = findPosY(elem);
		BC('cal').style.display = 'block';
		BC('cal').style.top = ypos +'px';
		BC('cal').style.left = xpos +'px';
		
		switch (req){
				case 'fldep':
				case 'chkin':
				case 'pick':
				case 'ahdep':
				if(req == 'fldep')
				{
					//BC('childAges2').style.visibility = 'hidden';
					//BC('childAges3').style.visibility = 'hidden';
					//BC('children').style.visibility = 'hidden';
					BC('adults').style.visibility = 'hidden';
					fltmpDt = BC('departdate').value;
				}
				else if(req == 'chkin')
				{
					//BC('nbnuit').style.visibility = 'hidden';
					//BC('nbchambre').style.visibility = 'hidden';
					BC('guests').style.visibility = 'hidden';
					fltmpDt = BC('checkin').value;

				}
				else if(req == 'ahdep')
				{
					BC('tguests').style.visibility = 'hidden';
					fltmpDt = BC('tdepartdate').value;
				}
				else if(req == 'pick')
				{
					BC('driversage').style.visibility = 'hidden';
					fltmpDt = BC('pickupdate').value;
				}
				if(fltmpDt == 'dd/mm/yyyy' || fltmpDt == '' || !(fltmpDt.match(/^([0-9]){2}(\/){1}([0-9]){2}(\/)([0-9]){2,4}$/))){
					fltmpDt = xdate;
				}
				fltmpDt = fltmpDt.split("/");
				d = fltmpDt[0];
				m = fltmpDt[1];
				if(m > 12 || m < 1)
				{
					m=myFromDate.getMonth()+1
				}
				y = fltmpDt[2];
				if(y.length <= 2){
					y = "20"+y;
				}

				
				
				if(pos == 1){
					
					xpos -= 155;
                    ypos -= 150;	}
					else{
                                        xpos -= 148;
                                        ypos += 20;
                                }
                 BC('cal').style.left = xpos +'px';
                 BC('cal').style.top = ypos +'px';
				break;
				case "flret":
				case "chkout":
				case "drop":
				case "ahret":
				if(req == 'flret')
				{
					//BC('childAges2').style.visibility = 'hidden';
					//BC('childAges3').style.visibility = 'hidden';
					//BC('children').style.visibility = 'hidden';
					BC('adults').style.visibility = 'hidden';
					fltmpDt = BC('departdate').value;
					fltmpRt = BC('returndate').value;
				}
				else if(req == 'chkout')
				{
					BC('guests').style.visibility = 'hidden';
					//BC('nbnuit').style.visibility = 'hidden';
					//BC('nbchambre').style.visibility = 'hidden';
					fltmpDt = BC('checkin').value;
					fltmpRt = BC('checkout').value;

				}
				else if(req == 'drop')
				{
					BC('driversage').style.visibility = 'hidden';
					fltmpDt = BC('pickupdate').value;
					fltmpRt = BC('dropoffdate').value;
				}
				else if(req == 'ahret')
				{
					BC('tguests').style.visibility = 'hidden';
					fltmpDt = BC('tdepartdate').value;
					fltmpRt = BC('returndate').value;

				}
				//alert("fltmpDt:"+fltmpDt+"fltmpRt:"+fltmpRt)
				if(fltmpRt == 'dd/mm/yyyy' || !(fltmpRt.match(/^([0-9]){2}(\/){1}([0-9]){2}(\/)([0-9]){2,4}$/)))
				{
					if(fltmpDt == 'dd/mm/yyyy'|| !(fltmpDt.match(/^([0-9]){2}(\/){1}([0-9]){2}(\/)([0-9]){2,4}$/)))
					{
						fltmpRt = xrdate;
						fltmpRt = fltmpRt.split("/");
						d = fltmpRt[0];
						m = fltmpRt[1];
						y = fltmpRt[2];
						if(y.length <= 2)
						{
							y = "20"+y;
						}
						ddd=d;
						mmm = m;
						yyy = y;
						
					}
					else
					{
						fltmpDt = fltmpDt.split("/");
						d = fltmpDt[0];
						m = fltmpDt[1];
						y = fltmpDt[2];
						if(y.length <= 2)
						{
							y = "20"+y;
						}
						if(m > 12)
						{
							fltmpDt = xdate;
							fltmpDt = fltmpDt.split("/");
							d = fltmpDt[0];
							m = fltmpDt[1];
							y = fltmpDt[2];	
							if(y.length <= 2)
							{					
							y = "20"+y;
							}
						}
						ddd=d;
						mmm = m;
						yyy = y;
					}
				}
				else
				{
					fltmpRt = fltmpRt.split("/");
					d = fltmpRt[0];
					m = fltmpRt[1];
					y = fltmpRt[2];
					if(y.length <= 2)
					{
						y = "20"+y;
					}
					if(m > 12)
					{
						fltmpRt = xrdate;
						fltmpRt = fltmpRt.split("/");
						d = fltmpRt[0];
						m = fltmpRt[1];
						y = fltmpRt[2];	
						if(y.length <= 2)
						{
							y = "20"+y;
						}
					}
					
					if(!(fltmpDt.match(/^([0-9]){2}(\/){1}([0-9]){2}(\/)([0-9]){2,4}$/)))
					{
						
					/*	ddd=d;
						mmm = m;
						yyy = y;*/
					}
					else 
					{
						
						fltmpDt = fltmpDt.split("/");
						var tdd = fltmpDt[0];
						var tdm = fltmpDt[1];			//temp date var for 
						var tdy = fltmpDt[2];			//checking with return date
						if(tdy.length <= 2)
						{
							tdy = "20"+tdy;
						}
						  if(tdm > 12)
						{
							fltmpDt = xdate;
							fltmpDt = fltmpDt.split("/");
							tdd = fltmpDt[0];
							tdm = fltmpDt[1];
							tdy = fltmpDt[2];	
							if(tdy.length <= 2)
							{					
								tdy = "20"+tdy;
							}
						}	
						if((tdy > y)||(tdy == y && tdm > m)||(tdy == y && tdm == m && tdd > d))
						{
							d=tdd;
							m=tdm;
							y=tdy;
						}
							ddd=tdd;
							mmm = tdm;
							yyy = tdy;
					}

				}

				
				if(pos == 1){
                                        xpos -= 155;
                                        ypos -= 150;
                                }else{
                                        xpos -= 148;
                                        ypos += 20;
                                }
                                        BC('cal').style.left = xpos +'px';
                                        BC('cal').style.top = ypos +'px';
				break;
									
				default : break;
			}
			
			
		writeCalendar(d,m,y,req);
	}
}

function writeCalendar(d,m,y,t)
{
	var target = t;
	var renderObj = document.getElementById('calBody');
	if (renderObj.hasChildNodes)
	{
		while (renderObj.hasChildNodes()) {renderObj.removeChild(renderObj.firstChild);}
	}
	var days = new Array();
	var rawdays = new Array();
	var baseDate = new Date(y,m-1,1);
	var dow = baseDate.getDay();
	
	var maxDays = new Date(y,m,0).getDate();
	for (var ctr = 0; ctr < maxDays; ctr++)
	{
		rawdays.push(new Date(y,m-1,ctr+1));
	}
	var fday = rawdays[0].getDay();
	var lday = fday + maxDays-1;
	var dctr = 0;
	var start = (fday == 0) ? -6:1;
	var stop = (fday ==0)? 36:43;
	for (var ctr= start; ctr< stop;ctr++)
	{
		if (ctr < fday || ctr > lday) days.push(CreateDay(0,0,0,''));
		else {
			days.push(CreateDay(rawdays[dctr].getFullYear(),rawdays[dctr].getMonth()+1,rawdays[dctr].getDate(),target));
			dctr++;
		}		
	}
	for (var i = 0; i < days.length;)
	{
		var r = document.createElement('tr');
		if (i>7 && days[i].innerHTML == '&nbsp;') break;
		for (var x = 0; x<7; x++)
		{
			r.appendChild(days[i++])
		}
		renderObj.appendChild(r);
		
	}
var month;
if(m == "08" || m=="09"){
	if(m == "08"){m=8;}
	if(m == "09"){m=9;}
}else{
	m = parseInt(m);
}

	BC('showD').innerHTML = '<table cellspacing="0" cellpadding="0" border="0" width="100%"><tr><td style="border-color:#16286d" width="15%"><span onclick="writeCalendar(1,' + (m-1) + ','+y+',\''+t+'\')" id="prev_arr" onmouseover="BC(\'prev_arr\').style.cursor=\'hand\';"><img src="http://www.hotelbookers.com/tdbe/arrow_previous.gif" border="0"></span></td><td width="70%" style="border-color:#16286d"><font color="#ffffff"><b>'+  monthNames1[baseDate.getMonth()] + ' ' + baseDate.getFullYear()+'<b></font></td><td style="border-color:#16286d" align="right" width="15%">'+
/*	BC('showD').innerHTML +=*/ '<span onclick="writeCalendar(1,' + (m+1) + ','+y+',\''+t+'\')" id="next_arr" onmouseover="BC(\'next_arr\').style.cursor=\'hand\';"><img src="http://www.hotelbookers.com/tdbe/arrow_next.gif" border="0"></span></td></tr></table>'
}

function SetDates(iy,im,id,t)
{
				
	var safeDate = new Date(iy,im-1,id);
	var y = safeDate.getFullYear();
	var m = parseInt(safeDate.getMonth(),10) +1;
	m = (m < 10)? '0'+m:m;	
	var d = safeDate.getDate();

	d = (d < 10)? '0'+d:d;
	var dT;
	var mT;
	var sisterField = '';
	var compareValue = 0;
	var mode = 0;
	
	switch (t)
	{
		case 'fldep':
			BC('departdate').value = d + '/' + m + '/' + y;
			break;
		case 'flret':
			BC('returndate').value = d + '/' + m + '/' + y;
			break;
		case 'chkin':
			BC('checkin').value = d + '/' + m + '/' + y;
			break;
		case 'chkout':
			BC('checkout').value = d + '/' + m + '/' + y;
			break;
		case 'pick':
			BC('pickupdate').value = d + '/' + m + '/' + y;
			break;
		case 'drop':
			BC('dropoffdate').value = d + '/' + m + '/' + y;
			break;
		case 'ahdep':
			BC('tdepartdate').value = d + '/' + m + '/' + y;
			break;
		case 'ahret':
			BC('treturndate').value = d + '/' + m + '/' + y;
			break;
		
	}
	
	if (sisterField != '') UpdateDates(sisterField);
	CloseCalendar();	
}

