function submitfrmmodsp()
{
	var err;
	var f;
	err = 0;
	
	f = document.forms[0];
	catid=f.cmbcatid.value;
	if(f.cmbcatid.value=="0")
	{
		alert("Please choose the Category!");
		f.cmbcatid.focus();
		err=1;
	}
	else if(f.txtname.value=="")
	{
		alert("Please enter the Service Provider Name!");
		f.txtname.focus();
		err=1;
	}
	else
	if(catid!='3'&&catid!='4'&&catid!='6')
	{
		/*if(f.txtsno.value=="")
		{
			alert("Please enter the desired Service Provider Serial Number!");
			f.txtsno.focus();
			err=1;
		}
		else if(checkNumber(f.txtsno)!=0)
		{
			alert("Service Provider Serial Number cannot hold non-numeric content!");
			f.txtsno.value="";
			f.txtsno.focus();
			err=1;
		}*/
	
	}
	/*else if((chkInfo(f.cmbfac))!=0)
	{	
		alert("Please enter Facilities Details");
		f.txtipfac.focus();
		err=1;
	}*/	
	if(err == 0)
	{
		document.frmmodsp.submit();
	}
}

//===================================  AGENT_REG.PHP	===========================
function submit_frmagent_reg()
{
	var err;
	var f;
	err = 0;
	
	f = document.forms[0];

	if((f.txtcperson.value=="")||(checkNames(f.txtcperson)!=0))
	{
		alert("Please enter the Contact Person's Name!");
		f.txtcperson.focus();
		err=1;
		return;		
	}
	
	if((f.txtphone.value=="")&&(f.txtmob.value==""))
	{
		alert("Please enter your Contact Number!");
		f.txtphone.focus();
		err=1;
		return;		
	}
	else
	{
		if(checkCommNumber(f.txtphone)!=0)
		{
			alert("Invalid Phone Number!");
			f.txtphone.value="";
			f.txtphone.focus();
			err=1;
			return;		
		}

		if(checkMobNumber(f.txtmob)!=0)
		{
			alert("Invalid Mobile Phone Number!");
			f.txtmob.value="";
			f.txtmob.focus();
			err=1;
			return;		
		}
	}
	if(checkCommNumber(f.txtfax)!=0)
	{
		alert("Invalid Fax Number!");
		f.txtfax.value="";
		f.txtfax.focus();
		err=1;
		return;		
	}
	if((f.txtemail.value=="")||(checkEmail(f.txtemail)!=0))
	{
		alert("Please enter your correct E-mail Address!");
		f.txtemail.value="";
		f.txtemail.focus();
		err=1;
		return;		
	}
	if(f.txtaddr.value=="")
	{
		alert("Please enter your correct Contact Address!");
		f.txtaddr.focus();
		err=1;
		return;		
	}
//***********	login details	********
	var l = f.txtpasswd.value;
	var len = l.length;
	
	if((f.txtlogin.value=="")||(checkLogName(f.txtlogin)!=0))
	{
		alert("Please enter an appropriate Login ID!");
		f.txtlogin.value="";
		f.txtlogin.focus();
		err=1;
		return;		
	}

	if((f.txtpasswd.value=="")&&(len<6))
	{
		alert("Please enter an appropriate Password!");
		f.txtpasswd.value="";
		f.txtpasswd.focus();
		err=1;
		return;		
	}
	if((f.txtconfpasswd.value=="")||(checkPasswords(f.txtpasswd, f.txtconfpasswd))!=0)
	{
		err=1;
		return;		
	}
	if(err == 0)
	{
		document.frmagent_reg.submit();
	}
}
/*
function submitInfo(acclist, faclist) // 4 two fields...
{
	accoutput = acclist;
	facoutput = faclist;
	
	acnt=accoutput.options.length;
	fcnt=facoutput.options.length;
	
	if(acnt==0)
	{
		return -1;
	}
	else if(fcnt==0)
	{
		return -2;
	}
	else
	{
		ax=0;
		aclist="";
		while(ax < acnt)
		{
			aclist=aclist+accoutput.options.item(ax).text;
			
			if(ax!=(acnt-1))
			{
				aclist=aclist+",";
			}
			ax++;
		}

		fx=0;
		fclist="";
		while(fx < fcnt)
		{
			fclist=fclist+facoutput.options.item(fx).text;
			
			if(fx!=(fcnt-1))
			{
				fclist=fclist+",";
			}
			fx++;
		}
		frmmodsp.txtacc.value = aclist;
		frmmodsp.txtfac.value = fclist;
		
		return 0;
	}
}
*/
/*function chkInfo(faclist) // 4 just one field
{
	facoutput = faclist;
	
	fcnt=facoutput.options.length;
	
	if(fcnt==0)
		return -1;
	else
	{
		fx=0;
		fclist="";
		while(fx < fcnt)
		{
			fclist=fclist+facoutput.options.item(fx).text;
			
			if(fx!=(fcnt-1))
				fclist=fclist+",";

			fx++;
		}
		frmmodsp.txtfac.value = fclist;
		
		return 0;
	}
}
*/
function checkNumber(x)
{
	s=x.value;

	var z;
	z=new Array();

	for(j=0;j<s.length;j++)
	{
		z[j]=s.charAt(j);
		
		if((z[j]>='0')&&(z[j]<='9'))
		{
			continue;
		}
		else
		{
			x.value="";
			x.focus();
			
			return 1;
		}
	}
	return 0;
}
//=================================  VALID NAMES	==============================
function checkNames(x)
{
	var z;
	var s;

	z=new Array();
	s=x.value;

	for(j=0; j<s.length; j++)
	{ 
		z[j]=s.charAt(j);
		
		if(!( ( (z[j]>='a')&&(z[j]<='z') ) || ( (z[j]>='A')&&(z[j]<='Z') )  || (z[j]==' ')  ) )
		{
			x.focus();
			x.value="";

			return 1;          
		}
	}

	return 0;
}

//===================================  VALID LOGIN NAMES	===========================
function checkLogName(x)
{
	var z;
	var s;

	z=new Array();
	s=x.value;

	for(j=0; j<s.length; j++)
	{ 
		z[j]=s.charAt(j);
		
		if(!(((z[j]>='a')&&(z[j]<='z')) || ((z[j]>='A')&&(z[j]<='Z')) || ((z[j]>='0')&&(z[j]<='9'))) )
		{
			x.value="";
			return 1;
		}	
	}
	return 0;
}

//===============================  VALID COMMUNICATION NUMBERS	=============================
function checkCommNumber(x)
{
	s=x.value;

	var z;
	z=new Array();
		
	for(j=0;j<s.length;j++)
	{
		z[j]=s.charAt(j);
		
		if(((z[j]>='0')&&(z[j]<='9'))||((z[j]=='-')))
		{
			continue;
		}
		else
		{
			x.focus();
			
			return 1;
		}
	}
	return 0;
}

//===============================  VALID Mobile NUMBERS	=============================
function checkMobNumber(x)
{
	s=x.value;

	var z;
	z=new Array();
		
	for(j=0;j<s.length;j++)
	{
		z[j]=s.charAt(j);
		
		if(((z[j]>='0')&&(z[j]<='9'))||((z[j]=='+')))
		{
			continue;
		}
		else
		{
			x.focus();
			
			return 1;
		}
	}
	return 0;
}

//===================================  VALID EMAIL ADDRESSES	========================
function checkEmail(x)
{
	a=new Array();
	s=x.value;
	
	for(i=0; i<s.length; i++)
		a[i]=s.charAt(i);

	dot = s.indexOf(".");
	at = s.indexOf("@");
	
	if (dot == -1 || at == -1)
	{	
		x.focus()
		return 1;
	}

	str1=s.substring(dot+1,s.length);
	str2=s.substring(at+1, dot);
	str3=s.substring(0,at);

	if((str1.length==0)||(str2.length==0)||(str3.length==0))
	{
		x.focus()             
		return 1;
	}

	return 0;
}

function loadCategory(id,catid)
{	
	if(id!='0')
	{
		/*
		if(catid=='1')
		url="resorts.php?id="+id;
		if(catid=='2')
		url="city.php?id="+id;
		if(catid=='3')
		url="flats.php?id="+id;
		if(catid=='4')
		url="car.php?id="+id;
		if(catid=='5')
		url="out.php?id="+id;
		*/
	url="disp.php?id="+id+"&catid="+catid;	
	location.href=url;
	}
	else
	return;
}

function checkNum()
{
	var carCode = event.keyCode;
	
	if ((carCode < 48) || (carCode > 57))
	{
		alert('Please enter only numbers.');
		event.cancelBubble = true;
		event.returnValue = false;
	}
} 

//===================================  VALID PASSWORDS	=============================
function checkPasswords(x, y)
{
	var p1=x;
	var p2=y;
 	if((p1.value!=p2.value))
	{
		alert("Passwords do not match. Please try again !!!")
		p1.value='';
		p2.value='';
		p1.focus();
		return 1;
	}
	return 0;
}

function TAloginform()
{
	var e=0;
	if(TAlogin.uname.value=="")
	{	
		msg.innerHTML="User Name Required"
		e=1;	
		return;
	}
	else
	{
	}
	if(TAlogin.passwd.value=="")
	{   
		msg.innerHTML="Password Required"
		e=1;
		return;
	}
	else
	{
	}
	if(e==0)
	{
		document.TAlogin.submit();
	}
}
function checkNumDec()
{
	var carCode = event.keyCode;
		
	if ( ((carCode >= 48) && (carCode <= 57)) || (carCode == 46) )
	{
	}
	else
	{
		alert('Please enter only numeric values.');
		event.cancelBubble = true;
		event.returnValue = false;
		return;
	}
}

function CheckDates(date1,date2)
{
	fday=date1.substr(8,2);
	fyear=date1.substr(0,4);
	fmonth=date1.substr(5,2);
	tday=date2.substr(8,2);
	tyear=date2.substr(0,4);
	tmonth=date2.substr(5,2);
	
	fromdate=new Date(fyear,fmonth,fday);
	todate=new Date(tyear,tmonth,tday);
	
	fromdate=fromdate.getTime();
	todate=todate.getTime();	
	
	day1=fromdate/(60*60*24*1000);
	day2=todate/(60*60*24*1000);
	
	if((day2 < day1))
		return false;
	else 
		return true;
}

function VerifyDates(date1,date2,days)
{
	fday=date1.substr(8,2);
	fyear=date1.substr(0,4);
	fmonth=date1.substr(5,2);
	tday=date2.substr(8,2);
	tyear=date2.substr(0,4);
	tmonth=date2.substr(5,2);
	
	fromdate=new Date(fyear,fmonth,fday);
	todate=new Date(tyear,tmonth,tday);
	
	fromdate=fromdate.getTime();
	todate=todate.getTime();	
	
	day1=fromdate/(60*60*24*1000);
	day2=todate/(60*60*24*1000);
	NUMDAYSELECTED=day2-day1+1;
	
	if(NUMDAYSELECTED==days)
		return 0;
	else
	{
		alert("Please Check  the Number of Nights");
		return 1;	
	}
}
function WindowPosition(widthX,heightX)
{
	var width = (screen.width);
	var height = (screen.height - 25);
	var centerleft = 0;
	var centertop = 0;
	var centerleft = (width/2) - (widthX/2);
	var centertop = (height/2) - (heightX/2);
	var width=widthX;
	var height=heightX;
	window.moveTo(centerleft,centertop);
	window.resizeTo(width, height);
	window.focus();
}

//given the value, str_trim trims down the string from all padded whitespaces...
function str_trim(str)
{	
	if(str.length > 0)
	{
		while(str.charAt(0)==' ')
			str = str.substr(1);

		while(str.charAt((str.length - 1))==' ')
			str = str.substring(0, str.length - 1);
	}

	return str;
}

function alertX()
{
	alert("1");
}

function Validate_Search()
{
	var frm = document.frm_srch;
	
	if(frm.txtchkin.value=="")
	{
		alert("Please Choose A Check In Date.");
		frm.f_trigger_a.focus();
		return false;
	}

	if(frm.txtchkout.value=="")
	{
		alert("Please Choose A Check Out Date.");
		frm.f_trigger_b.focus();
		return false;
	}

	return true;
}

function CheckNum(obj)
{
	regExpr = new RegExp(/^\d*$/);
	regExpr = new RegExp(/^[\d]*$/);

	if(!regExpr.test(obj.value))
	{
		alert("Please Enter Valid Numbers");
		obj.value="0";
		return false;
	}
	
	return true;
}

function validate_email(email_txt) 
{
	var emailReg = "^[\\w-_\.]*[\\w-_\.]\@([\\w].+)\.[\\w]$";
	var regex = new RegExp(emailReg);
	return regex.test(email_txt);
}

function FrmQuery_Validate()
{
	var frm = document.frm_query;

	if(str_trim(frm.txtqname.value)=="")
	{
		alert("Please Enter Your Name.");
		frm.txtqname.focus();
		return false;
	}

	if(str_trim(frm.txtqtel.value)=="")
	{
		alert("Please Enter Your Contact No.");
		frm.txtqtel.focus();
		return false;
	}

	if(str_trim(frm.txtqemail.value)=="")
	{
		alert("Email ID is Compulsory.");
		frm.txtqemail.focus();
		return false;
	}
	else if(!validate_email(frm.txtqemail.value))
	{
		alert("Invalid Email ID");
		frm.txtqemail.focus();
		return false;
	}

	if(str_trim(frm.txtqquery.value)=="")
	{
		alert("Please Enter Your Query/ Comments");
		frm.txtqquery.focus();
		return false;
	}
	
	return true;
}

function hourglass() 
{
	var width = (screen.width) - 155;
	var height = (screen.height - 125);
	var centerleft = 0;
	var centertop = 0;
	var centerleft = (width/2) - (32/2);
	var centertop = (height/2) - (32/2);
	document.all.hiddenDIV.style.top=centertop;
	document.all.hiddenDIV.style.left=centerleft;
	document.all.hiddenDIV.style.visibility="visible";
	doHourglass();
}

function removehourglass()
{
	undoHourglass();
	document.getElementById("hiddenDIV").style.visibility="hidden"; 
}

function doHourglass()
{
	document.body.style.cursor = 'wait';
}

function undoHourglass()
{
	document.body.style.cursor = 'default';
}

function loadSearchPage(obj)
{	
	url = obj.value;
	
	if(url!='0')
	{
		location.href=url;
	}
	else
		return;
}

function ConvertFromYMDtoDMY(ymd_date)
{
	var dt_arr = ymd_date.split('-');
	var dmy_date = dt_arr[2] + "-" + dt_arr[1] + "-" + dt_arr[0];
	return dmy_date;
}

function ConvertFromDMYtoYMD(dmy_date)
{
	var dt_arr = dmy_date.split('-');
	var ymd_date = dt_arr[2] + "-" + dt_arr[1] + "-" + dt_arr[0];
	return ymd_date;
}

function ValidateSearchPanel(form_name, today_date)
{
	var frm = form_name;
	
	if(frm.txtchkin.value == "")
	{
		alert("Please Choose A Check In Date");
		frm.f_trigger_a.focus();
		return false;
	}

	///    DIFFERENCE CHECKING ....
	var days = 0;
	var difference = 0;
	var chkInDate = ConvertFromYMDtoDMY(frm.txtchkin.value);
	var arrchkInDate = chkInDate.split("-");
	chkInDate = new Date(arrchkInDate[1]+"/"+arrchkInDate[2]+"/"+arrchkInDate[0]);
	var chkOutDate = ConvertFromYMDtoDMY(frm.txtchkout.value);
	var arrchkOutDate = chkOutDate.split("-");
	chkOutDate = new Date(arrchkOutDate[1]+"/"+arrchkOutDate[2]+"/"+arrchkOutDate[0]);
	difference =  chkOutDate - chkInDate;
	days = difference/(1000*60*60*24);
   
   ///  LESS THAN TODAY CHECK
	var chkTodayDate = today_date;
	var arrchkTodayDate = chkTodayDate.split("-");
	chkTodayDate = new Date(arrchkTodayDate[1]+"/"+arrchkTodayDate[2]+"/"+arrchkTodayDate[0]);
	todaychkdifference =  chkInDate - chkTodayDate;
	todaychkdays = todaychkdifference/(1000*60*60*24);
   
	if(todaychkdays < 0)
	{
		alert("Check In Date Should Begin From Today Or Later");
		frm.f_trigger_a.focus();
		return false;
	}

    if(frm.txtchkout.value == "")
	{
		alert("Please Choose A Check Out Date");
		frm.f_trigger_b.focus();
		return false;
	}	
	
	if(days <= 0)
	{
		alert("Check Out Date Should Be Greater Than The Check In Date");
		return false;
	}
   
	if(days >= 7)
	{
		alert("Maximum Range Of Days Is 7 !!! Please Change Accordingly");
		frm.f_trigger_b.focus();
		return false;
	}

	for(var i=1; i <= frm.cmbnumrooms.value; i++)
	{
		x_adult = eval("frm.adult"+i);
		x_child = eval("frm.child"+i);
		num_ppl = parseInt(x_adult.value) + parseInt(x_child.value);

		if(num_ppl > 4)
		{
			alert("Maximum 4 Guests Allowed Per Room.");
			x_adult.focus();
			return false;
		}
	}

	return true;	
}

function Validate4PackageData(pkg_limit, chkin, chkout)
{
	var span_days = pkg_limit;
	var frm = document.frm_srch;
	var dat = document.frm_dat;

	var fromdt = ConvertFromDMYtoYMD(chkin);
	var tmp_fromdt = fromdt.split("-");
	var from_date = new Date(tmp_fromdt[1]+"/"+tmp_fromdt[2]+"/"+tmp_fromdt[0]);
	
	var todt = ConvertFromDMYtoYMD(chkout);
	var tmp_todt = todt.split("-");
	var to_date = new Date(tmp_todt[1]+"/"+tmp_todt[2]+"/"+tmp_todt[0]);

	msec = to_date - from_date;
	secs = (msec/1000);
	mins = (secs/60);
	hrs = (mins/60);
	days = (hrs/24);

	if(days < span_days)
		return false; // disable packages option n set to room rate disp
	else
		return true;
}

function GenerateRoomCtrls4SideSearchPanel(numrooms, MAX_ADULT, MAX_CHILD)
{
	str = "";
	
	str += "<table width='100%' border='0' cellspacing='0' cellpadding='0' align='center'>";

	for( i = 1 ; i <= numrooms ; i++ )
	{
		str += "<tr>";
		str += "<td class='searchtxt'><div align='center'><b>Room " + i + "</b></td>";
		str += "<td width='30%'><div align='center'>";

		str += "<select class=box name='adult"+i+"'>";
		
		for(numadults = 2 ; numadults <= MAX_ADULT; numadults++)
			str += "<option value='"+ numadults +"'>" +numadults+ "</option>";
		
		str += "</select>";
		
		str += "</td>";
		str += "<td width='30%'><div align='center'>";
		
		str += "<select class=box name='child"+i+"'><option value='0'>0</option>";
		for(numchild = 1 ; numchild <= MAX_CHILD; numchild++)
			str += "<option value='"+ numchild +"'>" +numchild+ "</option>";

		str += "</select>";		
		str += "</td>";
		str += "</tr>";
	}
	str += "</table>";

	return str;
}
