﻿function check_identity ( id )
{
    if(id.length == 0){
        return '您的身分證字號還沒填呢！\n\n';
    }
    
    var myid = id;
    myid = myid.toUpperCase();
    id = myid;
    if(myid.length>10)
        return "您的身分證字號超過10個字 !\n\n";
    if(myid.length<10)
        return "您的身分證字號不滿10個字 !\n\n";
    
	var c = myid.charAt(0);
    
	if(c<"A" || c> "Z")
        return "您的身分證字號第一碼必須是大寫的英文字母 !\n\n";
    
	c = myid.charAt(1);
    if(c!="1" && c!="2")
        return "您的身分證字號第二碼有問題 !\n\n";
    
	for(i=1;i<10;i++)
        if(isNaN(parseFloat(myid.charAt(i))))
            return "您的身分證字號第二到十碼有問題 !\n\n";
    
        var alph = new Array("A","B","C","D","E","F","G","H","J","K","L","M","N","P","Q","R","S","T","U","V","X","Y","W","Z","I","O");
        var num = new Array("10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","27","28","29","30","31","32","33","34","35");
        var n=0;
    
        for(i=0;i<alph.length;i++)
            if(myid.charAt(0)==alph[i])
                n=i;
        var tot1 = parseFloat(num[n].charAt(0)) + (parseFloat(num[n].charAt(1)) * 9);
        var tot2 = 0;
    
        for(i=1;i<myid.length-1;i++)
            tot2 = tot2 + parseFloat(myid.charAt(i))*(9-i);
    
        var tot3 = parseFloat(myid.charAt(9));
        var tot4 = tot1 + tot2 + tot3;
    
        if((tot4 % 10)!=0)
            return "您的身分證字號有問題 !\n\n";
	
	return "";
}

function chkBIDNO(strID) {
   var KeyNum = new Array(1,2,1,2,1,2,4,1);
   var isum = 0;
   if ((strID.length == 8) || (strID.length > 0)) {
	for (i=0; i<8; i++) {
		strNUM = parseInt(strID.substring(i,i+1));
		if (strNUM != 0) isum += (KeyNum[i]*strNUM%9 == 0)? 9 : KeyNum[i]*strNUM%9;
	}

	if (strID.substring(6,7) == '7') {
		 if (isum%10 != 0 && (isum-1)%10 != 0) var chk = true; }
	else { if (isum%10 != 0) var chk = true; }

	if (chk) {
		return "輸入的不是正確的「統一編號」！\n";
	}
  }else { 
	return "請輸入正確的8碼「統一編號」！\n"; 
  }
  return "";
}
