/**
 * Global Vars tab browser
 */
var labels;
var panels;
	
/**
 * When onload window fire this function to search links and thumbs 
 * for the browser and attach them the needed events
 */
function startTabBrowser(){

	/* begin: usual checks */
	if (!document.getElementsByTagName || !document.getElementById){ return; }
	var tabBrowser = document.getElementById('tab-browser');
	var labelsWrapper = document.getElementById('tb-labels');
	var panelsWrapper = document.getElementById('tb-panels');
	if(!tabBrowser || !labelsWrapper || !panelsWrapper){ return; }	
	/* end: usual checks */
	
	labels = labelsWrapper.getElementsByTagName("li");
	panels = panelsWrapper.getElementsByTagName("div");
	
	if (labels.length > 0 && panels.length > 0){
		var showTabBrowser = false;
		for (l in labels){
			if (labels[l].id){
				var hasPanel = false;
				for (p in panels){
					if (labels[l].id == panels[p].className && panels[p].innerHTML){
						labels[l].panel = panels[p];										/* Attach a panel to the label */
						labels[l].onclick = function () {swapPanel(this); return false;}	/* Attach a function */
						hasPanel = true;
						showTabBrowser = true;												/* there is at least one panel to show */
					}
				}
				labels[l].style.display = (hasPanel)?'block':'none';
			}
		}
		tabBrowser.style.display = (showTabBrowser)?'block':'none';
		swapPanel(labels[0]);																/* Display first label and tab */
	}		
}			


function swapPanel(selLabel){
	for (l in labels)
		if (labels[l].panel && labels[l].panel.innerHTML){
			labels[l].panel.style.display = 'none';											/* if panel as NO content -> do nothing */
			labels[l].className = 'unselected';
		}

	if(selLabel.panel) {
		selLabel.panel.style.display = 'block';												/* show the panel for this label */		
		selLabel.className = 'selected';			
	}
}



/*
 * INITIALIZATION EVENTS (On Onload)
 */
function addEvent(obj, evType, fn, useCapture){
  if (obj.addEventListener){
    obj.addEventListener(evType, fn, useCapture);
    return true;
  } else if (obj.attachEvent){
    return (obj.attachEvent("on"+evType, fn));
  } else 
	return false;
}

addEvent(window, 'load', startTabBrowser, false);
