/////////////////////////////////// JAVASCRIPT CODE

function IsNumeric(strString)   
   {
   var strValidChars = "0123456789";
   var strChar;
   var blnResult = true;
   if (strString.length == 0) return false;
   for (i = 0; i < strString.length && blnResult == true; i++)
      {
      strChar = strString.charAt(i);
      if (strValidChars.indexOf(strChar) == -1)
         {
         blnResult = false;
         }
      }
   return blnResult;
   }


/////////////////////////////////////////


function check(m,y)
{

	var nm = formRSV.nm.value;
	var snm = formRSV.snm.value;
	var cnt = formRSV.cnt.value;
	var email = formRSV.email.value;
	var phone = formRSV.phone.value;
	var nprs = formRSV.nprs.value;
	var rsv_type = formRSV.elements["rsv_type"];
	var own_nm = formRSV.own_nm.value;
	var crd_no = formRSV.crd_no.value;			
	var cb1 = formRSV.cb1.checked;
		
	var err="";
	if( nm == "" )
	{
		err += "Empty name field not allowed.\n";
	}
	else if( IsNumeric(nm) ) {
		err += "Please Enter a Valid Name in the Name field.\n";
	}
	if( snm == "" )
	{
		err += "Empty Surname field not allowed.\n";
	}
	else if( IsNumeric(snm) ) {
		err += "Please Enter a Valid SurName in the SurName field.\n";
	}
	if( cnt == "" )
	{
		err += "Empty Country field not allowed.\n";
	}
	else if( IsNumeric(cnt) ) {
		err += "Please Enter a Valid Country Name in the Country field.\n";
	}
	if( email == "" )
	{
		err += "Empty Email field not allowed.\n";
	}
	else 
	{
	 if (window.RegExp) 
	  {
    	var reg1str = "(@.*@)|(\\.\\.)|(@\\.)|(\\.@)|(^\\.)";
    	var reg2str = "^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$";
    	var reg1 = new RegExp(reg1str);
    	var reg2 = new RegExp(reg2str);
    	if (!reg1.test(email) && reg2.test(email))
      		err += "";
    	else err +="Email address is not valid.\n";
      } 
	 else
	  { if(str.indexOf("@") >= 0)
			err += "";
			else err +="Email address is not valid.\n";
   	  }
	
	}
	
 if( phone == "" )
	{
		err += "Empty Phone field not allowed.\n";
	}
	else if( !IsNumeric(phone) ) {
		err += "Please Enter a Valid Phone No. in the Phone field.\n";
	}	
 if( nprs == "" )
	{
		err += "Empty N.Persons field not allowed.\n";
	}
	else if( !IsNumeric(nprs) || nprs == 0 ) {
		err += "Please Enter a Valid No. of Persons in the N.Persons field.\n";
	}

 if( rsv_type[0].checked )
    {
	 if( own_nm == "" )
		err += "Empty Owner Name field not allowed.\n";
	 else if( IsNumeric(own_nm) ) 
		err += "Please Enter a Valid Owner Name in the Owner Name field.\n";
	 if( !(crd_no.length == 16) || !(IsNumeric(crd_no)) )
	  {
    	 if( !(crd_no.length == 14) || !(IsNumeric(crd_no)) )
			err += "Invalid Credic Card Card No.\n";
      }
	  err += chk_crd_month(m,y);
    }

if( err != "" )
{
	alert(err);
	return false;
}
else
 {	if( !cb1 )
 	{
     alert(" You must Accept the CONSENTS And PRIVACY conditions.\n");
	 return false;
 	}

	return true;
 }	
}
/*=========================================================================================================*/
function checkSearch(frm,day,month,year)
{
if(checkDate(frm,frm.sdate.value,frm.smonth.value,frm.syear.value,"Check In") && checkDate(frm,frm.edate.value,frm.emonth.value,frm.eyear.value,"Check Out"))
{
s_date = new Date( frm.syear.value, frm.smonth.value-1, frm.sdate.value );
e_date = new Date( frm.eyear.value, frm.emonth.value-1, frm.edate.value );
now = new Date();
today = new Date( year, month-1, day );

  if( today > s_date || today > e_date)
	{ 
	alert("The Date for which your are going to Search is Passed.\nTry For some future Date(s).");
	return false;
	}
  else
    if( s_date >= e_date)
	{ 
	alert("Check Out date is older or same to Check In date.");
	return false;
	}

frm.submit();
}
}
function checkDate(frm,newday,newmonth,newyear,type)
 	{
				
			if( newday > 30 && ( newmonth == 4 ||  newmonth == 6 ||  newmonth == 9 ||  newmonth == 11) )
			  {
			    alert("Wronge Day of the "+type+" Date.");
				return false;
			  }
			else if( newday > 31 && ( newmonth == 1 ||  newmonth == 3 ||  newmonth == 5 ||  newmonth == 7 ||  newmonth == 8 ||  newmonth == 10 ||  newmonth == 12) )  
			  {
			    alert("Wronge Day of the "+type+" Date.");
				return false;
			  }
			else if( newday > 28 &&  newmonth == 2 )
			  {
			    if( !(newday == 29 && (( newyear % 4 ) == 0)) )
		 			{
					    alert("Wronge Day of the "+type+" Date.");
						return false;
					}	
			  }
		return true;	  
	}		  
	
//===========================================================================================================
function checkCNT(formCNT)
{

	var nm = formCNT.nm.value;
	var email = formCNT.email.value;
	var phone = formCNT.phone.value;
	var rqst = formCNT.rqst.value;			
		
	var err="";
	if( nm == "" )
	{
		err += "Empty name field not allowed.\n";
	}
	else if( IsNumeric(nm) ) {
		err += "Please Enter a Valid Name in the Name field.\n";
	}
   if( !IsNumeric(phone) && phone != "" ) 
    {
		err += "Please Enter a Valid Phone No. in the Phone field.\n";
	}	

	
	if( email == "" )
	{
		err += "Empty Email field not allowed.\n";
	}
	else 
	{
	 if (window.RegExp) 
	  {
    	var reg1str = "(@.*@)|(\\.\\.)|(@\\.)|(\\.@)|(^\\.)";
    	var reg2str = "^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$";
    	var reg1 = new RegExp(reg1str);
    	var reg2 = new RegExp(reg2str);
    	if (!reg1.test(email) && reg2.test(email))
      		err += "";
    	else err +="Invalid Email Address.\n";
      } 
	 else
	  { if(str.indexOf("@") >= 0)
			err += "";
			else err +="Invalid Email Address.\n";
   	  }
	}

 if( rqst == "" )
	{
		err += "Empty Request field not allowed.\n";
	}


if( err != "" )
{
	alert(err);
	return false;
}
else
{   
 }	
}
/*===============================================================================================*/
function lastDayOfMonth( emonth, eyear) 
{
			if( emonth == 4 ||  emonth == 6 ||  emonth == 9 ||  emonth == 11) 
			    ld = 30;
			else if( emonth == 1 ||  emonth == 3 ||  emonth == 5 ||  emonth == 7 ||  emonth == 8 ||  emonth == 10 ||  emonth == 12)   
			    ld = 31;
			else if( emonth == 2 && !(( eyear % 4 ) == 0))
			    ld = 28;
			else
			    ld = 29;
return ld;
}
/*==================================================================================================*/
function chk_crd_month(m,y)
{

var em = formRSV.emonth.value;
var ey = formRSV.eyear.value;
var eld = lastDayOfMonth(em,ey); 
edate = new Date( ey, em-1, eld );
var ld = lastDayOfMonth(m,y);
today = new Date( y, m-1, ld );

if( today > edate )
	return "Credit Card Expiration date is passed.\n";
else 
	return ""; 	
}
/*======================================================================================================*/
function disable_fields()
{
  x = document.formRSV;
  if( x.rsv_type[0].checked )
    {
	 x.own_nm.disabled = true;
	 x.crd_no.disabled = true;
	 x.crd_type.disabled = true;
	 x.emonth.disabled = true;
	 x.eyear.disabled = true;
    }
	else if( x.rsv_type[1].checked )
    {
	 x.own_nm.disabled = false;
	 x.crd_no.disabled = false;
	 x.crd_type.disabled = false;
	 x.emonth.disabled = false;
	 x.eyear.disabled = false;
    }

}
/*============================================================================================================*/
function checkSearch2(frm,day,month,year)
{
if(checkDate2(frm))
{
rsv_date = new Date( frm.year.value, frm.month.value-1, frm.date.value );
now = new Date();
today = new Date( year, month-1, day );

  if( today > rsv_date )
	{ 
	alert("The Date for which your are going to Search is Passed.\nTry For some future Date(s).");
	return false;
	}
  if( frm.nights.value == "" )
    {
  	alert("Empty Nights Field.");
	return false;
	}
  else if( !IsNumeric(frm.nights.value) )
    {
  	alert("Nights should be in numeric.");
	return false;
	}	
frm.submit();
}
}
/*============================================================================================*/
function checkDate2(frm)
 	{
		var newday = frm.date.value;
		var newmonth = frm.month.value;
		var newyear = frm.year.value;
					
			if( newday > 30 && ( newmonth == 4 ||  newmonth == 6 ||  newmonth == 9 ||  newmonth == 11) )
			  {
			    alert("Wronge Day of the Date.");
				return false;
			  }
			else if( newday > 31 && ( newmonth == 1 ||  newmonth == 3 ||  newmonth == 5 ||  newmonth == 7 ||  newmonth == 8 ||  newmonth == 10 ||  newmonth == 12) )  
			  {
			    alert("Wronge Day of the Date.");
				return false;
			  }
			else if( newday > 28 &&  newmonth == 2 )
			  {
			    if( !(newday == 29 && (( newyear % 4 ) == 0)) )
		 			{
					    alert("Wronge Day of the Date.");
						return false;
					}	
			  }
		return true;	  
	}