﻿var okReg = "okReg";
var normalReg	= "normalReg";
var errorReg = "errorReg";
var focusReg = "focusReg";
var warningReg = "warningReg";
var inputFocus = "inputFocus";
var inputError = "inputError";
var inputOk="inputOk";


var validatedInfo = "填写正确。";
var requireErrorInfo = "<span class=\"R\">此项为必填项。</span><br \/>";
var msgInfo = new Array();

msgInfo[0] = new Array(	'必须填写!4-20位，请使用英文(a-z、A-Z)、数字(0-9)。','<span class=\"R\">您的填写有误。<\/span>会员登录名只能由4-20个英文字母或数字组成(不支持中文、不能以数字开头)。','该用户名已经存在，请重新输入。');
msgInfo[1] = new Array(	'密码由6-20个英文字母(区分大小写)或数字组成，建议采用易记、难猜的英文数字组合。','<span class=\"R\">您设置的密码有误。<\/span>密码由6-20个英文字母(区分大小写)或数字组成');
msgInfo[2] = new Array(	'请再输入一遍您上面填写的密码。','<span class=\"R\">两次输入的密码不一致！<\/span>请再输入一遍您上面填写的密码。');
msgInfo[3] = new Array(	'请填写真实姓名','真实姓名不能为空');
msgInfo[4] = new Array(	'填写在工商局注册的公司/商号全称；个体经营者填写执照上的姓名，如：张三(个体经营)','公司名不能为空');
msgInfo[5] = new Array(	'请选择地区,并填写下面的地址','请填写正确的地址!');
msgInfo[6] = new Array(	'如“浙江宁波”正确格式：86 574 87163139-218 87165169','您输入的号码错误!');
msgInfo[7] = new Array(	'如“浙江宁波”正确格式：86 574 87163139-218 87165169','您输入的号码错误!');
msgInfo[8] = new Array(	'如“浙江宁波”正确格式：86 574 87163139','您输入的传真号码错误!');
msgInfo[9] = new Array(	'如“浙江宁波”正确格式：86 574 87163139','您输入的传真号码错误!');
msgInfo[10] = new Array('请填写常用信箱，验证未通过将不能正常使用本站功能！同一邮箱只能注册一次','您输入的邮箱地址错误!');


var loginname = new formEle(true,"loginname","div_memberId",msgInfo[0],"memberId_check");//登录名
var loginpass = new formEle(true,"loginpass","div_paswd1",msgInfo[1],"paswd1_check");//密码
var loginpassnext = new formEle(true,"loginpassnext","div_paswd2",msgInfo[2],"paswd2_check");//再次输入密码
var user_name = new formEle(true,"user_name","div_memberName",msgInfo[3],"memberName_check");//用户真实名
var user_company = new formEle(true,"user_company","div_usercompany",msgInfo[4],"usercompany_pass");//公司名
var USER_STREET_ADDRESS = new formEle(true,"USER_STREET_ADDRESS","div_useraddress",msgInfo[5],"useraddress_pass");//地址
//var USER_PHONE_CITY_NO = new formEle(true,"USER_PHONE_CITY_NO","div_tel",msgInfo[6],"tel_pass");//电话
var USER_PHONE_PHONE_NO = new formEle(true,"USER_PHONE_PHONE_NO","div_tel",msgInfo[7],"tel_pass");//电话
var user_fax_no = new formEle(true,"user_fax_no","div_fax",msgInfo[8],"fax_pass");//传真
var user_fax_dq = new formEle(true,"user_fax_dq","div_fax",msgInfo[9],"fax_pass");//传真
var user_mail = new formEle(true,"user_mail","div_usermail",msgInfo[10],"usermail_pass");


function getFocus(obj)
{
  var infobox=getInfobox(obj);
  
  if(getErrorMsg(obj,0)!='&nbsp;')
  {
    obj.className=inputFocus;
    infobox.className=focusReg;
    infobox.innerHTML=getErrorMsg(obj,0);
  }
  else
  {
    obj.className=inputFocus;
    infobox.className=normalReg;
    infobox.innerHTML=getErrorMsg(obj,0);
  }
}




////////////////这里开始都是辅助函数
function formEle(required,datatype,infobox,errormsg,combine,status){
  this.r = required;//是否验证
  this.d = datatype;//输入框名称
  this.i = infobox;//提示信息的DIV ID
  this.e = errormsg;//提示信息的数组
  this.c = combine;//输入框前面的勾勾
}

function getInfobox(obj)
{
 
  if(obj.name)
  {
    if(eval(obj.name).i && document.getElementById(eval(obj.name).i))
     return document.getElementById(eval(obj.name).i);
  }
  return;
}
function getErrorMsg(obj,errorCode)
{
  if(obj.name)
  {
    if(eval(obj.name).e[errorCode])
     return eval(obj.name).e[errorCode];
  }
  return;
} 

function getCombine(obj){
  if(obj.name){
    if(eval(obj.name).c && document.getElementById(eval(obj.name).c)) return document.getElementById(eval(obj.name).c);
  }
  return;
}
 

//////////////////单个验证开始 
function AjaxCheck(theform,obj,sub,loginname)
{
  //获取接受返回信息层
  var clew = "";
  var bol = true;
  var msg = getInfobox(obj);
  var rightMsg = getCombine(obj);
  var checkvalue = obj.value;
  var checktype = obj.name;
  //msg.innerHTML = "检测中，请稍等...";
  //脚本验证在这--开始
  //-----ajax项----
  if(checktype=='loginname')
  {//用户名验证
    if(checkvalue!='')
    {
      if(!checkByteLength(checkvalue,4,20)||!validateMember(checkvalue)||!CheckIsName())
      {
        bol=false;
        obj.className=inputError;
        msg.innerHTML = getErrorMsg(obj,1);
        msg.className=errorReg;
        rightMsg.className='block';
      }
      else
        {       
            CheckIsName();
        }
    }
    else
    {    
        bol=false;
        obj.className=inputError;
        msg.innerHTML = getErrorMsg(obj,0);
        msg.className=errorReg;
        rightMsg.className='block';
    }
  }
  
  else if(checktype=='loginpass'){//密码验证
    if(checkvalue!=''){
      if(!checkByteLength(checkvalue,6,20)||!validatePassword(checkvalue))
      {
        bol=false;
        obj.className=inputError;
        msg.innerHTML = getErrorMsg(obj,1);
        msg.className=errorReg;
        rightMsg.className='block';
      }
      else
      {
         
        theform.loginpassnext.value="";
        temp = getInfobox(theform.loginpassnext);
        temp2 = getCombine(theform.loginpassnext);
        temp.innerHTML = getErrorMsg(theform.loginpassnext,0);
        temp.className=normalReg;
        temp2.className='block';
        msg.innerHTML = validatedInfo;
        obj.className=inputOk;
        msg.className=okReg;
        rightMsg.className='none';
      }
    }else{
       
       bol=false;
       obj.className=inputError;
        msg.innerHTML = getErrorMsg(obj,0);
        msg.className=errorReg;
        rightMsg.className='block';
    }
  }
  else if(checktype=='loginpassnext'){//密码确认验证
    var loginpass=theform.loginpass.value;
    if(checkvalue!='')
    {
      if(loginpass!=checkvalue)
      {
        bol=false;
        obj.className=inputError;
        msg.innerHTML = getErrorMsg(obj,1);
        msg.className=errorReg;
        rightMsg.className='block';
      }
      else
      {
        msg.innerHTML = validatedInfo;
        obj.className=inputOk;
        msg.className=okReg;
        rightMsg.className='none';
      }
    }else
    {
        bol=false;
        obj.className=inputError;
        msg.innerHTML = getErrorMsg(obj,0);
        msg.className=errorReg;
        rightMsg.className='block';
    }
  }
  
 else if(checktype=='user_name')
    {//用户名称
    if(checkvalue!='')
     {
      if(false)
      {
        //用户名验证
      }
      else
      {
        msg.innerHTML = validatedInfo;
        obj.className=inputOk;
        msg.className=okReg;
        rightMsg.className='none';
      }
    }
    else
    {
       bol=false;
       obj.className=inputError;
       msg.innerHTML = getErrorMsg(obj,1);
       msg.className=errorReg;
       rightMsg.className='block';
    }
  }
  
   else if(checktype=='user_company')
    {//公司名
    if(checkvalue!='')
     {
      if(false)
      {
        //公司名
      }
      else
      {
        msg.innerHTML = validatedInfo;
        obj.className=inputOk;
        msg.className=okReg;
        rightMsg.className='none';
      }
    }
    else
    {
       bol=false;
       obj.className=inputError;
       msg.innerHTML = getErrorMsg(obj,1);
       msg.className=errorReg;
       rightMsg.className='block';
    }
  }
  
    else if(checktype=='USER_STREET_ADDRESS')
    {//地区
    if(checkvalue!='')
     {
      if(false)
      {
        //地区
      }
      else
      {
        msg.innerHTML = validatedInfo;
        obj.className=inputOk;
        msg.className=okReg;
        rightMsg.className='none';
      }
    }
    else
    {
       bol=false;
       obj.className=inputError;
       msg.innerHTML = getErrorMsg(obj,1);
       msg.className=errorReg;
       rightMsg.className='block';
    }
  }
  

  
  else if(checktype=='user_mail')
  {//email验证
    if(checkvalue!='')
    {
      var patrn = /^\s*([\w-]+(\.\w+)*@([\w-]+\.)+\w{2,3})\s*$/;
      if (!patrn.exec(checkvalue)) 
      {
        bol = false;
        obj.className=inputError;
        msg.innerHTML = getErrorMsg(obj,1);
        msg.className=errorReg;
        rightMsg.className='block';
      }
      else
        {
          
         // msg.innerHTML = validatedInfo;
         // obj.className=inputOk;
         // msg.className=okReg;
          //rightMsg.className='none';
          CheckIsmailJS();
        }
    }
    else
    {
       // bol=false;
        //obj.className=inputError;
       // msg.innerHTML = getErrorMsg(obj,0);
       // msg.className=errorReg;
       // rightMsg.className='block';
    }
     
  }
  
  else if(checktype=='USER_PHONE_PHONE_NO'){//固定电话
    if(checkvalue!=''){
       checkvalue=tot(checkvalue);
       document.getElementById("USER_PHONE_PHONE_NO").value=checkvalue; 
      if(/[^0-9\-\/]/g.test(checkvalue)){
        //固定电话验证
        bol=false;
        obj.className=inputError;
        msg.innerHTML = getErrorMsg(obj,1);
        msg.className=errorReg;
        rightMsg.className='block';
      }else{
         if(checkvalue.length>6 && checkvalue.length<20)
        {
        msg.innerHTML = validatedInfo;
        obj.className=inputOk;
        msg.className=okReg;
        rightMsg.className='none';
        }
        else
        {
           bol=false;
           obj.className=inputError;
          msg.innerHTML = getErrorMsg(obj,1);
          msg.className=errorReg;
          rightMsg.className='block';
        }
      }
    }else{
       bol=false;
       obj.className=inputError;
       msg.innerHTML = getErrorMsg(obj,0);
       msg.className=errorReg;
       rightMsg.className='block';
    }
  }
  
  
  
  
  else if(checktype=='user_fax_no'){//传真
    if(checkvalue!=''){
      checkvalue=tot(checkvalue);
       document.getElementById("user_fax_no").value=checkvalue; 
      if(/[^0-9\-\/]/g.test(checkvalue))
      {
       
        bol=false;
        obj.className=inputError;
        msg.innerHTML = getErrorMsg(obj,1);
        msg.className=errorReg;
        rightMsg.className='block';
      }
      else
      { 
        if(checkvalue.length>=6 && checkvalue.length<10)
        {
        msg.innerHTML = validatedInfo;
        obj.className=inputOk;
        msg.className=okReg;
        rightMsg.className='none';
        }
        else
        {
          bol=false;
          obj.className=inputError;
          msg.innerHTML = getErrorMsg(obj,1);
          msg.className=errorReg;
          rightMsg.className='block';
        }
      }
    }
    
    else
    {
       msg.innerHTML = getErrorMsg(obj,0);
       msg.className=normalReg;
       rightMsg.className='block';
    }
  }
  
  
  else if(checktype=='user_fax_dq'){//传真
    
    if(checkvalue!='')
     {
      checkvalue=tot(checkvalue);
      document.getElementById("user_fax_dq").value=checkvalue;
      if(/[^0-9\-\/]/g.test(checkvalue))
      {
         
        bol=false;
        obj.className=inputError;
        msg.innerHTML = getErrorMsg(obj,1);
        msg.className=errorReg;
        rightMsg.className='block';
      }
      else
      { 
        if(checkvalue.length>=2 && checkvalue.length<5)
        {
        msg.innerHTML = validatedInfo;
        obj.className=inputOk;
        msg.className=okReg;
        rightMsg.className='none';
        }
        else
        {
          bol=false;
          obj.className=inputError;
          msg.innerHTML = getErrorMsg(obj,1);
          msg.className=errorReg;
          rightMsg.className='block';
        }
      }
    }
    
    else
    {
       msg.innerHTML = getErrorMsg(obj,1);  //表示没有添
       msg.className=normalReg;
       rightMsg.className='block';
    }
  }
  
  
   if (bol&&sub&&checkvalue!='')
   {
    　//获取表单对象和用户信息值
    　//接收表单的URL地址
    　 
    　var url = "/common/checkUser.aspx?type="+checktype;
    　//需要POST的值，把每个变量都通过&来联接
    　var postStr = "value=" + checkvalue + "&loginname=" + loginname;
    　//实例化Ajax
    　var ajax = InitAjax();  　
    　//通过Post方式打开连接
    　ajax.open("POST", url, true);
    　//定义传输的文件HTTP头信息
    　ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    　//发送POST数据
    　ajax.send(postStr);
    　//获取执行状态
    　ajax.onreadystatechange = function()
    　{
    　//如果执行状态成功，那么就把返回信息写到指定的层里
      if (ajax.readyState != 4)
      {
        msg.innerHTML = "检测中，请稍等...";
        if(checktype=='loginname')
        {
          theform.c_memberId.value='2';
        }else if(checktype=='email')
        {
          theform.c_email.value='2';
        }
        
      }
      
      
      else if (ajax.readyState == 4 && ajax.status == 200)
       {
        var bool = ajax.responseText;
        if (bool=='0') 
        {
          if(checktype=='loginname')
          {
            theform.c_memberId.value='0';
          }
          else if(checktype=='email')
          {
          theform.c_email.value='0';
          }
           
          msg.innerHTML = validatedInfo;
          obj.className=inputOk;
          msg.className=okReg;
          rightMsg.className='none';
        }
        
        else
        {
          if(checktype=='loginname')
          {
            theform.c_memberId.value='1';
          }
          else if(checktype=='email')
          {
          theform.c_email.value='1';
          }
          
          obj.className=inputError;
           msg.innerHTML = getErrorMsg(obj,2);
           msg.className=errorReg;
           rightMsg.className='block';
        } 
        
      }
    }
  }///// if (bol&&sub&&checkvalue!='')结束
}

function CheckIsName()
{
   var chna=false;
   var name=document.getElementById("loginname");
   var isName=_3cMarket.mymarket.addmember.IsUserName(name.value).value;
   if(isName)
   {
      document.getElementById("div_memberId").innerHTML="恭喜，该用户名可以注册!";
      chna=true;
   }
   else
   {
     document.getElementById("div_memberId").innerHTML="对不起，该用户名已经被注册!";
     chna=false;
   }
   return chna;
}

function CheckIsmailJS()
{
   var name=document.getElementById("user_mail");
   var isName=_3cMarket.mymarket.addmember.IsmailJS(name.value).value;
   document.getElementById("div_usermail").innerHTML=isName;

}

function CheckIsmailJS222()
{
   var ismail=false;
   var name=document.getElementById("user_mail");
   var isName=_3cMarket.mymarket.addmember.IsmailJS(name.value).value;
   if(isName)
   {
      document.getElementById("div_usermail").innerHTML="恭喜，该邮箱可以使用！";
      ismail=true;
   }
   else
   {
     document.getElementById("div_usermail").innerHTML="对不起，该邮箱已有人使用，请换一个邮箱！";
     ismail=false;
   }
   return ismail;
}

/////////////////////////////单个验证结束

//////// submit开始
function checkPost1(theform)
{
  //获取接受返回信息层
  var clew = "";
  var bol = true;
  var msg = null;
  var rightMsg = null;
  var checkvalue = null;
  var checktype = null;
  var obj=null;
  
  
  ///------------------- 
  obj=document.getElementById("loginname");
  msg = getInfobox(obj);
  rightMsg = getCombine(obj);
  checkvalue = obj.value;
  
  checktype = obj.name;
    if(checkvalue!='')
    {
      if(!checkByteLength(checkvalue,4,20)||!validateMember(checkvalue)||!CheckIsName())
      {
        bol=false;
        obj.className=inputError;
        msg.innerHTML = getErrorMsg(obj,1);
        msg.className=errorReg;
        rightMsg.className='block';
      }
      else
        {       
		  
            //////////这里还要处理  
        }
    }
    else
    {  
        bol=false;
        obj.className=inputError;
        msg.innerHTML = getErrorMsg(obj,0);
        msg.className=errorReg;
        rightMsg.className='block';
    }
    
    
    ////--------------------------------------------------
    obj=document.getElementById("loginpass");
    msg = getInfobox(obj);
    rightMsg = getCombine(obj);
    checkvalue = obj.value;
    checktype = obj.name;
    if(checkvalue!=''){
      if(!checkByteLength(checkvalue,6,20)||!validatePassword(checkvalue))
      {
        bol=false;
        obj.className=inputError;
        msg.innerHTML = getErrorMsg(obj,1);
        msg.className=errorReg;
        rightMsg.className='block';
      }
      else
      {
      }
    }else{
       bol=false;
       obj.className=inputError;
        msg.innerHTML = getErrorMsg(obj,0);
        msg.className=errorReg;
        rightMsg.className='block';
    }
   
   ////--------------------------------------------------
    obj=document.getElementById("loginpassnext");
    msg = getInfobox(obj);
    rightMsg = getCombine(obj);
    checkvalue = obj.value;
    checktype = obj.name;
    
    //var loginpass=theform.loginpass.value;
    var loginpass=document.getElementById("loginpass").value;
    if(checkvalue!='')
    {
      if(loginpass!=checkvalue)
      {
        bol=false;
        obj.className=inputError;
        msg.innerHTML = getErrorMsg(obj,1);
        msg.className=errorReg;
        rightMsg.className='block';
      }
      else
      {
        msg.innerHTML = validatedInfo;
        obj.className=inputOk;
        msg.className=okReg;
        rightMsg.className='none';
      }
    }else
    {
   
        bol=false;
        obj.className=inputError;
        msg.innerHTML = getErrorMsg(obj,0);
        msg.className=errorReg;
        rightMsg.className='block';
    }
    
  
    ////--------------------------------------------------
    obj=document.getElementById("user_mail");
    msg = getInfobox(obj);
    rightMsg = getCombine(obj);
    checkvalue = obj.value;
    checktype = obj.name;
  
    if(checkvalue!='')
    {
      var patrn = /^\s*([\w-]+(\.\w+)*@([\w-]+\.)+\w{2,3})\s*$/;
      if (!patrn.exec(checkvalue)) 
	  {
        bol = false;
        obj.className=inputError;
        msg.innerHTML = getErrorMsg(obj,1);
        msg.className=errorReg;
        rightMsg.className='block';
      }
      else
        {
          //if(!CheckIsmailJS())
          //{
           // bol=false;
          //}
          //CheckIsmailJS();
        }
    }
    else
    {
       // bol = false;
       // obj.className=inputError;
       // msg.innerHTML = getErrorMsg(obj,0);
       // msg.className=errorReg;
       // rightMsg.className='block';
    }

  return bol;
  
}
///////submit结束

//////////判断函数
///////////区选择判断
	function checkNum(checkBoxName,divName,box)
         {
             var el = document.getElementsByTagName('input');
             var len = el.length;
             var  checkdNum=0;
             for(var i=0; i<len; i++)
             {
                if((el[i].type=="checkbox") && (el[i].name==checkBoxName)  && el[i].checked )
                      {
                            checkdNum= parseInt(checkdNum)+1;
                     }
             }
              if(checkdNum>2)
              {
                  alert("最多可选2个区"); 
                  box.checked=false;
              }
              if(box.checked)
              {
                  
                 document.getElementById(divName).className="xuan";
              }
              else
              {
                 document.getElementById(divName).className="xuan2";
              }
  
         }
//必需以字母开头
function validateMember(str){
var patn = /^([a-zA-Z])+(([a-zA-Z0-9]{1,20}){0,20})$/;
if(!patn.test(str)){
return false;
}else{
return true;
}
}

//密码验证
function validatePassword(str){
  var patn1 = /^[a-zA-Z0-9_]+$/;
  if(!patn1.test(str) ){
   return false;
  }else{
   return true;
  }
}

function validateEmail(obj){
  var str = obj.value;
  if(!checkByteLength(str,1,50))
    return false;
  var patn = /^\s*([\w-]+(\.\w+)*@([\w-]+\.)+\w{2,3})\s*$/;
  if(patn.test(str)){
    return true;
  }else{
    return false; //incorrect format
  }
}

function validateHttp(str){
  if(str.length == 0 || str=="http://"){
    return true;
  }
  var patn = /^([a-zA-Z0-9_-])+\.([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,4}){1,2})$/;
  if(patn.test(str)) return true;
  return false;
}

function validateNumber(obj,len){
  var str = obj.value;
  var patn = /^[0-9]{len}$/;
  if(patn.test(str)) return 0;
  return 1;
}

function checkByteLength(str,minlen,maxlen) {
  if (str == null)
    return false;
  var l = str.length;
  var blen = 0;
  for(i=0; i<l; i++) {
    if ((str.charCodeAt(i) & 0xff00) != 0) {
      blen ++;
    }
    blen ++;
  }
  if (blen > maxlen || blen < minlen) {
    return false;
  }
  return true;
}

function tot(mobnumber){
  while(mobnumber.indexOf("０")!=-1){
    mobnumber = mobnumber.replace("０","0");
  }
  while(mobnumber.indexOf("１")!=-1){
    mobnumber = mobnumber.replace("１","1");
  }
  while(mobnumber.indexOf("２")!=-1){
    mobnumber = mobnumber.replace("２","2");
  }
  while(mobnumber.indexOf("３")!=-1){
    mobnumber = mobnumber.replace("３","3");
  }
  while(mobnumber.indexOf("４")!=-1){
    mobnumber = mobnumber.replace("４","4");
  }
  while(mobnumber.indexOf("５")!=-1){
    mobnumber = mobnumber.replace("５","5");
  }
  while(mobnumber.indexOf("６")!=-1){
    mobnumber = mobnumber.replace("６","6");
  }
  while(mobnumber.indexOf("７")!=-1){
    mobnumber = mobnumber.replace("７","7");
  }
  while(mobnumber.indexOf("８")!=-1){
    mobnumber = mobnumber.replace("８","8");
  }
  while(mobnumber.indexOf("９")!=-1){
    mobnumber = mobnumber.replace("９","9");
  }
  return mobnumber;
}

function trim1(inputString) {
  if (typeof inputString != "string") { return inputString; }
  var retValue = inputString;
  var ch = retValue.substring(0, 1);
  while (ch == " ") { // Check for spaces at the beginning of the string
  retValue = retValue.substring(1, retValue.length);
  ch = retValue.substring(0, 1);
}
ch = retValue.substring(retValue.length-1, retValue.length);
while (ch == " ") { // Check for spaces at the end of the string
retValue = retValue.substring(0, retValue.length-1);
ch = retValue.substring(retValue.length-1, retValue.length);
}
return retValue; // Return the trimmed string back to the user
} 
