﻿// JScript 文件
var GPM= new GlobalProvincesModule;
var UN,PV,CT,DT,HPV,HCT,HDT,BD,PW,RP,EM,Keys,KT,UC,UA,HC,HA;

$(document).ready(function(){
	GPM.initProvince(document.getElementById('Province'));
	changeValidate();
});

function changeValidate(){
	var validateImg = "/getValidata?rnd=" + Math.random();
	if (document.getElementById("yanzhen")){
		document.getElementById("yanzhen").src= validateImg;
	}
}
function ProvinceChange(str){
    GPM.initCity1(document.getElementById(str+'City'), GPM.getSelValue(document.getElementById(str+'Province')));
    GPM.initCity2(document.getElementById(str+'District'), '', '');
}
function CityChange(str){
    GPM.initCity2(document.getElementById(str+'District'), GPM.getSelValue(document.getElementById(str+'Province')), GPM.getSelValue(document.getElementById(str+'City')));
}

function checkStr(type,str){
	var rule;
	switch(type){
		case "mail":
			rule=/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
			break;
		case "pwd":
			rule=/^(\w){3,12}$/;
			break;
		case "phone":
			rule=/^(^[0-9]{3,4}\-[0-9]{6,8}$)|(^\([0-9]{3,4}\)[0-9]{6,8}$)|(^0{0,1}13[0-9]{9}$)|(^0{0,1}15[0-9]{9}$)/;
			break;
		case "zipcode":
			rule=/^[0-9]{6}$/;
			break;
		case "website":
			rule=/^http:\/\/([a-z\d]+\.)+[a-z]+(:\d+)?(\/[\/=\?%\-&_~`@[\]\':+!]*[^<>\"\"]*)?$/;
			break;
		case "validate":
			rule=/^(\w){4}$/;
			break;
		case "userna":
			rule=/^(^[\u4e00-\u9fa5]{1}([\u4e00-\u9fa5]|[._]|[a-zA-Z0-9]){0,11})|(^[a-zA-Z0-9]{1}([a-zA-Z0-9]|[._]|[\u4e00-\u9fa5]){3,11})$/;
			break;
		case "realna":
			rule=/^[\u4e00-\u9fa5](\s*[\u4e00-\u9fa5])*$/;
			break;
		default:
			return false;
			break;
	}	
	if(!rule.test(str)){ 
		return false;
	}else{
		return true;
	}
}

function getbyid(id) {
	if (document.getElementById) {
		return document.getElementById(id);
	}else if (document.all) {
		return document.all[id];
	}else if (document.layers) {
		return document.layers[id];
	}else {
		return null;
	}
}
function isRepeat(x){
	var regs = new Ajax('checks', 'HTML');
	var str = "key=" + x;
	regs.post('checkrepeat.asp',str,function(s){
		if (s==1){
			return true;
		}else{
			return false;
		}							  
	}
	);
}

function isEmail(){
	//判断用户名是否是邮箱地址
	var obj,obj1,val,temp;
	val=getbyid("email").value;
	obj=getbyid("email_tip");
	obj1=getbyid("email_out");
	if (checkStr("mail",val)){
		var str = "key=" + val +"&key1=mail";
		$.post('checkrepeat.asp',str,function(s){
				if (s==1){
					obj.className="tips_true";
					obj1.className="it_s";
					obj.innerHTML='<img src="../images/pass.gif" alt="该Email验证通过，可以注册！"/>';
					statue=true;
				}else{
					obj.className="tips_err";
					obj1.className="it_e";
					obj.innerHTML="该Email已经存在,请换一个的Email！";
					statue=false;
				}					  
		}
		);
	}else{
		obj.className="tips_err";
		obj.innerHTML="Email格式有误，请重输！";
		obj1.className="it_e";
		return false;
	}
}

function isrealna(){
	var obj,val,obj1;
	val=getbyid("realna").value;
	obj=getbyid("realna_tip");
	obj1=getbyid("realna_out");
	if (checkStr("userna",val)){
		var str = "key=" + val +"&key1=usrna";
		$.post('checkrepeat.asp',str,function(s){
				if (s==1){
					obj.className="tips_true";
					obj1.className="it_s";
					obj.innerHTML='<img src="../images/pass.gif" alt="用户名验证通过！"/>';
					statue=true;
				}else{
					obj.className="tips_err";
					obj1.className="it_e";
					obj.innerHTML="该用户名已存在,请换一个试试！";
					statue=false;
				}					  
		}
		);
		
	}else{
		obj.className="tips_err";
		obj1.className="it_e";
		obj.innerHTML="用户名格式有误,限中英文,\".\",\"_\",请重输！";
		return false;
		
	}
}

function isPwd(){
	var obj,val,val2,obj1;
	val=getbyid("pwd").value;
	obj=getbyid("pwd_tip");
	obj1=getbyid("pwd_out");
	val2=getbyid("repwd").value;
	if (checkStr("pwd",val)){
		obj1.className="it_s";
		obj.className="tips_true";
		obj.innerHTML='<img src="../images/pass.gif" alt="验证通过！"/>';
		
		return true;
		
	}else{
		obj1.className="it_e";
		obj.className="tips_err";
		obj.innerHTML="密码格式错误，密码必须是3-12个字符";
		return false;
		
	}
}

function isRePwd(){
	var obj,val1,val2,obj1;
	val1=getbyid("pwd").value;
	val2=getbyid("repwd").value;
	obj=getbyid("repwd_tip");
	obj1=getbyid("repwd_out");
	if (val1==null || val1==''){
		return false;
	}else{
		if (val1!=val2){
			obj1.className="it_e";
			obj.className="tips_err";
			obj.innerHTML="出错，两次输入的密码不一致";
			return false;
		}else{
			obj1.className="it_s";
			obj.className="tips_true";
			obj.innerHTML='<img src="../images/pass.gif" alt="验证通过！"/>';
			return true;
		}
	}
}

function isPhone(){
	var obj,val,obj1;
	val=getbyid("phone").value;
	obj=getbyid("phone_tip");
	obj1=getbyid("phone_out");
	if (checkStr("phone",val)){
		obj.className="tips_true";
		obj1.className="it_s";
		obj.innerHTML='<img src="../images/pass.gif" alt="验证通过！"/>';
		return true;
	}else{
		obj.className="tips_err";
		obj1.className="it_e";
		obj.innerHTML="格式错误，范例：021-12345678或13912345678！";
		return false;
	}
}

function isValidate(){
	//判断验证码是否正确
	var obj,obj1,val,temp;
	val=getbyid("von").value;
	obj=getbyid("von_tip");
	obj1=getbyid("von_out");
	if (checkStr("validate",val)){
		var regs = new Ajax('checks', 'HTML');
		var str = "key=" + val;
		regs.post('checkValidate.asp',str,function(s){
				if (s==1){
					obj.className="tips_true";
					obj1.className="it_s";
					obj.innerHTML='验证码正确！';
					return true;
				}else{
					obj.className="tips_err";
					obj1.className="it_e";
					obj.innerHTML="验证码错误，请重输！";
					return false;
				}					  
		}
		);
	}else{
		obj.className="tips_err";
		obj.innerHTML="验证码错误，请重输！";
		obj1.className="it_e";
		return false;
	}
}
function isArea(){
	var province = getbyid("province").value;
	var city = getbyid("city").value;
	var obj = getbyid("area_tip")
	if (province==null || province=="") province="";
	if (city==null || city=="")city="0";
	if (province=="0" || city=="0"){
		obj.className="tips_err";
		obj.innerHTML='选择你的所在地址';
		return false;
	}else{
		obj.className="tips_true";
		obj.innerHTML='请选择你的所在地址';
		return true;
	}
} 
function checkAll(x){
	var state=true;
	//var obj=getbyid("show_info");
	var temp=getbyid("email_tip").className;
	if (temp!="tips_true"){
		state=false;
		isEmail();
	};
	if (!isrealna()) state=false;
	if (!isArea()) state=false;
	if (!isPwd()) state=false;
	if (!isRePwd()) state=false;
	if (!isPhone()) state=false;
	isValidate();
	if (state!=false){
		return true;
	}else{
		alert("请检查表单各项！")
		return false;
	}
}




