// JavaScript Document

function CheckreviewForm(form)
{
	var errMsg  = "Please correct the following item(s):\n\n";
	var errNum  = 0;
	var fldName = "";
	
	if( ( form.title.value == "title" || form.title.value == "") )
	{ 
		if( !errNum ) fldName = "title"; 
		errMsg += ++errNum + ". Enter title.\n";
	}

	if( ( form.name.value == "your name" || form.name.value == "") )
	{ 
		if( !errNum ) fldName = "name"; 
		errMsg += ++errNum + ". Enter your name.\n";
	}
	
	// CHECK THAT THE EMAIL ADDRESS IS VALID
	if( (form.email.value != "your email address" && form.email.value != "") && !isValidEmail(form.email.value) )
	{
		if( !errNum ) fldName = "email"; 
		errMsg += ++errNum + ". Your Email Address appears to be invalid.\n";
	}
	if( form.email.value == "" || form.email.value == "your email address")
	{ 
		if( !errNum ) fldName = "email"; 
		errMsg += ++errNum + ". Your Email Address cannot be blank.\n";
	}
	
	if( ( form.comment.value == "your comment" || form.comment.value == "") )
	{ 
		if( !errNum ) fldName = "comment"; 
		errMsg += ++errNum + ". Enter your comment.\n";
	}
	
	if( ( form.code.value == "validation code" || form.code.value == "") )
	{ 
		if( !errNum ) fldName = "code"; 
		errMsg += ++errNum + ". Enter verification code.\n";
	}

	// RETURN THE ERRORS OR ALLOW THE FORM TO SUBMIT
	if( errNum )
	{
		alert(errMsg);
		if (form[fldName].select) form[fldName].select();
		form[fldName].focus();
		return false;
	}	
}

function CheckProvidersreview(form)
{
	var errMsg  = "Please correct the following item(s):\n\n";
	var errNum  = 0;
	var fldName = "";

	if( ( form.name.value == "your name" || form.name.value == "") )
	{ 
		if( !errNum ) fldName = "name"; 
		errMsg += ++errNum + ". Enter your name.\n";
	}
	
	if( ( form.companyname.value == "company name" || form.companyname.value == "") )
	{ 
		if( !errNum ) fldName = "companyname"; 
		errMsg += ++errNum + ". Enter company name.\n";
	}
	
	if( ( form.url.value == "website url" || form.url.value == "") )
	{ 
		if( !errNum ) fldName = "url"; 
		errMsg += ++errNum + ". Enter website url.\n";
	}
	
	// CHECK THAT THE EMAIL ADDRESS IS VALID
	if( (form.email.value != "your email address" && form.email.value != "") && !isValidEmail(form.email.value) )
	{
		if( !errNum ) fldName = "email"; 
		errMsg += ++errNum + ". Your Email Address appears to be invalid.\n";
	}
	if( form.email.value == "" || form.email.value == "your email address")
	{ 
		if( !errNum ) fldName = "email"; 
		errMsg += ++errNum + ". Your Email Address cannot be blank.\n";
	}
	
	if( ( form.review.value == "Review" || form.review.value == "") )
	{ 
		if( !errNum ) fldName = "review"; 
		errMsg += ++errNum + ". Enter your review.\n";
	}
	
	if( ( form.code.value == "code" || form.code.value == "") )
	{ 
		if( !errNum ) fldName = "code"; 
		errMsg += ++errNum + ". Enter verification code.\n";
	}

	// RETURN THE ERRORS OR ALLOW THE FORM TO SUBMIT
	if( errNum )
	{
		alert(errMsg);
		if (form[fldName].select) form[fldName].select();
		form[fldName].focus();
		return false;
	}	
}

function CheckcontactForm(form)
{
	var errMsg  = "Please correct the following item(s):\n\n";
	var errNum  = 0;
	var fldName = "";
	
	if( ( form.name.value == "your name" || form.name.value == "") )
	{ 
		if( !errNum ) fldName = "name"; 
		errMsg += ++errNum + ". Your name cannot be blank.\n";
	}
	
	// CHECK THAT THE EMAIL ADDRESS IS VALID
	if( (form.email.value != "your email address" && form.email.value != "") && !isValidEmail(form.email.value) )
	{
		if( !errNum ) fldName = "email"; 
		errMsg += ++errNum + ". Your Email Address appears to be invalid.\n";
	}
	if( form.email.value == "" || form.email.value == "your email address")
	{ 
		if( !errNum ) fldName = "email"; 
		errMsg += ++errNum + ". Your Email Address cannot be blank.\n";
	}
	
	if( ( form.number.value == "your contact number" || form.number.value == "") )
	{ 
		if( !errNum ) fldName = "number"; 
		errMsg += ++errNum + ". your contact number cannot be blank.\n";
	}
	
	if( ( form.comment.value == "Enquiries/feedback" || form.comment.value == "") )
	{ 
		if( !errNum ) fldName = "comment"; 
		errMsg += ++errNum + ". Enquiries/feedback cannot be blank.\n";
	}
	
	if( ( form.code.value == "validation code" || form.code.value == "") )
	{ 
		if( !errNum ) fldName = "code"; 
		errMsg += ++errNum + ". Enter verification code.\n";
	}

	// RETURN THE ERRORS OR ALLOW THE FORM TO SUBMIT
	if( errNum )
	{
		alert(errMsg);
		if (form[fldName].select) form[fldName].select();
		form[fldName].focus();
		return false;
	}	
}

function CheckfaqForm(form)
{
	var errMsg  = "Please correct the following item(s):\n\n";
	var errNum  = 0;
	var fldName = "";
	
	// CHECK THAT THE EMAIL ADDRESS IS VALID
	if( (form.email.value != "your email address" && form.email.value != "") && !isValidEmail(form.email.value) )
	{
		if( !errNum ) fldName = "email"; 
		errMsg += ++errNum + ". Your Email Address appears to be invalid.\n";
	}
	if( form.email.value == "" || form.email.value == "your email address")
	{ 
		if( !errNum ) fldName = "email"; 
		errMsg += ++errNum + ". Your Email Address cannot be blank.\n";
	}
	
	if( ( form.question.value == "your question" || form.question.value == "") )
	{ 
		if( !errNum ) fldName = "question"; 
		errMsg += ++errNum + ". Question cannot be blank.\n";
	}
	
	if( ( form.code.value == "validation code" || form.code.value == "") )
	{ 
		if( !errNum ) fldName = "code"; 
		errMsg += ++errNum + ". Enter verification code.\n";
	}

	// RETURN THE ERRORS OR ALLOW THE FORM TO SUBMIT
	if( errNum )
	{
		alert(errMsg);
		if (form[fldName].select) form[fldName].select();
		form[fldName].focus();
		return false;
	}	
}

function CheckregistrationForm(form)
{
	var errMsg  = "Please correct the following item(s):\n\n";
	var errNum  = 0;
	var fldName = "";


	// CHECK THAT THE EMAIL ADDRESS IS VALID
	if( (form.email.value != "your email address" && form.email.value != "") && !isValidEmail(form.email.value) )
	{
		if( !errNum ) fldName = "email"; 
		errMsg += ++errNum + ". Your Email Address appears to be invalid.\n";
	}
	if( form.email.value == "" || form.email.value == "your email address")
	{ 
		if( !errNum ) fldName = "email"; 
		errMsg += ++errNum + ". Your Email Address cannot be blank.\n";
	}
	
	if( ( form.password.value == "your password" || form.password.value == "") )
	{ 
		if( !errNum ) fldName = "password"; 
		errMsg += ++errNum + ". Enter your password.\n";
	}
	
	if( ( form.repassword.value == "re-enter password" || form.repassword.value == "") )
	{ 
		if( !errNum ) fldName = "repassword";
		errMsg += ++errNum + ". Re-enter your password.\n";
	}
	
	if( ( form.repassword.value != form.password.value ) )
	{ 
		if( !errNum ) fldName = "password";
		errMsg += ++errNum + ". Passwords do not match.\n";
	}
	
	if( ( form.fname.value == "your first name" || form.fname.value == "") )
	{ 
		if( !errNum ) fldName = "fname"; 
		errMsg += ++errNum + ". Enter first name.\n";
	}
	
	if( ( form.address.value == "your street address" || form.address.value == "") )
	{ 
		if( !errNum ) fldName = "address"; 
		errMsg += ++errNum + ". Enter your address.\n";
	}

	if( ( form.city.value == "your city" || form.city.value == "") )
	{ 
		if( !errNum ) fldName = "city"; 
		errMsg += ++errNum + ". Enter your city.\n";
	}
	
	if( ( form.state.value == "your state" || form.state.value == "") )
	{ 
		if( !errNum ) fldName = "state"; 
		errMsg += ++errNum + ". Enter your state.\n";
	}
	
	if( ( form.pincode.value == "your zip/postal code" || form.pincode.value == "") )
	{ 
		if( !errNum ) fldName = "pincode"; 
		errMsg += ++errNum + ". Enter your zip/postal code.\n";
	}
	
	if( ( form.country.value == "") )
	{ 
		if( !errNum ) fldName = "country"; 
		errMsg += ++errNum + ". Select your country.\n";
	}

	if( ( form.telephone.value != "your contact number" && form.telephone.value != "") && !IsNumeric(form.telephone.value) )
	{ 
		if( !errNum ) fldName = "telephone"; 
		errMsg += ++errNum + ". Your Contact numbar appears to be invalid.\n";
	}
	
	if( form.telephone.value == "" || form.telephone.value == "your contact number")
	{ 
		if( !errNum ) fldName = "telephone"; 
		errMsg += ++errNum + ". Your Contact number cannot be blank.\n";
	}
	
	if( ( form.code.value == "validation code" || form.code.value == "") )
	{ 
		if( !errNum ) fldName = "code"; 
		errMsg += ++errNum + ". Enter verification code.\n";
	}


	// RETURN THE ERRORS OR ALLOW THE FORM TO SUBMIT
	if( errNum )
	{
		alert(errMsg);
		if (form[fldName].select) form[fldName].select();
		form[fldName].focus();
		return false;
	}	
}

function CheckloginForm(form)
{
	var errMsg  = "Please correct the following item(s):\n\n";
	var errNum  = 0;
	var fldName = "";


	// CHECK THAT THE EMAIL ADDRESS IS VALID
	if( (form.email.value != "your email address" && form.email.value != "") && !isValidEmail(form.email.value) )
	{
		if( !errNum ) fldName = "email"; 
		errMsg += ++errNum + ". Your Email Address appears to be invalid.\n";
	}
	if( form.email.value == "" || form.email.value == "your email address")
	{ 
		if( !errNum ) fldName = "email"; 
		errMsg += ++errNum + ". Your Email Address cannot be blank.\n";
	}
	
	if( ( form.password.value == "your password" || form.password.value == "") )
	{ 
		if( !errNum ) fldName = "password"; 
		errMsg += ++errNum + ". Enter your password.\n";
	}

	// RETURN THE ERRORS OR ALLOW THE FORM TO SUBMIT
	if( errNum )
	{
		alert(errMsg);
		if (form[fldName].select) form[fldName].select();
		form[fldName].focus();
		return false;
	}	
}

function CheckeditprofileForm(form)
{
	var errMsg  = "Please correct the following item(s):\n\n";
	var errNum  = 0;
	var fldName = "";

	
	if( ( form.firstname.value == "your first name" || form.firstname.value == "") )
	{ 
		if( !errNum ) fldName = "firstname"; 
		errMsg += ++errNum + ". Enter first name.\n";
	}
	
	if( ( form.telephone.value != "your contact number" && form.telephone.value != "") && !IsNumeric(form.telephone.value) )
	{ 
		if( !errNum ) fldName = "telephone"; 
		errMsg += ++errNum + ". Your Contact numbar appears to be invalid.\n";
	}
	
	if( form.telephone.value == "" || form.telephone.value == "your contact number")
	{ 
		if( !errNum ) fldName = "telephone"; 
		errMsg += ++errNum + ". Your Contact number cannot be blank.\n";
	}
	
	if( ( form.street_address.value == "street address" || form.street_address.value == "") )
	{ 
		if( !errNum ) fldName = "street_address"; 
		errMsg += ++errNum + ". Enter street address.\n";
	}
	
	if( ( form.city.value == "city" || form.city.value == "") )
	{ 
		if( !errNum ) fldName = "city"; 
		errMsg += ++errNum + ". Enter city.\n";
	}
	
	if( ( form.state.value == "state" || form.state.value == "") )
	{ 
		if( !errNum ) fldName = "state"; 
		errMsg += ++errNum + ". Enter state.\n";
	}
	
	if( ( form.postcode.value == "zip/postal code" || form.postcode.value == "") )
	{ 
		if( !errNum ) fldName = "postcode"; 
		errMsg += ++errNum + ". Enter zip/postal code.\n";
	}
	
	if( ( form.country_id.value == "country" || form.country_id.value == "") )
	{ 
		if( !errNum ) fldName = "country_id"; 
		errMsg += ++errNum + ". Select Country.\n";
	}

	// RETURN THE ERRORS OR ALLOW THE FORM TO SUBMIT
	if( errNum )
	{
		alert(errMsg);
		if (form[fldName].select) form[fldName].select();
		form[fldName].focus();
		return false;
	}	
}

function CheckchangepasswordForm(form)
{
	var errMsg  = "Please correct the following item(s):\n\n";
	var errNum  = 0;
	var fldName = "";

	if( ( form.cpassword.value == "your password" || form.cpassword.value == "") )
	{ 
		if( !errNum ) fldName = "cpassword"; 
		errMsg += ++errNum + ". Enter your current password.\n";
	}

	if( ( form.password.value == "your password" || form.password.value == "") )
	{ 
		if( !errNum ) fldName = "password"; 
		errMsg += ++errNum + ". Enter your new password.\n";
	}
	
	if( ( form.repassword.value == "re-enter password" || form.repassword.value == "") )
	{ 
		if( !errNum ) fldName = "repassword";
		errMsg += ++errNum + ". Re-enter your new password.\n";
	}
	
	if( ( form.repassword.value != form.password.value ) )
	{ 
		if( !errNum ) fldName = "password";
		errMsg += ++errNum + ".New passwords do not match.\n";
	}
	

	// RETURN THE ERRORS OR ALLOW THE FORM TO SUBMIT
	if( errNum )
	{
		alert(errMsg);
		if (form[fldName].select) form[fldName].select();
		form[fldName].focus();
		return false;
	}	
}

function Checkbusbooknow(form)
{
	var errMsg  = "Please correct the following item(s):\n\n";
	var errNum  = 0;
	var fldName = "";
	
	if( ( form.dtdate.value == "date of travel" || form.dtdate.value == "") )
	{ 
		if( !errNum ) fldName = "dtdate"; 
		errMsg += ++errNum + ". Select Tour Date.\n";
	}
	
	if( ( form.terms.checked == false) )
	{ 
		if( !errNum ) fldName = "terms"; 
		errMsg += ++errNum + ". Read and Check Terms Of Use.\n";
	}

	// RETURN THE ERRORS OR ALLOW THE FORM TO SUBMIT
	if( errNum )
	{
		alert(errMsg);
		if (form[fldName].select) form[fldName].select();
		form[fldName].focus();
		return false;
	}	
}

function Checkbooknowconfirm(form)
{
	var errMsg  = "Please correct the following item(s):\n\n";
	var errNum  = 0;
	var fldName = "";
	
	if( ( form.fname.value == "your first name" || form.fname.value == "") )
	{ 
		if( !errNum ) fldName = "fname"; 
		errMsg += ++errNum + ". Enter your first name.\n";
	}

	// CHECK THAT THE EMAIL ADDRESS IS VALID
	if( (form.email.value != "your email address" && form.email.value != "") && !isValidEmail(form.email.value) )
	{
		if( !errNum ) fldName = "email"; 
		errMsg += ++errNum + ". Your Email Address appears to be invalid.\n";
	}
	if( form.email.value == "" || form.email.value == "your email address")
	{ 
		if( !errNum ) fldName = "email"; 
		errMsg += ++errNum + ". Your Email Address cannot be blank.\n";
	}

	if( ( form.telephone.value == "your contact number" || form.telephone.value == "") )
	{ 
		if( !errNum ) fldName = "telephone"; 
		errMsg += ++errNum + ". Enter your contact number.\n";
	}


 /*   for($i=1;$i<=form.noap.value;$i++){
		alert("pfname"+.$i);
		alert(form.pfname+$i.value);
		if( ( form.pfname+$i.value == "passenger first name" || form.pfname.value == "") )
		{ 
			if( !errNum ) fldName = "pfname"+$i; 
			errMsg += ++errNum + ". Enter passenger first name.\n";
		}
		if( ( form.plname+$i.value == "passenger last name" || form.plname.value == "") )
		{ 
			if( !errNum ) fldName = "plname"; 
			errMsg += ++errNum + ". Enter passenger last name.\n";
		}
    } */

	// RETURN THE ERRORS OR ALLOW THE FORM TO SUBMIT
	if( errNum )
	{
		alert(errMsg);
		if (form[fldName].select) form[fldName].select();
		form[fldName].focus();
		return false;
	}	
}
//  check for valid numeric strings	
function IsNumeric(strString)
{
	var strValidChars = "0123456789.-() ";
	var strChar;
	var blnResult = true;
	
	if (strString.length == 0) return false;
	
	//  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)
		{
			blnResult = false;
		}
	}
	
	return blnResult;
}

//  checks that the email address has one (@), atleast one (.). It also makes sure that there are no spaces, extra '@'s or a (.) just before or after the @. It also makes sure that there is atleast one (.) after the @.
function isValidEmail(str) 
{
	var at="@";
	var dot=".";
	var lat=str.indexOf(at);
	var lstr=str.length;
	var ldot=str.indexOf(dot);
	
	if (str.indexOf(at)==-1) return false;
	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr) return false;
	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr) return false;
	if (str.indexOf(at,(lat+1))!=-1) return false;
	if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot) return false;
	if (str.indexOf(dot,(lat+2))==-1) return false;
	if (str.indexOf(" ")!=-1) return false;
	
	return true;					
}
