//----------------------------------------------------------------------------------------------------
//  javascript functions - submenu
//----------------------------------------------------------------------------------------------------

var closeTimeout;
var openElement = '';

function showSubmenu(id)
{
    clearTimeout(closeTimeout);

    // close other elements first
    if (openElement != id && openElement != '') {
        document.getElementById(openElement).style.display = 'none';
        openElement = '';
    }

    // show current element
    if (openElement != id) {
        document.getElementById(id).style.display = 'block';
    }

    openElement = id;
}

function hideSubmenu()
{
    // wait 750ms before closing
    closeTimeout = setTimeout("closeSubmenu()", 750);
}

function closeSubmenu()
{
    document.getElementById(openElement).style.display = 'none';
    openElement = '';
}

// disableCheckboxesExtended()
// disable all checkboxes in form except the clicked checkbox (field)
// if field is not checked, all other checkboxes will be enabled
// parameter:
//      toogleDisableNamespace: array of namespace you want to be affected,
//          ['Site'] will toogle the disable status of all fields which have the
//          name property value data['Site']['Site'][]
function disableCheckboxesExtended(toogleDisableNamespaces, fieldExclude)
{
    var namespace = null;
    var checkbox = null;
    var checkboxes = null;

    for (var i = 0; i < toogleDisableNamespaces.length; i++) {
        namespace = toogleDisableNamespaces[i];
        checkboxes = document.getElementsByName(namespace + '[]');

        for (var j = 0; j < checkboxes.length; j++) {
            checkbox = checkboxes[j];

            if (checkbox != fieldExclude) {
                checkbox.disabled = fieldExclude.checked;
            }
        }
    }
}

function addFavorite()
{
    if ($.browser.mozilla) // Mozilla Firefox
    {
        window.sidebar.addPanel(favoriteName, favoriteUrl, "");
    }
    else if ($.browser.msie) // IE
    {
        window.external.AddFavorite(favoriteUrl, favoriteName);
    }
    else if ($.browser.opera) // Opera
    {
        window.external.AddFavorite(favoriteUrl, favoriteName);
    }
    else
    {
        alert(favoriteError);
    }

    return false;
}

