
var tid;
var nmenu = 4;

function $(id) {
    return document.getElementById(id);
}

function common_close(n) {

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

}

function common_open(n) {

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

}

function common_hide(n, timeout, changeOpenerClassName, openerClassName) { 


    if (changeOpenerClassName) {

        tid = setTimeout("common_close('" + n + "'); " +
            "common_changeOpenerClassName('" + n +
            "', false, '" + openerClassName + "');", timeout);

    } else {

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

    }

}


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

    if (changeOpenerClassName) {

        common_changeOpenerClassName(n, true);

    }

}

function common_changeOpenerClassName(n, isHover) {

    var openerId = (n * 1) +1;
    var openerElement = "mainOption" + openerId;

    if (isHover) {

        $(openerElement).className='mainNavigationOptionHover' + openerId;

    } else if (arguments[2]) {

        $(openerElement).className = arguments[2];

    } else {

        $(openerElement).className='mainNavigationOption' + openerId;

    }

}

function common_drive(n) {

    var state = $(n).style.visibility;

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

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

            common_close(i, 1000);
            if ($(i).className.indexOf("Activ") != -1) {
                common_changeOpenerClassName(i, false);
            }

        }

    }

}

function common_keep(n) {

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

        clearTimeout(tid);

    }

}


function common_closeAll() {
    var state = "";

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

        common_close(i);
        if ($(i).className.indexOf("Activ") != -1) {
            common_changeOpenerClassName(i, false);
        }

    }

}


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, "/");

}

function common_change_option_class(option_id, option_class) {

    window.document.getElementById(option_id).className = option_class;

}

