/**
 * 阳光中国注册相关的js
 * @ author billy
 */
var Reg = {};

Reg.checkUserName = function(uri) {
    document.getElementById("userName_err").innerHTML = "";

	var userName = document.getElementById("userName").value;
	userName = StrUtil.trim(userName);
	userName = userName.toLowerCase();
	document.getElementById("userName").value = userName;
	if(userName == ''){
		document.getElementById("userName_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>用户名不能为空</span>";
		return false;
	}
	if(!StrUtil.onlyNumberAndChar(userName)){
		document.getElementById("userName_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>请输入英文或数字</span>";
		return false;
	}
	if(!StrUtil.checkLength(userName,3,18)){
		document.getElementById("userName_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>3-18位数字或字符</span>";
		return false;
	}

	var postCall = {   
		success: function(o){
			if (o.responseText == ACTION_SUCCESS_CODE){
				document.getElementById("userName_err").innerHTML = "<img src='"+uri+"/images/true.gif' align='absmiddle' />用户名可用";
			}else if(o.responseText == USER_EXIST_ERR_CODE){
				document.getElementById("userName_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>该用户名已被占用</span>";
			}
		}   
	}   
    
	var sUrl = uri + '/user/checkUserName.do';
	YAHOO.util.Connect.setForm("regForm");
	var cObj = YAHOO.util.Connect.asyncRequest('POST', sUrl, postCall);
	
	return true;
}

Reg.checkNickName = function(uri) {
    document.getElementById("nickName_err").innerHTML = "";

	var nickName = document.getElementById("nickName").value;
	nickName = StrUtil.trim(nickName);
	if(nickName == ''){
		document.getElementById("nickName_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>昵称不能为空</span>";
		return false;
	}
	if(!StrUtil.onlyNumberCharAndChinese(nickName)){
		document.getElementById("nickName_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>请输入英文、数字或中文</span>";
		return false;
	}
	if(!StrUtil.checkLength(nickName,3,18)){
	    document.getElementById("nickName_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>3-18位数字、字符或中文</span>";
		return false;
	}

	var postCall = {   
		success: function(o){
			if (o.responseText == ACTION_SUCCESS_CODE){
				document.getElementById("nickName_err").innerHTML = "<img src='"+uri+"/images/true.gif' align='absmiddle' />昵称可用";
			}else if(o.responseText == USER_EXIST_ERR_CODE){
				document.getElementById("nickName_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>该昵称已被占用</span>";
			}
		}  
	}   
    
	var sUrl = uri + '/user/checkNickName.do';
	YAHOO.util.Connect.setForm("regForm");
	var cObj = YAHOO.util.Connect.asyncRequest('POST', sUrl, postCall);
	
	return true;
}

Reg.checkEmail = function(uri) {
	document.getElementById("email_err").innerHTML = "";

	var email = document.getElementById("email").value;
	email = StrUtil.trim(email);
	if(email == ''){
		document.getElementById("email_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>E-mail不能为空</span>";
		return false;
	}
	if(!StrUtil.onlyEmail(email)){
	    document.getElementById("email_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>E-mail格式不正确</span>";
		return false;
	}

	var postCall = {   
		success: function(o){
			if (o.responseText == ACTION_SUCCESS_CODE){
				document.getElementById("email_err").innerHTML = "<img src='"+uri+"/images/true.gif' align='absmiddle' />E-mail可用";
			}else if(o.responseText == USER_EXIST_ERR_CODE){
				document.getElementById("email_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>该E-mail已被占用</span>";
			}
		}
	}   
    
	var sUrl = uri + '/user/checkUserEmail.do';
	YAHOO.util.Connect.setForm("regForm");
	var cObj = YAHOO.util.Connect.asyncRequest('POST', sUrl, postCall);	
	
	return true;
}

Reg.checkPassword = function(uri) {
	document.getElementById("password_err").innerHTML = "";

	var password = document.getElementById("password").value;
	if(password == ''){
		document.getElementById("password_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>密码不能为空</span>";
		return false;
	}
	if(!StrUtil.onlyNumberAndChar(password)){
		document.getElementById("password_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>请输入英文或数字</span>";
		return false;
	}
	if(!StrUtil.checkLength(password,6,18)){
		document.getElementById("password_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>6-18位数字或字符</span>";
		return false;
	}
	document.getElementById("password_err").innerHTML = "<img src='"+uri+"/images/true.gif' align='absmiddle' />格式正确";
	return true;
}

Reg.checkRepassword = function(uri) {
	document.getElementById("repassword_err").innerHTML = "";

	var password = document.getElementById("password").value;
	var repassword = document.getElementById("repassword").value;
	if(repassword == ''){
		document.getElementById("repassword_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>确认密码不能为空</span>";
		return false;
	}
	if(password != repassword){
		document.getElementById("repassword_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>与密码不一致</span>";
		return false;
	}
	document.getElementById("repassword_err").innerHTML = "<img src='"+uri+"/images/true.gif' align='absmiddle' />与密码一致";
	return true;
}

Reg.checkConfirmCode = function(uri) {
	document.getElementById("confirmCode_err").innerHTML = "";

	var confirmCode = document.getElementById("confirmCode").value;
	if(confirmCode == ''){
		document.getElementById("confirmCode_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>请填写验证码</span>";
		return false;
	}
	document.getElementById("confirmCode_err").innerHTML = "";
	return true;
}

Reg.checkRegCode = function(uri) {
	document.getElementById("regCode_err").innerHTML = "";
	var regCode = document.getElementById("regCode").value;
	if(regCode == ''){
		document.getElementById("regCode_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>请填写邀请码</span>";
		return false;
	}
	return true;
}

Reg.regSubmit = function(uri, isOpenReg) {

	if(!document.getElementById("accept_check").checked){
		document.getElementById("submit_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>请接受服务条款</span>";
		return false;
	}

	document.getElementById("buttonUserReg").disabled = true;

	if(!isOpenReg){
		document.getElementById("regCode_err").innerHTML = "";
	}	
	document.getElementById("userName_err").innerHTML = "";
	document.getElementById("nickName_err").innerHTML = "";
	document.getElementById("email_err").innerHTML = "";
	document.getElementById("password_err").innerHTML = "";
	document.getElementById("repassword_err").innerHTML = "";
	document.getElementById("confirmCode_err").innerHTML = "";
	document.getElementById("submit_err").innerHTML = "";
	
	if(isOpenReg){
		//开饭注册
		if(Reg.checkUserName(uri) & Reg.checkNickName(uri) & Reg.checkEmail(uri) & Reg.checkPassword(uri) & Reg.checkRepassword(uri) & Reg.checkConfirmCode(uri)){
		
			var postCall = {   
				success: function(o){
					UpdateCode("rzimg");
					document.getElementById("buttonUserReg").disabled = false;
					if (o.responseText == ACTION_SUCCESS_CODE){
						//注册成功跳转页面
						//location.href = uri+"/user/userHome.jsp?un="+document.getElementById("userName").value;
						location.href = uri+"/u/"+document.getElementById("userName").value;
					}else if(o.responseText == CONFIRMCODE_ERR_CODE){
						document.getElementById("confirmCode_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>验证码有误</span>";
					}
				}  
			} 
			
			var sUrl = uri + '/user/reg.do';
			YAHOO.util.Connect.setForm("regForm");
			var cObj = YAHOO.util.Connect.asyncRequest('POST', sUrl, postCall);
			
		}else{
			document.getElementById("buttonUserReg").disabled = false;
		}
	}else{
		//不开放注册
		if(Reg.checkRegCode(uri) & Reg.checkUserName(uri) & Reg.checkNickName(uri) & Reg.checkEmail(uri) & Reg.checkPassword(uri) & Reg.checkRepassword(uri) & Reg.checkConfirmCode(uri)){
		
			var postCall = {   
				success: function(o){
					UpdateCode("rzimg");
					document.getElementById("buttonUserReg").disabled = false;
					if (o.responseText == ACTION_SUCCESS_CODE){
						//注册成功跳转页面
						//location.href = uri+"/user/userHome.jsp?un="+document.getElementById("userName").value;
						location.href = uri+"/u/"+document.getElementById("userName").value;
					}else if(o.responseText == CONFIRMCODE_ERR_CODE){
						document.getElementById("confirmCode_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>验证码有误</span>";
					}else if(o.responseText == REGCODE_ERR_CODE){
						//邀请码无效
						document.getElementById("regCode_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>邀请码无效</span>";
					}
				}  
			} 
			
			var sUrl = uri + '/user/reg.do';
			YAHOO.util.Connect.setForm("regForm");
			var cObj = YAHOO.util.Connect.asyncRequest('POST', sUrl, postCall);
			
		}else{
			document.getElementById("buttonUserReg").disabled = false;
		}
	}
}

Reg.regApp = function(uri){
	document.getElementById("buttonRegApp").disabled = true;
	
	document.getElementById("appEmail_err").innerHTML = "";
	var email = document.getElementById("appEmail").value;
	email = StrUtil.trim(email);
	if(email == ''){
		document.getElementById("appEmail_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>E-mail不能为空</span>";
		document.getElementById("buttonRegApp").disabled = false;
		return false;
	}
	if(!StrUtil.onlyEmail(email)){
	    document.getElementById("appEmail_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>E-mail格式不正确</span>";
		document.getElementById("buttonRegApp").disabled = false;
		return false;
	}
	
	var postCall = {   
		success: function(o){
			document.getElementById("buttonRegApp").disabled = false;
			if (o.responseText == ACTION_SUCCESS_CODE){
				document.getElementById("appForm").reset();
				document.getElementById("appEmail_err").innerHTML = "<img src='"+uri+"/images/true.gif' align='absmiddle' />申请已提交，审核通过后将为您发送邀请码!";
			}else{
				document.getElementById("appEmail_err").innerHTML = "<img src='"+uri+"/images/false.gif' align='absmiddle' /><span class='color_red'>"+o.responseText+"</span>";
			}
		}  
	} 
	
	var sUrl = uri + '/user/regApp.do';
	YAHOO.util.Connect.setForm("appForm");
	var cObj = YAHOO.util.Connect.asyncRequest('POST', sUrl, postCall);
}