// JavaScript Document
function CheckBadChar_Vendor() 
{
var iChars = "!@#$%^&*()+=-[]\\\';,./{}|\":<>?";
var iChars1 = "!@#$%^*()+=[]\\\';/{}|\":<>?";
var iChars2 = "!@$%^&*+=-[]\\\;/{}|\:<>?";
var iChars3 = "!@$%^&*+=[]\\\;/{}|\<>?";
var iChars_email = "!#$%^&*()+=[]\\\';,/{}|\":<>?";
var iChars_url = "!@#$%^&*()+=[]\\\';,{}|\"<>";
var control1 = 0, control2 = 0, control3 = 0, control4 = 0, control5 = 0, control6 = 0, control7 = 0, control8 = 0, control9 = 0, control10 = 0, control11 = 0;

	for (var i = 0; i < document.forminsertar.name_ins.value.length; i++) 
	{
		if (iChars1.indexOf(document.forminsertar.name_ins.value.charAt(i)) != -1) 
		{
		control1=1;
		alert ("Vendor field has special character(s). \nThese are not allowed: \n!@#$%^*()+=[]\\\';/{}|\":<>?");
		return false;
		}		
	}
	
	for (var i = 0; i < document.forminsertar.address_ins.value.length; i++) 
	{
		if (iChars2.indexOf(document.forminsertar.address_ins.value.charAt(i)) != -1) 
		{
		control2=1;
		alert ("Address field has special character(s). \nThese are not allowed: \n!@$%^&*+=-[]\\\;/{}|\:<>?");
		return false;
		}		
	}
	
	for (var i = 0; i < document.forminsertar.zipcode_ins.value.length; i++) 
	{
		if (iChars.indexOf(document.forminsertar.zipcode_ins.value.charAt(i)) != -1) 
		{
		control3=1;
		alert ("Zipcode field has special character(s). \nThese are not allowed: \n!@#$%^&*()+=-[]\\\';,./{}|\":<>?");
		return false;
		}		
	}
	for (var i = 0; i < document.forminsertar.contact_ins.value.length; i++) 
	{
		if (iChars1.indexOf(document.forminsertar.contact_ins.value.charAt(i)) != -1) 
		{
		control4=1;
		alert ("Contact field has special character(s). \nThese are not allowed: \n!@$%^&*+=[]\\\;/{}|\<>?");
		return false;
		}		
	}
	for (var i = 0; i < document.forminsertar.office_hours.value.length; i++) 
	{
		if (iChars3.indexOf(document.forminsertar.office_hours.value.charAt(i)) != -1) 
		{
		control5=1;
		alert ("Office Hours field has special character(s). \nThese are not allowed: \n!@$%^&*+=[]\\\;/{}|\<>?");
		return false;
		}		
	}
	
	if(!ValidateNo(document.forminsertar.phone_ins.value,"1234567890+-. ()"))
		{        
		control6=1;
		alert("Please Enter a Valid Phone Number. \ex: (555) 555-1234\n");
		document.forminsertar.phone_ins.focus();
		return false;
		}

	if(!ValidateNo(document.forminsertar.cell_ins.value,"1234567890+-. ()"))
		{        
		control7=1;
		alert("Please Enter a Valid CellPhone Number. \ex: (555) 555-1234\n");
		document.forminsertar.cell_ins.focus();
		return false;
		}
		
	if(!ValidateNo(document.forminsertar.fax_ins.value,"1234567890+-. ()"))
		{        
		control8=1;
		alert("Please Enter a Valid Fax Number. \ex: (555) 555-1234\n");
		document.forminsertar.fax_ins.focus();
		return false;
		}	
	
	if(!ValidateNo(document.forminsertar.po_box_ins.value,"1234567890- QWERTYUIOPASDFGHJKLZXCVBNM"))
		{        
		control9=1;
		alert("Please Enter a Valid PO Box Number.");
		document.forminsertar.po_box_ins.focus();
		return false;
		}	

	
	if (document.forminsertar.email_ins.value.length > 0)
	{
		for (var i = 0; i < document.forminsertar.email_ins.value.length; i++) 
		{
			if (iChars_email.indexOf(document.forminsertar.email_ins.value.charAt(i)) != -1) 
			{
			control10=1;
			alert ("e-mail field has special character(s). \nThese are not allowed: \n!@#$%^&*()+=-[]\\\';,./{}|\":<>?");
			document.forminsertar.email_ins.focus();
			return false;
			}		
		}
		
		validRegExp = /^[^@]+@[^@]+.[a-z]{2,}$/i;
		strEmail = document.forminsertar.email_ins.value;
		// search email text for regular exp matches
		if (strEmail.search(validRegExp) == -1) 
		{
			control10=1;
			alert('A valid e-mail address is required.\nPlease amend and retry');
			document.forminsertar.email_ins.focus();
			return false;
		}
	}
	


	if (document.forminsertar.url_ins.value.length > 0)
	{
		for (var i = 0; i < document.forminsertar.url_ins.value.length; i++) 
		{
			if (iChars_url.indexOf(document.forminsertar.url_ins.value.charAt(i)) != -1) 
			{
			control11=1;
			alert ("URL field has special character(s). \nThese are not allowed: \n!@#$%^&*()+=-[]\\\';,./{}|\":<>?");
			document.forminsertar.url_ins.focus();
			return false;
			}		
		}
	}
/*	if (document.forminsertar.url_ins.value.length > 0)
	{
		var theurl=document.forminsertar.url_ins.value;
		var tomatch= /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/
		var tomatch2= /(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/
		if (tomatch.test(theurl))
		{
			control11=0;
		}
		if (tomatch2.test(theurl))
		{
			control11=0;
		}
		else
		{
			control11=1;
			alert("URL invalid. Please amend and retry");
			return false; 
		}
	}*/

	
	//isPhoneNumber(forminsertar.phone_ins.value); 
	
	/*var Phone=document.forminsertar.phone_ins
	if ((Phone.value!=null)||(Phone.value!=""))
	{
	if (checkInternationalPhone(Phone.value)==false){
		control6=1;
		alert("Please Enter a Valid Phone Number")
		Phone.value=""
		Phone.focus()
		return false;
	}
	}
	else
	{
		return true;
	}
		
	var Cell=document.forminsertar.cell_ins
	if (checkInternationalPhone(Cell.value)==false){
		control7=1;
		alert("Please Enter a Valid Cellphone Number")
		Phone.value=""
		Phone.focus()
		return false
	}*/
	

	if (control1==0 && control2==0 && control3==0 && control4==0 && control5==0 && control6==0 && control7==0 && control8==0 && control9==0 && control10==0 && control11==0)
		{
			document.forminsertar.submit();	
		}
}	

// calculate the ASCII code of the given character
function CalcKeyCode(aChar) {
  var character = aChar.substring(0,1);
  var code = aChar.charCodeAt(0);
  return code;
}

function checkNumber(val) {
  var strPass = val.value;
  var strLength = strPass.length;
  var lchar = val.value.charAt((strLength) - 1);
  var cCode = CalcKeyCode(lchar);

  /* Check if the keyed in character is a number
     do you want alphabetic UPPERCASE only ?
     or lower case only just check their respective
     codes and replace the 48 and 57 */

  if (cCode < 48 || cCode > 57 ) {
    var myNumber = val.value.substring(0, (strLength) - 1);
    val.value = myNumber;
  }
  return false;
}

function ValidateNo(NumStr, String)
{    
for(var Idx=0; Idx<NumStr.length; Idx++)    
{
	var Char = NumStr.charAt(Idx);        
	var Match = false;        
	for(var Idx1=0; Idx1<String.length; Idx1++)
	{            
	if(Char == String.charAt (Idx1))
	Match = true;
	}
	if (!Match)
	return false;
}
return true;
}

//function to check valid email address
function isValidEmail(strEmail){
  validRegExp = /^[^@]+@[^@]+.[a-z]{2,}$/i;
  strEmail = document.forms[0].email.value;

   // search email text for regular exp matches
    if (strEmail.search(validRegExp) == -1) 
   {
      alert('A valid e-mail address is required.\nPlease amend and retry');
      return false;
    } 
    return true; 
}

/*
function isPhoneNumber(s) 
{
 
     // Check for correct phone number
     rePhoneNumber = new RegExp(/^\([1-9]\d{2}\)\s?\d{3}\-\d{4}$/);
 
     if (!rePhoneNumber.test(s)) {
          alert("Phone Number Must Be Entered As: (555) 555-1234");
          return false;
     }
 
return true;
}


//Phone numbers validation
// 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;

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 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){
s=stripCharsInBag(strPhone,validWorldPhoneChars);
return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
}
*/