﻿// Show / Hide Menus...

function showMenu(menuToShow)
{
    document.getElementById(menuToShow).style.display = "block";
}

function hideMenu(menuToHide)
{
    document.getElementById(menuToHide).style.display = "none";
}

// Show / Hide Div...

function toggleDiv(divToToggle)
{
    if (document.getElementById(divToToggle).style.display != "block")
    {
        document.getElementById(divToToggle).style.display = "block";
    }
    else
    {
        document.getElementById(divToToggle).style.display = "none";
    }
}

// Show / Hide Optional Spans and Divs etc...

function showOptional(elementToCheck, valueToCheckFor, optionalContainerToShow, optionalFormElements)
{
    // Show / Hide an option element and Focus / Clear...

    if (document.getElementById(elementToCheck).value == valueToCheckFor)
    {
        // Show optional element...
        
        document.getElementById(optionalContainerToShow).style.display = "block";
        
        // Set Focus to first optional element...

        if (optionalFormElements[0] != "NONE")
        {
            document.getElementById(optionalFormElements[0]).focus();
        }
    }
    else
    {
        // Call hide and clear...
        
        hideAndClearOptional(optionalContainerToShow, optionalFormElements);
    }
}

function showOptionalRBL(elementToCheck, optionalContainerToShow, optionalFormElements)
{
    // Show / Hide an option element and Focus / Clear...
    // For use with radio button list...

    if (document.getElementById(elementToCheck).checked == true)
    {
        // Show optional element...
        
        document.getElementById(optionalContainerToShow).style.display = "block";
        
        // Set Focus to first optional element...

        if (optionalFormElements[0] != "NONE")
        {
            document.getElementById(optionalFormElements[0]).focus();
        }
    }
    else
    {
        // Call hide and clear...
        
        hideAndClearOptional(optionalContainerToShow, optionalFormElements);
    }
}

function hideAndClearOptional(optionalContainerToShow, optionalFormElements)
{
    // Hide optional element...
    
    document.getElementById(optionalContainerToShow).style.display = "none";
    
    // Clear optional elements...
    
    if (optionalFormElements[0] != "NONE")
    {
        var numToClear;
        
        for (numToClear = 0; numToClear < optionalFormElements.length; numToClear++)
        {
            var type = document.getElementById(optionalFormElements[numToClear]).type;
        
            if (type == "text")
            {
                document.getElementById(optionalFormElements[numToClear]).value = "";
            }
            else if (type == "radio")
            {
                document.getElementById(optionalFormElements[numToClear]).checked = true;
            }
            else if (type == "checkbox")
            {
                document.getElementById(optionalFormElements[numToClear]).checked = false;
            }
            else
            {
                document.getElementById(optionalFormElements[numToClear]).value = "";
            }
        }
    }
}

function showOptionalOnEitherRBL(firstElementToCheck, secondElementToCheck, optionalContainerToShow, optionalFormElements)
{
    // Show / Hide an option element and Focus / Clear...
    // For use with radio button list..
    // For use wheh two elements trigger the same optional container...

    if ((document.getElementById(firstElementToCheck).checked == true) || (document.getElementById(secondElementToCheck).checked == true))
    {
        // Show optional element...
        
        document.getElementById(optionalContainerToShow).style.display = "block";
        
        // Set Focus to first optional element...

        //document.getElementById(optionalFormElements[0]).focus();
    }
    else
    {
        // Call hide and clear...
        
        hideAndClearOptional(optionalContainerToShow, optionalFormElements);
    }
}


