﻿var menus = new Array(); var el;
function MenuMouseOver(id) {
    while (menus.length != 0) {
        var eid = menus.pop().split("|");
        clearTimeout(eid[1]);
        ClearSelectStatus(document.getElementById(eid[0]));
    }

    el = document.getElementById(id);
    if (el) {
        el.style.display = "block";
        el.parentNode.children[0].className = el.parentNode.children[0].className + " " + highlight;
        WaitAndSet(id);
    }
}

function WaitAndSet(id) {
    el = document.getElementById(id);
    if (el.style.display != 'none') {
        if (el.parentNode.clientWidth != 0) {
            //if (id.indexOf("MM") < 0) el.style.marginLeft = el.parentNode.clientWidth + "px";
        } else {
            setTimeout("WaitAndSet('" + id + "');", 10);
        }
    }
}

function MenuMouseOut(id) {
    el = document.getElementById(id);
    if (el) {
        menus.push(id + "|" + setTimeout(function() {
            ClearSelectStatus(el);
        }, 1000));
    }
}

var highlight = "current";
function ClearSelectStatus(el) {
    if (el) {
        el.parentNode.children[0].style.color = "";
        el.parentNode.children[0].style.backgroundColor = "";
        el.parentNode.children[0].className = el.parentNode.children[0].className.replace(' ' + highlight, '');
        el.style.display = "none";
    }
}

/// --- sec --- ///
// JavaScript Document
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_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_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_openBrWindow(theURL, winName, features) { //v2.0
    var u = (theURL.indexOf("?") > 0) ? (theURL + "&p=1") : (theURL + "?p=1")
    window.open(u, winName, features);
}

function toggleBox(szDivID, iState) // 1 visible, 0 hidden
{
    if (document.layers)	   //NN4+
    {
        document.layers[szDivID].visibility = iState ? "show" : "hide";
    }
    else if (document.getElementById)	  //gecko(NN6) + IE 5+
    {
        var obj = document.getElementById(szDivID);
        obj.style.visibility = iState ? "visible" : "hidden";
        obj.style.display = iState ? "block" : "none";
    }
    else if (document.all)	// IE 4
    {
        document.all[szDivID].style.visibility = iState ? "visible" : "hidden";
    }

}

var timerlen = 5;
var slideAniLen = 250;

var timerID = new Array();
var startTime = new Array();
var obj = new Array();
var endHeight = new Array();
var moving = new Array();
var dir = new Array();

function slidedown(objname) {
    if (moving[objname])
        return;

    if (document.getElementById(objname).style.display != "none")
        return; // cannot slide down something that is already visible

    moving[objname] = true;
    dir[objname] = "down";
    startslide(objname);
}

function slideup(objname) {
    if (moving[objname])
        return;

    if (document.getElementById(objname).style.display == "none")
        return; // cannot slide up something that is already hidden

    moving[objname] = true;
    dir[objname] = "up";
    startslide(objname);
}

function startslide(objname) {
    obj[objname] = document.getElementById(objname);

    endHeight[objname] = parseInt(obj[objname].style.height);
    startTime[objname] = (new Date()).getTime();

    if (dir[objname] == "down") {
        obj[objname].style.height = "0px";
    }

    obj[objname].style.display = "block";

    timerID[objname] = setInterval('slidetick(\'' + objname + '\');', timerlen);
}

function slidetick(objname) {
    var elapsed = (new Date()).getTime() - startTime[objname];

    if (elapsed > slideAniLen)
        endSlide(objname)
    else {
        var d = Math.round(elapsed / slideAniLen * endHeight[objname]);
        if (dir[objname] == "up")
            d = endHeight[objname] - d;

        obj[objname].style.height = d + "px";
    }

    return;
}

function endSlide(objname) {
    clearInterval(timerID[objname]);

    if (dir[objname] == "up")
        obj[objname].style.display = "none";

    obj[objname].style.height = endHeight[objname] + "px";

    delete (moving[objname]);
    delete (timerID[objname]);
    delete (startTime[objname]);
    delete (endHeight[objname]);
    delete (obj[objname]);
    delete (dir[objname]);

    return;
}

function toggleSlide(objname) {
    if (document.getElementById(objname).style.display == "none") {
        // div is hidden, so let's slide down
        slidedown(objname);
    } else {
        // div is not hidden, so slide up
        slideup(objname);
    }
}

var infos = new Array();
function SetupInfo() {
    for (var i = 0; i < 101; i++) {
        var el = document.getElementById("P" + i);
        if (el && el.style.height == "") {
            el.style.height = el.clientHeight + "px";
            el.style.display = "none";
            infos.push(el);
        }
    }
}

function ShowInfo(index) { showinfo(index); }
function showinfo(index) {
    var el = document.getElementById("P" + index);
    if (el) {
        if (el.style.display == "block") return;
        for (var i = 0; i < infos.length; i++) {
            if (el.id == infos[i].id) {
                slidedown(el.id);
            } else {
                slideup(infos[i].id);
            }
        }
    }
}

function toggleSlide(el, index) {
    if (el.innerText == "Less") {
        el.innerText = "More";
        slideup("P" + index);
    } else {
        el.innerText = "Less";
        slidedown("P" + index);
    }
}
