function checkUserName(){
	var AJAX = createXMLHttpRequest(); 
	var username=document.getElementById("username").value;

	if (username.match(/^([u4e00-u9fa5]|[ufe30-uffa0]|[a-za-z0-9_ ])*$/) == null) {
		document.getElementById("usernameMsgbox").innerHTML="Username contains illegal characters";
		document.getElementById("isUsernameValid").value="not valid";
	}
	else{
	AJAX.onreadystatechange = function(){
		if(AJAX.readyState == 4 && AJAX.status == 200) {	
			var rtn = AJAX.responseText;
			document.getElementById("usernameMsgbox").innerHTML=rtn;
			if(rtn.substring(0, rtn.indexOf(" ")) == "Valid")
				document.getElementById("isUsernameValid").value="valid";
			else
				document.getElementById("isUsernameValid").value="not valid";
		} 
	}
	AJAX.open("GET", "../productdevice?type=checkUsername&username="+username); 
	AJAX.send(); 
	}
}
function checkRegisterForm(){
	var username = document.getElementById("username").value;
	var val1 = document.getElementById("password").value;
	var val2 = document.getElementById("password2").value;
	var question = document.getElementById("security_question").value;
	var answer = document.getElementById("answer").value;
	var fn = document.getElementById("first_name").value;
	var ln = document.getElementById("last_name").value;
	
	if(username.length == 0){
		alert("Please enter a username");
		return false;
	}
	else if(document.getElementById("isUsernameValid").value == "not valid"){
		alert("Your entered username is not valid");
		return false;
	}else if(val1.length < 6){
		alert("Your password should be more than 6 characters");
		return false;
	}
	else if(val1.length > 32){
		alert("Your password can not be longer than 32 characters");
		return false;
	}
	else if(val1!=val2){
		alert("Confirmed password doesn't match, please re-enter your password");
		return false;
	}
	else if(fn == null || fn.length==0){
		alert("Please enter your first name");
		return false;
	}else if(ln == null || ln.length==0){
		alert("Please enter your last name");
		return false;
	}else if(checkEmail()==false){
		return false;
	}
	else if(question == "NA"){
		alert("Please choose a security question");
		return false;
	}
	else if(answer == null || answer.length == 0){
		alert("Security question answer cannot be empty!");
		return false;
	}else {
		return checkDeviceForm();
	}
}

function checkEmail(){
	var email = document.getElementById("email").value;
	if(email == null || email.length==0){
		alert("Please enter your email address");
		return false;
	}
	else if(email.indexOf("@") == -1){
		alert("Email address must contain a @");
		return false;
	}else if(email.indexOf(".") == -1){
		alert("Email address must contain a dot(.)");
		return false;
	}else if((email.indexOf(",") != -1)||(email.indexOf("!") != -1)||(email.indexOf("\\")!= -1)
	||(email.indexOf("`")!= -1)||(email.indexOf("^")!=-1) ||(email.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) == -1)){
		alert("Email address contains illegal character, please check your input.");
		return false;
	}else{
		return true;
	}
}

function checkMac(){
	var mac = document.getElementById("mac").value;
	if(mac.length==0 || mac==null){
		document.getElementById("macMsgbox").innerHTML="MAC address cannot be empty";
	}else{
	var AJAX = createXMLHttpRequest(); 
	AJAX.onreadystatechange = function(){
	if(AJAX.readyState == 4 && AJAX.status == 200) { 
		var rtn=AJAX.responseText;
		document.getElementById("macMsgbox").innerHTML=rtn;
		if(rtn=="Valid")
			document.getElementById("isMacValid").value="valid";
		else
			document.getElementById("isMacValid").value="not valid";
	}
	}
	AJAX.open("GET", "../productdevice?type=isMatch&mac="+mac); 
	AJAX.send(""); 
	}
}

function checkDeviceForm(){
	
	var date = document.getElementById("purchased_date").value;
	var store = document.getElementById("store").value;

	if(document.getElementById("isMacValid").value == "not valid"){
		alert("Please enter a valid MAC address");
		return false;
	}
	else if(date==null || date.length==0){
		alert("Please enter purchased date");
		return false;
	}else if(store=="NA"){
		alert("Please select purchased store ");
		return false;
	}else{
		return true;
	}
}
