var oForm = document.forms['oForm'];
var regUserName = /^[_\-\.0-9a-zA-Z]+@([_\-0-9a-zA-Z][_\-0-9a-zA-Z]+\.)+[\-a-zA-Z0-9]{2,}$/;
var regUserName_en = /^(([a-zA-Z0-9]|[_-]|[@-]|[.-]){4,20})$/;
var regPassword = /^[\S]{4,20}/;
function regValidate() {
	if (!arguments[1].test(arguments[0]))	return false;
	else return true;
}

	//这是一个启动AJAX异步通信的方法
	function beginCheck(email){
	     if(email==null) return;
		//创建一个XMLHttpRequest对象
		createXMLHttpRequest();
		//将状态触发器绑定到一个函数
		xmlHttp.onreadystatechange = processor;
		//通过GET方法向指定的URL建立服务器的调用
		xmlHttp.open("GET", "http://passport.yimei.com/checkUserValidity?email="+email);
		//发送请求
		xmlHttp.send(null);
	}
	
	//这是一用来处理状态改变的函数
	function processor () {
		//定义一个变量用于存放从服务器返回的响应结果
		var responseContext;
		if(xmlHttp.readyState == 4) { //如果响应完成
			if(xmlHttp.status == 200) {//如果返回成功
				//取出服务器的响应内容
				responseContext = xmlHttp.responseText;
				//如果注册名检查有效
				if (responseContext.indexOf("true")!=-1){
	             $('emailTip').setHTML('<li><span class="correct"><span class="correct"><font color="red"> 此邮件己被注册。</font></span></span></li>');
				}else{
			$('emailTip').setHTML('<li><span class="correct"><span class="correct">√ 您可以使用此邮箱。</span></span></li>');					
				}
			}
		}
	}

function checkEmail(_email){
	if (!regValidate(_email,regUserName)) {
		$('emailTip').setHTML('<li><span class="correct"><span class="wrong">X 非法的Email，请重新输入。</span></span></li>');
		return;
	}else{
		beginCheck(_email);
		//$('emailTip').setHTML('<li><span class="correct"><span class="correct">√ 您可以使用此邮箱。</span></span></li>');
	}
}
oForm.email.onblur = function() {
	if (this.value == "") {
		$('emailTip').setHTML('<li><span class="wrong">X Email不能为空!</span></li>');
		return;
	}
	if (this.value.length <4) {
		$('emailTip').setHTML('<li><span class="wrong">X Email长度至少为4个字符，请重新输入。</span></li>');
		return;
	}
	if (!regValidate(this.value,regUserName)) {
		$('emailTip').setHTML('<li><span class="wrong">X 非法的Email，请重新输入。</span></li>');
	}
	this.value = this.value.toLowerCase();
	checkEmail(this.value);
}

function checkName(_username) {

	if (!regValidate(_username,regUserName_en)) {
		$('userNameTip').setHTML('<li><span class="correct"><span class="wrong">X 4～20个字符(可使用小写字母、数字、下划线)，一旦注册成功用户名不能修改。</span></span></li>');
		return;
	}	

	if(_username==""){
		$('userNameTip').setHTML('<li><span class="wrong">X 用户名不能为空，请输入用户名。</span></li>');
		return;		
	}
	$('userNameTip').setHTML('<li><span class="wrong" style="color:#333;">Checking name. Please wait...<img src="http://img.yimei.com/public/images/spinner.gif" align="absmiddle"/></span></li>');
	var checkUserUrl ="/interface/http/common/passport_checkuser.jsp?userName=" + _username+"&ran=" + Math.random();
	new Ajax(checkUserUrl, {
		method:'get',
		onComplete: function(requestText, requestXML) {
			retcode= requestText;
			if (retcode == 0) {// 该用户已经存在
				$("userNameTip").setHTML('<li><span class="wrong">X 该用户名已经存在，请重新输入。</span></li>');
			} else {
				$('userNameTip').setHTML('<li class="correct">√ 该用户名还未被使用，您可以使用此用户名</li>');
			}	
		}
	}).request();
}
oForm.userName.onblur = function() {
	if (this.value == "") {
		$('userNameTip').setHTML('<li><span class="wrong">X 用户名不能为空，请输入用户名。</span></li>');
		return;
	}
	if (this.value.length <4) {
		$('userNameTip').setHTML('<li><span class="wrong">X 用户名长度至少为4个字符，请重新输入。</span></li>');
		return;
	}
	/*
		if (!regValidate(this.value,regUserName)) {
			$('userNameTip').setHTML('<li><span class="wrong">X 非法的用户名，请重新输入。</span></li>');
		}	
	*/
	
	this.value = this.value.toLowerCase();
	checkName(this.value);
}
//$('checkButton').addEvent('click', function() {
//	checkName(oForm.userName.value);
//});

oForm.password.onblur = function() {
	var reg=/\W/; 
	var x=this.value; 
	if (!regValidate(this.value, regPassword)) {
		$('passwordTip').setHTML('<li class="wrong">X 密码长度为4~20位，请重新输入！</li>');
		return;
	}else if(reg.test(x)) 
	{ 
		$('passwordTip').setHTML('<li class="wrong">X 密码只能由数字0-9,大写字母A-Z和小写字母a-z组成！</li>');
		return;
	}else {
		$('passwordTip').setHTML('<li><span class="correct">√ 此密码可以使用。</span></li>');
		return;
	}
}

oForm.testpassword.onblur = function() {
	if (this.value == "") {
		$('password2Tip').setHTML('<li class="wrong"><span class="wrong">X</span> 密码不能为空，请输入！</span></li>');
		return;
	}
	if (this.value != oForm.password.value) {
		$('password2Tip').setHTML('<li class="wrong"><span class="wrong">X</span> 两次密码输入不一致，请重新输入！</span></li>');
		return;
	}
	if (this.value == oForm.password.value) {
		$("password2Tip").setHTML('<li><span class="correct">√ 两次输入的密码一致。</span></li>');
		return;
	}
}

oForm.textNum.onblur = function() {
	if (this.value == "") {
		$('rndTip').setHTML('<li><span class="wrong"><span class="wrong">X</span> 请输入验证码。</span><!--a href="#">看不清？换一个验证码</a--></li>');
		return;
	}
	if (this.value.length != 4) {
		$('rndTip').setHTML('<li><span class="wrong"><span class="wrong">X</span> 验证码长度不正确。</span><!--a href="#">看不清？换一个验证码</a--></li>');
		return;
	} else {
		$('rndTip').setHTML('<li><span class="correct">√ 验证码已输入。</span><!--a href="#">看不清？换一个验证码</a--></li>') ;
		return;
	}
}
