/*
##------------------
## Versie: 2003.12a 
##------------------
##
## Omschrijving:	Het 'swappen' tussen diverse 'tabjes' (DIV's).
##					Aan de hand van het meegegeven groeps-ID wordt de vorige opengeklapte tab gesloten.
##
##
## Aanroep:
## In de <HEAD> of <BODY>:
## <SCRIPT language="JavaScript" SRC="showTab_grp.js">
##
## De link:
## Geef de ID tag op en de groeps ID (1-100).
##
## <A href="#" onClick="showTab('Table-1', 1)">Link1-1</A>
## <A href="#" onClick="showTab('Table-2', 1)">Link1-2</A>
## <A href="#" onClick="showTab('Table-1-1', 2)">Link1-1-1</A>
## <A href="#" onClick="showTab('Table-1-2', 2)">Link1-1-2</A>
##
## Zonder groeps ID.
## <A href="#" onClick="showTab('Table-1')">Link1</A>
## <A href="#" onClick="showTab('Table-2')">Link2</A>
##
## <A href="#" onClick="closeAll()">Sluit alle tabs</A>
*/

// Vullen van 1000 groep posities in het geheugen...
var arrGroups = new Array();
var intGrp = 0;
while (intGrp <= 1000)
{
	arrGroups[intGrp] = "";
	intGrp++;
}

function closeAll()
{
	var intGrp = 0;
	while (intGrp <= 1000)
	{
		var strOldID = arrGroups[intGrp];
		var obOpenTab = getElement(strOldID);
		if (obOpenTab)
		{
			obOpenTab.style.display='none';
		}
		arrGroups[intGrp] = "";
		intGrp++;
	}
}

function showTab(strID)
{
	showTabGrp(strID, 1000)
}

function showTabGrp(strID, intGrp)
{
	// Vraag het oude ID (openstaande tabje) op uit het geheugen.
	var strOldID = arrGroups[intGrp];
	var obOpenTab = getElement(strOldID);
	
	var obElement = getElement(strID);

	if (obElement)
	{
		// Sluit een al openstaande tab.
		if ( (obOpenTab) && (obOpenTab != obElement) )
		{
			obOpenTab.style.display='none';
		}

		if (obElement.style.display=='none')
		{
			obOpenTab = obElement;
			obElement.style.display='block';
		}
		
		// Zet huidige laatste openstaande 'tab' in het geheugen.
		arrGroups[intGrp] = strID;
	}
}

// Opvragen van een element uit het document.
function getElement(strElement)
{
	var obVal = null;
	
	// Volgens W3C.org moeten we document.getElementById gebruiken ipv. document.all
	// Hierdoor ook NS6+ compatible.
	if (document.getElementById)
	{
		obVal = document.getElementById(strElement);
	}
	else
	{	
		if (document.all) obVal = document.all[strElement];
	}
	
	return obVal;
}
