var returnVal	= false;
var ciyy, cimm, cidd, coyy,comm,codd;
var	arday 											= new Array("Sun","Mon","Tue","Wed","Thu","Fri","Sat");
var today											= new Date();
var curryy											= today.getFullYear();
var rsvtn_window									= "";	
var alert_window									= "";
var txt_recheck										= "You are trying to re-check room availability. This will cancel the current reservation process. Are you sure ?";

function settdate(text) {
	document.form_crs.tdate.value 					= text;
}
function setfdate(text) {
	document.form_crs.fdate.value 					= text;
}

function set_cidate(cpar) {
	var idd		= document.form_crs.cidd.value;				// parseInt(document.form_crs.cidd.value);
	var imm		= document.form_crs.cimm.value;				// parseInt(document.form_crs.cimm.value);
	var iyy		= document.form_crs.ciyy.value					// parseInt(document.form_crs.ciyy.value);	
	var diff	= parseInt(document.form_crs.nightqty.value);
	//alert(iyy + ", " + imm + ", " + idd);
	var nselect = idd;
	if (cpar != 'dd') {
		last_dd = set_last_cidate(imm, iyy);
		if (last_dd < idd) {
			nselect	 = last_dd;
		}
	}
	document.form_crs.cidd.options[nselect - 1].selected 	= true;
	var cidate											= new Date(iyy, imm - 1, idd);
	myday 												= cidate.getDay();
	document.getElementById("ciday").innerHTML			= arday[myday];
	var nday											= parseInt(idd) + parseInt(diff);
	var codate											= new Date(iyy, imm - 1, nday);
	yyyy												= codate.getFullYear();
	mm													= codate.getMonth();
	dd													= codate.getDate();
	myday 												= codate.getDay();
	document.form_crs.codd.options[dd - 1].selected 		= true;
	document.form_crs.comm.options[mm ].selected 			= true;
	document.form_crs.coyy.options[yyyy - curryy].selected = true;
	document.getElementById("coday").innerHTML				= arday[myday];
}

function check_linkform(objform, cpar) {
	
	if (rsvtn_window != "") {
		if(! rsvtn_window.closed){		// error code = 044, group 7
			rsvtn_window.focus();
			var js_urlpar				= "?link_folder=" + link_folder + "&ta=" + ta + "&job_hno=" + hno + "&vhost=" + hhost + "&path=" + hpath;
			strpop						= php_agent + js_urlpar + "&job=" + php_pop + "&w=500&h=300&ssid=" + sid + "&langid=1&errno=044&errstr=";
			alert_window				= window.open(strpop,'pop_alert','location=no,menubar=no,resizable=no,scrollbars=yes, status=yes, toolbars=no, width=600, height=300, top=100, left=100');
			alert_window.focus();
			return;
		}
	}

	submit_linkform(cpar);
}

function submit_linkform(cpar) {
	var idd												= padstr_l(document.form_crs.cidd.value, 2);
	var imm												= padstr_l(document.form_crs.cimm.value, 2);
	var iyy												= parseInt(document.form_crs.ciyy.value);	
	var odd												= padstr_l(document.form_crs.codd.value, 2);
	var omm												= padstr_l(document.form_crs.comm.value, 2);
	var oyy												= parseInt(document.form_crs.coyy.value);
	var cidate											= new Date(iyy, imm - 1, idd);
	var codate											= new Date(oyy, omm - 1, odd);
	
	document.form_crs.cidate1.value						= imm + "/" + idd + "/" + iyy;			//cidate;
	document.form_crs.fdate.value						= imm + "/" + idd + "/" + iyy;			//cidate;
	document.form_crs.codate1.value						= omm + "/" + odd + "/" + oyy;			//codate;
	document.form_crs.tdate.value						= omm + "/" + odd + "/" + oyy;			//codate;
	
	var par52											= document.form_crs.day2cidate.value;
	var aa												= document.form_crs.def_ci.value;
	var ci 												= document.form_crs.cidate1.value;	
	var today											= document.form_crs.today.value;	
	var day2cidate										= datediff(today, ci);
	document.form_crs.day2cidate.value					= day2cidate; 	
	if (validate() == false) {
		setcidate(aa);
		return;
	}
	if (par52 > day2cidate) {
		alert(wr_par52);
		setcidate(aa);
		return;
	}	
	
	hotel_no											= get_formvalue("form_crs", "hotel_no") ;
	set_param_linkform(cpar, hotel_no);
}
	

function set_param_linkform(cpar, hotel_no) {
	ta_code												= document.form_crs.ta_code.value;
	langid												= document.form_crs.langid.value;
	cidate1												= document.form_crs.cidate1.value; 	
	codate1												= document.form_crs.codate1.value; 	
	cidd												= document.form_crs.cidd.value; 	
	cimm												= document.form_crs.cimm.value; 	
	ciyy												= document.form_crs.ciyy.value; 	
	codd												= document.form_crs.codd.value; 	
	comm												= document.form_crs.comm.value; 	
	coyy												= document.form_crs.coyy.value; 	
	rmqty												= document.form_crs.rmqty.value; 	
	nightqty											= document.form_crs.nightqty.value; 	
	hno													= document.form_crs.hno.value; 	
	
	linkcode											= document.form_crs.web.value; 	
	ran_number											= get_random();
	jobdone 											= 0;
	counter												= 0;
	qstring												= "langid=" + langid + "&cidate1=" + cidate1 + "&codate1=" + codate1 + "&cidd=" + cidd + "&cimm=" + cimm + "&ciyy=" + ciyy;
	qstring												= qstring + "&codd=" + codd + "&comm=" + comm + "&coyy=" + coyy + "&rmqty=" + rmqty + "&nightqty=" + nightqty;
	qstring												= qstring + "&hno=" + hno + "&ta_code=" + ta_code + "&mode=" + cpar + "&web=" + linkcode + "&seed=" + ran_number;
	urlpar												= php_query + qstring; 		
	rsvtn_window										= window.open("",'pop_step1c','location=yes,menubar=yes,resizable=yes,scrollbars=yes, status=yes, toolbars=yes, width=1024, height=768, top=0, left=0');
  	rsvtn_window.self.location							= urlpar;
	//alert(urlpar);	
}


function init_date() {
	var yyyy											= today.getFullYear();
	var mm												= today.getMonth();
	var dd												= today.getDate();
	var diff											= 1;
	var par52											= document.form_crs.day2cidate.value;
	if (par52 == "") {
		par52 = 10;
	}
	par52												= parseInt(par52);
	cidate												= new Date(yyyy, mm, dd + par52);
	yyyy												= cidate.getFullYear();
	mm													= cidate.getMonth();
	dd													= cidate.getDate();
	set_last_cidate(mm+1, yyyy);
	document.form_crs.cidd.options[dd - 1].selected 		= true;
	document.form_crs.cimm.options[mm ].selected 			= true;
	document.form_crs.ciyy.options[yyyy - curryy].selected	= true;
	document.form_crs.nightqty.options[diff - 1].selected 	= true;
	//var cidate											= new Date(yyyy, mm, dd);	
	myday 												= cidate.getDay();
	document.getElementById("ciday").innerHTML			= arday[myday];
	
	document.form_crs.nightqty.options[diff - 1].selected 	= true;
	var codate											= new Date(yyyy, mm, dd + diff);
	yyyy												= codate.getFullYear();
	mm													= codate.getMonth();
	dd													= codate.getDate();
	set_last_codate(mm+1, yyyy);
	document.form_crs.codd.options[dd - 1].selected 		= true;
	document.form_crs.comm.options[mm ].selected 			= true;
	document.form_crs.coyy.options[yyyy - curryy].selected	= true;
	myday 												= codate.getDay();
	document.getElementById("coday").innerHTML			= arday[myday];
	
}


function proc_nightqty(nqty) {
	var diff 											= parseInt(nqty);	
	var yyyy											= parseInt(document.form_crs.ciyy.value);
	var mm												= document.form_crs.cimm.value;
	var	dd												= document.form_crs.cidd.value;
	var cidate											= new Date(yyyy, mm-1, dd);
	myday 												= cidate.getDay();
	document.getElementById("ciday").innerHTML			= arday[myday];		

	var dd												= parseInt(diff) + parseInt(dd);	
	var codate											= new Date(yyyy, mm-1, dd);
	yyyy												= codate.getFullYear();
	mm													= codate.getMonth();
	dd													= codate.getDate();
	myday 												= codate.getDay();
	document.getElementById("coday").innerHTML			= arday[myday];	
	set_last_codate(mm+1, yyyy);
	document.form_crs.codd.options[dd - 1].selected 		= true;
	document.form_crs.comm.options[mm].selected 			= true;
	document.form_crs.coyy.options[yyyy - curryy].selected = true;	
}


function set_codate(cpar) {
	var idd												= document.form_crs.cidd.value;				// parseInt(document.form_crs.cidd.value);
	var imm												= document.form_crs.cimm.value;				// parseInt(document.form_crs.cimm.value);
	var iyy												= document.form_crs.ciyy.value					// parseInt(document.form_crs.ciyy.value);	
	var cidate											= new Date(iyy, imm - 1, idd, 0, 0, 0);
	var odd												= document.form_crs.codd.value;
	var omm												= document.form_crs.comm.value;
	var oyy												= document.form_crs.coyy.value;
	var codate											= new Date(oyy, omm - 1, odd, 0, 0, 0);	
	var maxnight										= parseInt(document.form_crs.maxnight.value);
	var diff											= ( codate - cidate ) / 86400000;
	if (diff > maxnight) 	{diff						= maxnight; }
	if (diff <= 0) 			{diff 						= 1;}
	document.form_crs.nightqty.options[diff - 1].selected 	= true;
//	var nqty											= parseInt(document.form_crs.nightqty.value);
	var nselect 										= odd

	if (cpar != 'dd') {	
		last_dd = set_last_codate(omm, oyy);	
		if (last_dd < odd) {
			nselect	 = last_dd;
		}
	}	
	document.form_crs.codd.options[nselect - 1].selected 	= true;
	
	cidate												= new Date(oyy, omm - 1, odd - diff);
	codate												= new Date(oyy, omm - 1, odd);	
	yyyy												= cidate.getFullYear();
	mm													= cidate.getMonth();
	dd													= cidate.getDate();
	myday 												= cidate.getDay();

	document.getElementById("ciday").innerHTML			= arday[myday];	
	myday 												= codate.getDay();
	document.getElementById("coday").innerHTML			= arday[myday];	

	document.form_crs.cidd.options[dd - 1].selected 		= true;
	document.form_crs.cimm.options[mm].selected 			= true;
	document.form_crs.ciyy.options[yyyy - curryy].selected = true;
}


function padstr_l(str, n) {
	// n = n - 1;
	var	ss = "" + str;
	ll 	= ss.length;
	if (ll==n) {return ss;}	
	for (i=1;i<n;i++) {
		ss 	= "0" + ss;
		str = ss;
	}
	// alert(ss);
	return ss;
}

function validate() {

	msg 	= "";
	cidt 	= mdy2ymd(this.form_crs.fdate.value);
	codt 	= mdy2ymd(this.form_crs.tdate.value);
	today 	= mdy2ymd(this.form_crs.today.value);
	returnVal = true;
	e01 = checkdate4(this.form_crs.fdate.value);
	if (e01 == 1) { 
		msg += this.form_crs.e_01.value + " [error:1] \n"; 
		returnVal = false;
	}
	e02 = checkdate4(this.form_crs.tdate.value);
	if (e02 == 1) { 
		msg += this.form_crs.e_02.value + " [error:2] \n"; 
		returnVal = false;
	}

	if (cidt < today) {
		e03 = 1;
		msg += this.form_crs.e_03.value + "[error:3] \n"; 
		returnVal = false;
	}
	if (codt < cidt) {
		e05 = 1;
		msg += this.form_crs.e_05.value + " [error:5] \n"; 
		returnVal = false;
	}
	
	if (msg) { alert(msg); }
	return returnVal;
}

function checkdate(yyyy,mm,dd) {
	mm = mm - 1;
	cdate = new Date(yyyy, mm, dd, 0, 0,0);
	cekm  = cdate.getMonth();
	rstatus = 1;
	if (cekm == mm) { rstatus = 0 }	
	return rstatus;
}

function get_last_dd(mm, yyyy) {
	mm			= parseInt(mm);
	yyyy		= parseInt(yyyy);
	var last_d	= new Date(yyyy , mm , 0) ;
	var dd		= last_d.getDate();
	return dd;
}

function set_last_cidate(mm, yy) {
	last_dd									= get_last_dd(mm, yy);
	document.form_crs.cidd.options.length		= last_dd - 1 ;
	for ( i1 = 0; i1 < last_dd; i1++ )	{
		document.form_crs.cidd.options[i1] = new Option(padstr_l(i1+1,2), i1+1);	
	}
	return last_dd;
}

function set_last_codate(mm, yy) {
	last_dd									= get_last_dd(mm, yy);
	document.form_crs.codd.options.length		= last_dd - 1 ;
	for ( i1 = 0; i1 < last_dd; i1++ )	{
		document.form_crs.codd.options[i1] = new Option(padstr_l(i1+1,2), i1+1);	
	}
	return last_dd;	
}


function mdy2ymd(mmddyyyy) {
	// mm-dd-yyyy
	yyyy = mmddyyyy.substring(6, 10);
	mm = mmddyyyy.substring(0, 2);
	dd = mmddyyyy.substring(3, 5);
	
	rstatus = yyyy + mm + dd
	return rstatus;
}


function checkdate4(mmddyyyy) {
	// mm-dd-yyyy
	yyyy = mmddyyyy.substring(6, 10);
	mm = mmddyyyy.substring(0, 2);
	dd = mmddyyyy.substring(3, 5);
	
	rstatus = checkdate(yyyy, mm, dd);
	return rstatus;
}

function datediff(cidate, codate) {
	iyy 	= cidate.substring(6,10);
	imnol	= cidate.substring(0,1);
	
	if (imnol == "0") {immm = cidate.substring(1,2);}
	else {immm = cidate.substring(0,2);}
	//imm 	= cidate.substring(0,2); // TDate.getMonth();
	
	iyy 	= parseInt(iyy);
	imm 	= parseInt(immm);
	
	imm 	= imm - 1;	
	idd		= cidate.substring(3,5);   //TDate.getDate();
	idd		= parseInt(idd, 10);
var cidate 	= new Date(iyy, imm, idd);
	
	oyy 	= codate.substring(6,10);
	omnol	= codate.substring(0,1);
	if (omnol == "0") {ommm = codate.substring(1,2);}
				else {ommm = codate.substring(0,2);}
	omm 	= codate.substring(0,2); // TDate.getMonth();
	oyy 	= parseInt(oyy);
	omm 	= parseInt(ommm);
	omm 	= omm - 1;	
	odd		= codate.substring(3,5);   //TDate.getDate();
	odd		= parseInt(odd, 10);	
var codate 	= new Date(oyy, omm, odd);	
	
	diff	= codate-cidate;
	diff	= Math.round(diff/1000/60/60/24);
	return diff;
}

function link_date(objname, text) {
	var n 												= parseInt(document.form_crs.nightqty.value);
	if (objname == 'form_crs.fdate') {
		
		document.form_crs.cidate1.value 				= text; 
		var y 											= tomorrow(text);
		document.form_crs.fdate.value 					= text;
		var codate 										= nextday(text, n+1);
		document.form_crs.codate1.value					= codate;
		document.form_crs.tdate.value					= codate;
		
		//-- set combo
		mmddyyyy										= text;
		yyyy 											= mmddyyyy.substring(6, 10);
		mm 												= mmddyyyy.substring(0, 2);
		dd 												= mmddyyyy.substring(3, 5);
		//set_last_cidate(mm, yyyy);
		document.form_crs.ciyy.options[yyyy - curryy].selected	= true;
		document.form_crs.cimm.options[mm-1].selected		= true;
		document.form_crs.cidd.options[dd-1].selected		= true; 
		
		mydate 											= new Date(yyyy, mm-1, dd);
		myday 											= mydate.getDay();
		dday    										= arday[myday];
		document.getElementById("ciday").innerHTML		= dday;
		
		//-- set combo
		mmddyyyy										= codate;
		yyyy 											= mmddyyyy.substring(6, 10);
		mm 												= mmddyyyy.substring(0, 2);
		dd 												= mmddyyyy.substring(3, 5);
		//set_last_cidate(mm, yyyy);
		document.form_crs.coyy.options[yyyy-curryy].selected	= true;
		document.form_crs.comm.options[mm-1].selected		= true;
		document.form_crs.codd.options[dd-1].selected		= true;
		mydate 											= new Date(yyyy, mm-1, dd);
		myday 											= mydate.getDay();
		dday    										= arday[myday];
		document.getElementById("coday").innerHTML		= dday;

	} else {
		document.form_crs.codate1.value 					= text; 
		document.form_crs.tdate.value 						= text;

		//-- set co combo
		mmddyyyy										= text;
		yyyy 											= mmddyyyy.substring(6, 10);
		mm 												= mmddyyyy.substring(0, 2);
		dd 												= mmddyyyy.substring(3, 5);
		//set_last_cidate(mm, yyyy);
		document.form_crs.coyy.options[yyyy - curryy].selected	= true;
		document.form_crs.comm.options[mm-1].selected		= true;
		document.form_crs.codd.options[dd-1].selected		= true; 
		
		mydate 											= new Date(yyyy, mm-1, dd);
		myday 											= mydate.getDay();
		dday    										= arday[myday];
		document.getElementById("coday").innerHTML		= dday;		
		
		// set ci date
		var idate 										= new Date(yyyy, mm-1, dd - n);
		mmddyyyy										= idate;
		yyyy 											= idate.getFullYear();
		mm 												= idate.getMonth();
		dd 												= idate.getDate();
		
		//set_last_cidate(mm, yyyy);
		document.form_crs.ciyy.options[yyyy - curryy].selected	= true;
		document.form_crs.cimm.options[mm].selected		= true;
		document.form_crs.cidd.options[dd-1].selected		= true; 
		myday 											= idate.getDay();
		dday    										= arday[myday];
		document.getElementById("ciday").innerHTML		= dday;		
		
	}
	if (crs_step == "step2a_offline") {
		set_flight_date();
	}	
}

function tomorrow(text) {
	var today 	= document.form_crs.today.value;
	var ci 		= document.form_crs.cidate1.value;	
	var n		= datediff(today, ci);			
	if (n<0) {
		return false;
	}
	return true;
}

function nextday(startday, ndays) {

	iyy 	= startday.substring(6,10);
	imm 	= startday.substring(0,2); // TDate.getMonth();
	iyy 	= parseInt(iyy);
	imm 	= parseInt(imm);
	if (imm == 0) {imm = startday.substring(1,2); }
	imm 	= imm - 1;	
	
	idd		= startday.substring(3,5);   //TDate.getDate();
	idd		= parseInt(idd, 10);

var ci=new Date(iyy , imm, idd);
var	co		= new Date;
	co		= ci;
var	c		= ci;
	for (i=1;i<ndays;i++) {
		co.setDate(c.getDate()+1); 
		c = co;
	}	
	
	oyy		= co.getFullYear();
	omm		= co.getMonth()+1;
	odd		= co.getDate();
	
	comm 	= padstr_l(omm, 2);
	codd 	= padstr_l(odd, 2);
	enddate = comm + "/" + codd + "/" + oyy;
	
return enddate;

}

function get_random() {
	ran1							= Math.random()*999999;
	ran2							= Math.random()*ran1;
	ran_number						= Math.round(ran2);	
	return ran_number;
}
