var digits = "0123456789";
var phoneNumberDelimiters = "()- ";
var validWorldPhoneChars = phoneNumberDelimiters + "+";
var minDigitsInIPhoneNumber = 10;

function formvalidation(frmName){
//alert(frmName)
var frmObj = document.getElementById(frmName)
//alert(frmObj)
var varelement = ""
var message= ""
var element = frmObj.firstnametxt

if(!isEmpty(element))
	 message+="\nPlease Enter Your Name";
else if(!(isAlphaNumeric(element)))
	 message+="\nInvalid First Name"; //return false
	 	
var element = frmObj.emailidtxt
if(!isEmpty(element))
	message+="\nPlease Enter Your Email"
else if(!ismailCheck(element))
	 message+="\nInvalid Email"; //return false

var element = frmObj.telnotxt
if(!isEmpty(element))
 	message+="\nPlease Enter Your Contact Number"
else if(!checkInternationalPhone(element.value))
	 message+="\nInvalid Contact Number"; //return false
	

if(message=="") return true;
else 
{
	alert(message);
	return false;
}

}

function isEmpty(varelement) {
	// must enter have the title attribute
	//alert(varelement)
	if( varelement.value == "" || varelement == null ) {
	//	alert("isempty")		
		return false			
	}
	return true
}

function isAlphaNumeric(varelement){
	
	var filter = /^([A-Za-z][0-9A-Za-z]+)/
	var text = varelement.value
	if(!filter.test(text)) { 
	//message+="Please enter a Alpha and Numaric characters." +varelement.title
	//	varelement.focus();
		return false
	}
	return true
}


function ismailCheck(varelement){
		var filter = /^[A-Za-z0-9._%-]+@[A-Za-z0-9._%-]+\.[A-Za-z]{2,4}$/
		var text = varelement.value
			if(!filter.test(text)){
				//message+="Enter a valid Email Addresss.."+varelement.title
				//varelement.focus()
				return false
			}
			return true
	}
	
	
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);


}
							
