function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.search(new RegExp(nameEQ, "i")) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function regpop(regpop_url) {
	window.location=regpop_url;
}

var alreadySubmited = 0;
var errormessage = new String("");
function checkForm() {
	numbers = new RegExp ("[^0-9 ]","i");
	if (alreadySubmited == 1){
		return false;
	}else{
		alreadySubmited = 1;
		errormessage = "";
		// ************************************* EMAIL VALIDATION ***************************************
		if (document.getElementById('email') && document.myform.email.type != 'hidden')
		{
			if (document.myform.email.value == ""){
				errormessage = errormessage + "\n Please input your email address.";
			}else{
				var emailPat=/^(.+)@(.+)$/;
				var specialChars="\\(\\)<>@,;:{}`~'?!##$/|%^&*=+\\\\\\\"\\.\\[\\]";
				var validChars="\[^\\s" + specialChars + "\]";
				var firstChars=validChars;
				var quotedUser="(\"[^\"]*\")";
				var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
				var atom="(" + firstChars + validChars + "*" + ")";
				var word="(" + atom + "|" + quotedUser + ")";
				var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
				var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");
				var emailadd=new String(document.myform.email.value);
				var matchArray=emailadd.match(emailPat);

				if (matchArray == null) {
					errormessage = errormessage + "\n Email address seems incorrect (check @ and .'s)";
				}else{
					var user=matchArray[1];
					var domain=matchArray[2];
					if (user.match(userPat)==null || domain == null) {
						errormessage = errormessage + "\n The email entered doesn't seem to be valid, please enter your correct email address.";
					}else{
						var IPArray=domain.match(ipDomainPat);
						if (IPArray!=null) {
							for (var i=1;i<=4;i++) {
							    if (IPArray[i]>255) {
									errormessage = errormessage + "\n Destination IP address is invalid!";
								}
						    }
						}else{
							var domainArray=domain.match(domainPat);
							if (domainArray==null) {
								errormessage = errormessage + "\n The email entered doesn't seem to be valid, please enter your correct email address.";
							}else{
								var atomPat=new RegExp(atom,"g");
								var domArr=domain.match(atomPat);
								var len=domArr.length;
								if (domArr[domArr.length-1].length<2 || domArr[domArr.length-1].length>3) {
									errormessage = errormessage + "\n The address must end in a three-letter domain, or two letter country.";
								}else{
									if (domArr[domArr.length-1].length==3 && len<2) {
										errormessage = errormessage + "\n This address is missing a hostname!";
									}
								}
							}
						}
					}
				}
			}
		}

		if (document.getElementById('gender') && document.myform.gender.type != 'hidden')
		{
			if (document.myform.gender.options[document.myform.gender.selectedIndex].value == ""){
				errormessage += "\n Please select your title.";
			}
		}
		if (document.getElementById('firstname') && document.myform.firstname.type != 'hidden')
		{
			if (document.myform.firstname.value.length < 2){
				errormessage = errormessage + "\n Please enter your complete first name.";
			}
		}
		if (document.getElementById('lastname') && document.myform.lastname.type != 'hidden')
		{
			if (document.myform.lastname.value.length < 2){
				errormessage = errormessage + "\n Please enter your complete last name.";
			}
		}
		if (document.getElementById('address1') && document.myform.address1.type != 'hidden')
		{
			if (document.myform.address1.value == ""){
				errormessage = errormessage + "\n Please input your mailing address.";
			}
		}
		if (document.getElementById('zip') && document.myform.zip.type != 'hidden')
		{
			if (document.myform.zip.value == ""){
				errormessage = errormessage + "\n Please input your zip code.";
			}else{
				if (document.myform.zip.value.length != 5 || isNaN(document.myform.zip.value)){
					errormessage = errormessage + "\n Zip Code must be 5 characters.";
				}
			}
		}
		if (document.getElementById('byear') && document.myform.byear.type != 'hidden')
		{
			if (document.myform.bmonth.options[document.myform.bmonth.selectedIndex].value == "" || document.myform.bday.options[document.myform.bday.selectedIndex].value == "" || document.myform.byear.options[document.myform.byear.selectedIndex].value == ""){
				errormessage = errormessage + "\n Please select your birthday.";
			}
		}
		var homeiscell = 0;
		if (document.getElementById('homeiscell') && document.myform.homeiscell.type != 'hidden')
		{
			if (document.myform.homeiscell.checked == true)
			{
				homeiscell = 1;
			}
		}
		var numList = '222,333,444,555,666,777,888,999';
		if (document.getElementById('phone1') && document.myform.phone1.type != 'hidden')
		{
			if (document.myform.phone1.value != "" || document.myform.phone2.value != "" || document.myform.phone3.value != "" || homeiscell == 0){
				if (document.myform.phone1.value == "" || document.myform.phone2.value == "" || document.myform.phone3.value == ""){
					errormessage = errormessage + "\n Please input your phone number.";
				}
				else if (document.myform.phone1.value.length < 3 || document.myform.phone2.value.length < 3 || document.myform.phone3.value.length < 4){
					errormessage = errormessage + "\n Please input your complete phone number.";
				}
				else if (document.myform.phone1.value.search(numbers) != -1 || document.myform.phone2.value.search(numbers) != -1 || document.myform.phone3.value.search(numbers) != -1){
					errormessage = errormessage + "\n Your phone number can only contain numbers.";
				}
				else if (document.myform.phone1.value.substring(0,1) == "1" || document.myform.phone1.value.substring(0,1) == "0"){
					errormessage = errormessage + "\n Please input a valid phone number.";
				}
				else
				{
					var numToCheck = numList.split(',');
					var indexCount;
					for (indexCount = numToCheck.length - 1; indexCount >= 0; indexCount --)
					{
						if (document.myform.phone1.value == numToCheck[indexCount])
						{
							errormessage = errormessage + "\n Please input a valid phone number.";
							break;
						}
					}
				}
			}
		}
		if (document.getElementById('cphone1') && document.myform.cphone1.type != 'hidden')
		{
			if (homeiscell == 1 || document.myform.cphone1.value != "" || document.myform.cphone2.value != "" || document.myform.cphone3.value != ""){
				var thisphone = document.myform.cphone1.value  + document.myform.cphone2.value  + document.myform.cphone3.value ;
				if (document.myform.cphone1.value == "" || document.myform.cphone2.value == "" || document.myform.cphone3.value == ""){
					errormessage += "\n Please enter your cell number.";
				}else if (thisphone.length != 10){
					errormessage += "\n Please enter your complete cell number.";
				}else if (thisphone == '2222222222' || thisphone == '3333333333' || thisphone == '4444444444' || thisphone == '5555555555' || thisphone == '6666666666' || thisphone == '7777777777' || thisphone == '8888888888' || thisphone == '9999999999'){
					errormessage += "\n Please enter a valid cell number.";
				}else if (document.myform.cphone1.value == '222' || document.myform.cphone1.value == '333' || document.myform.cphone1.value == '444' || document.myform.cphone1.value == '555' || document.myform.cphone1.value == '666' || document.myform.cphone1.value == '777' || document.myform.cphone1.value == '888' || document.myform.cphone1.value == '999'){
					errormessage += "\n Please enter a valid cell number.";
				}else if (thisphone.substring(0,1) == '1' || thisphone.substring(0,1) == '0' || thisphone.substring(3,4) == '1' || thisphone.substring(3,4) == '0'){
						errormessage += "\n Please enter a valid cell number.";
				}else if (document.myform.cphone1.value.search(numbers) != -1 || document.myform.cphone2.value.search(numbers) != -1 || document.myform.cphone3.value.search(numbers) != -1){
					errormessage = errormessage + "\n Your cell number can only contain numbers.";
				}else {
					var numToCheck = numList.split(',');
					var indexCount;
					for (indexCount = numToCheck.length - 1; indexCount >= 0; indexCount --)
					{
						if (document.myform.cphone1.value == numToCheck[indexCount])
						{
							errormessage = errormessage + "\n Please input a valid cell phone number.";
							break;
						}
					}
				}
				if (homeiscell == 1 && errormessage == "") {
					document.myform.phone1.value = document.myform.cphone1.value;
					document.myform.phone2.value = document.myform.cphone2.value;
					document.myform.phone3.value = document.myform.cphone3.value;
				}
			}
		}
		//**********************************************************************
		if (errormessage != ""){
			errormessage = "I am sorry, the following error(s) have occured. \n _________________________________________________\n" + errormessage + "\n\n Thank You.";
			alert(errormessage);
			alreadySubmited = 0;
			return false;
		}else{
			return true;
		}
	}
}

function checkfield(fieldname, fieldlabel, acceptonly)
{
	var s = new String();
	var characters = new RegExp("[^A-Za-z .'-]", "ig");
	var numbers = new RegExp("[^0-9]", "ig");
	var numchar = new RegExp("[^0-9-^A-Za-z .'-]", "ig");
	s = document.myform[fieldname].value;
	var result = s.search(eval(acceptonly));
	if (result != -1)
	{
		if (acceptonly == "numchar")
		{
			msg = fieldlabel + " can only contain numbers and characters.";
		}
		else if  (acceptonly == "numbers")
		{
			msg = fieldlabel + " can only contain numbers.";
		}
		else
		{
			msg = fieldlabel + " can only contain characters.";
		}
		document.myform[fieldname].value = s.replace(eval(acceptonly), "");
		alert(msg);
	}
}

function TabNext(obj, len, next_field)
{
	if (obj.value.length == len)
	{
		next_field.focus();
	}
}

function checkloginbox()
{
	if (document.myform.login_email.value=="")
	{
		alert("Please enter your email.")
		return false;
	}
	else
	{
		document.loginform.email.value = document.myform.login_email.value;
	}

	if (document.myform.login_password.value=="")
	{
		alert("Please enter your password.")
		return false;
	}
	else
	{
		document.loginform.password.value = document.myform.login_password.value;
	}

	document.loginform.submit();
}