function getElementsByClassName(className, tag, elm){
	var testClass = new RegExp("(^|s)" + className + "(s|$)");
	var tag = tag || "*";
	var elm = elm || document;
	var elements = (tag == "*" && elm.all)? elm.all : elm.getElementsByTagName(tag);
	var returnElements = [];
	var current;
	var length = elements.length;
	for(var i=0; i<length; i++){
		current = elements[i ];
		if(testClass.test(current.className)){
			returnElements.push(current);
		}
	}
	return returnElements;
}

var indiceH2 = 0;
var ordreH2 = new Array();
 
function AfficheLI(){
 		var elm = elm || document;
		var titles=elm.getElementsByTagName('h1');
		var length = titles.length;
		var current;
		for(var i=0; i<length; i++){
			current = titles[i];
			ordreH2[indiceH2] = current.parentNode.id;
			indiceH2++;
			Par = document.getElementById('container-bouton');
			tagH1 = document.createElement("li");
			ElemA = document.createElement("a");
			ElemA.href="javascript:AfficheDIV('"+current.parentNode.id+"');";
			ElemA.title=current.innerHTML;
			ElemA.innerHTML = current.innerHTML;
			ElemA.id=current.parentNode.id+"-div-bold";
			tagH1.appendChild(ElemA);
			Par.appendChild(tagH1);
			
			ParH1 = document.getElementById(current.parentNode.id);;
			var titlesH2=ParH1.getElementsByTagName('h2');
			var lengthH2 = titlesH2.length;
			var currentH2;
			
			for(var a=0; a<lengthH2; a++){
				currentH2 = titlesH2[a];
				ordreH2[indiceH2] = currentH2.parentNode.id;
				indiceH2++;
				Par = document.getElementById('container-bouton');
				tagH2 = document.createElement("li");
				ElemA2 = document.createElement("a");
				ElemA2.href="javascript:AfficheDIV('"+currentH2.parentNode.id+"')";
				ElemA2.title=currentH2.innerHTML;
				ElemA2.className='levelH2';
				ElemA2.id=currentH2.parentNode.id+"-div-bold";
				ElemA2.innerHTML = currentH2.innerHTML;
				tagH2.appendChild(ElemA2);
				Par.appendChild(tagH2);
			}
			var lengthH2=0;
		}
		var length=0;
}


function AfficheDIV(){
	var Arg = arguments;
	var Obj;
	if(Arg[0] != 'allDiv')
	{
		MasqueDiv();
	}
	else
	{
		ShowDiv();
	}
	for( var i=0; i< Arg.length; i++){//alert(Arg[i]); // On parcours la liste
		Obj = document.getElementById( Arg[i]); // Récup Objet correspondant
		if( Obj){
			Obj.id=Arg[i]+'-div';
			Par = document.getElementById('bodytext');
			Par.appendChild(Obj);
			
			Obj.style.display = "block";
			Obj.style.visibility = "visible";
			Obj.style.height='auto';
			Obj.style.backgroundColor='#FFFFFF';

			$('#container-bouton li a').css("font-weight", 'normal');

			document.getElementById(Obj.id + '-bold').style.fontWeight = 'bold';
		} else {
			Obj = document.getElementById( Arg[i]+'-div'); // Récup Objet correspondant
			if( Obj){
				Obj.id=Arg[i]+'-div';
				Par = document.getElementById('bodytext');
				Par.appendChild(Obj);
				
				Obj.style.display = "block";
				Obj.style.visibility = "visible";
				Obj.style.height='auto';
				Obj.style.backgroundColor='#FFFFFF';

				$('#container-bouton li a').css("font-weight", 'normal');

				document.getElementById(Obj.id + '-bold').style.fontWeight = 'bold';
			}
		}
	}
}

function MasqueDiv(){
	var elm = elm || document;
	var titles=elm.getElementsByTagName('h2');
	var length = titles.length;
	var current;
	for(var i=0; i<length; i++){
		current = titles[i];//alert('h2 => '+current.parentNode.id);
		var Obj = document.getElementById(current.parentNode.id);
		Obj.style.display = 'none';
		Obj.style.visibility = 'hidden';
	}
}

function ShowDiv(){
	/*var elm = elm || document;
	var titles=elm.getElementsByTagName('h2');
	var length = titles.length;
	var current;
	for(var i=0; i<length; i++){
		current = titles[i];//alert('h2 => '+current.parentNode.id);
		var Obj = document.getElementById(current.parentNode.id);
		Obj.style.display = 'block';
		Obj.style.visibility = 'visible';
	}*/
	var current;
	
	for(var i=0; i<ordreH2.length; i++){
		current = ordreH2[i];//alert('h2 => '+current.parentNode.id);
		var Obj = document.getElementById(current);
		if(Obj)
		{
			Obj.style.display = 'block';
			Obj.style.visibility = 'visible';
		}
		else
		{
			current = ordreH2[i];
			var Obj = document.getElementById(current+'-div');
			if(Obj)
			{
				Obj.style.display = 'block';
				Obj.style.visibility = 'visible';
			}
		}
	}
}

function getTopPos(inputObj)
{		
  var returnValue = inputObj.offsetTop;
  while((inputObj = inputObj.offsetParent) != null){
  	if(inputObj.tagName!='HTML')returnValue += inputObj.offsetTop;
  }
  return returnValue;
}

function getHeight(inputObj)

{		
  var returnValue = inputObj.offsetHeight;
  while((inputObj = inputObj.offsetParent) != null){
  	if(inputObj.tagName!='HTML')returnValue += inputObj.offsetHeight;
  }
  return returnValue;
}
