﻿function gel(a){
	return document.getElementById?document.getElementById(a):null;
}
function gelstn(a){
	return document.getElementsByTagName?document.getElementsByTagName(a):new Array();
}
function geln(a){
	return document.getElementsByName?document.getElementsByName(a):new Array();
}
function $(a){
	document.write(a);
}
function setfocus(a){
	gel(a).className = "focus";
	gel(a).innerHTML = msg[a];
}
function setblur(a){
	gel(a).className = "blur";
}
function fIsNumber (sV,sR) {
	var sTmp;
	if(sV.length==0){ return (false);}
	for (var i=0; i < sV.length; i++){
		sTmp= sV.substring (i, i+1);
		if (sR.indexOf (sTmp, 0)==-1) {return (false);}
	}
	return (true);
}

// 提示信息
var msg = new Array();
msg['info1'] = "字母开头,由字母 数字 下划线 连字符号组成,长度5-16个字符。";
msg['info2'] = "";
msg['info3'] = "密码长度6-20位,字母请区分大小写,建议用字母数字组合。";
msg['info4'] = "请再输入一遍您上面输入的密码。";
msg['info5'] = "请选择密码提示问题,用于找回密码。";
msg['info6'] = "请填写上面问题的答案,长度不能超过18个字符!";
msg['info7'] = "请选择您企业的分类名称";
msg['info8'] = "请输入您单位的名称4-50个字符";
msg['info9'] = "请选择您单位所在的地区";
msg['info10'] = "请填写“区、县、街道、门牌”等详细地址,可选项。";
msg['info11'] = "请填写去您单位的乘车车线路图."
msg['info12'] = "经营范围介绍,长度不能超过200个字符,可选项。";
msg['info13'] = "企业介绍文字,长度不能超过500个字符可选项。";
msg['info14'] = "联系人姓名，小于10个字符。";
msg['info15'] = "区号,电话号组成的固定联系电话,可选项。";
msg['info16'] = "移动电话号可选项。";
msg['info17'] = "添写您的QQ号码用于联系,可选项。";
msg['info18'] = "添写您的常用的电子邮件用于联系,可选项。";
msg['info19'] = "添写您的单位的网站地址，可选项。";


// 通过状态
var reg_1 = 0;//用户名
var reg_2 = 0;//密码
var reg_3 = 0;//确认密码
var reg_4 = 1;//密码提示问题
var reg_5 = 0;//密码提示答案
var reg_6 = 0;//企业分类
var reg_7 = 0;//单位名称
var reg_8 = 0;//单位地区
var reg_9 = 0;//详细地址
var reg_10 = 1;//乘车线路
var reg_11 = 1;//经营范围
var reg_12 = 1;//企业简介
var reg_13 = 1;//联系人
var reg_14 = 1;//电话号
var reg_15 = 1;//移动电话
var reg_16 = 1;//QQ号
var reg_17 = 1;//邮箱
var reg_18 = 1;//网址

function checkdata(){
	var form = gel("from");
	check_user('info1');
	
	checkpass1('info3');
	checkpass2('info4');
	checkpass4('info5');
	checkpass5('info6');
if (from.reg_xiaofei.checked==true)
{
	checkpass6('info7');
	checkpass7('info8');
	checkpass8('info9');
	checkpass9('info10');
	checkpass10('info11');
	checkpass11('info12');
	checkpass12('info13');
	checkpass13('info14');
	checkpass14('info15');
	checkpass15('info16');
	checkpass16('info17');
	checkpass17('info18');
	checkpass18('info19');
}
	
	if(reg_1 == 0){
		gel("info1").className = 'fall';
		gel("user").focus();
		alert(gel("info1").innerHTML);
		return false;
	}else if(reg_2 == 0){
		gel("info3").className = 'fall';
		gel("pass").focus();
		alert(gel("info3").innerHTML);
		return false;
	}else if(reg_3 == 0){
		gel("info4").className = 'fall';
		gel("pass1").focus();
		alert(gel("info4").innerHTML);
		return false;
	}else if(reg_4 ==0){
		gel("info5").className = 'fall';
		return false;
	}else if(reg_5 == 0){
		gel("info6").className = 'fall';
		gel("daan").focus();
		alert(gel("info6").innerHTML);
		return false;
	}
if (from.reg_xiaofei.checked==true)
{
	if(reg_6 == 0){
		gel("info7").className = 'fall';
		return false;
	}else if(reg_7 == 0){
		gel("info8").className = 'fall';
		gel("dwmc").focus();
		alert(gel("info8").innerHTML);
		return false;
	}else if(reg_8 == 0){
		gel("info9").className = 'fall';
		alert(gel("info9").innerHTML);
		return false;	
	}else if(reg_9 == 0) {
		gel("info10").className = 'fall';
		gel("dwdz").focus();
		alert(gel("info10").innerHTML);
		return false;
	}else if(reg_10 == 0) {
		gel("info11").className = 'fall';
		gel("gjxl").focus();
		alert(gel("info11").innerHTML);
		return false;
	}else if(reg_11 == 0) {
		gel("info12").className = 'fall';
		gel("jyfw").focus();
		alert(gel("info12").innerHTML);
		return false;
	}else if(reg_12 == 0) {
		gel("info13").className = 'fall';
		gel("qyjs").focus();
		alert(gel("info13").innerHTML);
		return false;
	}else if(reg_13 == 0) {
		gel("info14").className = 'fall';
		gel("lxr").focus();
		alert(gel("info14").innerHTML);
		return false;
	}else if(reg_14 == 0) {
		gel("info15").className = 'fall';
		gel("dh").focus();
		alert(gel("info15").innerHTML);
		return false;
	}else if(reg_15 == 0) {
		gel("info16").className = 'fall';
		gel("yddh").focus();
		alert(gel("info16").innerHTML);
		return false;
	}else if(reg_16 == 0) {
		gel("info17").className = 'fall';
		gel("qq").focus();
		alert(gel("info17").innerHTML);
		return false;
	}else if(reg_17 == 0) {
		gel("info18").className = 'fall';
		gel("email").focus();
		alert(gel("info18").innerHTML);
		return false;
	}else if(reg_18 == 0) {
		gel("info19").className = 'fall';
		gel("weburl").focus();
		alert(gel("info19").innerHTML);
		return false;
	}else if (form.yddh.value=="" && form.dh.value=="" && form.qq.value=="" && form.email.value=="")
	{
		alertFocus(from.dh,"\用户注册出错,下面是产生错误的可能原因：\n\n·移动电话、固定电话、即时QQ或Email地址必须添写其中一项.");
		return false;
	}
	//else if (from.fwtk.checked==false){
		//alertFocus(from.fwtk,"\用户注册出错,下面是产生错误的可能原因：\n\n·必须接受服务条款才可以注册.");
		//return false;
	//}
	else {
		return true;
	}
}
else
{
	return true;
}
	
	
}

function check_user(x) {
	
	gel("info2").className = "blur noback";
	gel("info2").innerHTML = "";
	var form = gel("from");
	if(form.user.value == "") {
		message = "请输入用户名!";
		gel(x).innerHTML = message;
		gel(x).className = "fall";
		return false;
	}
	if(form.user.value.length < 5 || form.user.value.length > 20) {
		message = "用户名长度为5-20个字符,请重新输入用户名";
		gel(x).innerHTML = message;
		gel(x).className = "fall";
		return false;
	}
	if(fIsNumber(form.user.value.charAt(0), "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ") != 1){
		message = "用户名输入错误,请以字母开头";
		gel(x).innerHTML = message;
		gel(x).className = "fall";
		return false;
	}
	if(fIsNumber(form.user.value, "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_-") != 1){
		message = "用户名应该是数字、字母、下划线、连字符号,不允许出现汉字、空格、点等其他字符,请重新输入用户名!";
		gel(x).innerHTML = message;
		gel(x).className = "fall";
		return false;
	}

	message = "用户格式正确,请点击“检查用户名”检查用户是否可以注册!";
	gel(x).innerHTML = message;
	gel(x).className = "true";
	reg_1 = 1;
	//checkUsername("info2");
}
// 检测密码
function checkpass1(x) {
	var form = gel("from");
	var password1 = form.pass.value;
	var Condition1 = (password1.length < 6 || password1.length > 20);
	var Condition2 = (password1.indexOf("&") != -1 || password1.indexOf("%") != -1 || password1.indexOf("=") != -1 || password1.indexOf("+") != -1 || password1.indexOf("'") != -1);
	if(Condition1) {
		message = "密码长度为6-20位,请重新输入。谢谢!";
		gel(x).innerHTML = message;
		gel(x).className = "fall";
		return false;
	} else if(Condition2) {
		message = "密码中不允许含有&,%,=,+,'字符,请重新输入密码!";
		gel(x).innerHTML = message;
		gel(x).className = "fall";
		return false;
	} else {
		message = "密码格式正确,请继续!";
		gel(x).innerHTML = message;
		gel(x).className = "true";
		reg_2 = 1;
		return false;
	}
}

// 检测密码2
function checkpass2(x) {
	var form = gel("from");
	var password1 = form.pass.value;
	var password2 = form.pass1.value;
	var Condition3 = (password2 == "");
	var Condition4 = (password2 != password1);
	if(Condition3) {
		gel(x).innerHTML = "确认密码不能为空,请重新输入!";
		gel(x).className = 'fall';
		return false;
	} else if(Condition4) {
		gel(x).innerHTML = "两次输入密码不相同,请重新输入确认密码!";
		gel(x).className = 'fall';
		return false;
	} else {
		gel(x).innerHTML = "确认密码正确,请继续!";
		gel(x).className = 'true';
		reg_3 = 1;
		return false;
	}
}
//检测密码提示问题
function checkpass4(x){
	var form = gel("from");
	gel(x).innerHTML = "密码提示:"+ form.wenti.options[document.from.wenti.selectedIndex].text +"!"
	gel(x).className = 'true';
	reg_4 = 1;
	return false;
}
//检测密码提示答案
function checkpass5(x){
	var form = gel("from");
	var txtanswer = form.daan.value;
	var Condition10 = (txtanswer == "" || txtanswer.length > 18);
	var Condition11 = (txtanswer.indexOf("&") != -1 || txtanswer.indexOf("%") != -1);
	if(Condition10) {
		gel(x).innerHTML = "答案不能为空,并且长度不超过18个字符,请重新输入!";
		gel(x).className = 'fall';
		return false;
	} else if(Condition11) {
		gel(x).innerHTML = "密码提示答案中不允许含有'&'和'%'字符,请重新输入!";
		gel(x).className = 'fall';
		return false;
	} else {
		gel(x).innerHTML = "密码提示答案输入正确,请继续!";
		gel(x).className = 'true';
		reg_5 = 1;
		return false;
	}
}
//企业分类
function checkpass6(x){
	var form = gel("from");
	gel(x).innerHTML = "你选择的企业是:"+ form.fenlei.options[document.from.fenlei.selectedIndex].text +"!"
	gel(x).className = 'true';
	reg_6 = 1;
	return false;
}
//公司名称
function checkpass7(x){
	var form = gel("from");
	if (form.dwmc.value.length<4){
		gel(x).innerHTML = "单位名称要大于4个字符!";
		gel(x).className = 'fall';
		reg_7=0;
		return false;
	}
	gel(x).innerHTML = "正确输入公司名称.";
	gel(x).className = 'true';
	reg_7 = 1;
	return false;
}
//单位地区
function checkpass8(x){
	var form = gel("from");
	gel(x).innerHTML = "你选择的地区是:"+ form.diqu.options[document.from.diqu.selectedIndex].text +"!"
	gel(x).className = 'true';
	reg_8 = 1;
	return false;
}
//单位详细地址
function checkpass9(x){
	var form = gel("from");
	if (form.dwdz.value==""){
		gel(x).innerHTML = "可选项,未添写详细地址!!";
		gel(x).className = 'true';
		reg_9=1;
		return false;
	}
	gel(x).innerHTML = "正确添写了详细地址.";
	gel(x).className = 'true'
	reg_9 = 1;
	return false;
}
//乘车线路
function checkpass10(x){
	var form = gel("from");
	if (form.gjxl.value==""){
		gel(x).innerHTML = "可选项,未添写乘车线路!";
		gel(x).className = 'true';
		reg_10=1;
		return false;
	}
	gel(x).innerHTML = "正确添写了乘车线路.";
	gel(x).className = 'true'
	reg_10=1;
	return false;
}
//经营范围
function checkpass11(x){
	var form = gel("from");
	if (form.jyfw.value.length>200){
		gel(x).innerHTML = "经营范围不要大于200个字符!";
		gel(x).className = 'fall';
		reg_11=0;
		return false;
	}
	gel(x).innerHTML = "正确输入经营范围.";
	gel(x).className = 'true';
	reg_11 = 1;
	return false;
}

//企业介绍
function checkpass12(x){
	var form = gel("from");
	if (form.qyjs.value.length>500){
		gel(x).innerHTML = "企业介绍不要大于500个字符!";
		gel(x).className = 'fall';
		reg_12=0;
		return false;
	}
	gel(x).innerHTML = "正确输入企业介绍.";
	gel(x).className = 'true';
	reg_12 = 1;
	return false;
}
//联系人
function checkpass13(x){
	var form = gel("from");
	if (form.lxr.value.length<1){
		gel(x).innerHTML = "请正确输入联系人姓名";
		gel(x).className = 'fall';
		reg_13=0;
		return false;
	}
	gel(x).innerHTML = "正确输入联系人.";
	gel(x).className = 'true';
	reg_13 = 1;
	return false;
}

//电话号码
function checkpass14(x){
	var form = gel("from");
	if (form.dh.value==""  ){
		gel(x).innerHTML = "可选项,未添写电话号码!";
		gel(x).className = 'true';
		reg_14=1;
		return false;
	}
	if (fIsNumber(form.dh.value,"1234567890１２３４５６７８９０-")!=1 || form.dh.value.length<7 || form.dh.value.length>12)
	{
		gel(x).innerHTML = "请添写正确的电话号码!";
		gel(x).className = 'fall';
		reg_14=0;
		return false;
	}
	reg_14=1;
	gel(x).innerHTML = "正确添写了电话号码.";
	gel(x).className = 'true'
	return false;
}

//移动电话
function checkpass15(x){
	var form = gel("from");
	if (form.yddh.value==""  ){
		gel(x).innerHTML = "可选项,未添写移动电话!";
		gel(x).className = 'true';
		reg_15=1;
		return false;
	}
	if (fIsNumber(form.yddh.value,"1234567890１２３４５６７８９０")!=1 || form.yddh.value.length<7 || form.yddh.value.length>12)
	{
		gel(x).innerHTML = "请添写正确的移动电话!";
		gel(x).className = 'fall';
		reg_15=0;
		return false;
	}
	reg_15=1;
	gel(x).innerHTML = "正确添写了移动电话.";
	gel(x).className = 'true'
	return false;
}


//QQ号
function checkpass16(x){
	var form = gel("from");
	if (form.qq.value==""  ){
		gel(x).innerHTML = "可选项,未添写QQ号码!";
		gel(x).className = 'true';
		reg_16=1;
		return false;
	}
	if (fIsNumber(form.qq.value,"1234567890１２３４５６７８９０")!=1 || form.qq.value.length<5 || form.qq.value.length>12)
	{
		gel(x).innerHTML = "请添写正确的QQ号码!";
		gel(x).className = 'fall';
		reg_16=0;
		return false;
	}
	reg_16=1;
	gel(x).innerHTML = "正确添写了QQ号码.";
	gel(x).className = 'true'
	return false;
}
//邮箱地址
function checkpass17(x){
	var form = gel("from");
	if (form.email.value==""  ){
		gel(x).innerHTML = "可选项,未添写电子邮件地址!";
		gel(x).className = 'true';
		reg_17=1;
		return false;
	}
	if(!emailValidate(form.email.value)) {
		gel(x).innerHTML = "请填写正确的电子邮件地址";
		gel(x).className = 'fall';
		reg_17 = 0;
		return false;
	} else {
		gel(x).innerHTML = "电子邮件地址正确,请继续!";
		gel(x).className = 'true';
		reg_17 = 1;
		return false;
	}
}
//网址
function checkpass18(x){
	var form = gel("from");
	if (form.weburl.value==""  ){
		gel(x).innerHTML = "可选项,未添写WEB网址!";
		gel(x).className = 'true';
		reg_18=1;
		return false;
	}
	if ( form.weburl.value.length>100)
	{
		gel(x).innerHTML = "WEB网址不要大于100字符!";
		gel(x).className = 'fall';
		reg_18=0;
		return false;
	}
	reg_18=1;
	gel(x).innerHTML = "正确添写了WEB网址.";
	gel(x).className = 'true'
	return false;
}

//AJAX check
function checkUsername(x){
	var form = gel("from");
	var username = form.user.value;
	if( reg_1 = 0 || username == "" || username == null ) {
		gel(x).innerHTML = "请先填写用户名!";
		gel(x).className = "fall";
		gel("user").focus();
		return;
	}
	message = "正在检测中,请稍候...";
	gel(x).innerHTML = message;
	gel(x).className = "focus";

	window.setTimeout('doCheck("'+username+'")',500);
}
function doCheck(username) {
	var gNow = new Date();
	if (window.XMLHttpRequest) {
		req = new XMLHttpRequest();
		req.onreadystatechange = processChech;
		req.open("GET", "checkuser.asp?user="+username+"&x="+gNow.getSeconds(), true);
		req.send(null);
	} else if (window.ActiveXObject) {
		req = new ActiveXObject("Microsoft.XMLHTTP");
		if (req) {
			req.onreadystatechange = processChech;
			req.open("GET", "checkuser.asp?user="+username+"&x="+gNow.getSeconds(), true);
			req.send();
		}
	}
	else
	{
	reg_1=1;
	}
}
function processChech() {
	if (req.readyState == 4) {
		var content = gel("info2");
		if (req.status == 200) {
			content.innerHTML = req.responseText;
			if(req.responseText.indexOf("还没有被注册") != -1){
				content.className = "true";
				reg_1=1;
				gel("info1").innerHTML = "此用户可以注册!";
			}else{
				//alert(req.responseText);
				reg_1=0;
				content.className = "fall";
				gel("user").focus();
			}
		} else {
			reg_1=1;
			content.innnerHTML = "用户名检查服务暂时不能使用,不过您可以继续申请!";
			content.className = "true";
		}
	}
}
function emailValidate(emailStr) {

	var checkTLD=1;
	var knownDomsPat=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum|mobi)$/;
	var emailPat=/^(.+)@(.+)$/;
	var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";
	var validChars="\[^\\s" + specialChars + "\]";
	var quotedUser="(\"[^\"]*\")";
	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
	var atom=validChars + '+';
	var word="(" + atom + "|" + quotedUser + ")";
	var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");
	var matchArray=emailStr.match(emailPat);

	if (matchArray==null) {
		return false;
	}

	var user=matchArray[1];
	var domain=matchArray[2];

	for (i=0; i<user.length; i++) {
		if (user.charCodeAt(i)>127) {
			return false;
		}
	}

	for (i=0; i<domain.length; i++) {
		if (domain.charCodeAt(i)>127) {
			return false;
		}
	}

	if (user.match(userPat)==null) {
		return false;
	}


	var IPArray=domain.match(ipDomainPat);
	if (IPArray!=null) {
	// this is an IP address
		for (var i=1;i<=4;i++) {
			if (IPArray[i]>255) {
				return false;
			}
		}
		return true;
	}

	// Domain is symbolic name.  Check if it's valid.
	 
	var atomPat=new RegExp("^" + atom + "$");
	var domArr=domain.split(".");
	var len=domArr.length;
	for (i=0;i<len;i++) {
		if (domArr[i].search(atomPat)==-1) {
			return false;
		}
	}


	if (checkTLD && domArr[domArr.length-1].length!=2 && domArr[domArr.length-1].search(knownDomsPat)==-1) {
		return false;
	}

	if (len<2) {
		return false;
	}

	return true;
}

function show(c_Str){
       if(document.all(c_Str).style.display=='none'){
          document.all(c_Str).style.display='block'
       }else{
          document.all(c_Str).style.display='none'
       }
    }
    
function checktxt(obj,n)
{
if(obj.value.length>(n-10) && window.event.keyCode>40){alert("提示:请不要大于"+n+"个字符!");}
}