function InitAjax()
{
  var ajax=null;
  if (window.XMLHttpRequest)
  {
      //mozilla
      ajax=new XMLHttpRequest();
      //有些版本的Mozilla浏览器处理服务器返回的未包含XML mime-type头部信息的内容时会出错。因此，要确保返回的内容包含text/xml信息
      if (ajax.overrideMimeType)
      {
          ajax.overrideMimeType="text/xml";
      }
  }
  else if (window.ActiveXObject)
  {
      //IE
      var MSXML = ['MSXML2.XMLHTTP.5.0', 'Microsoft.XMLHTTP', 'MSXML2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP'];
      for(var i = 0; i < MSXML.length; i++)
      {
          try
          {
              ajax = new ActiveXObject(MSXML[i]);
              break;
          }
          catch(e)
          {
          }
      }
  }
  return ajax;
}
//判断是不是合法的Email的函数
function killErrors() {return true;}
window.onerror = killErrors;
function $(element){return document.getElementById(element);}
//------------------------------------------

//必需以字母开头
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(str){
  if(!checkByteLength(str,1,80))
    return false;
  var patn = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/;
  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(str,len){
  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
} // Ends the "trim" function
function IsEmail(argValue)
{
	var emailStr=argValue.toLowerCase();
	var checkTLD=1;
	var knownDomsPat=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum)$/;
	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 emailPat=/^(.+)@(.+)$/;
	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)
	{
		for (var i=1;i<=4;i++)
		{
			if (IPArray[i]>255)
			{
				return false;
			}
		}
		return true;
	} 
	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 IsEName(argValue)
{
	var flag=false;
	var compStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz- 1234567890.,'()@&\\";
	var length=argValue.length;
	for (var iIndex=0;iIndex<length;iIndex++)
		{
			var temp=compStr.indexOf(argValue.charAt(iIndex));
			if(temp==-1) 
				{
					flag=false;
					break;							
				}
			else
				{
					flag=true;
				}
		}
	return flag;
}
//判断是不是合法的Fax的函数
function IsPhoneNum(t) {
	var myReg,regarray,i,count;

	//myReg = /(\(\+?\d{2,3}\))(\d{2,5})\-(\d{6,})(\-\d+)?/;
	myReg = /(\d{2,5})\-(\d{6,})(\-\d+)?/;
	return myReg.test(t);
}
function isNumber(value)
{
	var myReg=/\d+/;
	return myReg.test(value);
}
function Trim(info)
{
	return info.replace(/(^\s*)|(\s*$)/g, "");
}

function writeCookie(name, value, hours)
{
  var expire = "";
  if(hours != null)
  {
    expire = new Date((new Date()).getTime() + hours * 3600000);
    expire = "; expires=" + expire.toGMTString();
  }
  document.cookie = name + "=" + escape(value) + expire;
}
//保存最后一次访问的页面地址----
writeCookie('lastactionpage',window.location,0.5);
function readCookie(name)
{
  var cookieValue = "";
  var search = name + "=";
  if(document.cookie.length > 0)
  { 
    offset = document.cookie.indexOf(search);
    if (offset != -1)
    { 
      offset += search.length;
      end = document.cookie.indexOf(";", offset);
      if (end == -1) end = document.cookie.length;
      cookieValue = unescape(document.cookie.substring(offset, end))
    }
  }
  return cookieValue;
}
function whenSubmit(status){
	var inputs = document.getElementsByTagName("input")
	for(var i=0;i<inputs.length;i++)
	{
		if(inputs[i].type=="button" || inputs[i].type=="submit")
		inputs[i].disabled=status;
	}
}
function showSelectBoxes(){
	var selects = document.getElementsByTagName("select");
	for (i = 0; i != selects.length; i++) {
		selects[i].style.visibility = "visible";
	}
}

// ---------------------------------------------------

function hideSelectBoxes(){
	var selects = document.getElementsByTagName("select");
	for (i = 0; i != selects.length; i++) {
		selects[i].style.visibility = "hidden";
	}
}

// ---------------------------------------------------

function showFlash(){
	var flashObjects = document.getElementsByTagName("object");
	for (i = 0; i < flashObjects.length; i++) {
		flashObjects[i].style.visibility = "visible";
	}

	var flashEmbeds = document.getElementsByTagName("embed");
	for (i = 0; i < flashEmbeds.length; i++) {
		flashEmbeds[i].style.visibility = "visible";
	}
}

// ---------------------------------------------------

function hideFlash(){
	var flashObjects = document.getElementsByTagName("object");
	for (i = 0; i < flashObjects.length; i++) {
		flashObjects[i].style.visibility = "hidden";
	}

	var flashEmbeds = document.getElementsByTagName("embed");
	for (i = 0; i < flashEmbeds.length; i++) {
		flashEmbeds[i].style.visibility = "hidden";
	}

}

function hideOrShowLoading(status){
	function $(element){return document.getElementById(element);}
	if(status==true){hideFlash();hideSelectBoxes();$('f_loading_message').style.display='';}
	if(status==false){$('f_loading_message').style.display='none';showFlash();showSelectBoxes();}
}

function strip_tags(str) {
   return str.replace(/<\/?[^>]+>/gi, "");
}
function getPageScroll(){
	var xScroll, yScroll;
	if (self.pageYOffset) {
		yScroll = self.pageYOffset;
		xScroll = self.pageXOffset;
	} else if (document.documentElement && document.documentElement.scrollTop){	 // Explorer 6 Strict
		yScroll = document.documentElement.scrollTop;
		xScroll = document.documentElement.scrollLeft;
	} else if (document.body) {// all other Explorers
		yScroll = document.body.scrollTop;
		xScroll = document.body.scrollLeft;	
	}
	arrayPageScroll = new Array(xScroll,yScroll) 
	return arrayPageScroll;
}

// -----------------------------------------------------------------------------------

function getPageSize(){
	var xScroll, yScroll;
	if (window.innerHeight && window.scrollMaxY) {	
		xScroll = window.innerWidth + window.scrollMaxX;
		yScroll = window.innerHeight + window.scrollMaxY;
	} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
		xScroll = document.body.scrollWidth;
		yScroll = document.body.scrollHeight;
	} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
		xScroll = document.body.offsetWidth;
		yScroll = document.body.offsetHeight;
	}
	var windowWidth, windowHeight;
	if (self.innerHeight) {	// all except Explorer
		if(document.documentElement.clientWidth){
			windowWidth = document.documentElement.clientWidth; 
		} else {
			windowWidth = self.innerWidth;
		}
		windowHeight = self.innerHeight;
	} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
		windowWidth = document.documentElement.clientWidth;
		windowHeight = document.documentElement.clientHeight;
	} else if (document.body) { // other Explorers
		windowWidth = document.body.clientWidth;
		windowHeight = document.body.clientHeight;
	}	
	if(yScroll < windowHeight){
		pageHeight = windowHeight;
	} else { 
		pageHeight = yScroll;
	}
	if(xScroll < windowWidth){	
		pageWidth = xScroll;		
	} else {
		pageWidth = windowWidth;
	}
	arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight) 
	return arrayPageSize;
}

function openfloatpanel(width,height)
{
	//if(width==undefined){width=200+'px';}
	//if(height==undefined){height=100+'px';}
	hideSelectBoxes();hideFlash();
	var overlay=$('overlay');
	var lightbox=$('lightbox');

	var arrayPageSize = getPageSize();
	var arrayPageScroll = getPageScroll();
	var lightboxTop = arrayPageScroll[1] + (arrayPageSize[3] / 2);
	var lightboxLeft = arrayPageScroll[0];
	overlay.style.display='';
	lightbox.style.display='';
	overlay.style.width=arrayPageSize[0]+'px';
	overlay.style.height=arrayPageSize[1]+'px';
	lightbox.style.top=lightboxTop+'px';
	lightbox.style.left=lightboxLeft+'px';
	//overlay.onclick=function(){hidefloatpanel();}
	$('innerContainer').style.width=width;
	$('innerContainer').style.height=height;
}

function hidefloatpanel(){
	$('lightbox').style.display='none';
	$('overlay').style.display='none';showSelectBoxes();showFlash();
}

function checklogin(action)
{
if(action==undefined){action='validatecuser';}
var username=Trim(strip_tags($('username').value));	
var userpwd=Trim(strip_tags($('userpwd').value));
if(username.length<3){alert('请输入您注册时填写的登录账户!');$('username').value='';$('username').focus();return false;}
if(userpwd==''){alert('请输入登录密码!');$('userpwd').value='';$('userpwd').focus();return false;}
var params='username='+username+'&userpwd='+userpwd+'&act='+action;

var myAjax = new Ajax.Request('/query/member',{method:'post',parameters:params,onLoading:function loading(){$('btnlogin').disabled=true;$('btnlogin').value='请稍候';},onComplete:loginResult});
}
function loginResult(req)
{
$('btnlogin').disabled=false;$('btnlogin').value='登录';var strXml=req.responseText;var oXmlDom=zXmlDom.createDocument();oXmlDom.loadXML(strXml);
	if(oXmlDom.parseError.errorCode!=0){
		$('userpwd').value='';alert("验证账户的时候发生了错误——\n" + oXmlDom.parseError.reason);
	}else{
		var root=oXmlDom.documentElement;
		var code=parseInt(root.getElementsByTagName("code")[0].text);
		var message=root.getElementsByTagName("message")[0].text;
		alert(message);
		var returnurl="";
		if(code==1){
			try{
				returnurl=document.getElementById("returnurl").value;
			}catch(err){}
			if(returnurl==""){returnurl=root.getElementsByTagName("returnurl")[0].text;}
			if(returnurl!=''){
				location.href=returnurl;
			}else{
				returnurl=window.location;
				location.href=returnurl;
			}
		}else{
			$('userpwd').value='';
		}
	}	
}
function createuser()
{
var username=Trim(strip_tags($('username').value));	
var userpwd=Trim(strip_tags($('userpwd').value));	
var repwd=Trim(strip_tags($('repwd').value));	
var realname=Trim(strip_tags($('realname').value));
var email=Trim(strip_tags($('email').value));	
var jobTitle=Trim(strip_tags($('jobTitle').value));
var officephone=Trim(strip_tags($('officephone').value));
var fax=Trim(strip_tags($('fax').value));
var mobile=Trim(strip_tags($('mobile').value));
var companyname=Trim(strip_tags($('companyname').value));	
var regCode=Trim(strip_tags($('regCode').value));
var selmemberType=Trim(strip_tags($('selmemberType').value));


if(!validateMember(username)){alert('会员登录名只能由4-20个英文字母或数字组成(不支持中文、不能以数字开头)。');$('username').focus();return false;}
if(userpwd.length<6 || !validatePassword(userpwd)){alert('密码必须由6-20个英文字母(区分大小写)或数字组成!');$('userpwd').focus();return false;}
if(userpwd!=repwd){alert('前后两次输入的密码不一致!');$('repwd').value='';$('repwd').focus();return false;}
if(realname.length<2){alert('联系人只能为汉字或字母,至少两个字符!');$('realname').focus();return false;}
if(!validateEmail(email)){alert('电子邮件格式不正确，请输入正确的电子邮件地址!');$('email').focus();return false;}
if(!IsPhoneNum(officephone)){alert('电话号码只能使用数字或"/","-",格式类似0571-28868988!');$('officephone').focus();return false;}
if(companyname.length<4){alert('请输入贵公司名称,国内注册企业请用中文完整填写在工商局注册的全称,至少四个字符!');$('companyname').focus();return false;}
if(regCode.length!=4){alert('请输入四位数的验证码!');$('regCode').focus();return false;}
var params='username='+username+'&userpwd='+userpwd+'&realname='+escape(escape(realname))+'&email='+email+'&jobTitle='+escape(escape(jobTitle))+'&officephone='+officephone+'&fax='+fax+'&mobile='+mobile+'&companyname='+escape(escape(companyname))+'&regCode='+regCode+'&selmemberType='+selmemberType;
openfloatpanel(200,50);
    　var url = "/query/member?act=addqixuan";
    　//实例化Ajax
    　var ajax = InitAjax();  　
    　//通过Post方式打开连接
    　ajax.open("POST", url, true);
    　//定义传输的文件HTTP头信息
    　ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    　//发送POST数据
    　ajax.send(params);
    　//获取执行状态
    　ajax.onreadystatechange = function(){
		  if (ajax.readyState != 4){
			//msg.innerHTML = "loading ...";
			$('regSubButton').disabled=true;
		  }else if (ajax.readyState == 4 && ajax.status == 200) {
				hidefloatpanel();
				$('regSubButton').disabled=false;$('regSubButton').value='   同意服务条款，提交注册信息   ';
				var strXml=ajax.responseText;/*alert(strXml);*/
				var oXmlDom=zXmlDom.createDocument();
				oXmlDom.loadXML(strXml);
				if(oXmlDom.parseError.errorCode!=0){
					alert("注册新账户的时候发生了错误——\n" + oXmlDom.parseError.reason);
				}else{
					var root=oXmlDom.documentElement;
					var code=parseInt(root.getElementsByTagName("code")[0].text);
					var message=root.getElementsByTagName("message")[0].text;
					if(code==1){
						$('statue1').style.display='none';$('statue2').style.display='';
						alert(message);
						var url=root.getElementsByTagName("returnurl")[0].text;
						if(url!=''){
							location.href='/publicuser/modify_account.jsp';
						}else{
							location.href='/';
						}
					}else{
						alert(message);$('codeimg').src='/common/code.jsp?'+Math.random();
					}
				}	
		  }
      }
}
var substatus=false;
function reset_pwd(act)
{
if(substatus){alert('正在等待上一次操作完成 ...');return;}
var oldpwd=Trim($('oldpwd').value);
var userpwd=Trim($('userpwd').value);
var reuserpwd=Trim($('reuserpwd').value);
if(oldpwd.length<1){alert('请输入您的原始登录密码!');$('oldpwd').focus();return;}
if(userpwd.length<6 || !validatePassword(userpwd)){alert('密码必须由6-20个英文字母(区分大小写)或数字组成!');$('userpwd').focus();return;}
if(userpwd!=reuserpwd){alert('您前后两次输入的新密码不一致!');$('reuserpwd').focus();return;}
var params='oldpwd='+oldpwd+'&userpwd='+userpwd+'&reuserpwd='+reuserpwd+'&act='+act;
substatus=true;
var myAjax=new Ajax.Request('/query/member',
							  {method:'post',parameters:params,
							  onLoading:function loading(){
								  $('SubButton').value='请稍候 ...';$('SubButton').disabled=true;
								},
								onComplete:resetpwdResult});
}
function resetpwdResult(req)
{
substatus=false;$('SubButton').disabled=false;$('SubButton').value='   保存   ';var strXml=req.responseText;/*alert(strXml);*/var oXmlDom=zXmlDom.createDocument();oXmlDom.loadXML(strXml);if(oXmlDom.parseError.errorCode!=0){alert("注册新账户的时候发生了错误——\n" + oXmlDom.parseError.reason);}else{var root=oXmlDom.documentElement;var code=parseInt(root.getElementsByTagName("code")[0].text);var message=root.getElementsByTagName("message")[0].text;
		alert(message);
		if(code==1){
			$('oldpwd').value="";$('userpwd').value="";$('reuserpwd').value="";
		}else if(code==2){
			var url=root.getElementsByTagName("returnurl")[0].text;
			if(url!=''){location.href=url;}else{location.href='/';}
		}else{
			$('reuserpwd').value="";
		}
	}	
}

function showtab(show1,hidden1,show2,hidden2)
{
var aryhidden1=hidden1.split(',');
var aryhidden2=hidden2.split(',');
document.getElementById(show1).className='item-title-show';
for(var i=0;i<aryhidden1.length;i++){document.getElementById(aryhidden1[i]).className='item-title-hidden';}
for(var i=0;i<aryhidden2.length;i++){document.getElementById(aryhidden2[i]).style.display='none';}
document.getElementById(show2).style.display='';
}



