// JavaScript Document
var formerror="表單驗證錯誤，請檢查格式是否正確:\n\n\n";

//必填項目
function required(obj, message)
{
	if(obj.value.length == 0)
	{
	alert(formerror+"*請輸入您的" + message + "！！");
	obj.focus();
	return false;
	}
	return true;
}

//英文值檢測函式 Start
function isEnglish(name) 
{ 
if(name.length == 0)
return false;
for(i = 0; i < name.length; i++) { 
if(name.charCodeAt(i) > 128)
return false;
}
return true;
}
//英文值檢測函式 End

//數字檢測函式 Start
function checkNum( obj , message ) {
  newString = "";
  count = 0;
  for (i = 0; i < obj.value.length; i++) {
    ch = obj.value.substring(i, i+1);
    if (ch >= "0" && ch <= "9") {
      newString += ch;
    }
  }
  if (obj.value != newString || obj.value == "") {
    alert(message + "必須輸入數字");
    obj.focus();
    return true ;
  } else {
    return false ;
  }
}
//數字檢測函式 End

//身分證驗證 Start
function check_tw_id(sId){
  var LegalID = "0123456789"
  var fResult=true;
  if(sId.length<10)
    fResult=false;
  else{
    if((sId.charAt(0)=='A') || (sId.charAt(0)=='a')) value=10
    else if((sId.charAt(0)=='B') || (sId.charAt(0)=='b')) value=11
    else if((sId.charAt(0)=='C') || (sId.charAt(0)=='c')) value=12
    else if((sId.charAt(0)=='D') || (sId.charAt(0)=='d')) value=13
    else if((sId.charAt(0)=='E') || (sId.charAt(0)=='e')) value=14
    else if((sId.charAt(0)=='F') || (sId.charAt(0)=='f')) value=15
    else if((sId.charAt(0)=='G') || (sId.charAt(0)=='g')) value=16
    else if((sId.charAt(0)=='H') || (sId.charAt(0)=='h')) value=17
    else if((sId.charAt(0)=='J') || (sId.charAt(0)=='j')) value=18
    else if((sId.charAt(0)=='K') || (sId.charAt(0)=='k')) value=19
    else if((sId.charAt(0)=='L') || (sId.charAt(0)=='l')) value=20
    else if((sId.charAt(0)=='M') || (sId.charAt(0)=='m')) value=21
    else if((sId.charAt(0)=='N') || (sId.charAt(0)=='n')) value=22
    else if((sId.charAt(0)=='P') || (sId.charAt(0)=='p')) value=23
    else if((sId.charAt(0)=='Q') || (sId.charAt(0)=='q')) value=24
    else if((sId.charAt(0)=='R') || (sId.charAt(0)=='r')) value=25
    else if((sId.charAt(0)=='S') || (sId.charAt(0)=='s')) value=26
    else if((sId.charAt(0)=='T') || (sId.charAt(0)=='t')) value=27
    else if((sId.charAt(0)=='U') || (sId.charAt(0)=='u')) value=28
    else if((sId.charAt(0)=='V') || (sId.charAt(0)=='v')) value=29
    else if((sId.charAt(0)=='X') || (sId.charAt(0)=='x')) value=30
    else if((sId.charAt(0)=='Y') || (sId.charAt(0)=='y')) value=31
    else if((sId.charAt(0)=='W') || (sId.charAt(0)=='w')) value=32
    else if((sId.charAt(0)=='Z') || (sId.charAt(0)=='z')) value=33
    else if((sId.charAt(0)=='I') || (sId.charAt(0)=='i')) value=34
    else if((sId.charAt(0)=='O') || (sId.charAt(0)=='o')) value=35
    else fResult = false ;
  }
  if(fResult==true){
    value = Math.floor(value/10) + (value%10)*9 + parseInt(sId.charAt(1))*8 +
            parseInt(sId.charAt(2))*7 + parseInt(sId.charAt(3)) * 6 + parseInt(sId.charAt(4)) * 5 +
            parseInt(sId.charAt(5))*4 + parseInt(sId.charAt(6)) * 3+ parseInt(sId.charAt(7)) * 2+
            parseInt(sId.charAt(8)) + parseInt(sId.charAt(9)) ;
    value = value % 10 ;
    if(value!=0) fResult = false ;
    var i;
    var c;
    for (i = 1; i < sId.length; i++){
      c = sId.charAt(i);
      if (LegalID.indexOf(c) == -1) fResult = false;
    }
  }
  if(fResult == false)
    return false;
  else
    return true;
}

function check_Field_tw_id(obj,ErrMsg){
  if (!check_tw_id(obj.value)){
    if (ErrMsg != null && ErrMsg != "")
      alert(ErrMsg);
    obj.focus();
    return false;
  }
  return true;
}

function MemberVerify(obj) {
  if (!check_Field_tw_id(obj)) {
    alert(formerror + '您輸入的身份證字號格式有誤');
    obj.focus();
    return true;
  }
  return false;
}
//身分證驗證 End

//日期格式檢測 Start
function checkDateFormat (datestring,message) {
  if (datestring.length != 8 ){
    alert(message);
    return false;
  }
  return true;
}

function checkDateRange (datestring , message) {
  var c_month;
  range = new Array('31','28','31','30','31','30','31','31','30','31','30','31');
  c_month = parseInt(datestring.substring(4,6), 10);
  var year = parseInt(datestring.substring(0,4), 10)

  if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) // 閏年的判斷
    range[1] = '29'

  if (checkDateFormat(datestring , '日期長度為8碼\n日期格式:20010101')) {
    if ((datestring.substring(0,4)>'9999' || datestring.substring(0,4)<'0000') ||
        (datestring.substring(4,6)>'12' || datestring.substring(4,6)<'01') ||
        (datestring.substring(6,8)>range[c_month-1] || datestring.substring(6,8)<'01')) {
      alert(message + "日期範圍有誤\n日期格式:20010101");
      return true;
    }
  } else {
    return true;
  }
  return false;
}
//日期格式檢測 End

//E-mail驗證
function checkEmail(obj) {
if(!obj.value>5) return (false);
if(obj.value.indexOf("@",0)==-1) return (false);
if(obj.value.indexOf(".",0)==-1) return (false);
return (true);
}

//偵測加入會員格式 Start----------------------------------------------------
function addVerify(form){
//會員姓名
if(!required(form.mb_name, "會員姓名")){
return false;
}

//暱稱
if(!required(form.mb_dimi, "暱稱")){
return false;
}

//帳號
if(!required(form.mb_username, "身份証字號(帳號)")){
return false;
}
//偵測登入帳號格式有無中文字
if(! isEnglish(formMemReg.mb_username.value)) { 
alert(formerror+"*登入帳號不可輸入中文，請輸入您的身份証字號！！");
form.mb_username.focus();
return false;
}
//驗證身份証字號
if(MemberVerify(form.mb_username))
    {
         form.mb_username.focus();
         return false;
    }

//登錄密碼
if(!required(form.mb_password, "登錄密碼")){
return false;
}
//偵測密碼文字數是否相符
if(document.formMemReg.mb_password.value.length<4 || document.formMemReg.mb_password.value.length>10)
      {
         alert(formerror+"*登入密碼輸入4至10字元長的英數字！");
         document.formMemReg.mb_password.focus();
         return false;
	  }
//驗證密碼欄位是否相符合
if(form.mb_password.value != form.rty_password.value)
      {
         alert(formerror+"*驗證密碼不相符合！");
         document.formMemReg.mb_password.focus();
         return false;
	  }

//偵測出生日期
  var birthday = form.y.options[form.y.selectedIndex].value+form.m.options[form.m.selectedIndex].value+form.d.options[form.d.selectedIndex].value ;
 if( checkDateRange(birthday,'出生年月日')){
    form.y.focus();
    return false;
  }
  form.mb_birthday.value = birthday ; //賦值给mb_birthday欄位

//教育程度
if(form.mb_edu.value ==0)
	{
	alert(formerror+"*請選擇教育程度！");
	form.mb_edu.focus();
    return false;
	}
  
//職業
if(form.mb_job.value ==0)
	{
	alert(formerror+"*請選擇職業！");
	form.mb_edu.focus();
    return false;
	}

//月收入
if(form.mb_income.value ==0)
	{
	alert(formerror+"*請選擇月收入！");
	form.mb_income.focus();
    return false;
	}

//縣市
if(form.mb_city.value ==0)
	{
	alert(formerror+"*請選擇縣市！");
	form.mb_city.focus();
    return false;
	}

//鄉鎮區域
if(form.city1.value ==0)
	{
	alert(formerror+"*請選擇鄉鎮區域！");
	form.city1.focus();
    return false;
	}
//地址
if(!required(form.mb_add, "地址")){
return false;
}

//電話的檢查
  if(checkNum(form.mb_tel_area, "聯絡電話區碼")){
	form.mb_tel_area.focus();
  	return false;
  }
  if(checkNum(form.mb_tel, "聯絡電話")){
	form.mb_tel.focus();
  	return false;
  }
    if(checkNum(form.mb_cellphone, "行動電話")){
	form.mb_tel.focus();
  	return false;
  }

//E-mail驗證
if(!checkEmail(form.mb_email)){
alert(formerror + "無效的 E-mail 帳號！ 請重新檢查。")
form.mb_email.focus();
return false;
} 

}
//偵測加入會員格格式 End----------------------------------------------------


//偵測修改會員格式 Start----------------------------------------------------
function modifyVerify(form){ 
//偵測文字數是否相符

//偵測密碼文字數是否相符
if(document.formMemReg.mb_password.value.length<4 || document.formMemReg.mb_password.value.length>10)
      {
         alert(formerror+"*登入密碼輸入4至10字元長的英數字！");
         document.formMemReg.mb_password.focus();
         return false;
	  }
	  
//電話的檢查
  if(checkNum(form.mb_tel_area, "聯絡電話區碼")){
	form.mb_tel_area.focus();
  	return false;
  }
  if(checkNum(form.mb_tel, "聯絡電話")){
	form.mb_tel.focus();
  	return false;
  }
    if(checkNum(form.mb_cellphone, "行動電話")){
	form.mb_tel.focus();
  	return false;
  }
	  
} 
//偵測修改會員格格式 End----------------------------------------------------


//偵測修改密碼格式 Start----------------------------------------------------
function modifyPasswordVerify(form){
//登錄密碼
if(!required(form.mb_password, "登錄密碼")){
return false;
}
//偵測密碼文字數是否相符
if(document.form.mb_password.value.length<4 || document.form.mb_password.value.length>10)
      {
         alert(formerror+"*登入密碼輸入4至10字元長的英數字！");
         document.form.mb_password.focus();
         return false;
	  }
//驗證密碼欄位是否相符合
if(form.mb_password.value != form.rty_password.value)
      {
         alert(formerror+"*驗證密碼不相符合！");
         document.form.mb_password.focus();
         return false;
	  }
}
//偵測修改密碼格式 End----------------------------------------------------


//偵測修改會員格式 Start----------------------------------------------------
function modifyMemberVerify(form){
//會員姓名
if(!required(form.mb_name, "會員姓名")){
return false;
}

//暱稱
if(!required(form.mb_dimi, "暱稱")){
return false;
}

//教育程度
if(form.mb_edu.value ==0)
	{
	alert(formerror+"*請選擇教育程度！");
	form.mb_edu.focus();
    return false;
	}
  
//職業
if(form.mb_job.value ==0)
	{
	alert(formerror+"*請選擇職業！");
	form.mb_edu.focus();
    return false;
	}

//月收入
if(form.mb_income.value ==0)
	{
	alert(formerror+"*請選擇月收入！");
	form.mb_income.focus();
    return false;
	}

//縣市
if(form.mb_city.value ==0)
	{
	alert(formerror+"*請選擇縣市！");
	form.mb_city.focus();
    return false;
	}

//鄉鎮區域
if(form.city1.value ==0)
	{
	alert(formerror+"*請選擇鄉鎮區域！");
	form.city1.focus();
    return false;
	}
//地址
if(!required(form.mb_add, "地址")){
return false;
}

//電話的檢查
  if(checkNum(form.mb_tel_area, "聯絡電話區碼")){
	form.mb_tel_area.focus();
  	return false;
  }
  if(checkNum(form.mb_tel, "聯絡電話")){
	form.mb_tel.focus();
  	return false;
  }
    if(checkNum(form.mb_cellphone, "行動電話")){
	form.mb_tel.focus();
  	return false;
  }

//E-mail驗證
if(!checkEmail(form.mb_email)){
alert(formerror + "無效的 E-mail 帳號！ 請重新檢查。")
form.mb_email.focus();
return false;
} 

}
//偵測修改會員格格式 End----------------------------------------------------
