
var tid;
var nmenu = 2;

function $(id) {

    return document.getElementById(id);

}

function common_close(n) {

    document.getElementById(n).style.visibility = 'hidden';
    document.getElementById(n).style.display = 'none';

}

function common_open(n) {

    document.getElementById(n).style.visibility='visible';
    document.getElementById(n).style.display='block';

}

function common_hide(n, timeout) { 
    tid = setTimeout("common_close('" + n + "')", timeout);

}


function common_show(n) {
 
    clearTimeout(tid);
    common_open(n);

}

function common_drive(n) {

    var state = document.getElementById(n).style.visibility;

    for(i = 1; i <= nmenu; i++) {

        if((state == 'visible') && (i != n)) {

            common_close(i, 1000);

        }

    }

}

function common_keep(n) {

    var state = document.getElementById(n).style.visibility;
    if (state == "visible") {

        clearTimeout(tid);

    }

}


function common_closeAll() {

    var state = "";

    for(i = 1; i <= nmenu; i++) {

        common_close(i, 20);

    }

}


function common_driveElementDisplay(cookieName, elemId, n) {

    var operation = "";
    var state = document.getElementById(elemId).style.visibility;

    if (state == "hidden") {
        
        common_open(elemId);
        operation = "open";

    } else  {

        common_close(elemId);
        operation = "close";
    }

    common_updateViewStateCookie(cookieName, operation, n);

}
 
function common_updateViewStateCookie(cookieName, operation, n) {

    oldState  = (cookies_getCookieByName(cookieName) ?
                 cookies_getCookieByName(cookieName) * 1 : 0);

    elemValue = Math.pow(2, (n)) * (operation == "open" ? 1 : -1);

    newState = (oldState + elemValue) - 0;

    cookies_storeCookie(cookieName, newState, "/");

}

