//////////////////////////////////////////////////////////
//
//JS类库 Beta  3.0.1  By 小谢
//Email : x_longfeng@qq.com
//
//////////////////////////////////////////////////////////
///////////////////////////////////////////////////////
//
//验证文本框

//strName文本框名,alertStr普通提示信息

//RegStr正则表达式,trueOrfalse是否有规则,如有则RegStr.test
//Regalert正则验证失败后的提示信息
//
///////////////////////////////////////////////////////
function chkforms(strName,alertStr,length,RegStr,trueOrfalse,Regalert){
        if (strName.value.replace(/(^\s*)|(\s*$)/g,'').length<=length){
                alert(alertStr);
                strName.focus();
                return false;
        }
        
        if (trueOrfalse==true){
                if (!RegStr.test(strName.value)){
                       alert(Regalert);
                       strName.focus();
                       return false;
                }
        }
        return true;
}

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;
}
////////////////////////////////////////////////
//
// JS,Main的基类

//
//////////////////////////////////////////////
BaseClass = function(){
       this.chkInput          =           chkInput; //检测文件框是否有特定的值,eg:/“请输入查询内容!” /“请输入用户名.”

       this.ModalDialog       =           ModalDialog; //弹出模态窗口

       this.WindowOpen        =           WindowOpen; //弹出窗口 window.open();
       this.Open_Close        =           Open_Close; //点击展开
       this.chkRegLogName     =           chkRegLogName; //验证注册登陆名是否有包含空格
       this.PageInit          =           PageInit; //初始化界面

       this.HtmlEditor        =           HtmlEditor; //Html 编辑器

       this.AddToSelect       =           AddToSelect; //添加地址
       this.AddToSelect_ID    =           AddToSelect_ID ; //包含ID
}

////////////////////////////////////////////
//主类
//////////////////////////////////////////////
function Main(){
       this.c=BaseClass;
       this.c();
}


function chkInput(inName,num,wStr){
        if (num == 1){
                if (inName.value.replace(/(^\s*)|(\s*$)/g,'') == wStr) {inName.value="";}
        } else {
                 if (inName.value.replace(/(^\s*)|(\s*$)/g,'') == "") inName.value = wStr; 
        }
}


function ModalDialog(pName,diaLogName,diaWidth,diaHeight){
         var obj=window.showModalDialog(pName,diaLogName,'help=0;status=0;dialogWidth='+diaWidth+';dialogHeight='+diaHeight); //px
         return obj;
}

function WindowOpen(pName,winName,width,height){
        window.open(pName,winName,'resizable=no,scrollbars=yes,titlebar=no,toolbars=no,margin=0,status=0,width='+width+',height='+height);
}

 function grr(rp) {
	      if(RegExp.$1)/(.*)/.exec("");
	      var re=new RegExp("<result>(.*)<\/result>");
	      re.exec(rp);
	      if(RegExp.$1) return RegExp.$1;
	      return "";
 }
  function XiaoXieGrr(rp) {
	      if(RegExp.$1)/(.*)/.exec("");
	      var re=new RegExp("<content>(.*)<\/content>");
	      re.exec(rp);
	      if(RegExp.$1) return RegExp.$1;
	      return "";
 }

//Ajax调用方法
//////////////////////////////////参数说明///////////////////////////////////////////////////
//
//pageName页面名称(不包含参数)，Rid传过来整数整数(数据ID项)，postget返回类型(post|get)
//doType操作类型(editTypes=doType)，returnOKValue操作员成功后返回的信息grr(response)==returnOKValue
//returnOKInfo操作成功后显示给客户端的信息，returnFalseInfo操作失败后返回给客户端的信息
//rSpanInfo显示信息控件，一般为<span id="shoInfo" />
//cValue传过去的值

//
////////////////////////////////////////////////////////////////////////////////////////////
function AjaxMethod(pageName,Rid,postget,doType,returnOKValue,returnOKInfo,returnFalseInfo,rSpanName,cValue,url){
         option={
                 parameters:"editTypes=" + doType,
                 method:postget,
                 onSuccess:function(transport){
                          var response=transport.responseText;  
                                        alert(grr(response));         
                          if(grr(response)==returnOKValue) {
                                   rSpanName.innerHTML = "<div class=Load style='BACKGROUND: url(../images/ok_auto.gif) #fff2e9 no-repeat 5px 5px;'>"+returnOKInfo+"</div>";
                                   if (url!=''){
                                        window.location.href=url;
                                   }   
                                   return false;
                            }
                           if(grr(response)=="NotisActive")
                           {
                             rSpanName.innerHTML = "<div class=Load>您的帐号未激活，或已被锁定</div>";
                              return false;
                           }
                            if(grr(response)=="3")
                           {
                             rSpanName.innerHTML = "<div class=Load>验证码错误</div>";
                              return false;
                           }
                          else {
                                   rSpanName.innerHTML = "<div class=Load>"+returnFalseInfo+"</div>";
                                   return false;
                          }
                     },
                  onFailure:function(transport){
                           rSpanName.innerHTML = "<div class=Load>操作数据失败,可能系统正在维护当中!</div>";
                           return false;
                   }
           }
          var request=new Ajax.Request(pageName+"?editTypes="+doType+"&eid="+Rid+"&Obj="+cValue,option);
 }
 
 //直接获取数据
 function WinShopLoadData(pageName,doType,SpanName,otherUrl,postget)
 { 
 option={
                 parameters:"editTypes=" + doType,
                 method:postget,
                 onSuccess:function(transport){
                          var response=transport.responseText;  
                        try
                         {                           
                           SpanName.innerHTML =XiaoXieGrr(response);                                                                         
                          }
                         catch(e)
                        {
                        //SpanName.innerHTML="";
                        }  
                     },
                  onFailure:function(transport){
                           SpanName.innerHTML = "操作失败,请刷新后尝试";
                           return false;
                   }
           }         
          var request=new Ajax.Request(pageName+"?editTypes="+doType + otherUrl,option);
 } 
 //数据操作,页面更新提示信息 刷新页面
  function UpdateDate(pageName,doType,OtherUrl,postget,msg)
 {
 option={
                 parameters:"editTypes=" + doType,
                 method:postget,
                 onSuccess:function(transport){
                          var response=transport.responseText;                            
                         try
                         {                         
                           if (XiaoXieGrr(response)=="1")
                           {
                           alert(msg);
                           window.location.reload();
                           }
                           else
                           {
                           alert("操作失败,请刷新后尝试!");
                           window.location.reload();
                           }
                          }
                         catch(e)
                         {
                         alert("操作失败,请刷新后尝试!");
                         window.location.reload();
                         }  
                     },
                  onFailure:function(transport){
                         alert("操作失败,请刷新后尝试!");
                         window.location.reload();
                           return false;
                   }
           }         
          var request=new Ajax.Request(pageName+"?editTypes="+doType + OtherUrl,option);
 } 
 
  //数据操作,页面更新提示信息 不刷新页面
  function Update_ShowMsg(pageName,doType,OtherUrl,postget)
 {
 option={
                 parameters:"editTypes=" + doType,
                 method:postget,
                 onSuccess:function(transport){
                          var response=transport.responseText;                           
                         try
                         {             
                          var Msg=XiaoXieGrr(response);
                           if (Msg=="")
                           {
                            alert("操作失败!请确认您的操作是否正确");
                           }
                           else if (Msg=="0")
                            {
                             //用户登录
                                alert("您还没登录,请先登录");
                                var url = window.location.href;
                                window.location.href='http://www.hrsoso.com/UserLogin.aspx?url=' + escape(url);
                            }
                            else if (Msg=="1")
                            {
                            //企业登录
                            alert("您还没登录,请先登录");
                                 var url = window.location.href;
                                window.location.href='http://www.hrsoso.com/Comlogin.aspx?url=' + escape(url);
                            }
                           else
                           {
                             alert(Msg);
                           }
                          
                          }
                         catch(e)
                         {
                         alert("操作失败,请刷新后尝试!");
                         window.location.reload();
                         }  
                     },
                  onFailure:function(transport){
                         alert("操作失败,请刷新后尝试!");
                         window.location.reload();
                           return false;
                   }
           }         
          var request=new Ajax.Request(pageName+"?editTypes="+doType + OtherUrl,option);
 } 
 //by 小谢 2008年1月4日15:35:36
 //刷新页面判断是否刷新 
  function Update_ShowMsg_IsReload(pageName,doType,OtherUrl,postget,IsReload)
 {
 option={
                 parameters:"editTypes=" + doType,
                 method:postget,
                 onSuccess:function(transport){
                          var response=transport.responseText;                           
                         try
                         {             
                          var Msg=XiaoXieGrr(response);
                           if (Msg=="")
                           {
                            alert("操作失败!请确认您的操作是否正确");
                           }
                           else if (Msg=="0")
                            {
                             //用户登录
                                alert("您还没登录,请先登录");
                                var url = window.location.href;
                                window.location.href='http://www.hrsoso.com/UserLogin.aspx?url=' + escape(url);
                            }
                            else if (Msg=="1")
                            {
                            //企业登录
                            alert("您还没登录,请先登录");
                                 var url = window.location.href;
                                window.location.href='http://www.hrsoso.com/Comlogin.aspx?url=' + escape(url);
                            }
                           else
                           {
                             alert(Msg);
                             if (IsReload==1)
                             {
                                window.location.reload();
                             }
                           }
                          
                          }
                         catch(e)
                         {
                         alert("操作失败,请刷新后尝试!");
                         window.location.reload();
                         }  
                     },
                  onFailure:function(transport){
                         alert("操作失败,请刷新后尝试!");
                         window.location.reload();
                           return false;
                   }
           }         
          var request=new Ajax.Request(pageName+"?editTypes="+doType + OtherUrl,option);
 } 
 //显示loading....
  function Update_ShowMsg_IsShow(pageName,doType,OtherUrl,postget,IsShow)
 {
 option={
                 parameters:"editTypes=" + doType,
                 method:postget,
                 onSuccess:function(transport){
                          var response=transport.responseText;                           
                         try
                         {             
                          var Msg=XiaoXieGrr(response);
                           if (Msg=="")
                           {
                            alert("操作失败!请确认您的操作是否正确");
                           }
                           else if (Msg=="0")
                            {
                             //用户登录
                                alert("您还没登录,请先登录");
                                var url = window.location.href;
                                window.location.href='http://www.hrsoso.com/UserLogin.aspx?url=' + escape(url);
                            }
else if (Msg=="2")
                            {
                             //资料没有填写完整
                                alert("请填写完整的用户资料,才能申请该职位");
                                var url = window.location.href;
                                window.location.href='http://www.hrsoso.com/Person/Myinfo.aspx?url=' + escape(url);
                            }
                            else if (Msg=="1")
                            {
                            //企业登录
                            alert("您还没登录,请先登录");
                                 var url = window.location.href;
                                window.location.href='http://www.hrsoso.com/Comlogin.aspx?url=' + escape(url);
                            }
                           else
                           {
                             alert(Msg);
                             if (IsShow==1)
                             {
                                document.getElementById("showLoading").style.display="none";
                             }
                           }
                          
                          }
                         catch(e)
                         {
                         alert("操作失败,请刷新后尝试!");
                         window.location.reload();
                         }  
                     },
                  onFailure:function(transport){
                         alert("操作失败,请刷新后尝试!");
                         window.location.reload();
                           return false;
                   }
           }         
          var request=new Ajax.Request(pageName+"?editTypes="+doType + OtherUrl,option);
 } 
  //数据操作,直接数据更新
  function UpdateDate_notBack(pageName,doType,OtherUrl,postget)
 {
 option={
                 parameters:"editTypes=" + doType,
                 method:postget,
                 onSuccess:function(transport){
                          var response=transport.responseText;                         
                     },
                  onFailure:function(transport){                       
                   }
           }         
          var request=new Ajax.Request(pageName+"?editTypes="+doType + OtherUrl,option);
 } 
  function crr(rp) {
	      if(RegExp.$1)/(.*)/gm.exec("");
	      var re=new RegExp("<content>(.*)<\/content>");
	      re.exec(rp);
	      if(RegExp.$1) return RegExp.$1;
	      return "";
 }
 
 
 
 //地址栏参数检测 var mNum=GetParaStr("Mnum");
 //
 //strname是参数名称 http://domain/pp?cid=5
 //var getCid=GetParaStr("cid") ; getCid=5
 //
 ///////////////////////////////////////////////
 function GetParaStr(strname){
         var hrefstr,pos,parastr,para,tempstr;
         hrefstr = window.location.href;
         pos = hrefstr.indexOf("?")
         parastr = hrefstr.substring(pos+1);
         para = parastr.split("&");
         tempstr="";
         for(i=0;i<para.length;i++) {
                 tempstr = para[i];
                 pos = tempstr.indexOf("=");
                 if(tempstr.substring(0,pos) == strname){
                             return tempstr.substring(pos+1);
                 }
         }
   return '';
 }
 
 //初始化页信息.
 function PageInit(){
         var scrWidth = screen.width;
         var getUserCookie = document.cookie;
 }
 
 //<iframe id="ifr" SCROLLING ="yes"></iframe>
 //<body onload="HtmlEditor(ifr,200,400)">
 function HtmlEditor(ifr,ifrWidth,ifrHeight){
        ifr.width = ifrWidth;
        ifr.height = ifrHeight ;
        ifr.document.open();
        ifr.document.close();
        ifr.document.designMode="on";    
 }
 
 //////////////////////////////////////////////////////
 //
 //SelectN是select控件名称,n_selected是表示第几个selected,values要填充的数据
 //
 //////////////////////////////////////////////////////
 function AddToSelect(selectN,n_selected,values) {
         if (values.replace(/(^\s*)|(\s*$)/g,'').length==0) {
             return
         }
         var str = values.replace(/(^\s*)|(\s*$)/g,'');
         var SplitStr = str.split("|");
         var i;
         for (i=0;i<SplitStr.length;i++) {
                if (SplitStr[i]=='') {
                      return;
                }
         }
         //alert(SplitStr[2]);
         for (i=0;i<SplitStr.length;i++) {
                 selectN.options.add(new Option(SplitStr[i],i));
                 if (i==n_selected) {
                       selectN.options[i].selected=true;
                 }
         }
 }
 
 function AddToSelect_ID(selectN,n_selected,values,vids){
        if (values.replace(/(^\s*)|(\s*$)/g,'').length==0) {
             return
         }
         
         if (vids.replace(/(^\s*)|(\s*$)/g,'').length==0) {
              return;
         }
         var str = values.replace(/(^\s*)|(\s*$)/g,'');
         var sid = vids.replace(/(^\s*)|(\s*$)/g,'');
         
         var SplitStr = str.split("|");
         var SplitSid = sid.split("|");
         
         if (SplitStr.length!=SplitSid.length){
               return;
         }
         
         var len = SplitStr.length;
         var i;
         for (i=0;i<len;i++) {
                if (SplitStr[i]=='') {
                      return;
                }
         }
         //alert(SplitStr[2]);
         for (i=0;i<len;i++) {
                 selectN.options.add(new Option(SplitStr[i],SplitSid[i]));
                 if (i==n_selected) {
                       selectN.options[i].selected=true;
                 }
         }
 }
 
 function loadCfr(selectN,n_selected,hast){
     for (i=0;i<hast.length;i++) {
                 selectN.options.add(new Option(hast[i].key,hast[i].value));
                 if (i==n_selected) {
                       selectN.options[i].selected=true;
                 }
         }
 }
String.prototype.trim = function()
{
     return this.replace(/(^\s*)|(\s*$)/g,'');
}
;
