// JavaScript Document
    <!--

	function validate_userfield(id, name, max_len, min_len){
		
		var errors = "";	
		formField = document.getElementById(id);
		
		if (formField!=null)
		{
			formField.value = trimAll(formField.value);
			
			if (formField.value=="")
			{
				errors += "Please enter your "+name+".\n";
			}
			else
			{
				if (formField.value.length > max_len)
					errors += name+" can at most be 16 characters. No spaces.\n";
				else if (formField.value.length < min_len)
					errors += name+" can at least be 6 characters. No Spaces.\n";
				else
				{				
					alphaExp = /^[0-9a-zA-Z]+$/;
					
					if(formField.value.match(alphaExp))
					{
						charlist = /^[a-zA-Z]+$/;
						first_char = formField.value.charAt(0);
						if (!first_char.match(charlist))
							errors += name+" may only start with a character.\n";
					}
					else
						errors += name+" may only consist of characters and numbers.\n";
				}
			}
			
			if (errors!="")
				formField.style.background = 'Yellow';
			else
				formField.style.background = 'White';
		}		
		
		return errors;	
	}
	
		function trimAll(sString)
		{
			while (sString.substring(0,1) == ' ')
			{
			sString = sString.substring(1, sString.length);
			}
			while (sString.substring(sString.length-1, sString.length) == ' ')
			{
			sString = sString.substring(0,sString.length-1);
			}
			return sString;
		}
	
	function validate_email(id, name) {
		
		var errors = "";	
		formField = document.getElementById(id);	
		
		if (formField!=null)
		{
			puta = trimAll(formField.value);
			
			if (puta=="")
				errors += "Please enter your "+name+"\n";
			else
			{
				if (str_check(puta)==false)
					errors += "Please enter a valid "+name+"\n";
			}
			
			if (errors!="")
				formField.style.background = 'Yellow';
			else
				formField.style.background = 'White';			
		}
	
		return errors;
	}
	
		function str_check(str) {
		
			var at="@"
			var dot="."
			var lat=str.indexOf(at)
			var lstr=str.length
			var ldot=str.indexOf(dot)
			
			if (str.indexOf(at)==-1)
			   return false
		
			if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr)
			   return false
		
			if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr)
				return false
		
			 if (str.indexOf(at,(lat+1))!=-1)
				return false
		
			 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot)
				return false
		
			 if (str.indexOf(dot,(lat+2))==-1)
				return false
			
			 if (str.indexOf(" ")!=-1)
				return false
		
			 return true					
		}
		
	function validate_dropdown(id, name){
		
		var errors = "";
		formField = document.getElementById(id);
		
		if (formField!=null)		
			if (formField.selectedIndex==0)
				errors += "Please select your " + name + ".\n";
				
		return errors;
	}
	
	function validate_state(id, name){
		
		var errors = "";
		stateField = document.getElementById(id);
		
		if (stateField!=null)	
		{	
			countryField = document.getElementById('country');				
			
			if(countryField.selectedIndex==1)
			{
				if(stateField.selectedIndex==0)
					errors += "Please select your STATE.\n";
			}
			else
			{
				stateField.value = trimAll(stateField.value);
				
				if(stateField.value == "")
					errors += "Please enter your STATE.\n";
			}
		}	
		
		return errors;	
	}
	
	function validate_US_zip(id, name){
		
		var errors = "";
		formField = document.getElementById(id);

		if (formField!=null)
		{			
			formField.value = trimAll(formField.value);
			
			if (formField.value=="")
				errors += "Please enter your ZIP.\n";
			else
			{
				if (formField.value.length!=5) 
					errors += "Please enter your 5 digit zip code.\n";
				
				if (!isNumeric(formField.value))
					errors += "Please enter a numeric zip code!\n";
			}
			
			if (errors!="")
				formField.style.background = 'Yellow';
			else
				formField.style.background = 'White';
		}
			
		return errors;	
	}
		
		function isNumeric(numeric_string)
		{
			var strValidChars = "0123456789";
			var strChar;
			var blnResult = true;
			
			if (numeric_string.length == 0) 
				return false;			
			
			for (i = 0; i < numeric_string.length && blnResult == true; i++)
			{
				strChar = numeric_string.charAt(i);
				if (strValidChars.indexOf(strChar) == -1)
					blnResult = false;
			}
			
			return blnResult;
		}
		
	function validate_city(id, name){
		
		var errors = "";
		formField = document.getElementById(id);
		
		if (formField!=null)
		{	
			formField.value = trimAll(formField.value);
			
			if (formField.value=="")
				errors += "Please enter your " + name + ".\n";
				
			if (errors!="")
				formField.style.background = 'Yellow';
			else
				formField.style.background = 'White';
		}

		return errors;	
	}
	
	function validate_checkbox(id, name){
	
		var errors = "";	
		formField = document.getElementById(id);
		
		if (formField!=null)
			if (formField.checked==false)
				errors += "You have to accept the " + name + ".\n";
			else
				formField.checked = true;
	
		return  errors;
	}
				
	function form_validation(){
		
		valid = true;
		var errors="";

		//VALIDATE USER OR PASS (id, name, min len, max len)
		errors += validate_userfield("user_name", "USERNAME", 16, 6);

		//VALIDATE USER OR PASS (id, name, min len, max len)
		errors += validate_userfield("password", "PASSWORD", 16, 6);
		
		//VALIDATE USER OR PASS (id, name, min len, max len)
		errors += validate_userfield("password_gcg", "PASSWORD", 16, 6);

		//VALIDATE EMAIL (id, name)
		errors += validate_email("email", "EMAIL");
		
		//VALIDATE COUNTRY (id, name)
		errors += validate_dropdown("country", "COUNTRY");
		
		//VALIDATE STATE (id, name)
		errors += validate_state("state", "STATE")
		//
		//VALIDATE US ZIP (id, name)
		errors += validate_US_zip("zip", "ZIP")
		
		//VALIDATE US CITY (id, name)
		errors += validate_city("city", "CITY")

		//VALIDATE CHECKBOX (id, name)
		errors += validate_checkbox("terms","TERMS");
	
		//OUTPUT
		if (errors != "") 
		{
			alert(errors);
			return false;
		}
		else
		 	return true;
	}



    //-->
