<!--
//********************************************************************
// VERSION	1.0
// CREATED	9/12/2005
// AUTHOR	Ashish Mohan(ashishmohan@textware.be)
// SUMMARY	This javascript function will validate the field of various forms
//********************************************************************


//Strip whitespace from the beginning and end of a string
//Input : a string

function trim(str)
{
    return str.replace(/^\s+|\s+$/g,'');
}

/*
Check if a string is in valid email format. 
Returns true if valid, false otherwise.
*/

function checkDomain(nname)
{
var arr = new Array(
'.com','.net','.org','.biz','.coop','.info','.museum','.name',
'.pro','.edu','.gov','.int','.mil','.ac','.ad','.ae','.af','.ag',
'.ai','.al','.am','.an','.ao','.aq','.ar','.as','.at','.au','.aw',
'.az','.ba','.bb','.bd','.be','.bf','.bg','.bh','.bi','.bj','.bm',
'.bn','.bo','.br','.bs','.bt','.bv','.bw','.by','.bz','.ca','.cc',
'.cd','.cf','.cg','.ch','.ci','.ck','.cl','.cm','.cn','.co','.cr',
'.cu','.cv','.cx','.cy','.cz','.de','.dj','.dk','.dm','.do','.dz',
'.ec','.ee','.eg','.eh','.er','.es','.et','.fi','.fj','.fk','.fm',
'.fo','.fr','.ga','.gd','.ge','.gf','.gg','.gh','.gi','.gl','.gm',
'.gn','.gp','.gq','.gr','.gs','.gt','.gu','.gv','.gy','.hk','.hm',
'.hn','.hr','.ht','.hu','.id','.ie','.il','.im','.in','.io','.iq',
'.ir','.is','.it','.je','.jm','.jo','.jp','.ke','.kg','.kh','.ki',
'.km','.kn','.kp','.kr','.kw','.ky','.kz','.la','.lb','.lc','.li',
'.lk','.lr','.ls','.lt','.lu','.lv','.ly','.ma','.mc','.md','.mg',
'.mh','.mk','.ml','.mm','.mn','.mo','.mp','.mq','.mr','.ms','.mt',
'.mu','.mv','.mw','.mx','.my','.mz','.na','.nc','.ne','.nf','.ng',
'.ni','.nl','.no','.np','.nr','.nu','.nz','.om','.pa','.pe','.pf',
'.pg','.ph','.pk','.pl','.pm','.pn','.pr','.ps','.pt','.pw','.py',
'.qa','.re','.ro','.rw','.ru','.sa','.sb','.sc','.sd','.se','.sg',
'.sh','.si','.sj','.sk','.sl','.sm','.sn','.so','.sr','.st','.sv',
'.sy','.sz','.tc','.td','.tf','.tg','.th','.tj','.tk','.tm','.tn',
'.to','.tp','.tr','.tt','.tv','.tw','.tz','.ua','.ug','.uk','.um',
'.us','.uy','.uz','.va','.vc','.ve','.vg','.vi','.vn','.vu','.ws',
'.wf','.ye','.yt','.yu','.za','.zm','.zw');

var mai = nname;
var val = true;

var dot = mai.lastIndexOf(".");
var dname = mai.substring(0,dot);
var ext = mai.substring(dot,mai.length);
//alert(ext);
	
if(dot>2 && dot<57)
{
	for(var i=0; i<arr.length; i++)
	{
	  if(ext == arr[i])
	  {
	 	val = true;
		break;
	  }	
	  else
	  {
	 	val = false;
	  }
	}
	if(val == false)
	{
	  	 // alert("Your domain extension "+ext+" is not correct");
		 return false;
	}
	else
	{
		for(var j=0; j<dname.length; j++)
		{
		  var dh = dname.charAt(j);
		  var hh = dh.charCodeAt(0);
		  if((hh > 47 && hh<59) || (hh > 64 && hh<91) || (hh > 96 && hh<123) || hh==45 || hh==46)
		  {
			 if((j==0 || j==dname.length-1) && hh == 45)	
		  	 {
		 	  	 // alert("Domain name should not begin are end with '-'");
			      return false;
		 	 }
		  }
		else	{
		  	 // alert("Your domain name should not have special characters");
			 return false;
		  }
		}
	}
}
else
{
 // alert("Your Domain name is too short/long");
 return false;
}	

return true;
}


function isEmail(str)
{
	// Should not beging with a '.' or '@'
	if(str.charAt(0)=='@' || str.charAt(0) == '.')
	{	
		return false;
	}

    var regex = /^[-_.a-z0-9]+@(([-_a-z0-9]+\.)+(ad|ae|aero|af|ag|ai|al|am|an|ao|aq|ar|arpa|as|at|au|aw|az|ba|bb|bd|be|bf|bg|bh|bi|biz|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|com|coop|cr|cs|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|eh|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|in|info|int|io|iq|ir|is|it|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|mg|mh|mil|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|museum|mv|mw|mx|my|mz|na|name|nc|ne|net|nf|ng|ni|nl|no|np|nr|nt|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|pro|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)|(([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$/i;
    return regex.test(str);
}

function isNumber(TheNumber) {
	var valid = 1
	var GoodChars = "-+0123456789"
	var i = 0
	if (TheNumber=="") {
		// Return false if number is empty
		valid = 0
	}
	for (i =0; i <= TheNumber.length -1; i++) {
		if (GoodChars.indexOf(TheNumber.charAt(i)) == -1) {
// Note: Remove the comments from the following line to see this
// for loop in action.
// alert(TheNumber.charAt(i) + " is no good.")
			valid = 0
		} // End if statement
	} // End for loop
	return valid
}	

function validateMultipleSelect(listObject) {

	// "listObject" is the object input array for the select 
	// list, referenced in the function call as "this.name", where
	// "name" is the name of the select list.
	// "numToSelect" is the number of items you allow to be selected.

	var j = 0;

	for (var i = 0; i < listObject.length; i++) {
		if (listObject.options[i].selected) {
			j++;
		}
	}
	
	if (j < 1)
	{
		return (false);
	} else {
		return (true);
	}
}


function valButton(btn) {
    var cnt = -1;
    for (var i=btn.length-1; i > -1; i--) {
        if (btn[i].checked) {cnt = i; i = -1;}
    }
    if (cnt > -1) return btn[cnt].value;
    else return null;
}



function checkregister()
{
	var membership_type, firstname, lastname, dob, gender, address, city, state, Zip, phone, mobile, email, alternate_contact_name, alternate_contact_phone;

	with(window.document.register)
    {
		cmembership_type = membership_type;
		cfirstname = firstname;
		clastname = lastname;
		cdob = dob;
		cgender = gender;
		caddress = address;
		ccity = city;
		cstate = state;
		cZip = Zip;
		cphone = phone;
		cmobile = mobile;
		cemail = email;
		calternate_contact_name = alternate_contact_name;
		calternate_contact_phone = alternate_contact_phone;
	}

	if(trim(cmembership_type.value) == '')
    {
        alert('Please select membership type.');
        cmembership_type.focus();
        return false;
    }
	if(trim(cfirstname.value) == '')
    {
        alert('Please enter firstname.');
        cfirstname.focus();
        return false;
    }
	if(trim(clastname.value) == '')
    {
        alert('Please enter lastname.');
        clastname.focus();
        return false;
    }
	if(trim(cdob.value) == '')
    {
        alert('Please enter DOB.');
        cdob.focus();
        return false;
    }
	
	
	var btn = valButton(cgender);
	if (btn == null) 
	{
	alert('Pleae choose gender.');
	cdob.focus();
    return false;
	}




	if(trim(caddress.value) == '')
    {
        alert('Please enter address.');
        caddress.focus();
        return false;
    }
	if(trim(ccity.value) == '')
    {
        alert('Please enter city.');
        ccity.focus();
        return false;
    }
	if(trim(cstate.value) == '')
    {
        alert('Please enter state.');
        cstate.focus();
        return false;
    }
	if(trim(cZip.value) == '')
    {
        alert('Please enter zip code.');
        cZip.focus();
        return false;
    }
	
	
	if(trim(cphone.value) == '')
    {
        alert('Please enter phone.');
        cphone.focus();
        return false;
    }
	if(trim(cmobile.value) == '')
    {
        alert('Please enter mobile.');
        cmobile.focus();
        return false;
    }
	
	if(trim(cemail.value) == '')
    {
        alert('Please enter email.');
        cemail.focus();
        return false;
    }
	
	if(!isEmail(trim(cemail.value)))    {
        alert('Please enter valid email address');
        cemail.focus();
        return false;
    }
	
	if(trim(calternate_contact_name.value) == '')
    {
        alert('Please enter emergency contact name.');
        calternate_contact_name.focus();
        return false;
    }
	if(trim(calternate_contact_phone.value) == '')
    {
        alert('Please enter emergency contact phone.');
        calternate_contact_phone.focus();
        return false;
    }
    else
    {
		cfirstname.value = trim(cfirstname.value);
		return true;
    }
}



function checkregistration()
{
	var teamumpire, email, email1, phone1;

	with(window.document.registersend)
    {
		cteamumpire = teamumpire;
		cemail = email;
		cemail1 = email1;
		cphone1 = phone1;
		
	}
	
	
	if(trim(cemail.value) == '')
    {
        alert('Please enter email.');
        cemail.focus();
        return false;
    }
	
	
	if(!isEmail(trim(cemail.value)))    {
        alert('Please enter valid email address.');
        cemail.focus();
        return false;
    }
	
	
	if(trim(cteamumpire.value) == '')
    {
        alert('Please enter team umpire name.');
        cteamumpire.focus();
        return false;
    }
	
	
	
	
	
	
	
	if(trim(cemail1.value) == '')
    {
        alert('Please enter email.');
        cemail1.focus();
        return false;
    }
	
	if(!isEmail(trim(cemail1.value)))    {
        alert('Please enter valid email address.');
        cemail1.focus();
        return false;
    }
	
	if(trim(cphone1.value) == '')
    {
        alert('Please enter phone.');
        cphone1.focus();
        return false;
    }
	
	/*var btn = valButton(cgender);
	if (btn == null) 
	{
	alert('Pleae choose gender.');
	cdob.focus();
    return false;
	}
*/



	/*if(trim(caddress.value) == '')
    {
        alert('Please enter address.');
        caddress.focus();
        return false;
    }
	if(trim(ccity.value) == '')
    {
        alert('Please enter city.');
        ccity.focus();
        return false;
    }
	if(trim(cstate.value) == '')
    {
        alert('Please enter state.');
        cstate.focus();
        return false;
    }
	if(trim(cZip.value) == '')
    {
        alert('Please enter zip code.');
        cZip.focus();
        return false;
    }
	
	
	if(trim(cphone.value) == '')
    {
        alert('Please enter phone.');
        cphone.focus();
        return false;
    }
	if(trim(cmobile.value) == '')
    {
        alert('Please enter mobile.');
        cmobile.focus();
        return false;
    }*/
	
	
	
	
    else
    {
		cteamumpire.value = trim(cteamumpire.value);
		return true;
    }
}
