
var fieldsToCheck = Array( 
	Array( 'ename', chkForNonblank, 'Please enter your Fullname.' ),
	Array( 'ecompany', chkForNonblank, 'Please enter your company name.' ),
	Array( 'eemail', validate_email, '' ),
	Array( 'ephone', chkForNonblank, 'Please enter your Phone number.' ),
	Array( 'efax', chkForNonblank, 'Please enter your Fax number.' )

    );
    
function customHandlerForShoes (f,fld,msg) {
    var formfrmInfo = document.formfrmInfo ;
    if(formfrmInfo.radShoes[0].checked) {
        if(chkForChecked(f, fld, msg)) return true; else return false;
    }
    return true ;
}	

isDOM = document.getElementById ? 1:0; 

function stripSpaces(x) {
    while (x.substring(0,1) == ' ') x = x.substring(1);
    return x;
}

function empty(x) { if (x.length > 0) return false; else return true; }
    
function chkForChecked (f,fld,msg) {
    
    var formfrmInfo = f ;
    var e ;
    var j = 0 ; // This is so that we know which RADIO/CHECKBOX element to return to.
    
    if(isDOM) {
    // Added the DOM part for Opera which seems to choke on the length
    // property of an array of elements.    
        e = document.getElementsByTagName('INPUT'); // returns a Node List
        
        for (var i=0; i<=e.length-1; ++i){
        
            if(e[i].name == fld) {
                if(j==0)j=i;
                if ( e[i].checked ) return true;  // one is checked after all!
            }
        }
        
    }else{
    
        e = f.elements[fld] ; // returns an array of elements
        
        for( var i=0; i < e.length; ++i ) { 
	    	if ( e[i].checked ) 
	    	{ 
	    	    return true;  // one is checked after all! 
	    	    break; 
	    	} 
	    }
    }
    
    alert( msg );
    e[j].focus() ;
    return false; 
}

function chkForNonblank (f,fld,msg) {

    var formfrmInfo = f ;
    var e = f.elements[fld]
    
    if ( ! empty(stripSpaces(e.value))  ) return true; 
    alert( msg );
    e.focus() ;
    return false;
}

function chkForIsSelected (f,fld,msg) {

    var formfrmInfo = f ;
    var e = f.elements[fld]
    
    if ( ! e.selectedIndex == 0 ) return true; 
    alert( msg );
    e.focus() ;
    return false;
}

function chkNumeric (f,fld,msg) {

    var formfrmInfo = f ;
    var e = f.elements[fld]
    
    if ( !isNaN(parseInt(e.value)) ) return true; 
    alert( msg );
    e.focus() ;
    return false;
}

function validate_email(){
var input_str=document.formfrmInfo.eemail.value;
var input_len1=input_str.length;
var iserror=0;

    input_len1=input_str.length;

    if (input_len1<=5) {
        alert("You must enter a Valid Email Address!\n");
        iserror=1;
    }

    var lastdot=-1;
    var lastat=-1;
    var numberat=0
    for (var j = 0; j < input_len1; j++) {
         var ch2 = input_str.substring(j, j + 1);
         if (((ch2 < "a") ||  (ch2 > "z")) && ((ch2 < "A") || (ch2 > "Z")) && ((ch2 < "0") ||  (ch2 > "9")) && (ch2 != "@" ) && (ch2 != ".") && (ch2 != "_") && (ch2 != "-")){
             alert("Please input a valid email address!\nValid characters include A-Z, a-z, 0-9, -, _, . and @");
             iserror=1;
         }
         if (ch2==".") {
             if ( j == lastdot + 1) {
                 //alert("Please input a valid email address!\nYou can't have two dots next to\neach other'..'.");
                 iserror=1;
             }
             lastdot=j;
         }
         if (ch2=="@") {
             lastat=j;
             numberat=numberat+1
         }
         if (ch2==" ") {
             alert("Please input a valid email address!\nYou can't have any spaces in the address.");
             iserror=1;
         }
    }
    if (lastat == -1) {
         //alert("Please input a valid email address!\nYou don't have an '@'.");
         iserror=1;
    }
    if (lastat == 0) {
         //alert("Please input a valid email address!\nYou don't have a name before the '@'.");
         iserror=1;
    }
    if (numberat > 1) {
       //  alert("Please input a valid email address!\nYou may have only one '@'.");
         iserror=1;
    }
    if ((lastdot <= lastat) || (lastdot > input_len1 - 3 ) || (input_len1 - lastdot > 4)) {
        // alert("Please input a valid email address!\nYou don't have a proper domain name!\nUse .com, .org, .net, .cc, etc");
         iserror=1;
    }
    if (lastdot == lastat + 1) {
        // alert("Please input a valid email address!\nYou don't have a proper organization name!\nUse name@organization.domain");
         iserror=1;
    }
    if (iserror==1) {
         document.formfrmInfo.eemail.focus();
         return false;
    }

    return true;
}

function validate(f)	
{ 
    
    for( var i=0; i < fieldsToCheck.length; ++i ) 
    { 
	    if (! fieldsToCheck[i][1](f,fieldsToCheck[i][0],fieldsToCheck[i][2]) ) {
	        return false ;
	    }
    }
    
   // alert('Success!!  Your form has successfully validated.') ;
  //  return true ;
}

