//-------------------------------------------------------------------------------------
//一般於List頁面可能執行動作
//ActionName=處裡這個動作的程式網頁
//actValue=處裡動作
//ShowChk 是否秀確認訊息框  1秀 0不秀 配合Msg 用
//Msg 確認訊息!!!
//ActID1 ActID2 執行時所需傳遞的參數列如 修改或刪除 使用
//sStatus 設定某種狀態時使用 
//--------------------------------------------------------------------------------------

function Form_Action(frm, ActionName, ActValue, ActID, sStatus, ShowChk, Msg){
	if (ShowChk=="1"){
		if (confirm(Msg)){
			frm.target = "_self" ;
			frm.action=ActionName;
			frm.todo.value =ActValue ;
			frm.ActionID.value=ActID;
			frm.Status.value=sStatus
			frm.submit();
		}
	}
	else{
		frm.target = "_self" ;
		frm.action =ActionName;
		frm.todo.value = ActValue;
		frm.ActionID.value=ActID;
		frm.Status.value=sStatus
		frm.submit();
	}
}

//-------------------------------------------------------------------------------------
//開新視窗訊息
//url:連結網址
//Title:新視窗標題
//height:新視窗高度
//width:新視窗寬度
//resizable:更改新視窗控制點大小 Yes or no
//scrollbars:新視窗捲抽 Yes or no
//status:新視窗狀態列 Yes or no
//toolbar:新視窗瀏覽工具 Yes or no
//menubar:選單列 Yes or no
//locationbar:位址工具列 Yes or no
//Msg:要產生的訊息內容
//ImageType:圖示 0(沒有圖示) or 1(提示訊息) or 2(警告訊息) or 3(xx訊息)
var Sys_MessageBox=null;
function OpenNewWindowsMsg(url, Title, height, width, resizable, scrollbars, status, toolbar, menubar, locationbar, Msg, ImageType){
	var LinkURLMsg;
	if (Msg != null){
		LinkURLMsg = url+"?Title="+Title+"&Msg="+Msg+"&ImageType="+ImageType
	}else{
		LinkURLMsg = url
		}
	if (Sys_MessageBox != null && Sys_MessageBox.open) Sys_MessageBox.close();	
	Sys_MessageBox = window.open(LinkURLMsg,'訊息框','"'+" height="+height+" ,width="+width+",resizable="+resizable+",scrollbars="+scrollbars+",status="+status+",toolbar="+toolbar+",menubar="+menubar+",location="+locationbar+""+'"');
	Sys_MessageBox.focus();

}

//-------------------------------------------------------------------------------------
//選擇全部或是取消全部
//form
//tagname 是 checkbox 的名稱
//val是要不要選擇,0是不選,1是要選
//-------------------------------------------------------------------------------------
function SelectAllChkBox(form, tagname, val){
	for( var i=0 ; i<form.elements.length ; i++){
		if (form.elements[i].name.indexOf(tagname) != -1 && form.elements[i].type=='checkbox'){ 
			form.elements[i].checked = val;
		}
	}
}

//----------------------------------------------------------
//固定Select
function fixedSelect(objSelect, selectedValue){
	for(i=0; i<objSelect.options.length; i++){
		if(objSelect.options[i].value == selectedValue){
			objSelect.selectedIndex = i ;
			break ;
		}	    	
	}
}

//-------------------------------------------------------------------------------------
//確認是否有空白  範例: if (!checkEmpty(form.NICKNAME,"請輸入暱稱！！")) return ;
function checkEmpty(obj, msg) 
{
	var field = new String(obj.value);
	if (field.length == 0) {
		alert(msg);
		obj.focus();
		return false;
	}
	return true;
}

//-------------------------------------------------------------------------------------
// 確認  範例: Email 範例: if (!checkEmail(form.myEmail) return ;
function checkEmail(obj){
    if  (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(obj.value)){
          return (true);
    }
    alert("E-mail地址不正確");
	obj.focus();
    return  (false);
}

//-------------------------------------------------------------------------------------
//判斷email是否正確 範例: if (!checkEmail_2(form.myEmail) return ;
function checkEmail_2(obj)
{
	var email = new String(obj.value);
	if (!(email.indexOf("@") > 0) || !(email.indexOf("@") < email.length-1)) 
	{
		alert("E-mail地址不正確");
		obj.focus();
		return false;
	}
	return true;
}

//-------------------------------------------------------------------------------------
//確認是否選擇 RadioBox 或是 CheckBox 範例: if (!checkRadio_CheckBox_Empty(form.NICKNAME,"請選擇AAA！！")) return ;
function checkRadio_CheckBox_Empty(obj, msg){
	var have_value;
	have_value="0";
	for(i=0; i<obj.length; i++){
		if(obj[i].checked == true){
			have_value="1";
		}	    	
	}
	if (have_value=="0"){
		alert(msg);
		return false;
	}
	return true;
}

//-------------------------------------------------------------------------------------
//判斷是否有選擇  範例: if (!checkSelectEmpty(form.AAAA,"請選擇AAA！！")) return ;
function checkSelectEmpty(Obj,msg)
{
	if (Obj.options[Obj.selectedIndex].value == '')
	{
		alert(msg);
		Obj.focus();
		return false;
	}
	return true;
}

//-------------------------------------------------------------------------------------
// 確認 中華民國身份證號 範例: if (!idCheck(form.m_Id)) return ;
// objID 物件名稱　如frmAction.TextName
//-------------------------------------------------------------------------------------

function idCheck(objID){
	id = objID.value	
	if (id == null || id.length == 0){
		alert("請輸入您的身分證號碼！");
		objID.focus();
		return false;
	}
	id = id.toUpperCase();
	
	if (id.length != 10){
		alert("您輸入的身分證號碼有誤！");
		objID.focus();
		return false;
	}
	var ID_Input = new Array(10);
	
	for (var i=0 ; i<10 ; i++){
		ID_Input[i] = id.charAt(i);
	}
	var engstring = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
	ID_Input[0] = engstring.indexOf(ID_Input[0]);
	
	if(ID_Input[0] == -1){
		alert("身分證號碼錯誤！");
		objID.focus();
		return false;
	}

	if (ID_Input[1] != 1 && ID_Input[1] != 2){
		alert("身分證號碼錯誤！");
		objID.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("身分證號碼錯誤!");
			objID.focus();
			return (false);
		}
		else{
			result += ID_Input[i] * (9-i);
		}
	}
	result += 1 * ID_Input[9];
	
	if (result % 10 != 0){
		alert("身分證號碼錯誤!");
		objID.focus();
		return (false);
	}
	else{
		objID.value=id;
		return true;
	}
}

//-------------------------------------------------------------------------------------
//圖片從新跟改圖片大小
//objImg :要固定大小的HTML物件<Img src> 
//MaxWidth：圖片最大寬度
//MaxHeight：圖片最大高度
//-------------------------------------------------------------------------------------
function ToResizeImg(objImg,MaxWidth,MaxHeight)
{
	var iLimitWidth=MaxWidth;
	var iLimitHeight=MaxHeight;
	var	iImgWidth=objImg.width;
	var iImgHeight=objImg.height;
	
	if (iImgWidth>iImgHeight){
		if (iImgWidth>iLimitWidth){
			objImg.width=iLimitWidth;
		}	
	}else{
		if (iImgHeight>iLimitHeight){
			objImg.height=iLimitHeight;
		}
	}
}

//秀子選單的程式
function fmenu(obj){
	if( obj.style.display == "none")
		obj.style.display = "block";
	else
		obj.style.display = "none";
}

//-------------------------------------------------------------------------------------
//以下為MENU 使用JS
//-------------------------------------------------------------------------------------

//---------------------------------------------
//開始計時的時間
var mmStart;
//等待隱藏時間的長短
var timeout=500;
//等待隱藏的物件
var mmInTimerobj;
//目前在計時的程序
var mmHideMenuTimer=null;
//不能隱藏Div名稱
var NotHiddenDivs = new Array(); 
//---------------------------------------------
//取得絕對位置程式
function getPos(el,sProp)  
{
	var iPos = 0;
	while (el!=null)  
　　 {
		iPos+=el["offset" + sProp];
		el = el.offsetParent;
	 } 
    return iPos;
}  

//---------------------------------------------
//清除計時的程序
function MM_clearTimeout() {
	if (mmHideMenuTimer){
		clearTimeout(mmHideMenuTimer);	
		mmHideMenuTimer = null;
	}
}

//---------------------------------------------
//開始一個計時程序每500毫秒一次
function MM_startTimeout() {
	NotHiddenDivs=null;
	mmStart = new Date();
	mmHideMenuTimer = setTimeout("mmDoHide()", 500);
}

//---------------------------------------------
//判斷隱藏的程式
function mmDoHide() {
	var elapsed = new Date() - mmStart;
	if (elapsed < timeout) {
		mmHideMenuTimer = setTimeout("mmDoHide()", timeout+100-elapsed);
		return;
	}
	ToHiddenAllDiv();
	mmHideMenuTimer=null;
}
//---------------------------------------------
//發現物件
function FIND(item) {
	if( window.mmIsOpera ) return(document.getElementById(item));
	if (document.all) return(document.all[item]);
	if (document.getElementById) return(document.getElementById(item));
	return(false);
}

//---------------------------------------------
//設定不能隱藏DIV 及顯示DIV
function ShowMenu(el,NotHiddenDivStr,actMenu,isRoot){
	var ActiveMenu;
	MM_clearTimeout();	
	if (!NotHiddenDivs){
		NotHiddenDivs = NotHiddenDivStr.split(",");	
		ToHiddenAllDiv();
	}
	if (FIND(actMenu)){
		ActiveMenu=FIND(actMenu);
		if (ActiveMenu) {
			if (isRoot=='root'){
				ActiveMenu.style.pixelLeft=getPos(el.offsetParent,"Left"); 
				ActiveMenu.style.pixelTop=getPos(el.offsetParent,"Top") + el.offsetParent.offsetHeight-5;
			}else{
				ActiveMenu.style.pixelLeft=getPos(el.offsetParent,"Left")+el.offsetWidth-5;
				ActiveMenu.style.pixelTop=getPos(el.offsetParent,"Top")+5;
			}
			ActiveMenu.style.position='absolute'; 
			ActiveMenu.style.display='block'; 
		}
	}
}
//---------------------------------------------
//隱藏所有可隱藏的DIV
function ToHiddenAllDiv(){
	var Divstr,hiddenFlg;
	for (var i=0; i<50; i++) {
		Divstr="menuDiv_"+i;
		hiddenFlg=true;
		if (NotHiddenDivs){
			for (var j=0;j<NotHiddenDivs.length;j++){	
				if (NotHiddenDivs[j]==Divstr){
					hiddenFlg=false;
				}			
			}
		}
		if (hiddenFlg){
			if (FIND("menuDiv_"+i)){
				var toHiddenDiv = FIND("menuDiv_"+i);
				toHiddenDiv.style.display='none';
			}
		}
	}
}
//---------------------------------------------
//不做任何事件時
function NoEven(){
	return;
}

//-------------------------------------------------------------------------------------
//以上為MENU 使用JS
//-------------------------------------------------------------------------------------
//-------------------------------------------------------------------------------------
//跑馬燈的jacascript開始
//-------------------------------------------------------------------------------------
	var SlideMode=5;
	function ScrollObject(){
		SlideEnd=-(SlideObj.offsetWidth/2);
		SlideObj.style.posLeft-=SlideMode;
		SlideObj.style.posLeft=SlideObj.style.posLeft<=SlideEnd?0:SlideObj.style.posLeft>0?SlideEnd:SlideObj.style.posLeft;
		setTimeout("ScrollObject();",200);
	}
	
	//-------------------------------------------------------------------------------------
	//取得絕對位置程式
	function getPos(el,sProp)  
	{
		var iPos = 0;
		while (el!=null)  
	　　 {
			iPos+=el["offset" + sProp];
			el = el.offsetParent;
		 } 
		return iPos;
	}  
//-------------------------------------------------------------------------------------
//跑馬燈的jacascript結束
//-------------------------------------------------------------------------------------
