
//Fonction de base : gère l'affichage et l'expanson du contenu texte
function collapseBox(headId)
{
	var headLink = document.getElementById(headId);
	if(headLink != null) {
		var bodyDiv = getTextContainer(headLink);
		if(bodyDiv != null) {
			toggleVisibilityClass(bodyDiv);
			toggleVisibilityClass(headLink);
		}
	}
	
	//Fonction interne : Obtient le contenant du texte
	function getTextContainer(oLnkNode) {
		//On doit remonter d'un niveau
		var node = oLnkNode.parentNode;
		while(node != null) {
			if(node != null && node.nodeType == 1 && node != oLnkNode.parentNode) {
				return node; 
			}
			//On incrémente					
			node = node.nextSibling;
		}
		
		return null;
	}
	
	//Fonction interne : Inverse la visibilité de l'élément
	function toggleVisibilityClass(oElm) {
		var clsName = oElm.className;
		if (clsName.indexOf("ClsBx_hidden") > -1)
			setVisibilityClass(oElm, true);
		else
			setVisibilityClass(oElm, false);
	}
	
	//Fonction interne : Set la visibilité de l'objet
	function setVisibilityClass(oElm, bVisible) {
		var clsName = oElm.className;
		if(bVisible) {
			clsName = clsName.replace("ClsBx_hidden", "");
			clsName = clsName + "ClsBx_visible";
		} else {
			clsName = clsName.replace("ClsBx_visible", "");
			clsName = clsName + "ClsBx_hidden";
		}
		
		oElm.className = clsName;
	}
}
