//email check function for onblur
//   Date		Author			Description
//   ----		------			-----------
//   26012002		rajesh			created this file as i need to validate email and  club in the same event - onsubmit - This is also a duplication of valeamil with some additions
function ValEmail(ob,ob2) {
	//alert("hi i am firing");
	//if (ob.value == '') {return true;}
	var chdom = 1;
	var dompat = /^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum)$/;
	var emailpat = /^(.+)@(.+)$/;
	var specchars = "\\(\\)><@,;:\\\\\\\"\\.\\[\\]";
	var valchars = "\[^\\s" + specchars + "\]";
	var quoteduser = "(\"[^\"]*\")";
	var ipdompat = /^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
	var atom = valchars + '+';
	var word = "(" + atom + "|" + quoteduser + ")";
	var userpat = new RegExp("^" + word + "(\\." + word + ")*$");
	var domainpat = new RegExp("^" + atom + "(\\." + atom +")*$");
	
	var matcharr = ob.value.match(emailpat);
	
	//basic mould
	if (matcharr == null) {alert("Error - Not a valid email (check @ and .'s)"); ob.focus();  ob.select(); return false;}
	var user = matcharr[1];
	var domain = matcharr[2];
	
	//ascii chars in user and domain
	for (i = 0; i < user.length; i++) {
		if (user.charCodeAt(i) > 127) {alert("Error - User name contains invalid characters."); ob.focus();ob.select();   return false;}
	}
	for (i = 0; i < domain.length; i++) {
		if (domain.charCodeAt(i) > 127) {alert("Error - Domain name contains invalid characters."); ob.focus(); ob.select();  return false;}
	}
	
	//user
	if (user.match(userpat)==null) {alert("Error - Not a valid user name."); ob.focus(); ob.select();  return false;}
	
	//ip domain
	var iparr = domain.match(ipdompat);
	if (iparr != null) {
		for (var i = 1; i <= 4; i++) {
			if (iparr[i] > 255) {alert("Error - Not a valid destination IP address."); ob.focus(); ob.select();  return false;}
		}
		return true;
	}
	
	//symbolic domain
	var atompat = new RegExp("^" + atom + "$");
	var domarr = domain.split(".");
	var len = domarr.length;
	for (i = 0; i < len; i++) {
		if (domarr[i].search(atompat) == -1) {alert("Error - Not a valid domain name."); ob.focus(); ob.select();  return false;}
	}
	if (chdom && domarr[domarr.length-1].length != 2 && domarr[domarr.length-1].search(dompat)==-1) {alert("Error - Domain name must end in a well-known domain or two letter country."); ob.focus(); ob.select();  return false;}
	if (len < 2) {alert("Error - Not a valid hostname.");  ob.focus(); ob.select(); return false;}
	
//validate the club
if (typeof ob2.$newsaff != 'undefined') {
	if (ob2.$newsaff.selectedIndex == 0) {
			alert("Please select a club");
			ob2.$newsaff.focus();
			return false;
			}
}
	//all's well
	return true;

}
