// JavaScript Document
//variables globales 
	var niveau;
	var TABLE;
	var arbo = new Array() 
	var nom_tableau = new Array();
	var z=0;
	var newtree;
	var folderImg;
	var leafImg;
	//creation de la branche de niveau 0
	function defaultImage(varr1,varr2)
	{
		folderImg = varr1;
		leafImg = varr2;
	}
		
	function openTreeView()
	{
		
		niveau = 0;
		arbo[niveau] = 0;
		//creation d'une balise TABLE
		TABLE = document.createElement("table");
		nom_tableau[niveau] = TABLE
		// ajout des attributs de ce tableau
		TABLE.setAttribute("border","0");
		TABLE.setAttribute("cellspacing","0");
		TABLE.setAttribute("cellpadding","0");
		TABLE.setAttribute("id","Table")
		
		//affichage du treeView
		
	}
	
	//fermeture de la branche de niveau 0
	function closeTreeView()
	{
		var iH = "<TABLE border=\"0\"  border=\"0\" cellspacing=\"0\" cellpadding=\"0\">"+TABLE.innerHTML+"</TABLE>";
		//newtree.innerHTML = iH;
		document.write(iH);		
		//newtree.style.display="block";

	}
	
	
	//creation du tableau de niveau n+1
	function openBranche(texte,lien,img,description,enabled)
	{
		//on crée une feuille sur le niveau inferieur 
		z++;
		addLeaf(texte,lien,img,1,description,enabled);
		niveau++;
		arbo[niveau]=0; 
		
		var tableau = document.createElement("table");
		tableau.setAttribute("border","0");
		tableau.setAttribute("cellspacing","0");
		tableau.setAttribute("cellpadding","0");
		tableau.setAttribute("style","display:none");
		tableau.setAttribute("id",z);
		tableau.setAttribute("valign",'top');
		nom_tableau[niveau] = tableau;
		
	}
		
	function addLeaf(texte,lien,img,type,description,enabled)
	{
		//defintion des variables rem : obligation de la balise tbody
		var temp="";
		for(var i=0;i<(niveau+1);i++) {
		temp = temp + arbo[i];
		}
		
		var idImage = 'idImage'+z;
		var Leaf = 'idLeaf'+temp;
		var content="";		
		var TBODY = document.createElement("tbody");
		var TR = document.createElement("tr");
		var TD = document.createElement("td");

		TD.setAttribute("valign","top");
		TD.setAttribute("id",Leaf);
		
		if(type!=1) {
		  content = content + '<img src="' + webContext+ '/images/spacer.gif" width="10" height="20" align="absmiddle" border="0">'; 
		}
		
		TR.appendChild(TD);
	    TD = document.createElement("td");

		if (enabled=="true") {
			if ((lien != undefined) && (lien != "")) {
				if ((description != undefined) && (description != ""))
					texte = '<A href='+lien+' title="'+description+'" class="ssmenu">'+texte+'</A>';
				else
					texte = '<A href="'+lien+'"  class="ssmenu">'+texte+'</A>';
			}
		}
		else {
			texte = '&nbsp;<FONT style="font-style: italic;" color="gray">'+texte+'</FONT>';
		}
		
		//build spacer
		var spacerWidth= niveau*10;
		var spacer = '<img border="0" src="' + webContext+ '/images/spacer.gif" width="'+spacerWidth+'" height="20" align="absmiddle" border=0>';
		
		if(type==1) { //FOLDER
			if ( img == undefined || img == "")
				img=folderImg;
			if ( img != "noimage")
				 content =spacer+ content + '<A style="cursor: hand;" onclick="show('+z+','+idImage+')"><img id=' + idImage +' src='+img+' width="15" height="15" align="absmiddle" border=0></A>'+texte;
			else
				content =spacer+ content +texte;
		}
		else { //LEAF
			if ( img == undefined || img =="" )
				img=leafImg;
			if (img != "noimage")
				content =spacer+ content +'<img src='+img+' width="15" height="15" align="absmiddle" border=0>'+ texte;
			else
				content =spacer+content  + texte;
		}

		TD.innerHTML = content;
		TR.appendChild(TD);
		TBODY.appendChild(TR);

		//ajout dans la grande balise tableau
		nom_tableau[niveau].style.display="none";
		nom_tableau[niveau].appendChild(TBODY);
		arbo[niveau]++;
		
	}
	
	function show(id,image)
	{
		id=document.getElementById(id)
		if(id.style.display == 'block') {
		id.style.display = 'none';
		image.src = webContext + "/images/menuitem_off.gif"
		}
		else {
		id.style.display='block';
		image.src = webContext+ "/images/menuitem_off_down.gif";
		}
	}
	function closeBranche()
	{
		//ajout de la branche dans la cellule de niveau n-1
		
		nom_tableau[niveau-1].children[arbo[niveau-1]-1].children[0].children[1].appendChild(nom_tableau[niveau])
		niveau = niveau - 1;

	}
	function treeview(newtreee)
	{
		document.write('<DIV id='+newtreee+' style="display:none"></DIV>');
		newtree = document.getElementById(newtreee)
		
		this.addLeaf = addLeaf;
		this.defaultImage = defaultImage;
		this.closeBranche = closeBranche;
		this.openBranche = openBranche;
		this.openTreeView = openTreeView;
		this.closeTreeView = closeTreeView;
	}