var aFieldset = new Array();
var _tab = window.location.href.split("/");
var _reg = new RegExp("([^.]*)\.(php|htm)(.)*$");
_tab = _reg.exec(_tab[_tab.length-1]);
var cookieName = "selectedFieldset";
if (_tab[1]) cookieName += '_' + _tab[1];

function initFieldset() {
	var nTable, nTBody, nTr, nTd, nA, nLegend;
	var j = 0;
	var cFieldset = YAHOO.util.Dom.getElementsByClassName('tab', "fieldset");
	if (document.getElementById("table_onglet") || cFieldset.length < 2) return;

	nTable = document.createElement("table");
	nTable.id = "table_onglet";
	nTable.cellSpacing  = 0;
	nTable.cellPadding  = 0;
	cFieldset[0].parentNode.insertBefore(nTable, cFieldset[0]);
	nTBody = document.createElement("tbody");
	nTable.appendChild(nTBody);
	nTr = document.createElement("tr");
	nTBody.appendChild(nTr);
	for (var i=0; cFieldset[i]; i++) {
		oNode = cFieldset[i].parentNode;
		while (oNode && oNode.nodeName.toLowerCase() != 'fieldset') oNode = oNode.parentNode;
		if (oNode) continue;
		aFieldset.push(cFieldset[i]);
		cFieldset[i].id = 'fieldset_' + (j++);
		cFieldset[i].style.display = "none";
		nLegend = cFieldset[i].getElementsByTagName("legend")[0];
		nTd = document.createElement("td");
		nTr.appendChild(nTd);
		nA = document.createElement("a");
		nTd.appendChild(nA);
		nA.appendChild(document.createTextNode(getTextContent(nLegend)));
		nA.href = "#" + cFieldset[i].id ;
		nA.onclick = showFieldset;
		cFieldset[i].removeChild(nLegend);
	}

	var index = window.location.href.indexOf('#fieldset_');
	var selectedFieldset = (index != -1) ? window.location.href.substr(index + 1) : readCookie(cookieName);

	if (document.getElementById(selectedFieldset)) {
		document.getElementById(selectedFieldset).style.display = "block";
		cTd = document.getElementById('table_onglet').getElementsByTagName('td');
		YAHOO.util.Dom.addClass(cTd[selectedFieldset.replace(/.*_/, '')], 'selected');	
	}
	else {
		cFieldset[0].style.display = "block";
		YAHOO.util.Dom.addClass(document.getElementById('table_onglet').getElementsByTagName('td')[0], 'selected');
	}
}

function showFieldset() {
	var id = this.href.replace(/.*#/, '');
	for (var i=0; aFieldset[i]; i++) {
		aFieldset[i].style.display = "none";
	}
	YAHOO.util.Dom.removeClass(document.getElementById('table_onglet').getElementsByTagName('td'), 'selected');
	YAHOO.util.Dom.addClass(this.parentNode, 'selected');
	if (document.getElementById(id).firstChild.nodeName.toLowerCase() == 'legend') {
		document.getElementById(id).removeChild(document.getElementById(id).firstChild);
	}
	document.getElementById(id).style.display= "block";
	createCookie(cookieName, id, 10);
	return false;
}

function getTextContent(oNode) {
	if (typeof(oNode.textContent)!="undefined") {return oNode.textContent;}
	switch (oNode.nodeType) {
		case 3: // TEXT_NODE
		case 4: // CDATA_SECTION_NODE
			return oNode.nodeValue;
			break;
		case 7: // PROCESSING_INSTRUCTION_NODE
		case 8: // COMMENT_NODE
			if (getTextContent.caller!=getTextContent) {
				return oNode.nodeValue;
			}
			break;
		case 9: // DOCUMENT_NODE
		case 10: // DOCUMENT_TYPE_NODE
		case 12: // NOTATION_NODE
			return null;
			break;
	}
	var _textContent="";
	oNode=oNode.firstChild;
	while (oNode) {
		_textContent += getTextContent(oNode);
		oNode = oNode.nextSibling;
	}
	return _textContent;
}

