function is_Alpha(string) {
  var isAlpha = /^([a-zA-Z]+)$/;
if (string.search(isAlpha)==-1)
		{
		return false;
		}
return true;
}                   
function isEmail(strng) 
{
 var emailFilter=/^.+@.+\..{2,3}$/;
 if (!(emailFilter.test(strng))) 
	{ 
		return false;
	}
	return true;		
}

function isNumber(string) {
		
   if (!string) return false;
   var iChars = "1234567890";

   for (var i = 0; i < string.length; i++) {
      if (iChars.indexOf(string.charAt(i)) == -1)
         return false;
		  
   }
   if(string.length<5 || string.length>=15)
	  return false;
   return true;
   
}      

function isMobile(strng) {
				
   var re10digit=/^\d{10}$/
   if (strng.search(re10digit)==-1)
                {
                return false;
                }
return true;
}

function isMobile2(strng) {
				
   var re10digit=/^\d{15}$/
   if (strng.search(re10digit)==-1)
                {
                return false;
                }
return true;
}

function isFax(strng) {
				
   var re10digit=/^\d{11}$/
   if (strng.search(re10digit)==-1)
                {
                return false;
                }
return true;
}
//to check 6 digit pin code

function isPinCode(strng) {
	var re10digit=/^\d{6}$/ 
	
   if (strng.search(re10digit)==-1)
		{
		return false;
		}

return true;
}

function isEmployee(strng) {
	var re10digit=/^\d{1}$/ 
   if (strng.search(re10digit)==-1)
		{
		return false;
		}

return true;
}

function isBranches(strng) {
	var re10digit=/^\d{1}$/ 
	if(strng==0)return false;
   if (strng.search(re10digit)==-1)
		{
		return false;
		}

return true;
}


function isAmount(string) {
		
   if (!string) return false;
   var iChars = "1234567890";

   for (var i = 0; i < string.length; i++) {
      if (iChars.indexOf(string.charAt(i)) == -1)
         return false;
		  
   }
   
   return true;
   
}

function is_Add(string) {
		
   if (!string) return false;
   var iChars = "*|,\"<:>[]{}`\';()@&$#%1234567890";

   for (var i = 0; i < string.length; i++) {
      if (iChars.indexOf(string.charAt(i)) != -1)
         return false;
		  
   }
   return true;
   
}
function isDate(sDate) {
var re = /^\d{1,2}\/\d{1,2}\/\d{4}$/
if (re.test(sDate)) {
var dArr = sDate.split("/");
var d = new Date(sDate);
return d.getDate() == dArr[1] && d.getMonth() + 1 == dArr[0] && d.getFullYear() == dArr[2];
}
else {
alert("Please Enter a Valid Travel Date")
return false;
}
}
function is_Address(string) {
		
   if (!string) return false;
   var iChars = "*^~%<>";

   for (var i = 0; i < string.length; i++) {
      if (iChars.indexOf(string.charAt(i)) != -1)
         return false;
		  
   }
   return true;
   
}

// Removes leading whitespaces
function trim(inputString) {
   
   if (typeof inputString != "string") { return inputString; }
   var retValue = inputString;
   var ch = retValue.substring(0, 1);
   while (ch == " ") { // Check for spaces at the beginning of the string
      retValue = retValue.substring(1, retValue.length);
      ch = retValue.substring(0, 1);
   }
   ch = retValue.substring(retValue.length-1, retValue.length);
   while (ch == " ") { // Check for spaces at the end of the string
      retValue = retValue.substring(0, retValue.length-1);
      ch = retValue.substring(retValue.length-1, retValue.length);
   }
   while (retValue.indexOf("  ") != -1) { // Note that there are two spaces in the string - look for multiple spaces within the string
      retValue = retValue.substring(0, retValue.indexOf("  ")) + retValue.substring(retValue.indexOf("  ")+1, retValue.length); // Again, there are two spaces in each of the strings
   }
   
   return retValue;
  
   // Return the trimmed string back to the user
}

function is_Beta(string) {
		
   if (!string) return false;
   var iChars = "*|,\"<:>[]{}`\';()@&$#%";

   for (var i = 0; i < string.length; i++) {
      if (iChars.indexOf(string.charAt(i)) != -1)
         return false;
		  
   }
   return true;
   
}      

function is_Add2(string) {
		
   
   var iChars = "*^~%<>";

   for (var i = 0; i < string.length; i++) {
      if (iChars.indexOf(string.charAt(i)) != -1)
         return false;
		  
   }
   return true;
   
} 

function checknumber(){
var x=document.agentForm.flights_int_amount.value
var anum=/(^\d+$)|(^\d+\.\d+$)/
if (anum.test(x))
testresult=true
else{
alert("Please input a valid number!")
testresult=false
}
return (testresult)
}



function isValid(f)
{
var e=document.forms[""+f].elements;
var l=e.length;
var fn=document.forms[""+f];
var errors='';
//alert(document.BookHotel.name.value);
	for(i=0; i<=l-2; i++)
	{
		
		if(e[i].title=='AlphanumAdd2' && !is_Add2(e[i].value))
		{
		errors += '- '+e[i].id+'- Special characters are not allowed. \n';
		}

		if(trim(e[i].value)=='' && e[i].id!='' && e[i].title=='AlphanumAdd')	
		{
		errors += '- '+e[i].id+' is Required. \n';
		}
		if(e[i].value!=''){
		if(e[i].title=='AlphanumAdd' && !is_Add(e[i].value))
		{
		errors += '- '+e[i].id+'- Special characters are not allowed. \n';
		}
		}

		if(e[i].value=='' && e[i].id!='' && e[i].title=='Alphanum')	
		{
		errors += '- '+e[i].id+' is Required. \n';
		}
		if(e[i].title=='ENumber' && !isAmount(e[i].value))	
		{
		errors += '- '+e[i].id+' is Required. \n';
		}
		if(e[i].title=='Beta' && !is_Beta(e[i].value))
		{
		errors += '- '+e[i].id+'- Only alphabets are allowed. \n';
		}
		if(e[i].title=='Alpha' && !is_Alpha(e[i].value))
		{
		errors += '- '+e[i].id+'- Only alphabets without spaces are allowed. \n';
		}
		if(e[i].title=='Alpha2' && e[i].value=='')
                {
                errors += '- '+e[i].id+'- is Required. \n';
                }
		if(e[i].title=='Alpha2' && !is_Alpha(e[i].value) && e[i].value.length > 0)
		{
		errors += '- '+e[i].id+'- special character are not allowed. \n';
		}
		if(e[i].title=='Alpha2' && e[i].value.length<3 && e[i].value.length > 0)
		{
		errors += '- '+e[i].id+'- should be greater than two character \n';
		}
		
		if(e[i].title=='Mobile2' && !isMobile2(e[i].value) && e[i].value.substring(1,0)!=='0')
		{
		errors += '- '+e[i].id+'- Please Enter a Valid Number \n';
		}

		if(e[i].title=='Mobile' && !isMobile(e[i].value) && e[i].value.substring(1,0)!=='0')
		{
		errors += '- '+e[i].id+'- Please Enter a 10 Digit Valid Number \n';
		}

		if(e[i].title=='Number' && !isNumber(e[i].value) && e[i].value.substring(1,0)!=='0')
		{
		errors += '- '+e[i].id+'- Please Enter a Valid Day Phone Number   \n';
		}
		
		if(e[i].title=='Fax' && !isFax(e[i].value) && e[i].value.substring(1,0)!=='0')
		{
		errors += '- '+e[i].id+'- Please Enter a Valid Fax Number   \n';
		}

		if(e[i].title=='pincode' && !isPinCode(e[i].value))
		{
		errors += '- '+e[i].id+' Please Enter a 6 Digit Valid Pin Code \n';
		}
		if(e[i].title=='Employee' && !isEmployee(e[i].value))
		{
				errors += '- '+e[i].id+'- Enter valid number of Employees \n';
		}
		if(e[i].title=='Amount2' && !isBranches(e[i].value))
		{
		errors += '- '+e[i].id+'- Enter valid number of Branches \n';
		}
		
		if(e[i].title=='Email' && !isEmail(e[i].value))
		{
		errors += '- '+e[i].id+'-  Enter a valid email address . \n';
		}

		if(e[i].title=='Amount' && !isAmount(e[i].value) && document.agentForm.contact_mobile.value=="")
		{
		errors += '- '+e[i].id+'- Please Enter Amount   \n';
		}

if(e[i].title=='Amount3' && !isAmount(e[i].value) && e[i].value.substring(1,0)!=='0')
		{
		errors += '- '+e[i].id+'- Please Enter Amount   \n';
		}

if(e[i].title=='Amount4' && !isAmount(e[i].value) && e[i].value.substring(1,0)!=='0')
		{
		errors += '- '+e[i].id+'- Please Enter Amount   \n';
		}

if(e[i].title=='Amount5' && !isAmount(e[i].value) && e[i].value.substring(1,0)!=='0')
		{
		errors += '- '+e[i].id+'- Please Enter Amount   \n';
		}

if(e[i].title=='Amount6' && !isAmount(e[i].value) && e[i].value.substring(1,0)!=='0')
		{
		errors += '- '+e[i].id+'- Please Enter Amount   \n';
		}

if(e[i].title=='Amount7' && !isAmount(e[i].value) && e[i].value.substring(1,0)!=='0')
		{
		errors += '- '+e[i].id+'- Please Enter Amount   \n';
		}
if(e[i].title=='Amount8' && !isAmount(e[i].value) && document.agentForm.contact_turndom.value=="")
		{
		errors += '- '+e[i].id+'- Please Enter Amount   \n';
		}

if(e[i].title=='Amount9' && !isAmount(e[i].value) && document.agentForm.contact_lcc.value=="")
		{
		errors += '- '+e[i].id+'- Please Enter Amount   \n';
		}

if(e[i].title=='Amount10' && !isAmount(e[i].value) && document.agentForm.contact_turninter.value=="")
		{
		errors += '- '+e[i].id+'- Please Enter Amount   \n';
		}

		if(e[i].title=='Amount1' && !isAmount(e[i].value) && document.agentForm.employ_no.value=="")
		{
		errors += '- '+e[i].id+'- Enter valid number of Employees   \n';
		}

	if(e[i].title=='AmountX' && !isAmount(e[i].value) && document.agentForm.contact_branch.value=="")
		{
		errors += '- '+e[i].id+'- Enter valid number of Branches   \n';
		}

		if(e[i].value=='' && e[i].title=='blank')	
		{
		errors += '- '+e[i].id+'- is Required. \n';
		}

		if((e[i].title=='ADesignation' && document.agentForm.agent_designation.value=="") && (document.agentForm.designation_opt.value==""))	
		{
		errors += '- '+e[i].id+' is Required. \n';
		}		
	
		
		
		/*
		
		if(e[i].title=='Con_Email' && !isEmail(e[i].value))
		{
		errors += '- '+e[i].id+'-  Enter a valid Confirm email address . \n';
		}
		*/

	}
	if(f=='tvhform')
	{
		if(document.tvhform.city.value=='')
		{
			errors += '- Please select the City Name \n';

		}
		if(document.tvhform.meeting_hrs.value=='' || document.tvhform.meeting_min.value=='')
		{
			errors += '- Please select the Preferred time of meeting \n';
		}
	}

	if(f=='barclayForm')
	{
		if(trim(document.barclayForm.adress1.value)=='' && document.barclayForm.adress1.title=='BAddress')	
		{
		errors += '- '+document.barclayForm.adress1.id+' is Required. \n';
		}
		if(document.barclayForm.adress1.value!=''){
		if(document.barclayForm.adress1.title=='BAddress' && !is_Address(document.barclayForm.adress1.value))
		{
		errors += '- '+document.barclayForm.adress1.id+'- Following special characters *^~%<> are not allowed. \n';
		}
		}
		if(trim(document.barclayForm.adress2.value)=='' && document.barclayForm.adress1.title=='BAddress2')	
		{
		errors += '- '+document.barclayForm.adress2.id+' is Required. \n';
		}
		if(document.barclayForm.adress2.value!=''){
		if(document.barclayForm.adress2.title=='BAddress2' && !is_Address(document.barclayForm.adress2.value))
		{
		errors += '- '+document.barclayForm.adress2.id+'- Following special characters *^~%<> are not allowed. \n';
		}
		}
		if(trim(document.barclayForm.pan_card_no.value)=='' && document.barclayForm.pan_card_no.title=='PanNo')	
		{
		errors += '- '+document.barclayForm.pan_card_no.id+' is Required. \n';
		}
		if(document.barclayForm.pan_card_no.value!=''){
		if(document.barclayForm.pan_card_no.title=='PanNo' && !is_Add2(document.barclayForm.pan_card_no.value))
		{
		errors += '- '+document.barclayForm.pan_card_no.id+'- Special characters are not allowed. \n';
		}
		}
		if(document.barclayForm.contact_landline.value=="" && document.barclayForm.contact_landline.title=="BNumber" && !isNumber(document.barclayForm.contact_landline.value)) 
				{
				errors += '- '+document.barclayForm.contact_landline.id+'- Please Enter a Valid Alternate Number   \n';
				}
			if(document.barclayForm.contact_landline.value!="")
			{
			if(document.barclayForm.contact_landline_code.value=="" || !isAmount(document.barclayForm.contact_landline_code.value)) 
				{
				errors += '- '+document.barclayForm.contact_landline_code.id+'- Please Enter a Valid Landline Code   \n';
				}
			}
		if(document.barclayForm.creditcard[0].checked==true && document.barclayForm.credit_card.value=="")
			{
				errors += '- Please Enter Name of the Issuing Bank   \n';
			}
	}
	/* 
	=================================================================
	Email Confirmation Validaiton start here 
	=================================================================
	
if (f=='agentForm')
	{

		if(document.agentForm.contact_email.value!=document.agentForm.confirm_email.value)
			{
			errors += '- Please make sure "Email Id" and "Confirm email Id" are the same. \n';
			}

	}
	
	=================================================================
	Credi Card Validaiton start here 
	=================================================================
	
	if (f=='agentForm')
	{
	var cc=fn.card_number.value.substr(0,1)
	var clen=fn.card_number.value.length;
	var cvv=fn.card_cvv.value.length;
	if(!fn.card_type[0].checked && !fn.card_type[1].checked && !fn.card_type[2].checked)
	{
	errors += '- Please Choose a valid card type option \n';
	}
	if(fn.card_type[0].checked && (cc.indexOf('4')==-1 || clen!=16))
	{
	errors += '- Please Enter a valid Visa Credit Card Number \n';
	}
	if(fn.card_type[1].checked && (cc.indexOf('5')==-1 || clen!=16))
	{
	errors += '- Please Enter a  valid Master Credit Card Number \n';
	}
	if(fn.card_type[2].checked && clen!=15)
	{
	errors += '- Please Enter a 15 Digit valid American Express Credit Card Number \n';
	}
	if((fn.card_type[0].checked || fn.card_type[1].checked) && cvv!=3)
	{
	errors += '- Please Enter a 3 Digit CVV Number \n';
	}
	if(fn.card_type[2].checked && cvv!=4)
	{
	errors += '- Please Enter a 4 Digit CVV Number \n';
	}
}
	
	=================================================================
	End Credi Card Validaiton start here 
	=================================================================
	*/
	if(errors)
	{
	alert('The following error(s) occurred: \n\n'+errors);
	return false
	}
	else
	{
                if (f=='agentForm'){
                        document.getElementById('continue').disabled=true;
                }
	return true;
	}
}