function isEmpty(s) {
    return ((s == null) || (s.length == 0)); 
}

var whitespace = " \t\n\r";

function isWhitespace (s) 
{
	var i;
	if (isEmpty(s)) return true;
	for (i = 0; i < s.length; i++) {
		var c = s.charAt(i);
		if (whitespace.indexOf(c) == -1) return false;
	}
	return true;
}

var numb = "0123456789";
var lwr  = "abcdefghijklmnopqrstuvwxyz";
var upr  = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var phspl  = "-()+ ";
var spc  = " ";
var addressspc  = ",'";
var eml  = "-@_.";
var dot  = ".";

function isValid(parm,val) 
{
	if (parm == "") return true;
	for (i=0; i<parm.length; i++) {
		if (val.indexOf(parm.charAt(i),0) == -1) return false;
	}
	return true;
}

function doesExist (s) 
{
    return ( ! isEmpty(s) && ! isWhitespace (s) ); 
}

function isEmail (parm) 
{
	var reg1 = /(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/; // not valid
	var reg2 = /^.+\@(\[?)[a-zA-Z0-9\_\-\.]+\.([a-zA-Z\-]{2,3}|[0-9]{1,3})(\]?)$/; // valid
	if ((!reg1.test(parm) && reg2.test(parm) && isValid(parm,lwr+upr+numb+eml)) || (isEmpty(parm))){ // if syntax is valid 
		return ( true ); 
	} else {
		return ( false ); 
	} 
}

function validateForm()
{
    var frm = document.frmNewsLtr;
    
    if( frm.emailId ) {
        if( !doesExist(frm.emailId.value) ) {
            alert ("Please enter an email address");
            frm.emailId.focus();
            return false;
        }
        if( !isEmail (frm.emailId.value) ) {
            alert("Please enter a valid email address");
            frm.emailId.focus();
            return false;
        }
    }
    return true;
}

function validateAndSubmit() 
{
    var frm = document.frmNewsLtr;
    var ok = validateForm();
    if ( ok ) {
        frm.submit();
    }
    return ( ok );
}