// Validate registration
function alphanumeric(alphane)
{
	var numaric = alphane;
	for(var j=0; j<numaric.length; j++)
		{
		  var alphaa = numaric.charAt(j);
		  var hh = alphaa.charCodeAt(0);
		  if((hh > 47 && hh<58) || (hh > 64 && hh<91) || (hh > 96 && hh<123))
		  {
		  }
		else {
				return false;
		  	 }
 		}
 return true;
}


function blankFields(element, div) {
	var lengthTest = document.getElementById(element).value;
	if(lengthTest.length == 0) {
		document.getElementById(element).style.border = '1px solid #000000';
		document.getElementById(div).style.color = '#d74141';
		document.getElementById(div).innerHTML = '';	
	}
}


function validateUsername(submitted) {
	var username = document.theform.username.value;
	var usernameLength = username.length;
	var validated = false;
	if(usernameLength < 6) {
		document.getElementById("username").style.border = '2px solid #d74141';
		document.getElementById("usernameError").style.color = '#d74141';
		document.getElementById("usernameError").innerHTML = 'Your username is too short!';
		validated = false;
	}
	else if(20 < usernameLength) {
		document.getElementById("username").style.border = '2px solid #d74141';
		document.getElementById("usernameError").style.color = '#d74141';
		document.getElementById("usernameError").innerHTML = 'Your username is too long!';
		validated = false;
	}
	else if(alphanumeric(username) === false) {
		document.getElementById("username").style.border = '2px solid #d74141';
		document.getElementById("usernameError").style.color = '#d74141';
		document.getElementById("usernameError").innerHTML = 'Your username contains illegal characters!';
	}
	else {
		document.getElementById("username").style.border = '2px solid #00FF00';
		document.getElementById("usernameError").style.color = '#00FF00';
		document.getElementById("usernameError").innerHTML = 'Perfect!';
		validated = true;
	}
	
	blankFields('username', 'usernameError');
	if(submitted == 1) {
		return validated;
	}
}

function validateNickname(submitted) {
	var nickname = document.theform.nickname.value;
	var nicknameLength = nickname.length;
	var validated = false;
	if(nicknameLength < 6) {
		document.getElementById("nickname").style.border = '2px solid #d74141';
		document.getElementById("nicknameError").style.color = '#d74141';
		document.getElementById("nicknameError").innerHTML = 'Your nickname is too short!';
		validated = false;
	}
	else if(20 < nicknameLength) {
		document.getElementById("nickname").style.border = '2px solid #d74141';
		document.getElementById("nicknameError").style.color = '#d74141';
		document.getElementById("nicknameError").innerHTML = 'Your username is too long!';
		validated = false;
	} else if (alphanumeric(nickname) == false) {
		document.getElementById("nickname").style.border = '2px solid #d74141';
		document.getElementById("nicknameError").style.color = '#d74141';
		document.getElementById("nicknameError").innerHTML = 'Your nickname contains illegal characters';
		validated = false;								
	}
	else {
		document.getElementById("nickname").style.border = '2px solid #00FF00';
		document.getElementById("nicknameError").style.color = '#00FF00';
		document.getElementById("nicknameError").innerHTML = 'Perfect!';
		validated = true;
	}
	blankFields('nickname', 'nicknameError');
	
	if(submitted == 1) {
		return validated;
	}
}

function validatePassword(submitted) {
	var password1 = document.theform.password1.value;
	var password2 = document.theform.password2.value;
	var password2Length = password2.length;
	var passwordLength = password1.length;
	var validated = false;
	if(passwordLength < 6) {
		document.getElementById("password1").style.border = '2px solid #d74141';
		document.getElementById("passwordError1").style.color = '#d74141';
		document.getElementById("passwordError1").innerHTML = 'Your password is too short!';
		validated = false;
	}
	else if(20 < passwordLength) {
		document.getElementById("password1").style.border = '2px solid #d74141';
		document.getElementById("passwordError1").style.color = '#d74141';
		document.getElementById("passwordError1").innerHTML = 'Your password is too long!';
		validated = false;
	}
	else {
		document.getElementById("password1").style.border = '2px solid #00FF00';
		document.getElementById("passwordError1").style.color = '#00FF00';
		document.getElementById("passwordError1").innerHTML = 'Perfect!';	
		validated = true;
	}
	
	if(password2Length != 0) {
	if(password1 != password2) {
		document.getElementById("password2").style.border = '2px solid #d74141';
		document.getElementById("passwordError2").style.color = '#d74141';
		document.getElementById("passwordError2").innerHTML = 'The two passwords entered do not match!';
		validated = false;
	} else {
		document.getElementById("password2").style.border = '2px solid #00FF00';
		document.getElementById("passwordError2").style.color = '#00FF00';
		document.getElementById("passwordError2").innerHTML = 'Perfect!';
		validated = true;
	}
	}
	blankFields('password1', 'passwordError1');
	blankFields('password2', 'passwordError2');
	
	if(submitted == 1) {
		return validated;
	}
}

function validateEmail(submitted) {
	var email1 = document.theform.email1.value;
	var email2 = document.theform.email2.value;
	var validated = false;
	var email2Length = email2.length;
	if(email1.indexOf("@") > 0) {
		document.getElementById("email1").style.border = '2px solid #00FF00';
		document.getElementById("emailError1").style.color = '#00FF00';
		document.getElementById("emailError1").innerHTML = 'Perfect!';
		validated = true;
	} else {
		document.getElementById("email1").style.border = '2px solid #d74141';
		document.getElementById("emailError1").style.color = '#d74141';
		document.getElementById("emailError1").innerHTML = 'Invalid Email!';
		validated = false;
	}
	
	if(email2Length != 0) {
	if(email1 != email2) {
		document.getElementById("email2").style.border = '2px solid #d74141';
		document.getElementById("emailError2").style.color = '#d74141';
		document.getElementById("emailError2").innerHTML = 'The two email addresses entered do not match!';
		validated = false;
	} else {
		document.getElementById("email2").style.border = '2px solid #00FF00';
		document.getElementById("emailError2").style.color = '#00FF00';
		document.getElementById("emailError2").innerHTML = 'Perfect!';	
		validated = true;
	}
	}
	blankFields('email1', 'emailError1');
	blankFields('email2', 'emailError2');
	
	if(submitted == 1) {
		return validated;
	}
}

function validateForm() {
	var usernameCheck = validateUsername('1');
	var passwordCheck = validatePassword('1');
	var emailCheck = validateEmail('1');
	
	if(usernameCheck == false || passwordCheck == false || emailCheck == false) {
		alert("Please fill out all fields correctly and try again!");	
		return false;
	} else {
		return true;
	}
	
}

function validateEmailForm() {
	var emailCheck = validateEmail('1');
	if(emailCheck == false) {
		alert("Please fill out all the fields correctly and try again!");
		return false;
	} else {
		return true;
	}
}

function validatePasswordForm() {
	var passwordCheck = validatePassword('1');
	if(passwordCheck == false) {
		alert("Please fill out all the fields correctly and try again!");
		return false;
	} else {
		return true;
	}
}

function validateResetPassForm() {
	var usernameCheck = validateUsername('1');
	var emailCheck = validateEmail('1');
	
	if(usernameCheck == false || emailCheck == false) {
		alert("Please fill out all fields correctly and try again!");	
		return false;
	} else {
		return true;
	}
	
}
