﻿var m_blnMenuWait = false;

function ElementClientTop(objCtl) {
    var intTop = 0;

    if (objCtl.offsetParent) {
        do {
            intTop += objCtl.offsetTop;
        } while (objCtl = objCtl.offsetParent)
    }
    else if (objCtl.y) {
        curLeft += objCtl.y;
    }
    return intTop;
}
function ElementClientLeft(objCtl) {
    var intLeft = 0;

    if (objCtl.offsetParent) {
        do {
            intLeft += objCtl.offsetLeft;
        } while (objCtl = objCtl.offsetParent)
    }
    else if (objCtl.x) {
        curLeft += objCtl.x;
    }
    return intLeft;
}

function MenuMouseOver(strSubMenuID, intTop, intLeft) {
    var i;

    m_blnMenuWait = false;
    for (i = 0; i < m_arySubMenuID.length; i++) {
        if (strSubMenuID != m_arySubMenuID[i])
            document.getElementById(m_arySubMenuID[i]).className = "menu2_display_none";
    }

    with (document.getElementById(strSubMenuID)) {
        className = "";
        style.position = "absolute";
        style.top = String(intTop) + "px";
        style.left = String(intLeft) + "px";
    }
}

function MenuMouseOut() {
    m_blnMenuWait = true;
    window.setTimeout("OnMenuWaitTimeOut()", 500)
}

function OnMenuWaitTimeOut() {
    var i;

    if (m_blnMenuWait == false) return;

    for (i = 0; i < m_arySubMenuID.length; i++)
        document.getElementById(m_arySubMenuID[i]).className = "menu2_display_none";
    m_blnMenuWait = false;
}        



function MenuExpend(strUlMenu2) {
    var ulMenu2 = document.getElementById(strUlMenu2);

    ulMenu2.className = (ulMenu2.className == "" ? "menu2_display_none" : "");
}

function SubMenuExpend(strUlMenu2, strSPANLink) {
    var ulMenu2 = document.getElementById(strUlMenu2);
    var SPANLink = document.getElementById(strSPANLink);
    var ULChild = document.getElementById("LSMUL").childNodes;

    ulMenu2.className = (ulMenu2.className == "" ? "menu2_display_none" : "");
    
    for (var i = 0; i < ULChild.length; i++) {
        if (ULChild[i].nodeName.toUpperCase() == "LI") {
            var LIChild = ULChild[i].childNodes;
            for (var j = 0; j < LIChild.length; j++) {
                if (LIChild[j].nodeName.toUpperCase() == "SPAN") {
                    LIChild[j].className = "LSMSPAN";
                    break;
                }
            }
        }
    }

    SPANLink.className = "LSMSPANSelected";
}



function WriteCookie(strName, strValue, intDays) {
    var dteExpires = new Date();
    var strExpires;

    if (intDays) {
        dteExpires.setTime(dteExpires.getTime() + intDays * 24 * 60 * 60 * 1000);
        strExpires = "; expires=" + dteExpires.toGMTString();
    }
    else
        strExpires = ""

    document.cookie = strName + "=" + strValue + strExpires + "; path=/";
}

function ReadCookie(strName) {
    if (!document.cookie) return null;
    
    var aryCookie = document.cookie.split(";");
    
    strName += "=";
    
    for (var i = 0; i < aryCookie.length; i++) {
        strCookie = aryCookie[i];
        while (strCookie.charAt(0) == ' ')
            strCookie = strCookie.substring(1, strCookie.length);
        if (strCookie.indexOf(strName) == 0) return strCookie.substring(strName.length, strCookie.length);
    }
    return null;
}

function ChagneFontSize(strFontSize) {
    var i, aryLink = document.getElementsByTagName("link");

    for (i = 0; i < aryLink.length; i++) {
        if (aryLink[i].getAttribute("target") == "font_size") {
            aryLink[i].disabled = true;
            if (aryLink[i].getAttribute("title") == strFontSize)
                aryLink[i].disabled = false;
        }
    }

    SetFontClassName("font_small", strFontSize);
    SetFontClassName("font_middle", strFontSize);
    SetFontClassName("font_large", strFontSize);

    WriteCookie("font_size", strFontSize, 365);
}

function SetFontClassName(strID, strSelected) {
    var strClassName = "font_size " + strID
    var objElement = document.getElementById(strID);
    if (objElement) {
        if (strID == strSelected) strClassName += "_selected"
        objElement.className = strClassName;
    } 
}

function LoadFontSize() {
    var strFontSize = ReadCookie("font_size");
    if (strFontSize == null) strFontSize = "font_middle";

    ChagneFontSize(strFontSize);
}

LoadFontSize();




var m_intAdNo = 0;
var m_intAdInterval;

function AdButtonID(intAdNo) {
    return "btn_ad_" + String(intAdNo + 1);
}

function AdChange(intNewNo) {
    document.getElementById(m_aryAd[m_intAdNo]).className = "image_hide";
    document.getElementById(AdButtonID(m_intAdNo)).className = ""
    if (intNewNo == undefined)
        m_intAdNo += 1;
    else
        m_intAdNo = intNewNo;
    if (m_intAdNo >= m_aryAd.length) m_intAdNo = 0
    document.getElementById(m_aryAd[m_intAdNo]).className = "image_show";
    document.getElementById(AdButtonID(m_intAdNo)).className = "selected"
}

function SetAdInterval() {
    m_intAdInterval = setInterval("AdChange()", 6000)
}

function ResetAdInterval(objButton) {
    var intNewNo = Number(objButton.value) - 1;
    clearInterval(m_intAdInterval);
    AdChange(intNewNo);
    SetAdInterval();
}

function CreateAdButtons() {
    var i;
    var objTd = document.getElementById('ad_button')

    for (i = 0; i < m_aryAd.length; i++) {
        var objButton = document.createElement('input');
        objButton.type = 'button';
        objButton.id = AdButtonID(i);
        objButton.title = m_aryAdDesc[i];
        objButton.value = (i + 1);
        if (i == m_intAdNo) objButton.className = "selected"
        objButton.onclick = function() { ResetAdInterval(this) };
        objTd.appendChild(objButton);
    }

    SetAdInterval();
}



var funOldOnload = window.onload;
if (typeof window.onload == 'function') {
    window.onload = function() {
        funOldOnload();
        LoadFontSize();
    }
}
else
    window.onload = LoadFontSize;


//*****欄位輸入限制*****//

//onKeyPress
function checkKeyPress(ctl, reg) {
    if (ctl.readOnly || ctl.disabled) return;
    var docSel = document.selection.createRange();
    if (docSel.parentElement().tagName != "INPUT") return false;
    var oSel = docSel.duplicate();
    //    var oSel=docSel;
    oSel.text = "";
    var srcRange = ctl.createTextRange();
    oSel.setEndPoint("StartToStart", srcRange);
    var str = oSel.text + String.fromCharCode(window.event.keyCode) + srcRange.text.substr(oSel.text.length);
    if (window.event.keyCode != 13) {
        if (!reg.test(str))
            window.event.keyCode = 0;
    }
}

function transToUpper() {
    window.event.keyCode = String.fromCharCode(window.event.keyCode).toUpperCase().charCodeAt(0);
}


// 首頁上方功能下拉選單
function ShowMenuTop(strContentParentDiv, intIndex, objElement, strImage, strIndex) {
    var divChild = document.getElementById(strContentParentDiv).childNodes;
    var intCount = 0;

    document.getElementById(strImage).src = "../images/version_1/menu_top_" + strIndex + "_f.gif";

    for (var i = 0; i < divChild.length; i++) {
        if (divChild[i].nodeName.toUpperCase() == "DIV") {
            divChild[i].style.visibility = ((intCount == intIndex) ? "visible" : "hidden");
            divChild[i].style.left = parseInt(getOffsetLeft(objElement)) + "px";
            intCount++;
        }
    }
    DropDownListControl("hidden");
}
function CloseMenuTop(strContentParentDiv, strImage, strIndex) {
    var divChild = document.getElementById(strContentParentDiv).childNodes;

    document.getElementById(strImage).src = "../images/version_1/menu_top_" + strIndex + ".gif";

    for (var i = 0; i < divChild.length; i++) {
        if (divChild[i].nodeName.toUpperCase() == "DIV") {
            divChild[i].style.visibility = "hidden";
        }
    }
    DropDownListControl("visible");
}
function getOffsetLeft(o) {
    var left = 0;
    var offsetParent = o;
    while (offsetParent != null && offsetParent != document.body) {
        left += offsetParent.offsetLeft;
        offsetParent = offsetParent.offsetParent;
    }
    return left;
}
function DropDownListControl(strVisibility) {
    var isIE = navigator.userAgent.search("MSIE") > -1;
    if (!isIE)
        return;
    var objSelect = document.getElementsByTagName("select");

    for (var i = 0; i < objSelect.length; i++)
        objSelect[i].style.visibility = strVisibility;
}



//中央內容區塊-新聞
function ChangeTab(strParentUl, strContentParentDiv, intIndex) {
    var ulChild = document.getElementById(strParentUl).childNodes;
    var divChild = document.getElementById(strContentParentDiv).childNodes;
    var intCount = 0;
    var strClassName = "";

    for (var i = 0; i < ulChild.length; i++) {
        if (ulChild[i].nodeName.toUpperCase() == "LI") {
            strClassName = ((intCount == 4) ? "divNewsMenuLast" : "divNewsMenu");
            strClassName += " " + ((intCount == intIndex) ? "lnkNewsMenuS" : "lnkNewsMenu");
            //for Firefox
            ulChild[i].setAttribute("class", strClassName);
            //for IE
            ulChild[i].setAttribute("className", strClassName);

            intCount++;
        }
    }

    intCount = 0;
    for (var i = 0; i < divChild.length; i++) {
        if (divChild[i].nodeName.toUpperCase() == "DIV") {
            divChild[i].style.display = ((intCount == intIndex) ? "" : "none");
            intCount++;
        }
    }
}

//左邊公開資訊
function InfoMouseOver(strId, strIndex) {
    document.getElementById(strId).src = "../images/version_1/Info_" + strIndex + "_f.gif";
}
function InfoMouseOut(strId, strIndex) {
    document.getElementById(strId).src = "../images/version_1/Info_" + strIndex + ".gif";
}

//無障礙表格輸入動作
function focusTextBox(obj, objtxt) {
    if (obj.value == objtxt) {
        obj.value = '';
        obj.select();
    }
}
function blurTextBox(obj, objtxt) {
    if (obj.value == '') {
        obj.value = objtxt;
    }
}


//子網-計畫介紹
var m_intPlanAdNo = 0;
var m_intPlanInterval;

function SetPlanInterval() {
    m_intPlanInterval = setInterval("ChangePlanIntro()", 6000)
}

function StopPlanInterval() {
    clearInterval(m_intPlanInterval);
}

function ResetPlanInterval(intNo) {
    var intNewNo;
    if (intNo == undefined)
        intNewNo = 0;
    else
        intNewNo = intNo - 1;
    clearInterval(m_intPlanInterval);
    ChangePlanIntro(intNewNo);
    SetPlanInterval();
}

function ChangePlanIntro(intNewNo) {
    document.getElementById(m_aryPlan[m_intPlanAdNo]).style.display = "none";
    document.getElementById(m_aryPlanButton[m_intPlanAdNo]).className = ""
    if (intNewNo == undefined)
        m_intPlanAdNo += 1;
    else
        m_intPlanAdNo = intNewNo;
    if (m_intPlanAdNo >= m_aryPlan.length) m_intPlanAdNo = 0
    document.getElementById(m_aryPlan[m_intPlanAdNo]).style.display = "";
    document.getElementById(m_aryPlanButton[m_intPlanAdNo]).className = "LiSelected"  
}
