function overMenuItem (id, menuItemName, menuFlapName, menuItemClassClosed, menuItemClassOpened, menuItemClassDisabled)
{
    var menuItem = document.getElementById(menuItemName+id);
    var menuFlap = document.getElementById(menuFlapName+id);
    
    if(menuItem.className.search(new RegExp(menuItemClassDisabled)) == -1)
    {
        // enable the current menu item
        menuItem.className = menuItem.className.replace(new RegExp(menuItemClassClosed),menuItemClassOpened);
        
        // show the current menu flap
        menuFlap.style.visibility = 'visible';
        menuFlap.style.display = 'block';
    }

    // disable all other menu items and hide their flaps
    for (var i = 1; document.getElementById(menuItemName+i); i++)
    {
        var otherMenuItem = document.getElementById(menuItemName+i);
        var otherMenuFlap = document.getElementById(menuFlapName+i);
        
        if(i != id)
        {
            if(otherMenuItem.className.search(new RegExp(menuItemClassDisabled)) == -1)
            {
                otherMenuItem.className = otherMenuItem.className.replace(new RegExp(menuItemClassOpened),menuItemClassClosed);
            }
            
            if(otherMenuFlap)
            {
                otherMenuFlap.style.visibility = 'hidden';
                otherMenuFlap.style.display = 'none';
            }
        }
    }
}

function closeMenu (menuItemName, menuFlapName, menuItemClassClosed, menuItemClassOpened, menuItemClassDisabled, delayMSec)
{
    // disable all menu items and hide their flaps
    for (var i = 1; document.getElementById(menuItemName+i); i++)
    {
        var menuItem = document.getElementById(menuItemName+i);
        var menuFlap = document.getElementById(menuFlapName+i);
        
        if(menuItem.className.search(new RegExp(menuItemClassDisabled)) == -1)
        {
            menuItem.className = menuItem.className.replace(new RegExp(menuItemClassOpened),menuItemClassClosed);
        }
        
        if(menuFlap)
        {
            menuFlap.style.visibility = 'hidden';
            menuFlap.style.display = 'none';
        }
    }
}

function setSrcById (id, src)
{
    if(document.getElementById(id))
    {
        document.getElementById(id).src = src;
    }
}