﻿window.onload = initGrbHome;
var msg="";
function initGrbHome() {
  initDHTMLAPI();
  if (register) {
    load('register.htm');
  } else {
    loadTraining();
  }
  if(msg && msg != "") { alert(msg); }
}

var xhr;
function createXHR() {
  if (window.ActiveXObject) {
    xhr = new ActiveXObject("Microsoft.XMLHTTP");
  } else if (window.XMLHttpRequest) {
    xhr = new XMLHttpRequest();
  }
}
function news(p) {
  var u="grb/news.htm?p="+p;
  createXHR();
  xhr.open("GET", u, true);
  xhr.onreadystatechange = handleLoadNews;
  xhr.send(null);
}
function handleLoadNews() {
  if (xhr.readyState == 4) {
    if (xhr.status == 200) {
      getRawObject("grb-news").innerHTML=xhr.responseText;
    }
  }
}
function loadTraining() {
  var u="grb/training.htm";
  createXHR();
  xhr.open("GET", u, true);
  xhr.onreadystatechange = handleLoadTraining;
  xhr.send(null);
}
function handleLoadTraining() {
  if (xhr.readyState == 4) {
    if (xhr.status == 200) {
      getRawObject("grb-training").innerHTML=xhr.responseText;
      news(0);
    }
  }
}
function goHome() {
  show("grb-home");
  getRawObject("grb-content").innerHTML="";
  hide("grb-content");
}
function v(p) {
  var u="grb/view.htm?p="+p;
  view(u);
}
function vi(id) {
  var u="grb/view2.htm?id="+id;
  view(u);
}
function view(u) {
  createXHR();
  xhr.open("GET", u, true);
  xhr.onreadystatechange=handleLoadPage;
  xhr.send(null);
}
function handleLoadPage() {
  if (xhr.readyState==4) {
    if (xhr.status==200) {
      getRawObject("grb-content").innerHTML=xhr.responseText;
      show("grb-content");
      hide("grb-home");
      r();
      r2();
    }
  }
}
function load(u) {
  createXHR();
  xhr.open("GET", u, true);
  xhr.onreadystatechange=handleLoadPage;
  xhr.send(null);
}
function submitForm(u,c) {
  createXHR();
  xhr.open("POST", u+".htm", true);
  xhr.onreadystatechange = handleSubmitForm;
  xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
  var q="";
  if(u=="sendpwd"){
    q=getPwdData(); 
    if(c=='1') 
      q+="&confirmed=1";
  } else if(u=="register"){
    q=getRegData();
  }
  xhr.send(q);
}
function handleSubmitForm() {
  if (xhr.readyState == 4) {
    if (xhr.status == 200) {
      try {
        var result = eval(xhr.responseText);
        DWRUtil.setValues(result);
      } catch (err) {
        getRawObject("grb-content").innerHTML=xhr.responseText;
      }
    }
  }
}
function getPwdData() {
  var q=getObjValue("name");
  q+=getObjValue("idNo");
  q=q.substring(1);
  return q;
}
function getObjValue(e) {
  var o=getRawObject(e);
  var v="";
  if(o) v=o.value;
  return "&"+e+"="+encodeURIComponent(v);
}
function getpwd(){ 
  document.forms[0].confirmed.value=true;
  document.forms[0].submit();
}

var eu="excu.htm?id=";
function genList(sel, t, n) {
  if (sel.value == 0) {
    if (t=='dsel2') {getRawObject('dsel2').innerHTML='';getRawObject('dsel3').innerHTML='';}
    else if (t=='dsel3') {getRawObject('dsel3').innerHTML='';}
    return;
  }
  target=t;
  createXHR();
  xhr.onreadystatechange = handleSelect;
  xhr.open("GET", eu+sel.value+"&n="+n, true);
  xhr.send(null);
}

function handleSelect() {
  if (xhr.readyState == 4) {
    if (xhr.status == 200) {
      var d = getRawObject(target);
      d.innerHTML = xhr.responseText;
    }
  }
}
function s() {
  var action="register.htm";
  var b1=getRawObject("sBttn");
  var b2=getRawObject("rBttn");
  if (b1) b1.disabled=true;
  if (b2) b2.disabled=true;
  createXHR();
  xhr.onreadystatechange=handleSubmit;
  xhr.open("POST", action, true);
  xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
  xhr.send(getData());
}
function handleSubmit(){
  if (xhr.readyState==4) {
    if (xhr.status==200) {
      var t=xhr.responseText;
      try {
        DWRUtil.setValues(eval(t));
        var b1=getRawObject("sBttn");
        var b2=getRawObject("rBttn");
        if (b1) b1.disabled=false;
        if (b2) b2.disabled=false;
      } catch (err) {
        getRawObject("dregfrm").innerHTML=t;
      }
    }
  }
}
function getData() {
  var data="";
  data+=getObjValue("password");
  data+=getObjValue("repeatedPassword");
  data+=getObjValue("level1");
  data+="&level2=";
  if(getRawObject("level2")!= null)
    data+=getRawObject("level2").value;
  else
    data+="0";
  data+="&level3=";
  if(getRawObject("level3")!=null)
    data+=getRawObject("level3").value;
  else
    data+="0";
  data+=getObjValue("organDesc");
  data+=getObjValue("name");
  data+="&gender="
  if(getRawObject("gender_1").checked)
    data+="1";
  else if(getRawObject("gender_0").checked)
    data+="0";
  data+=getObjValue("idNo");
  data+=getObjValue("email");
  data+=getObjValue("addr");
  data+=getObjValue("officeTel");
  data+=getObjValue("officeExt");
  data+=getObjValue("fax");
  data=data.substring(1);
  return data;
}
var errSign={err_password:"",err_repeatedPassword:"",
             err_level1:"",err_name:"",err_idNo:"",
             err_email:"",err_officeTel:""};
function rsSign(){
  DWRUtil.setValues(errSign);
}
var err={err_password:"",err_repeatedPassword:"",
         err_level1:"", err_name:"", err_gender:"",
         err_idNo:"", err_email:"", err_addr:"",
         err_officeTel:"", err_officeExt:"", err_fax:""};
function rs() {
  getRawObject("dsel2").innerHTML="";
  getRawObject("dsel3").innerHTML="";
  DWRUtil.setValues(err);
}

function reg(id) { var u="training/register.htm?id="+id; load(u); }
function chkpass() {
  if (getRawObject("pass").checked) {
    show("idno");
    for (i=0;i<8;i++) { show("idno["+i+"]"); }
  } else {
    hide("idno");
    for (i=0;i<8;i++) { hide("idno["+i+"]"); }
  }
}
function rsReg() {
  hide("idno");
  getRawObject("err_organization").innerHTML="";
  for (i=0;i<8;i++) {
    hide("idno["+i+"]");
    getRawObject("err_name["+i+"]").innerHTML="";
    getRawObject("err_email["+i+"]").innerHTML="";
    getRawObject("err_idno["+i+"]").innerHTML="";
  }
}
function send() {
  var u = "training/register.htm";
  createXHR();
  xhr.open("POST", u, true);
  xhr.onreadystatechange = handleReg;
  xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
  xhr.send(getRegData());
}

function handleReg() {
  if (xhr.readyState == 4) {
    if (xhr.status == 200) {
      try {
        var text = xhr.responseText;
        var result = eval(text);
        DWRUtil.setValues(result);
      } catch (err) {
        if (text.indexOf("<html") >= 0) {
          history.go();
        } else {
          getRawObject("training-register").innerHTML=xhr.responseText;
          show("prnbttn");
        }
      }
    }
  }
}
function getRegData() {
  var q = getObjValue("organization");
  if (getRawObject("pass").checked) q+="&pass=1";
  else q+="&pass=0";
  for(i=0;i<8;i++) {
    q+=getObjValue("name["+i+"]");
    q+=getObjValue("position["+i+"]");
    q+=getObjValue("tel["+i+"]");
    q+=getObjValue("email["+i+"]");
    q+=getObjValue("idno["+i+"]");
  }
  q=q.substring(1);
  return q;
}
function prn() {
  var w=window.open();
  var d=w.document;
  var c=getRawObject("training-register").innerHTML;
  d.write("<html><head><title>GRB操作訓練課程報名表</title>");
  d.write("<link href='style/css.css' rel='stylesheet' type='text/css'></head><body><center><br><br>");
  d.write(c);
  d.write("</center></body></html>");
  d.close();
  w.focus();
}
function hrstLogin(bttn) {
  var u = "hrstlogin.htm";
  createXHR();
  xhr.open("POST", u, true);
  xhr.onreadystatechange = handleHrstLogin;
  xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
  xhr.send(getHrstLoginData());
}
function handleHrstLogin() {
  if (xhr.readyState == 4) {
    if (xhr.status == 200) {
      var res=xhr.responseText;
      try {
        var result=eval(res);
        if(result.authz=="true"){
          var frm=getRawObject("hrst");
          if(frm){
            frm.action="http://hrst.stpi.org.tw/logon.do";
            frm.submit();
          }else{
            alert("Error!");
          }
        }else if(result.authz=="grb"){
          load("hrstedit.htm");
        }else{
          alert("帳號或密碼不正確");
        }
      }catch(err){
        getRawObject("grb-content").innerHTML=res;
        show("grb-content");
        hide("grb-home");
      }
    }
  }
}
function getHrstLoginData() {
  var q = getObjValue("userId");
  q+=getObjValue("password");
  q=q.substring(1);
  return q;
}
function hrstcp(bttn){
  var u = "hrstcp.htm";
  createXHR();
  xhr.open("POST", u, true);
  xhr.onreadystatechange = handleHrstCp;
  xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
  xhr.send(getHrstCpData());
}
function handleHrstCp() {
  if (xhr.readyState == 4) {
    if (xhr.status == 200) {
      var res=xhr.responseText;
      try {
        var result=eval(res);
        if(result.rows > 0){
          alert("修改密碼成功");
          load("hrstlogin.htm");
        }
      }catch(err){
        alert(xhr.responseText);
      }
    }
  }
}
function getHrstCpData() {
  var q = getObjValue("userId");
  q+=getObjValue("passwd");
  q+=getObjValue("passwd1");
  q+=getObjValue("passwd2");
  q=q.substring(1);
  return q;
}
function hrstfp(bttn){
  var u = "hrstfp.htm";
  createXHR();
  xhr.open("POST", u, true);
  xhr.onreadystatechange = handleHrstFp;
  xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
  xhr.send(getHrstFpData());
}
function handleHrstFp() {
  if (xhr.readyState == 4) {
    if (xhr.status == 200) {
      var res=xhr.responseText;
      try {
        var result=eval(res);
        if(result.pwd != null){
          alert("您的密碼為：" + result.pwd);
          load("hrstlogin.htm");
        }
      }catch(err){
        alert(xhr.responseText);
      }
    }
  }
}
function getHrstFpData() {
  var q = getObjValue("idNo");
  q+=getObjValue("birthYear");
  q=q.substring(1);
  return q;
}
function hrstchk(bttn){
  var u = "hrstchk.htm";
  createXHR();
  xhr.open("POST", u, true);
  xhr.onreadystatechange = handleHrstChk;
  xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
  xhr.send(getHrstChkData());
}
function handleHrstChk() {
  if (xhr.readyState == 4) {
    if (xhr.status == 200) {
      var res=xhr.responseText;
      try {
        var result=eval(res);
        if(result.newUser){
          hide("hrstreg1");
          show("hrstreg2");
        }else if(result.error!=""){
          alert(result.error);
        }
      }catch(err){
        getRawObject("hrstreg1").innerHTML="<br><br>"+res+"<br><br>";
        show("hrstreg3");
      }
    }
  }
}
function getHrstChkData() {
  var q = getObjValue("idno");
  q+=getObjValue("email");
  q=q.substring(1);
  return q;
}
function hrstap(bttn){
  var f=getRawObject("hrst");
  f.action="http://hrst.stpi.org.tw/checkIdNo.do";
  f.submit();
  bttn.disabled=true;
}
function grbap(bttn){
  var idno=getRawObject("idno");
  var email=getRawObject("email");
  var u="hrstreg.htm?idNo=";
  if(idno) u+=encodeURIComponent(idno.value);
  u+="&email=";
  if(email) u+=encodeURIComponent(email.value);
  load(u);
  bttn.disabled=true;
}
function hrstreg(bttn){
  var u = "hrstreg.htm";
  createXHR();
  xhr.open("POST", u, true);
  xhr.onreadystatechange = handleHrstReg;
  xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
  xhr.send(getHrstRegData());
  bttn.disabled=true;
}
function hrstedit(bttn){
  var u = "hrstedit.htm";
  createXHR();
  xhr.open("POST", u, true);
  xhr.onreadystatechange = handleHrstReg;
  xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
  xhr.send(getHrstRegData());
  bttn.disabled=true;
}
function handleHrstReg() {
  if (xhr.readyState == 4) {
    if (xhr.status == 200) {
      var res=xhr.responseText;
      try {
        var result=eval(res);
        if(result.errors != null){
          var msg="";
          for(var i=0; i<result.errors.length; i++)
            msg+="\r"+result.errors[i]+"\r";
          alert(msg);
          getRawObject("nextBttn").disabled=false;
        }
      }catch(err){
        getRawObject("grb-content").innerHTML=res;
        show("grb-content");
        hide("grb-home");
        window.scrollTo(0,110);
      }
    }
  }
}
function getHrstRegData() {
  var f=getRawObject("hrst");
  var q="";
  for(var i=0; i<f.elements.length; i++){
    var e=f.elements[i];
    if(e.type=="text" || e.type=="hidden")
      q+="&"+e.name+"="+encodeURIComponent(e.value);
    else if(e.type=="select-one")
      q+="&"+e.name+"="+encodeURIComponent(e.options[e.selectedIndex].value);
    else if(e.type=="radio"){
      if(e.checked) q+="&"+e.name+"="+encodeURIComponent(e.value);
    }
  }
  q=q.substring(1);
  return q;
}
