function validate_signup(){
	var invalid = " "; // Invalid character is a space
	var minLength = 4; // Minimum length
	var user_name = document.signup.user_name.value;
	var user_email = document.signup.user_email.value;
	var user_password = document.signup.user_password.value;
	var user_password2 = document.signup.user_password2.value;
	
	//this checks the username
	if(user_name.length < minLength){
		alert("Username must be at least 4 characters.")
		return false;
	}
	else{
			if(containsInvalidCharacters(user_name)){
				alert("The username selected contains invalid caracters.")
				return false;
			}
	}
	
	//this checks the email address
	if(user_email == ""){
		alert("Please enter an email address.")
		return false;
	}
	else{
			if(InvalidEmail(user_email)){
				alert("Please enter a valid email address.")
				return false;
			}
	}	
	
	
	// check for minimum length
	if(user_password.length < minLength){
		alert("Password must be at least 4 characters.");
		return false;
	}
	// check for spaces
	if(user_password.indexOf(invalid) > -1){
		alert("Password can not contain spaces.");	
		return false;
	}
	else{
		if (user_password != user_password2){
			alert("Re-entered password does not match password.");			
			return false;
		}
		else{
			return true;
		}
	 }


	return true;	
}


// This function checks for invalid characters.
function containsInvalidCharacters(stringin){
	for (var i = 0; i < stringin.length; i++){
		var oneChar = stringin.substring(i, i + 1);
		if ("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_".indexOf(oneChar) == -1){
			return true;
		} 
	}
	return false;
}	

//This is a simple function to check email validation. Might be revised.
function InvalidEmail(email){
var email;
var AtSym    = email.indexOf('@')
var Period   = email.lastIndexOf('.')
var Space    = email.indexOf(' ')
var Length   = email.length - 1   // Array is from 0 to length-1

if ((AtSym < 1) ||                     // '@' cannot be in first position
    (Period <= AtSym+1) ||             // Must be atleast one valid char btwn '@' and '.'
    (Period == Length ) ||             // Must be atleast one valid char after '.'
    (Space  != -1))                    // No empty spaces permitted
   {  
     return true;
   }
return false;
}


