/*
Function Name：CheckData
功能描述：檢查欄位資料正確性
傳入參數：
1.ObjName：檢查欄位名稱，Form Name + Object Name
2.ObjLen：檢查長度
3.ObjValue：檢查值
4.AlerMsg：顯示錯誤訊息
5.CheckFlag：檢查方式，
  1:檢查長度(小於)，2:檢查值，3:是否存在某值,4:是否為數字,5:檢查是否有特殊符號,6：檢查長度(大於),7：檢查CheckBox是否有勾選
  8:大於某值,9:小於某值
傳回值：True/False
*/
function CheckData(ObjName,ObjLen,ObjValue,AlertMsg,CheckFlag){
    var blnCheck;
	var i=0;
	var j=0;
	var chstr=new Array("'",";",",");
	blnCheck=true;
    if(CheckFlag=='1') {
	   if(eval('document.' + ObjName + '.value.length <' + ObjLen)==true){ blnCheck=false; }
	}else if(CheckFlag=='2'){
	   if(eval('document.' + ObjName + '.value == \'' + ObjValue + '\'')==false){ blnCheck=false; }
	}else if(CheckFlag=='3'){
	       if(eval('document.' + ObjName + '.value.indexOf(\'' + ObjValue + '\')') ==-1){ blnCheck=false; }
	}else if(CheckFlag=='4'){
		      if(isNaN(Number(eval('document.' + ObjName + '.value')))==true){ blnCheck=false; }
	}else if(CheckFlag=='5'){
			  for(i=0;i<=chstr.length;i++){
				 if(eval('document.' + ObjName + '.value.indexOf(chstr[i]) != -1')){ blnCheck=false; break;}
			  }
	}else if(CheckFlag=='6'){
			   if(eval('document.' + ObjName + '.value.length >' + ObjLen)==true){ blnCheck=false; }
	}else if(CheckFlag=='7'){
		      for(i=0;i<=ObjLen;i++){
			     if(eval('document.' + ObjName + '[' + i + '].checked')==true){j++;}					 
			  }
			  if(j==0){ 
			     blnCheck=false; 
				 eval('document.' + ObjName + '[0].checked==true');
			  }
	}else if(CheckFlag=='8'){
			   if(eval('document.' + ObjName + '.value > ' + ObjValue)==true){ blnCheck=false; }
	}else if(CheckFlag=='9'){
			   if(eval('document.' + ObjName + '.value < ' + ObjValue)==true){ blnCheck=false; }
	}
	if (blnCheck==false){
		if (AlertMsg!='') { alert(AlertMsg); }
		if(CheckFlag!='7') { eval('document.' + ObjName + '.focus()'); }
		return false;
	}else{
	    return true;
	}
}
/*
Function Name：ShowErrMsg
功能描述：顯示錯誤訊息，並focus在Object
傳入參數：
1.ErrMsg：顯示的錯誤訊息
2.ErrObj：Form Name + Object Name
傳回值：無
*/
function ShowErrMsg(ErrMsg,ErrObj){
  if(ErrMsg != ''){
	  alert(ErrMsg);
	  eval("document." + ErrObj + ".focus();");
  }
}
/*
Function Name：CheckLogin
功能描述：檢查登入表單
傳入參數：無
傳回值：True/False
*/
function CheckLogin(){
  if(CheckData('Login.Name','3','','請輸入您的登入帳號！','1')==false){return false;}
  if(CheckData('Login.Password','5','','請輸入您的登入密碼！','1')==false){return false;}
  return true;
}
/*
Function Name：ConfirmMsg
功能描述：顯示確認的訊息框，例如是否確定刪除
傳入參數：
1.ErrMsg：確認的訊息
傳回值：True/False
*/
function ConfirmMsg(ErrMsg){
  if(ErrMsg != ''){
	  if(window.confirm(ErrMsg)){return true;}
	  return false;
  }
}
/*
Function Name：Form_Submit
功能描述：各個列表中送出新增/修改/刪除表單使用
傳入參數：
1.Flag：1表新增,2表修改,3表刪除，並轉到FormNum+02.asp,4表刪除，並轉到FormNum+03.asp
2.FormNum：表單名稱中的數字
傳回值：true/false
*/
function Form_Submit(Flag,FormNum){
  if(Flag==1){
     window.location.href='shop' + FormNum + '01.asp?Flag=1';
  }else if(Flag==2){
			 if((CheckData('Form' + FormNum + '.ID','1','','請輸入序號！','1')==false) || (CheckData('Form' + FormNum + '.ID','','','請輸入序號！','4')==false)){
				return false;
			 }else{
				   window.location.href='shop' + FormNum + '01.asp?Flag=2&ID=' + eval('document.Form' + FormNum + '.ID.value');
			 }	
  }else if(Flag==3 || Flag==4){
			 if((CheckData('Form' + FormNum + '.ID','1','','請輸入序號！','1')==false) || (CheckData('Form' + FormNum + '.ID','','','請輸入序號！','4')==false)){
				return false;
			 }else{
			       if(ConfirmMsg('請問是否確定刪除？')){ 
				      if (Flag==3){window.location.href= 'shop' + FormNum + '02.asp?Flag=3&ID=' + eval('document.Form' + FormNum + '.ID.value');};
					  if (Flag==4){window.location.href= 'shop' +FormNum + '03.asp?Flag=3&ID=' + eval('document.Form' + FormNum + '.ID.value');};
				   }
			 }	  
  }
  return false;
}
/*
Function Name：Form_Submit2
功能描述：各個列表中送出新增/修改/刪除表單使用
傳入參數：
1.Flag：1表新增,2表修改,3表刪除，並轉到FormNum+02.asp,4表刪除，並轉到FormNum+03.asp
2.FormNum：表單名稱中的數字
3.OtherVar：其他參數
傳回值：true/false
*/
function Form_Submit2(Flag,FormNum,OtherVar){
  if(Flag==1){
     window.location.href='shop' + FormNum + '01.asp?Flag=1' + OtherVar;
  }else if(Flag==2){
			 if((CheckData('Form' + FormNum + '.ID','1','','請輸入序號！','1')==false) || (CheckData('Form' + FormNum + '.ID','','','請輸入序號！','4')==false)){
				return false;
			 }else{
				   window.location.href='shop' + FormNum + '01.asp?Flag=2&ID=' + eval('document.Form' + FormNum + '.ID.value') + OtherVar;
			 }	
  }else if(Flag==3 || Flag==4){
			 if((CheckData('Form' + FormNum + '.ID','1','','請輸入序號！','1')==false) || (CheckData('Form' + FormNum + '.ID','','','請輸入序號！','4')==false)){
				return false;
			 }else{
			       if(ConfirmMsg('請問是否確定刪除？')){ 
				      if (Flag==3){window.location.href= 'shop' + FormNum + '02.asp?Flag=3&ID=' + eval('document.Form' + FormNum + '.ID.value')+ OtherVar;};
					  if (Flag==4){window.location.href= 'shop' + FormNum + '03.asp?Flag=3&ID=' + eval('document.Form' + FormNum + '.ID.value')+ OtherVar;};
				   }
			 }	  
  }
  return false;
}
/*
Function Name：Form_Submit_1
功能描述：單純送出表單
傳入參數：
1.FormNum：表單名稱中的數字
傳回值：無
*/
function Form_Submit_1(FormNum){
   eval('document.Form' + FormNum +'.submit();');
}
/*
Function Name：ShowDay
功能描述：顯示日期
傳入參數：
1.Obj：Form Name+Object Name
2.Num：顯示的日期
傳回值：無
*/
function ShowDay(Obj,Num) {  
    var x=0; 
	var y="document." + Obj +"_Y";
	var m="document." + Obj +"_M";
	var d="document." + Obj +"_D";
	var yi=eval("document." + Obj +"_Y.selectedIndex");
	var mi=eval("document." + Obj +"_M.selectedIndex");	
    var ar=new Array(1,31,2,28,3,31,4,30,5,31,6,30,7,31,8,31,9,30,10,31,11,30,12,31);
	for (i=eval(d +".options.length")-1;i>=0;i--) {
        eval(d + ".options[" + i + "]=null;");
    } 

	if (eval(m + ".options[" + mi +"].value")==2){
        if((eval(y + ".options[" + yi + "].value")-2000) % 4 == 0 ){
		   x=29;
		}else{
		   x=28;
		}
	}else{
	
	      for(i=0;i<ar.length;i+=2){
		      if(eval(m + ".options[" + mi + "].value")==ar[i]){
			     x=ar[i+1];
			  }
		  } 
	}	
	for (i=1;i<=x;i++) {
		eval(d + ".options[" + (i-1) + "]=new Option(" + i + "," + i +")");
	} 
	eval(d+".options[" + (Num-1) + "].selected=true");
}
/*
Function Name：chknum
功能描述：檢查統一編號
傳入參數：
1.No：統一編號
傳回值：True/False
*/
function chknum(NO){
	var cx = new Array;
	cx[0] = 1;
	cx[1] = 2;
	cx[2] = 1;
	cx[3] = 2;
	cx[4] = 1;
	cx[5] = 2;
	cx[6] = 4;
	cx[7] = 1;
  var SUM = 0;
  if (NO.length != 8) {
    return "統編錯誤，要有 8 個數字";
  }
  var cnum = NO.split("");
  for (i=0; i<=7; i++) {
    if (NO.charCodeAt() < 48 || NO.charCodeAt() > 57) {
      return"統編錯誤，要有 8 個 0-9 數字組合";
    }
    SUM += cc(cnum[i] * cx[i]);
  }
  if (SUM % 10 == 0) return "";
  else if (cnum[6] == 7 && (SUM + 1) % 10 == 0) return "";
  else return "統一編號："+NO+" 錯誤!";
}
/*
Function Name：chk
功能描述：檢查身份証字號
傳入參數：
1.obj：form object
傳回值：True/False
*/
function chk(obj){
var ID_Load=eval('document.'+obj+'.value.toUpperCase();');
if (ID_Load.length !=10){
    alert('請輸入正確的身分證號碼!');
    eval('document.'+obj+'.focus();');
    return false;
}
var ID_Input = new Array(10);
for (var i=0;  i<10 ;  i++){ID_Input[i] = ID_Load.charAt(i);}
var ENGString = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
ID_Input[0] = ENGString.indexOf(ID_Input[0]);
if (ID_Input[0] == -1){
    alert('請輸入正確的身分證號碼!');
    eval('document.'+obj+'.focus();');
    return false;
}
if (ID_Input[1] !=1 && ID_Input[1] !=2){
   alert('請輸入正確的身分證號碼!');
   eval('document.'+obj+'.focus();');
   return false;
}
var NumArray = new Array(26);
NumArray[0]=1;NumArray[1]=10;NumArray[2]=19;
NumArray[3]=28;NumArray[4]=37;NumArray[5]=46;
NumArray[6]=55;NumArray[7]=64;NumArray[8]=39;
NumArray[9]=73;NumArray[10]=82;NumArray[11]=2;
NumArray[12]=11;NumArray[13]=20;NumArray[14]=48;
NumArray[15]=29;NumArray[16]=38;NumArray[17]=47;
NumArray[18]=56;NumArray[19]=65;NumArray[20]=74;
NumArray[21]=83;NumArray[22]=21;NumArray[23]=3;
NumArray[24]=12;NumArray[25]=30;
var result = NumArray[ID_Input[0]]
for (var i=1; i<10;i++){
     var NumString = '0123456789';
     ID_Input[i] = NumString.indexOf(ID_Input[i]);
     if (ID_Input[i] == -1){
         alert('請輸入正確的身分證號碼!');
		 eval('document.'+obj+'.focus();');
         return false;
     }else{
	     result += ID_Input[i] *(9-i);
	 }
}
result += 1* ID_Input[9];
if (result % 10 != 0){
   alert('請輸入正確的身分證號碼!');
   eval('document.'+obj+'.focus();');
   return false;
}
return true;
}

