function isemptyfield(fieldname,msg)

{

	if(fieldname.value=="")

	{

	alert(msg);

	fieldname.focus();

	return true;

	}

	return false;

}



/******************  Minimum characters check  **********************/

function isminchars(fieldname,msg,charlength)

{

	if(fieldname.value.length<charlength)

	{

		alert(msg)	;

		fieldname.focus();

		return true;

	}

	return false;

}



/*******************************  Email Validation Start ***********************************************/

	function isvalidemail(fieldname,msg)

	{

	var str=fieldname.value;

	var emailfilter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;

	if (!emailfilter.test(str)) 

		{

		alert(msg);

		fieldname.focus();

		return false;

		}

	return true;

	}





/******************************  Check Numbers  ***********************************/

function isnumeric(fieldname,msg)

   //  check for valid numeric strings 

   {

   var strValidChars = "0123456789";   //  Valid Characters 

   var strString=fieldname.value;

   var strChar;

   var blnResult = true;

   

   //  test strString consists of valid characters listed above

   for (i = 0; i < strString.length && blnResult == true; i++)

      {

      strChar = strString.charAt(i);

      if (strValidChars.indexOf(strChar) == -1)

         {

			alert(msg)	;

			fieldname.focus(); 

         	blnResult = false;

         }

      }

	 

   return blnResult;

   }	



function checkInternationalPhone(strPhone){

var bracket=3

strPhone=trim(strPhone)

if(strPhone.indexOf("+")>1) return false

if(strPhone.indexOf("-")!=-1)bracket=bracket+1

if(strPhone.indexOf("(")!=-1 && strPhone.indexOf("(")>bracket)return false

var brchr=strPhone.indexOf("(")

if(strPhone.indexOf("(")!=-1 && (strPhone.indexOf(")")==-1 || strPhone.indexOf(")") < brchr+2))return false

//if(strPhone.indexOf("(")!=-1 && strPhone.charAt(brchr+2)!=")")return false

if(strPhone.indexOf("(")==-1 && strPhone.indexOf(")")!=-1)return false

s=stripCharsInBag(strPhone,validWorldPhoneChars);

return (isInteger(s) && s.length >= minDigitsInIPhoneNumber && s.length <= maxDigitsInIPhoneNumber);

}



/* check for pin/zip code */

function zip(s)

{

var s=trim(s);

return (isInteger(s) && (s.length == 5 || s.length == 8));

}

function zip_code(fieldname,msg)

{

var s=trim(fieldname.value);

if(isInteger(s) && (s.length == 5 || s.length == 8))

return true;

else

{

alert(msg);

fieldname.focus();

return false;

}

}



// Declaring required variables

var digits = "0123456789";

// non-digit characters which are allowed in phone numbers

var phoneNumberDelimiters = "()- ";

// characters which are allowed in international phone numbers

// (a leading + is OK)

var validWorldPhoneChars = phoneNumberDelimiters + "+";

// Minimum no of digits in an international phone no.

var minDigitsInIPhoneNumber = 10;

var maxDigitsInIPhoneNumber = 15;



function isInteger(s)

{   var i;

    for (i = 0; i < s.length; i++)

    {   

        // Check that current character is number.

        var c = s.charAt(i);

        if (((c < "0") || (c > "9"))) return false;

    }

    // All characters are numbers.

    return true;

}

function trim(s)

{   var i;

    var returnString = "";

    // Search through string's characters one by one.

    // If character is not a whitespace, append to returnString.

    for (i = 0; i < s.length; i++)

    {   

        // Check that current character isn't whitespace.

        var c = s.charAt(i);

        if (c != " ") returnString += c;

    }

    return returnString;

}

function stripCharsInBag(s, bag)

{   var i;

    var returnString = "";

    // Search through string's characters one by one.

    // If character is not in bag, append to returnString.

    for (i = 0; i < s.length; i++)

    {   

        // Check that current character isn't whitespace.

        var c = s.charAt(i);

        if (bag.indexOf(c) == -1) returnString += c;

    }

    return returnString;

}



function checkInternationalPhone(strPhone){

var bracket=3

strPhone=trim(strPhone)

if(strPhone.indexOf("+")>1) return false

if(strPhone.indexOf("-")!=-1)bracket=bracket+1

if(strPhone.indexOf("(")!=-1 && strPhone.indexOf("(")>bracket)return false

var brchr=strPhone.indexOf("(")

if(strPhone.indexOf("(")!=-1 && strPhone.charAt(brchr+2)!=")")return false

if(strPhone.indexOf("(")==-1 && strPhone.indexOf(")")!=-1)return false

s=stripCharsInBag(strPhone,validWorldPhoneChars);

return (isInteger(s) && s.length >= minDigitsInIPhoneNumber && s.length <= maxDigitsInIPhoneNumber);

}

function reservation_form_validate(frm)
{
	 
	if ( (frm.towncar_d1.checked == false ) && (frm.towncar_d2.checked == false ) )
	{
		
	   alert ( "Choose Vehicle Type!!!!" );
	   return false;
	}
	
	else if(isemptyfield(frm.d_pname,"Passenger name is required!!!!")==true)

	{

	 return false;

	}

	else if(isemptyfield(frm.d_pno,"No. of passengers are required!!!!")==true )

	{

	 return false;

	}

	if(isnumeric(frm.d_pno,'No. of passenger must be numeric!!!!')==false)

	{

	 return false;

	}

	if(isemptyfield(frm.d_no_of_luggage,"Pieces of luggage are required!!!!")==true )

	{

	 return false;

	}	

	if(isnumeric(frm.d_no_of_luggage,'Pieces of luggage must be numeric!!!!')==false)

	{

	 return false;

	}

  	else if(isemptyfield(frm.d_phno,"Valid phone number is required!!!!")==true )

	{

	    return false;

	}

	else if (checkInternationalPhone(frm.d_phno.value)==false){

		alert("Valid phone number is required!!!!\n eg- 324-223-3333");

		frm.d_phno.value="";

		frm.d_phno.focus();

		return false;

	}

else if(isemptyfield(frm.d_email,"Email Address is required!!!!")==true || isminchars(frm.d_email,"Email Address must contain a minimum of 6 characters !!!!",6)==true || isvalidemail(frm.d_email,"Please enter your valid Email Address !")==false)

	{

	 return false;

	}

	

	else if(isemptyfield(frm.d_pickloc," Pickup location is required field!!!!")==true)
	{

	 return false;

	}

	

	/*else if(isemptyfield(frm.pickup_month,"Pickup date is required field!!!!")==true)

	{
	 return false;
	}*/
   /* else if( frm.pickdate.value=='mm-dd-yyyy' )
	{
       alert("Enter the valid pickup date.");
       frm.pickdate.focus();
		return false;
    }*/
	else if(isemptyfield(frm.d_month,"Select Pickup month!!!!")==true)
	{
      	     return false;
	}
	else if(isemptyfield(frm.d_day,"Select Pickup day!!!!")==true)
	{
      	     return false;
	}
	else if(isemptyfield(frm.d_year,"Select Pickup year!!!!")==true)
	{
      	     return false;
	}
	else if(isemptyfield(frm.d_h,"Select Pickup Hour!!!!")==true)
	{
      	     return false;
	}
	else if(isemptyfield(frm.d_m,"Select Pickup Minute!!!!")==true)
	{
      	     return false;
	}
	else if(isemptyfield(frm.d_ampm11111,"Select AM or PM")==true)
	{
      	     return false;
	}
	
	
	/*else if( frm.picktime.value=='hh:mm am/pm' )
	{
       alert("Enter the valid pickup time");
       frm.picktime.focus();
		return false;
    }*/
	else if(isemptyfield(frm.d_droploc," Drop off location is required field!!!!")==true)
	{
	  return false;
	}
	

	
/*
	else if(frm.paymentmode.selectedIndex > 1 )

	{

		if(isemptyfield(frm.credit_card_name," Name of credit card is required!!!")==true)

			return false;

		else if(isemptyfield(frm.credit_card_no," Credit card No.is required!!!")==true)

			return false;	

		else if (isminchars(frm.credit_card_no,'Incomplete credit card no',16)==true)

			return false;

		else if (isnumeric(frm.credit_card_no,'Credit card no. must be numeric')==false)

			return false;

		if(isemptyfield(frm.exp_month," Expiration month of credit card is required!!!")==true)

			return false;

			if(isemptyfield(frm.exp_year," Expiration year of credit card is required!!!")==true)

			return false;

	

	}
*/
   
<!-- .........................--->

	else if ( (frm.towncar_a1.checked == false ) && (frm.towncar_a2.checked == false ) && (frm.towncar_a3.checked == false ))
	{
	   alert ( "Choose Vehicle Type for Arrival" );
	   return false;
	}	 
	else if(isemptyfield(frm.a_pname,"Passenger name is required for Arrival!!!!")==true)
	{
	 return false;
	}
	else if(isemptyfield(frm.a_pno,"No. of passengers are required for Arrival!!!!")==true )
	{
	 return false;
	}
	if(isnumeric(frm.a_pno,'No. of passenger must be numeric for Arrival')==false)
	{
	 return false;
	}
	if(isemptyfield(frm.a_no_of_luggage,"Pieces of luggage are required for Arrival!!!!")==true )
	{
	 return false;
	}	
	if(isnumeric(frm.a_no_of_luggage,'Pieces of luggage must be numeric for Arrival')==false)
	{
	 return false;
	}
  	else if(isemptyfield(frm.a_phno,"Valid phone number is required for Arrival!!!!")==true )

	{
	    return false;
	}

	else if (checkInternationalPhone(frm.a_phno.value)==false){

		alert("Valid phone number is required for Arrival!!!!\n eg- 324-223-3333");

		frm.a_phno.value="";

		frm.a_phno.focus();

		return false;

	}

else if(isemptyfield(frm.a_email,"Email Address is required for Arrival!!!!")==true || isminchars(frm.a_email,"Email Address must contain a minimum of 6 characters for Arrival",6)==true || isvalidemail(frm.a_email,"Please enter your valid Email Address for Arrival")==false)
	{
	 return false;
	}
 	else if(isemptyfield(frm.a_pickloc," Pickup location is required field!!!!")==true)
	{
	 return false;
	}
	else if(isemptyfield(frm.a_picktime,"Pickup time is required field for Arrival!!!!")==true)
	{
      	     return false;
	}
	else if(isemptyfield(frm.a_droploc," Drop off location is required field for Arrival!!!!")==true)
	{
	  return false;
	}	
   	else if(isemptyfield(frm.security_code,"Security code is required field!!!!")==true)
	{
	 return false;
	}

return true;

}

/*  contact form validation */

function contact_form_validate(frm)

{     
	 if(isemptyfield(frm.pname,"Passenger name is required!!!!")==true)
	{
	 	return false;
	}
	
  	else if(isemptyfield(frm.phno,"Valid phone number is required!!!!")==true )
	{
	    return false;
	}
	else if (checkInternationalPhone(frm.phno.value)==false){
		alert("Valid phone number is required!!!!\n eg- 324-223-3333");
		frm.phno.value="";
		frm.phno.focus();
		return false;
	}

else if(isemptyfield(frm.email,"Email Address is required!!!!")==true || isminchars(frm.email,"Email Address must contain a minimum of 6 characters",6)==true || isvalidemail(frm.email,"Please enter your valid Email Address")==false)
	{
	 return false;
	}	 
    else if(isemptyfield(frm.security_code,"Security code is required field!!!!")==true)
	{
	 return false;
	}
 	
return true;

}

/*End of contact form validation */


