//alert Message
$(document).ready(function(){
	if(typeof alertMsg == 'function') { 
			alertMsg(); 
		}
});


function checkDate(strDate){
    var reg=/^(\d{4})(\d{2})(\d{2})$/;
    if(!reg.test(strDate)){
        alert("日期格式不正確!\n正確格式為 yyyymmdd:20040101");
        return false;
    }
    return true;
}


//檢核email 格式
function isEmail(email){
	  if (email=="") return true;
	  reEmail=/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/
	  return reEmail.test(email);
  }
  
/* 
  *  drsc   : 欄位說明 
	*  purpose   : 驗證字串長度是否超過限制 
	*  inputStr  : 檢核的字串,欄位長度限制 
	*/
function compareLength(dscr,obj,limitLength){

	var textLenght= parseInt(countLength($(obj).val()),10);
	var limit=parseInt(limitLength,10);
		
	if(textLenght > limit){
		alert(dscr+"不可超過"+limitLength+"個字 ");
		obj.focus();
		return false;
	}
	
	return true;
}


//only number and .
  function onlyNum(objTR)
	{               
       var txtval=objTR.value;                
       var key = event.keyCode;

       if((key < 48||key > 57)&&key != 46){                
         event.keyCode = 0;
       }else{
         if(key == 46){
             if(txtval.indexOf(".") != -1||txtval.length == 0)
              	event.keyCode = 0;
             }
       }
	}
	
	//檢核欄位是否都是數字
function checkNumbers(objectName,keyWord){
	var strPattern = /[^0-9]/;
    var str = $(keyWord).val();
    
    if(str != "" && str != undefined && strPattern.test(str) == true){
    	alert(objectName + "必需是數字 ");
    	$(obj).focus();
    	return false;
    }
    
    return true;
}

//檢核輸入10碼門號長度
 	function validatePhoneNumber(obj){
 		var num= $(obj).val();
 		if(num){
 			if(num.indexOf('%') < 0){
 				if(num.length != 10){
 					alert("請輸入10碼行動電話號碼！ ");
 					$(obj).focus();
 					return false;
 				}
 				
 				if(!checkNumbers("行動電話號碼",obj)){
 					return false;
 				}
 			}
 		}
 		return true;
 	}


function countLength(stringToCount) {
    var c = stringToCount.match(/[^ -~]/g); 
    return stringToCount.length + (c ? c.length : 0);   
}


//===== check 統編 ===============================================
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) {
    alert("統編錯誤，要有 8 個數字 ");
    return false;
  }
  var cnum = NO.split("");
  for (i=0; i<=7; i++) {
    if (NO.charCodeAt() < 48 || NO.charCodeAt() > 57) {
      alert("統編錯誤，要有 8 個 0-9 數字組合 ");
      return false;
    }
    SUM += cc(cnum[i] * cx[i]);
  }
  if (SUM % 10 == 0) return true;
  else if (cnum[6] == 7 && (SUM + 1) % 10 == 0) return true;
  else{
    alert("統一編號："+NO+" 錯誤! ");
    return false;
  }
}

function cc(n){
  if (n > 9) {
    var s = n + "";
    n1 = s.substring(0,1) * 1;
    n2 = s.substring(1,2) * 1;
    n = n1 + n2;
  }
  return n;
}

//=====check 身分證字號 return true or false
function IDcheck(idno){
  if (idno.length == 10) {
    var compstr,pos,checksum;
    checksum = 0;
	cmpstr="ABCDEFGHJKLMNPQRSTUVXYWZIO";
	pos=cmpstr.indexOf((idno.charAt(0)).toUpperCase());
    if(pos == -1 || isNaN(idno.substring(1,9)))
       return false;
    else   {
        pos = pos + 10;
        checksum = Math.floor(pos/10) + (pos - (Math.floor(pos/10)*10) )*9;
		var checksum = checksum+8*parseInt(idno.charAt(1))+7*parseInt(idno.charAt(2))+6*parseInt(idno.charAt(3))+5*parseInt(idno.charAt(4))+4*parseInt(idno.charAt(5))+3*parseInt(idno.charAt(6))+2*parseInt(idno.charAt(7))+1*parseInt(idno.charAt(8))+1*parseInt(idno.charAt(9));
		var check1 = parseInt(checksum/10);
		var check2 = checksum/10;
		var check3 = (check2-check1)*10;
		if (checksum == check1*10) { return true; }
		else {
		  if (parseInt(idno.charAt(9)) == (10-check3)) { return true; }
		  else { return false; }
		}
	}
  }
  else
    return false;
}


function MM_goToURL() { 
  		var i, args=MM_goToURL.arguments; document.MM_returnValue = false;
  		for (i=0; i<(args.length-1); i+=2)  
			 eval(args[i]+".location='"+args[i+1]+"'");
}


function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_preloadImages() { //v3.0
	  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
	    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
	    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

