function ValidateForm()
{
	var pass = document.getElementById('pass');
	var passConfirm = 	document.getElementById('password_confirm');
	var username = document.getElementById('username');
	var email = document.getElementById('email');
	var termBox = document.getElementById('agree');
	var passMismatch = document.getElementById('passwordMismatch');
	if (passMismatch) passMismatch.style.display="none";
	var nameNotValid = document.getElementById('nameNotValid');
	if (nameNotValid) nameNotValid.style.display="none";
	var mailNotValid = document.getElementById('mailNotValid');
	if (mailNotValid) mailNotValid.style.display="none";
	var termsNotAccepted = document.getElementById('termsNotAccepted');
	if (termsNotAccepted) termsNotAccepted.style.display="none";
	var namExist = document.getElementById('nameExistInDB');
	if (namExist) namExist.style.display="none";
	var emailExist = document.getElementById('emailExistInDB');
	if (emailExist) emailExist.style.display="none";
	
	var valid = true;
	//check password
	if ( pass==null || passConfirm==null)
	{
		return false;
	}
	if ((passConfirm.value=="") || passConfirm.value!=pass.value)
	{
		if (passMismatch) passMismatch.style.display="block";
		valid=false;
		
	}
	
	//check username
	if (username.value==null ||
	 username.value=='' ||
	 username.value.match('[^a-zA-Z0-9_]+')!=null)	
	{
		if (nameNotValid) nameNotValid.style.display="block";
		valid=false;
		
	}
	
	//check email
	if (email.value==null ||
	 email.value=='' ||
	 email.value.match('[a-zA-Z0-9_]+@[a-zA-Z0-9_]+\.[a-zA-Z0-9_]')==null)	
	{
		if (mailNotValid) mailNotValid.style.display="block";
		valid=false;
	}
	
	//check term of sevice
	if (!termBox.checked)
	{
		if (termsNotAccepted) termsNotAccepted.style.display="block";
		valid=false;
	}
	return valid;
}