﻿var popUpWin = 0;
function PopUpWindow(URLStr, left, top, width, height, newWin) {
    if (typeof (newWin) == "undefined")
        newWin = false;

    if (typeof (left) == "undefined")
        left = 100;
    if (typeof (top) == "undefined")
        top = 20;

    if (typeof (width) == "undefined")
        width = 800;

    if (typeof (height) == "undefined")
        height = 600;


    if (newWin) {
        open(URLStr, '', 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=yes,width=' + width + ',height=' + height + ',left=' + left + ', top=' + top + ',screenX=' + left + ',screenY=' + top + '');
        return;
    }

    if (popUpWin) {
        if (!popUpWin.closed) popUpWin.close();
    }
    popUpWin = open(URLStr, 'popUpWin', 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=yes,width=' + width + ',height=' + height + ',left=' + left + ', top=' + top + ',screenX=' + left + ',screenY=' + top + '');
    popUpWin.focus();
}

function openMaxwindow(url) {
    var newwin = window.open(url, "", "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes");
    newwin.moveTo(0, 0)
    newwin.resizeTo(screen.width, screen.height - 40)
    newwin.focus();
    return false;
}

function isEmail(text) {
    email = text.value;
    reg = /^([a-zA-Z0-9]+[_|\-|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\-|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/gi;
    if (!reg.test(email))
    { alert("非法的电子邮件"); return true; }

}

//整数的正则表达式
function isint(zs) {
    var zsPattern = /^0$|^[1-9]\d*$/; //
    result = zsPattern.test(zs);
    if ((!result) && (zs != "")) return false;
    else return true;
}

function ischar(c) {
    if (((c >= 'a') && (c <= 'z')) || ((c >= 'A') && (c <= 'Z')))
        return true;
    else
        return false;
}

function isnumber(c) {
    if ((c >= '0') && (c <= '9'))
        return true;
    else
        return false;
}


//取得页面参数
function getParam(url, paramName) {
    var paramStr = url.split("?")[1];
    if (paramStr == undefined) {
        return -1;
    }
    var paramVal;
    if (paramStr.indexOf(paramName) != -1 && (paramStr.substr(paramStr.indexOf(paramName) - 1, 1) == "&" || paramStr.indexOf(paramName) == 0)) {
        var paramList = paramStr.split("&");
        for (var i = 0; i < paramList.length; i++) {
            if (paramList[i].indexOf(paramName) == 0) {
                paramVal = paramList[i].split("=")[1];
            }
        }
    }
    else {
        paramVal = -1;
    }
    return paramVal;
}

//
function resetBtnTop(tblName) {
    var tb = document.getElementById(tblName);
    var div_save = document.getElementById('divSave');
    if (tb != null && tb != undefined && div_save != null && div_save !=undefined) {
        div_save.style.top = tb.offsetHeight + tb.offsetTop + 80;
        div_save.style.left = tb.offsetWidth / 2 + tb.offsetLeft + 160;
    }
}

function resetTargetBtnTop() {
    if (document.getElementById('tb_Objective') != undefined) {
        resetBtnTop('tb_Objective'); 
    }
}

//return boolean
function IsNumber( v )
{
	var re =/^-?[\d]+$/ ;
	return re.test(v);
}

//表单验证
function Trim(sVal)
{
 while ((sVal.length>0)  && (sVal.charAt(0)==' '))
   sVal=sVal.substring(1, sVal.length);
 while ((sVal.length>0)  && (sVal.charAt(sVal.length-1)==' '))
   sVal=sVal.substring(0, sVal.length-1);
 return  sVal;
}

function ChkTxt(objItem, strTitle)
{
  if(Trim(objItem.value).length==0)
  {
  alert('请输入' + strTitle + '！' );
  objItem.focus();
  return false;
  }
  
  return true;
}

function checknumber(s) {
    for (i = 0; i < s.length; i++) {
        n = s.substr(i, 1)
        if (!(IsNumber(n))) {
            return false;
        }
    }
    return true;
}

function IsDate(ddlYear,ddlMonth,ddlDay)
{   
    var date;
    if (ddlDay != undefined )
    {
        date = ddlYear.options[ddlYear.selectedIndex].value + "-" + ddlMonth.options[ddlMonth.selectedIndex].value + "-" + ddlDay.options[ddlDay.selectedIndex].value;
    }
    else
    {
        date = ddlYear.options[ddlYear.selectedIndex].value + "-" + ddlMonth.options[ddlMonth.selectedIndex].value + "-01";
    }
    return validateDay(date); 
}

function validateDay(str) {
    var r = str.split("-");
    if (r == null) return false;
    var d = new Date(r[0], r[1] - 1, r[2]);
    return (d.getFullYear() == r[0] && (d.getMonth() + 1) == r[1] && d.getDate() == r[2]);
}

function checkPhoneNumber(tb_home,tb_office,tb_mobile,errmsg_number,lngType) 
{
    var relVal = false;
    if (tb_home.value == "" && tb_office.value =="" && tb_mobile.value == "")
        {
            if ( lngType == 1) 
            {
                errmsg_number.innerText = "请至少输入一个号码";
            }
            else
            {
                errmsg_number.innerText = "Please input at least one number!";
            }    
            tb_home.focus();
            relVal = true; 
        } 
        else
        {   
//            if (tb_bp.value && !IsNumber(tb_bp.value.replace("-","")))
//            {
//                errmsg_number.innerText = "BP机号码不正确 ";
//                tb_bp.focus();
//                relVal = true; 
//            }  
//            
            if (tb_mobile.value)
            {
                if (!IsNumber(tb_mobile.value.replace(/-/g,"")))
                {
                    if ( lngType == 1) 
                    {
                        errmsg_number.innerText = "手机号码输入数字及'-'以外符号 " + errmsg_number.innerText;
                    }
                    else
                    {
                        errmsg_number.innerText = "mobile number is incorrect " + errmsg_number.innerText;
                    }   
                    tb_mobile.focus();
                    relVal = true;
                }
               
                if (tb_mobile.value.length != 11)
                {
                    if ( lngType == 1) 
                    {
                        errmsg_number.innerText = "手机号码位数不对 " + errmsg_number.innerText;
                    }
                    else
                    {
                        errmsg_number.innerText = "digits of mobile number are not correct" + errmsg_number.innerText;
                    }
                    tb_mobile.focus();
                    relVal = true;
                }    
            }
            
            if (tb_office.value)
            {
                if (!IsNumber(tb_office.value.replace(/-/g,"")))
                {
                    if ( lngType == 1) 
                    {
                        errmsg_number.innerText = "公司电话号码输入数字及'-'以外符号 " + errmsg_number.innerText;
                    }
                    else
                    {
                        errmsg_number.innerText = "office number is incorrect " + errmsg_number.innerText;
                    }
                    tb_office.focus();
                    relVal = true;
                }
               
                if (tb_office.value.length < 8)
                {
                    if ( lngType == 1) 
                    {
                        errmsg_number.innerText = "公司电话号码位数不对 " + errmsg_number.innerText;
                    }
                    else
                    {
                        errmsg_number.innerText = "digits of office number are not enough " + errmsg_number.innerText;
                    }
                    tb_office.focus();
                    relVal = true;
                }    
            }
                  
            if (tb_home.value)
            {
                if (!IsNumber(tb_home.value.replace(/-/g,"")))
                {
                    if ( lngType == 1) 
                    {
                        errmsg_number.innerText = "家庭电话号码输入数字及'-'以外符号 " + errmsg_number.innerText;
                    }
                    else
                    {
                        errmsg_number.innerText = "home number is incorrect " + errmsg_number.innerText;
                    }
                    tb_home.focus();
                    relVal = true;
                }
                
                if (tb_home.value.length < 8)
                {
                    if ( lngType == 1) 
                    {
                        errmsg_number.innerText = "家庭电话位数不对 " + errmsg_number.innerText;
                    }
                    else
                    {
                        errmsg_number.innerText = "digits of home number are not enough  " + errmsg_number.innerText;
                    }
                    tb_home.focus();
                    relVal = true;
                } 
            }    
        }
    errmsg_number.innerText = "\r\n" + errmsg_number.innerText     
    return relVal; 
}

function checkLength(ctr,len)
{
    if (ctr.value.length > len )
    {
        ctr.value = ctr.value.substr(0,len);
        return false;
    }
    else
    {
        return true; 
    }
}

function CheckIDCard(strID)   
  {   
  //验证各位字符是否合法的正则表达式   
  ReDigital15   =   /\d{15}/;   
  ReDigital18   =   /\d{17}[0-9xX]{1}/;   
  //提取日期和校验的正则表达式   
  ReDate15   =   /\d{6}(\d{6})\d{3}/;   
  ReDate18   =   /\d{6}(\d{8})\d{3}/;   
  switch(strID.length)   
  {   
  case   15:   
  if(   ReDigital15.test(   strID   )   ==   false   )   
  return   "非法字符";   
  Arr   =   ReDate15.exec(   strID   );   
  strDate   =   "19"   +   Arr[1];   
  if(   CheckDate(strDate,   new   Date(1900,0,1),   new   Date(1999,11,31))   ==   false   )   
  return   "日期无效";   
  break;   
  case   18:   
  if(   ReDigital18.test(   strID   )   ==   false   )   
  return   "非法字符";   
  Arr   =   ReDate18.exec(   strID   );   
  strDate   =   Arr[1];   
  if(   CheckDate(strDate,   new   Date(1900,0,1),   new   Date())   ==   false   )   
  return   "日期无效";   
  if(   CheckSum(   strID   )   ==   false   )   
  return   "校验错误";   
  break;   
  default:   
  return   "位数不对";   
  break;   
  }   
  return   "";   
  }   
    
  //对身份证的校验位进行验证   
  function CheckSum(   strID   )   
  {   
  //debugger;   
  //18位数字提取正则表达式   
  Re18Digital   =   /(\d{1})(\d{1})(\d{1})(\d{1})(\d{1})(\d{1})(\d{1})(\d{1})(\d{1})(\d{1})(\d{1})(\d{1})(\d{1})(\d{1})(\d{1})(\d{1})(\d{1})([0-9xX]{1})/;   
  Arr   =   Re18Digital.exec(strID);   
  var   Wi   =   new   Array(7,   9,   10,   5,   8,   4,   2,   1,   6,   3,   7,   9,   10,   5,   8,   4,   2);   
  Sum   =   0;   
  for(i=0;i<=16;i++)   
  Sum   +=   Arr[i+1]   *   Wi[i];   
  ArrCheckSum   =   new   Array('1',   '0',   'X',   '9',   '8',   '7',   '6',   '5',   '4',   '3',   '2');   
  strCheckSum   =   ArrCheckSum[Sum%11];   
  if(   strCheckSum   ==   Arr[18].toUpperCase()   )   
  return   true;   
  else   
  return   false;   
  }   
    
  //检查在指定范围之内的日期，支持选择框自动生成格式和手动连打格式。返回bool，true表示日期有效，false表示日期无效。   
  function CheckDate(strDate,DateFrom,DateTo)   
  {   
  //手动日期验证正则表达式   
  ReDigital8   =   /\d{8}/;   
  //自动日期验证正则表达式   
  ReAutoDate   =   /\d{4}-{1}\d{1,2}-\d{1,2}/;   
  //自动日期提取正则表达式   
  //ReGetDate   =   /(\d{4})-{1}(\d{1,2})-(\d{1,2})/;   
  //debugger;   
  if(strDate.indexOf("-")>-1)   
  {   
  if( ReAutoDate.test(strDate)   ==   false   )   
  return   false;   
  // Arr   =   ReGetDate.exec(   strDate   );   
  Arr   =   strDate.split("-");   
  strDate   =   (Arr[0])   +   ""   +   (Arr[1].length<2?"0":"")   +   Arr[1]   +   (Arr[2].length<2?"0":"")   +   (Arr[2]);   
  }   
    
  if(strDate.length!=8)   
  return   false;   
  if(   ReDigital8.test(strDate)==false   )   
  return   false;   
  MyDate   =   eval(   strDate.replace(   /^(\d{4})(\d{2})(\d{2})$/,   "new   Date($1,$2-1,$3)"   )   );   
  strMyDate   =   MyDate.getFullYear()+(MyDate.getMonth()<9?"0":"")+(MyDate.getMonth()+1)+""+(MyDate.getDate()<=9?"0":"")+MyDate.getDate();   
  //日期有效性验证   
  if(strMyDate!=strDate)   
  return   false;   
  //日期范围验证   
  if(   MyDate>=DateFrom   &&   MyDate<=DateTo   )   
  return   true;   
  else   
  return   false;   
  }

  //添加职位和修改职位有效期
  function showenddate1() {

      var postdate = document.getElementById("hf_nowdate").value;

      var bignum = parseInt(document.getElementById("hf_endnum").value);

      var ddlpostnum = parseInt(document.getElementById("ddl_date").value);

      var days = parseInt(document.getElementById("tb_num").value) + parseInt(ddlpostnum);

      //alert (document.getElementById("tb_num").value);

      var nowdate = document.getElementById("hf_nowdate").value;

      var endshijian = dateadd(postdate, days)//根据发布时间得到到期时间
      var contractdate = dateadd(postdate, bignum) //合同到期日


      //var mcontractdate=document.getElementById("hf_enddate").value; //得到合同的有效期 

      //var endshijianformat=endshijian.getFullYear() + "-" + (endshijian.getMonth() + 1) + "-" + endshijian.getDate()

      if (days != "" && days > 0 && isint(days)) {

          if (days <= bignum) {

              stringedntime = endshijian.getFullYear() + "年" + (endshijian.getMonth() + 1) + "月" + endshijian.getDate() + "日";

              document.getElementById("l_txt").innerHTML = "&nbsp;&nbsp;到期日：<span style=\"font-weight:bold;\">" + stringedntime + "</span>";

          }
          else {
              stringedntime = contractdate.getFullYear() + "年" + (contractdate.getMonth() + 1) + "月" + contractdate.getDate() + "日";
              document.getElementById("l_txt").innerHTML = "&nbsp;&nbsp;您输入的天数已经超过合同有效期，职位到期日：<span style=\"font-weight:bold;\">" + stringedntime + "</span>";

          }

      }
      else {
          document.getElementById("l_txt").innerHTML = "请输入有效天数";
      }
  }

  //时间添加函数
  function dateadd(olddate, days) {

      // olddate=olddate.replace("-","/") ;

      olddate = olddate.replace(/-/g, '/');

      var a = new Date(olddate);
      a = a.valueOf();
      a = a + days * 24 * 60 * 60 * 1000;
      a = new Date(a);
      return a;
  }

  //用于表格行变色

  var rowNo = 0;
  var row_marked = Array();
  var row_over_color;
  var row_marked_color;

  function onRowOver(row, rowNo) {
      if (row_marked[rowNo] == null || !row_marked[rowNo]) {
          // use row.bgColor save ori color since it has no effect if has style backgroundColor
          row.bgColor = row.style.backgroundColor;
          row.style.backgroundColor = row_over_color != null ? row_over_color : '#DEDEB2';  //FFFFCC
      }
  }
  function onRowOut(row, rowNo) {
      if (row_marked[rowNo] == null || !row_marked[rowNo]) {
          row.style.backgroundColor = row.bgColor;
          row.bgColor = '';
      }
  }
  function onRowClicked(row, rowNo) {
      // FIXME: following several lines only works on IE
      whichIt = event.srcElement;
      while (whichIt.tagName != "A") {
          whichIt = whichIt.parentElement;
          if (whichIt == null) {
              // no link clicked, passed
              break;
          }
      }
      if (whichIt != null) {
          return;
      }
      if (row_marked[rowNo] == null || !row_marked[rowNo]) {
          row_marked[rowNo] = true;
          row.style.backgroundColor = row_marked_color != null ? row_marked_color : '#CCDDBB';  //FFCC99
      }
      else {
          row_marked[rowNo] = false;
          row.style.backgroundColor = row_over_color != null ? row_over_color : '#DEDEB2';   //FFFFCC
      }
  }


  //Addjob中地址的控制
  function AddressOK() {

      AddDisplayIsOpen();
  }


  function AddDisplayIsOpen() {

      var dv = document.getElementById('dvAddress');

      dv.style.display = "none";

      var len = document.getElementById("AddressSelect1_rbl_address")

      for (var i = 0; i < len.rows.length; i++) {
          for (var x = 0; x < len.rows[i].cells.length; x++) {
              if (len.rows[i].cells[x].firstChild != "undefine") {
                  if (len.rows[i].cells[x].firstChild.checked) {
                      //alert(len.rows[i].cells[x].firstChild.value);
                      var frame1 = document.getElementsByTagName("iframe");

                      //alert (aa(0).location);
                      frame1(0).src = "AddressFrame.aspx?mview=1&Addid=" + len.rows[i].cells[x].firstChild.value;
                      document.getElementById('hf_addressid').value = len.rows[i].cells[x].firstChild.value;

                      //alert(document .getElementById ('hf_addressid').value);

                  }
              }
          }
      }
  }

  //Addjob中地址的控制
  function AddressMview() {

      var frame1 = document.getElementsByTagName("iframe");

      var len = document.getElementsByName("rbl_receive")

      for (var i = 0; i < len.length; i++) {

          if (len(i).checked) {

              var frame1 = document.getElementsByTagName("iframe");

              if (len(i).value == "0" || len(i).value == "2") {

                  frame1(0).src = "AddressFrame.aspx?mview=0&Addid=" + document.getElementById('hf_addressid').value;
              }
              else {
                  frame1(0).src = "AddressFrame.aspx?mview=1&Addid=" + document.getElementById('hf_addressid').value;
              }

          }
      }
  }

  function workyearselect() {
      var ddl_w = document.getElementById("ddl_Workyear");

      //alert (ddl_w.value);

      //alert (document .getElementById ('trjob'));

      if (ddl_w.value == "2") {
          document.getElementById('trjob').style.visibility = "visible";
      }
      else {
          //document .getElementById ("cb_job").checked = true ;
          //document .getElementById ("cb_school").checked = false ;
          document.getElementById('trjob').style.visibility = "hidden";

      }

      if (ddl_w.value == "-1" || ddl_w.value == "1" || ddl_w.value == "2") {
          document.getElementById("cb_school").checked = true;
      }
      else {
          document.getElementById("cb_school").checked = false;
      }

      if (ddl_w.value == "-1") {

          document.getElementById("cb_workabove").checked = false;
          document.getElementById("cb_workabove").disabled = true;

      }
      else {
          document.getElementById("cb_workabove").disabled = false;
      }



  }

  function DegreeSelect() {
      var ddl_d = document.getElementById("ddl_degree");

      //alert (ddl_d.value);

      //alert (document .getElementById ('cb_degreeAbove').Enabled);

      if (ddl_d.value == "-1") {

          document.getElementById("cb_degreeAbove").checked = false;
          document.getElementById("cb_degreeAbove").disabled = true;

      }
      else {
          document.getElementById("cb_degreeAbove").disabled = false;
      }
  }

