
    var activeTab = new Array(3);
    var activeTable = new Array(3);
    
    for(iLoop=0; iLoop < 3; iLoop ++)
    {
        activeTab[iLoop] = "";
        activeTable[iLoop] = "";                
    }

    function changeTabs(idTab, idTable, idGroup)
    {
        if(!idGroup)
        {
            idGroup = "";
            idArray = 0;
        }
        else
        {
            idArray = idGroup
        }
        
        if(activeTab[idArray] == "")
        {
           activeTab[idArray] = findActiveTab(idGroup);
        }

        if(oTab = document.getElementById(activeTab[idArray]))
        {
            oTab.className = "inactive";
        }
        activeTab[idArray] = idTab;
        if(oTab = document.getElementById(activeTab[idArray]))
        {
            oTab.className = "active";
        }

        if(activeTable[idArray] == "")
        {
           activeTable[idArray] = findActiveTable(idGroup);
        }

        if(oTable = document.getElementById(activeTable[idArray]))
        {
            oTable.className = "inactive";
            changeParent(oTable);
        }
        activeTable[idArray] = idTable;
        if(oTable = document.getElementById(activeTable[idArray]))
        {
            oTable.className = "active";
            changeParent(oTable);
        }
    }
    
    function changeParent(oChild)
    {
        var changed = false;
        if(oParent = oChild.parentNode)
        {
            if(oParent.className == "inactive")
            {
                oParent.className = "active";
                changed = true;
            }
            else if(oParent.className == "active")
            {
                oParent.className = "inactive";
                changed = true;
            }
            
            if(changed)
            {
                changeParent(oParent);    
            }
        }
    }

    function findActiveTab(idGroup)
    {
        var idTab = "";
        
        if(!idGroup)
        {
            idGroup = "";
        }

        objUL = document.getElementById('tabnav'+idGroup);
        for(var iNode=0; iNode < objUL.childNodes.length; iNode ++)
        {
            if(objUL.childNodes[iNode].className == "active")
            {
               idTab = objUL.childNodes[iNode].id;
               iNode = objUL.childNodes.length;
            }
        }

        return idTab;
    }

    function findActiveTable(idGroup)
    {
        var idTable = "";
        
        if(!idGroup)
        {
            idGroup = "";
        }

        objTBody = document.getElementById('tabcontent'+idGroup);
        for(var iRow=0; iRow < objTBody.childNodes.length; iRow ++)
        {
            objRow = objTBody.childNodes[iRow];
            for(var iCell=0; iCell < objRow.childNodes.length; iCell ++)
            {
                objCell = objRow.childNodes[iCell];
                for(var iTable=0; iTable < objCell.childNodes.length; iTable ++)
                {
                    if(objCell.childNodes[iTable].className == "active")
                    {
                        idTable = objCell.childNodes[iTable].id;
                    }
                }
            }
        }

        return idTable;
    }
    
    function hideAndDisplay(p_id, p_display)
    {
        if(oElement = document.getElementById(p_id))
        {
            oElement.style.display = p_display;
        }
    }
