
function validateUsername(obj){
	var str = obj;
	//var patn =   /^[\u0391-\uFFE5a-zA-Z0-9][\u0391-\uFFE5\w]{2,20}$/; 
	var patn = /^[^\s]*$/;
	if(patn.test(str)){
		return (checkByteLength(str,5,20));
	}
	return false; 
}
function validatePassword(obj){
	var str = obj;
	var patn = /.{6,16}/; 
	if(patn.test(str)) return true;
	return false; 
}
function validateSafePassword(obj){
	var str = obj.value;
	//check length and alphabet
	var rank = 0;
	try {
		rank = PwdIntensity(str);
		printIntensity(rank);
	} catch (er) {
	}
	if(validatePassword(obj)>0) return 1;
	//check if same as username
	if(str == document.getElementById("username").value) return 2;
	//check if all the characters are the same
	for(var i=0;i<str.length;i++){
		if(str.charAt(0)!=str.charAt(i)) break;
	}
	if(i == str.length) return 3;
	//check if is number sequence
	var seqStr="01234567890";
	if(seqStr.indexOf(str) != -1) return 4;
	//check if is lower alphabet sequence
	var seqStr="abcdefghijklmnopqrstuvwxyz";
	if(seqStr.indexOf(str) != -1) return 5;
	//check if is upper alphabet sequence
	var seqStr="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
	if(seqStr.indexOf(str) != -1) return 6;
	if (rank == 1) {
		//return 7;
	}
	//if validated
	return 0;
}

function validateAll(formObj){
	var obj,infobox,pass;
	pass = true;
	var x = formObj;
	if(!x) return;
	var y = x.getElementsByTagName("input");
	for (var i=0;i<y.length;i++){
		obj = y[i];		
		obj.value = obj.value.trim();
		if(obj.type == 'text' || obj.type == 'password'){
			if(!isRequired(obj) && obj.value == ""){
				continue;
			}
			if(isRequired(obj) && obj.value == ""){
				pass = false;
				obj.focus();
				if(isCombine(obj)) break;
				continue;
			}
			if(validateValue(obj)>0){
				pass = false;
				obj.focus();
				if(isCombine(obj)) break;
				continue;
			}
			if(validateValue(obj)==0){
				continue;
			}
		}
	}
	return pass;
}

function isRequired(obj){
	
	return false;
}
function isCombine(obj){
	
	return false;
}

function checkByteLength(str,minlen,maxlen) {
	if (str == null) return false;
	var l = str.length;
	var blen = 0;
	for(i=0; i<l; i++) {
		if ((str.charCodeAt(i) & 0xff00) != 0) {
			blen ++;
		}
		blen ++;
	}
	if (blen > maxlen || blen < minlen) {
		return false;
	}
	return true;
}