function validateEmail(str){

	if(str.length == 0) return -1;

	if(!checkByteLength(str,6,40)) return 1;

	var patn = /^[_a-zA-Z0-9\-]+(\.[_a-zA-Z0-9\-]*)*@[a-zA-Z0-9\-]+([\.][a-zA-Z0-9\-]+)+$/;

	if(!patn.test(str))	return 2;

	return 0;

}



function validateusername(str) {

	if(str.length > 15){

			return 1;

	}

	if(str.length == 0){

			 return -1;

	}

	return 0;

}



function validatePassword(str){

	if(str.length == 0) return -1;

	if(!checkByteLength(str,6,20)) return 1;															

	var patn1 = /[\'\"\\]/;

	if(patn1.test(str) ) return 2;

	return 0; 

}

function checkAgree() {
	if(document.reg_form.agree.checked == true)
	  { document.reg_form.agree.value = "yes"; }
	
	else{
		  alert('You must agree to the Terms of Service.');
		  }
}


function checkForm (obj) {

	var email = obj.email.value.trim();

	switch (validateEmail(email)) {

	case -1:

		alert('Please enter your e-mail address.');

		return false;

		break;

	case 1:

		alert('E-mail address should be less than 40 characters.');

		return false;

		break;

	case 2:

		alert('Email format is wrong.');

		return false;

		break;

	}

	var username = obj.username.value.trim();

	switch (validateusername(username)) {

	case -1:

		alert('Please enter a username.');

		return false;

		break;

	case 1:

		alert('Username should be shorter than 15 characters.');

		return false;

		break;

	}

	var password = obj.password.value;

	switch (validatePassword(password)) {

	case -1:

		alert('Please enter a password.');

		return false;

		break;

	case 1:

		alert('Password length should be between 6-20 characters.');

		return false;

		break;

	case 2:

		alert('Password is blank or contains illegal characters, please re-enter again.');

		return false;

		break;

	}

	var password_s = obj.password_s.value;

	if (password_s!=password) {

		alert('The two passwords supplied are different.');

		return false;

	}

	return true;

}
