// JavaScript Document
var is_code=false; //预先设定验证码为假
//如果新的值和旧的值一样就到服务重新器匹配了
var old_code=null;
var username_exist=true;  //预先设定用户名已存
//如果新的值和旧的值一样就到服务重新器匹配了
var old_username=null; 
var email_exist=true;   
var old_email=null;
//去掉前后的空格
function trim(s){
	return s.replace(/(^\s*)|(\s*$)/g, "");
}
/**
* 用户检测,必须是3-16个英文字母或数字或下划线
*/
function ckusername(user){
	
	var value=trim(user.value);
	var show_msg=user.id+"_msg";
	var patrn=/^[\xC0-\xFFa-zA-Z0-9_]{4,16}$/;
	
	if(value.length==0)
	{		//user.style="red";
		 return error(show_msg,"you must enter you username");
	}else if(!patrn.exec(value))
	{
		 return error(show_msg,"username is not right");
	}
	
	return success(show_msg);
}

/**
* EMAIL 检测
*/
function ckemail(email){
	var value=trim(email.value);
	var show_msg=email.id+"_msg";
	if(value.length==0){	
		return error(show_msg,"you must enter you  E-mail");	
	
	}else if(value.search(/^[\xC0-\xFFA-Za-z0-9]+((-[\xC0-\xFFA-Za-z0-9]+)|(\.[\xC0-\xFFA-Za-z0-9]+))*\@[\xC0-\xFFA-Za-z0-9]+((\.|-)[\xC0-\xFFA-Za-z0-9]+)*\.[\xC0-\xFFA-Za-z0-9]+$/) == -1){
		
		return error(show_msg,"E-mail is not right");
	}
	  return success(show_msg);
}

/**
* 密码
*/
function ckpass(pass){
	var value=trim(pass.value);
	var show_msg=pass.id+"_msg";
	
	if(value.length<6){
		
		return error(show_msg,"");
	}
	return success(show_msg);
}

/**
* 重复密码
* 
*/
function ckrpass(pass,rpass){
	
	var pass = document.getElementById(pass);	
	var cvalue=trim(rpass.value);
	var show_msg=rpass.id+"_msg";
	if(!ckpass(rpass)){
		return false;
	}
	
	if(pass.value != cvalue){
		return error(show_msg,"两次密码不一样");
	}
	
	return success(show_msg);
}

function ckfamily(family){
	var value=trim(family.value);
	var show_msg=family.id+"_msg";
	if(value.length<3){
		return error(show_msg,"Family name is not right");
	}
	return success(show_msg);
}

function ckfirst(first){
	var value=trim(first.value);
	var show_msg=first.id+"_msg";
	if(value.length<3){
		return error(show_msg,"First name is not right");
	}
	return success(show_msg);
}

function ckstreet(street){
	var value=trim(street.value);
	var show_msg=street.id+"_msg";
	if(value.length<3){
		return error(show_msg,"Street is not right");
	}
	return success(show_msg);
}

function ckcity(ckcity){
	var value=trim(ckcity.value);
	var show_msg=ckcity.id+"_msg";
	if(value.length<3){
		return error(show_msg,"City is not right");
	}
	return success(show_msg);
}

function ckPZ(PZ){
	var value=trim(PZ.value);
	var patrn=/^[0-9]{3,}$/;
	var show_msg=PZ.id+"_msg";
	if(!patrn.exec(value)){
		return error(show_msg,"P/Z is not right");
	}
	return success(show_msg);
}

function ckprovince(province){
	var value=trim(province.value);
	var show_msg=province.id+"_msg";
	if(value.length<3){
		return error(show_msg,"Province is not right");
	}
	return success(show_msg);
}

function cktelephone(telephone){
	var value=trim(telephone.value);
	var show_msg=telephone.id+"_msg";
	var patrn=/^[0-9\-]*$/;
	if(value.length==0){
		return error(show_msg,"you must enter you  Telephone")
	}else if(!patrn.exec(value) || value.length<7){
		return error(show_msg,"Telephone is not right");
	}
	return success(show_msg);
}

function ckcode(code){

	var value=trim(code.value);
	var show_msg=code.id+"_msg";
	if(value.length!=4){
		return error(show_msg,"");		
	}else{
		//如果新值和旧值相同的话就不做AJAX判断
		if(old_code==value) return is_code;
		
		waitLoad(show_msg);
		//异步验证
		$.ajax({
			type:"GET",
			url:baseUrl+"/seller/checkuec",
		
			data:"set=login&type=code&value="+value,
			dataType:"json",
			success:	function(rs){
							  if(rs.state){
								  is_code=true; 
								  return success(show_msg);
							  
							  }else {
								  is_code=false;
								  return error(show_msg,"code is not right"); 
							  }
						}
			})
	}
	old_code=value;
	return true;
}

function ckue(username){

	var value=trim(username.value);
	var show_msg=username.id+"_msg";
	var patrn=/^[\xC0-\xFFa-zA-Z0-9_]{4,16}$/;
	 if(value.search(/^[\xC0-\xFFA-Za-z0-9]+((-[\xC0-\xFFA-Za-z0-9]+)|(\.[\xC0-\xFFA-Za-z0-9]+))*\@[\xC0-\xFFA-Za-z0-9]+((\.|-)[\xC0-\xFFA-Za-z0-9]+)*\.[\xC0-\xFFA-Za-z0-9]+$/) == -1 && !patrn.exec(value))
	 {
		 return error(show_msg,"");		
	 }
	 return success(show_msg);
}


function ckallpass(old_pass,new_pass,rnew_pass){
	var old_value=trim(old_pass.value);
	var new_value=trim(new_pass.value);
	var r_value=trim(rnew_pass.value);
	if(old_value.length>0 && (new_value.length==0 || r_value.length==0 )){
		return error(show_msg,"you must enter you old password");	
	}
}

function ckoldpass(old_pass,pass){
	var old_value=trim(old_pass.value);

	var new_pass=document.getElementById(pass);
	var new_value=trim(new_pass.value);
	
	var show_msg=old_pass.id+"_msg";
	
	if(new_value.length>0 && old_value.length==0){
		return error(show_msg,"you must enter you old password");	
	}
	
		return success(show_msg);
	}


function cknewpass(old,pass){
	var oldpass=document.getElementById(old);
	var oldpass_value=trim(oldpass.value);
	var new_value=trim(pass.value);
	
	var show_msg=pass.id+"_msg";
	if(new_value.length==0 && oldpass_value.length==0){
		return success(show_msg);
	}else if(oldpass_value.length>0 && new_value.length==0){
		return error(show_msg,"you must enter you new password");
	}
	
	if(new_value.length>0 && new_value.length<6){
		return error(show_msg,"new password is not right");
	}
	return success(show_msg);

}

function ckrnewpass(pass,rpass){

	var newpass=document.getElementById(pass);
	
	var newpass_value=trim(newpass.value);
	var rnewpass_value=trim(rpass.value);
	var show_msg=rpass.id+"_msg";
	
	if(newpass_value.length==0)return success(show_msg);
	if (newpass_value.length>0 && newpass_value!=rnewpass_value){
		return error(show_msg,"两次密码不一样");	
	}
	return success(show_msg);
}

function error(flag,msg){
	document.getElementById(flag).innerHTML='<image src="'+baseUrl+'/public/images/check_error.gif" /><br />' ;//+ msg;
	return false;
}

function success(flag,msg){
	if(String(msg)=='undefined')msg=new String();
	document.getElementById(flag).innerHTML="<image src='"+baseUrl+"/public/images/check_right.gif'/>";//+msg;
	return true;
}

function waitLoad(flag,sub){
	document.getElementById(flag).innerHTML=("<image src='"+baseUrl+"/public/images/zhan.gif'/>");	
}

function precheckcode(obj) {
	if(obj.value.length == 4) {
		ckcode(obj);
	}
}

/** login **/
function checkAll(form){
	var flag=true;
	
	if(!ckue(form.lstring)){
		flag=false;
	}
	if(!ckpass(form.password)){
		flag=false;
	}
	
	if(!(ckcode(form.code))){
		flag=false;
	}

	if(!is_code){
		flag=false;
	}

	return flag;
}

/** register **/
function checkRegisterAll(sform){
	var flag=true;
	
	if(!ckusernameRegister(sform.username)){
		flag=false;
	}

	if(!ckpass(sform.fpassword)){
		flag=false;
	}

	if(!ckrpass('fpassword',sform.cpassword)){
		flag=false;
	}

	if(!ckemailRegister(sform.mail)){
		flag=false;
	}

	if(!ckfamily(sform.familyname)){
		flag=false;
	}

	if(!ckfirst(sform.firstname)){
		flag=false;
	}

	if(!ckstreet(sform.street)){
		flag=false;
	}
	
/*	if(!ckcity(sform.city)){
		flag=false;
	}*/

	if(!ckPZ(sform.pz)){
		flag=false;
	}
	/*
	if(!ckprovince(sform.province)){
		flag=false;
	}
*/
	/*if(!cktelephone(sform.telephone)){
		flag=false;
	}*/

/*	if(!(ckcodeRegister(sform.code))){
		flag=false;
	}*/
// || !is_code
	if(username_exist || email_exist){
		flag=false;
	}

	return flag;
}

/** Profile **/
function checkProfilekAll(form){
	var flag=true;

	if(!ckoldpass(form.password,'npassword')){
		flag=false;
	}
	if(!cknewpass('password',form.npassword)){
		flag=false;
	}
	if(!ckrnewpass('npassword',form.cnpassword)){
		flag=false;
	}
	if(!ckstreet(form.street)){
		flag=false;
	}
	if(!ckcity(form.city)){
		flag=false;
	}

	if(!ckPZ(form.pz)){
		flag=false;
	}

	if(!ckprovince(form.province)){
		flag=false;
	}

	if(!cktelephone(form.telephone)){
		flag=false;
	}
	
	return flag;
}


/**
 * 用户检测,必须是3-16个英文字母或数字或下划线
 */
function ckusernameRegister(user){
	
	var value=trim(user.value);
	var show_msg=user.id+"_msg";
	var patrn=/^[\xC0-\xFFa-zA-Z0-9_]{4,16}$/;
	
	if(value.length==0)
	{
		 return error(show_msg,"you must enter you username");
	}else if(!patrn.exec(value))
	{
		 return error(show_msg,"username is not right");
	}else{
		waitLoad(show_msg); //显示正在加载图片
		//异步验证
		$.ajax({
			type:"GET",
			url:baseUrl+"/seller/checkuec",
			data:"type=username&value="+value,
			dataType:"json",
			complete:  function(){},
			success:	function(rs){
							if(rs.state){
								username_exist=true;
								return error(show_msg,"username is exist");	
							}else{
								username_exist=false;
								return success(show_msg);
							}
						}
			})
	}
	old_username=value;

	return true;
}

/**
 * EMAIL 检测
 */
function ckemailRegister(email){
	var value=trim(email.value);
	var show_msg=email.id+"_msg";
	if(value.length==0){	
		return error(show_msg,"you must enter you  E-mail");	
	}else if(value.search(/^[\xC0-\xFFA-Za-z0-9]+((-[\xC0-\xFFA-Za-z0-9]+)|(\.[\xC0-\xFFA-Za-z0-9]+))*\@[\xC0-\xFFA-Za-z0-9]+((\.|-)[\xC0-\xFFA-Za-z0-9]+)*\.[\xC0-\xFFA-Za-z0-9]+$/) == -1){
		return error(show_msg,"E-mail is not right");
	}else{
		waitLoad(show_msg);
		//异步验证
		$.ajax({
			type:"GET",
			url:baseUrl+"/seller/checkuec",
			data:"type=email&value="+value,
			dataType:"json",
			success:	function(rs){
								if(rs.state){
									email_exist=true;
									return error(show_msg,"E-mail is exist.");
								}else{
									email_exist=false;
									return success(show_msg);
								}
					}
		 	})
	}
	old_email=value;
	return true;
}

function precheckcoderegister(obj) {
	if(obj.value.length == 4) {
		ckcodeRegister(obj);
	}
}

function ckcodeRegister(code){
	
	var value=trim(code.value);
	var show_msg=code.id+"_msg";

	if(value.length!=4){
		return error(show_msg,"code is not right");		
	}else{
		waitLoad(show_msg);
		//异步验证
		$.ajax({
			type:"GET",
			url:baseUrl+"/seller/checkuec",
			data:"set=register&type=code&value="+value,
			dataType:"json",
			success:	function(rs){
							  if(rs.state){
								  is_code=true;
								  return success(show_msg);
							  
							  }else {
								  is_code=false;
								  return error(show_msg,"code is not right"); 
							  }
						}
			})
	}
	old_code=value;
	return true;
}
