var showing         = new Array();

var timer           = new Array();

var cachedElements  = new Array();



function menuGetElement(s)

{

    if (cachedElements[s]) {

        return (cachedElements[s]==-1?false:cachedElements[s]);

    } else {

        tmp = xGetElementById(s);

        cachedElements[s] = (tmp?tmp:-1);

        return tmp;

    }

}



function showMenu1(i)

{

    if (showing[0]) {

        b = menuGetElement('sm'+showing[0]);

        xHide(b);

        showing[0] = false;

        timer[0] = false;

        if (showing[1]) {

            b = menuGetElement('sm'+showing[1]);

            xHide(b);

            showing[1] = false;

            timer[1] = false;

        }

    }

    a = xGetElementById('p'+i);

    if (a) {

        x = xPageX(a);

        y = xPageY(a);

        b = menuGetElement('sm'+i);

        xMoveTo(b,x,y+19);

        xShow(b);

        showing[0] = i;

        timer[0] = false;

    }

}



function showMenu2(i)

{

    if (showing[1]) {

        b =  menuGetElement('sm'+showing[1]);

        xHide(b);

    }

    a = menuGetElement('smi'+i+'x');

    if (a) {

        x = xPageX(a);

        y = xPageY(a);

        b = menuGetElement('sm'+i);

        xMoveTo(b,x+24,y-3);

        xShow(b);

        showing[1] = i;

        timer[1] = false;

    }

}



function hideMenu1(i)

{

    timer[0] = true;

    setTimeout('hideMenu1Execute('+i+')',500);

}



function hideMenu2(i)

{

    timer[0] = true;

    timer[1] = true;

    setTimeout('hideMenu1Execute('+showing[0]+')',500);

    setTimeout('hideMenu2Execute('+i+')',500);

}



function hideMenu1Execute(i)

{

    if (timer[0]) {

        b = menuGetElement('sm'+i);

        xHide(b);

        if (showing[1]) {

            b = menuGetElement('sm'+showing[1]);

            xHide(b);

            showing[1] = false;

            timer[1] = false;

        }

        showing[0] = false;

        timer[0] = false;

    }

}



function hideMenu2Execute(i)

{

    if (timer[1]) {

        b = menuGetElement('sm'+i);

        xHide(b);

        showing[1] = false;

    }

}



function menu1Over(i)

{

    timer[0] = false;

}



function menu2Over(i)

{

    timer[0] = false;

    timer[1] = false;

}



function menuItemOver(i,level)

{

    a = menuGetElement('smi'+i);

    xBackground(a,'#E3F330');

    a = menuGetElement('smi'+i+'x');

    xBackground(a,'#E3F330');

    a = menuGetElement('sm'+i);

    if (level==1 && showing[1]) {

        b = menuGetElement('sm'+showing[1]);

        xHide(b);

    }

    if (a) {

        showMenu2(i);

    }

}



function menuItemOut(i)

{

    a = menuGetElement('smi'+i);

    xBackground(a,'#E3F330');

    a = menuGetElement('smi'+i+'x');

    xBackground(a,'#E3F330');

}