var ListeFiche;
var LibN1 = new Array;
var LibN2=new Array();
var LibN3=new Array();
var ladate = new Date();
var Menu = new Array();
var divG = new Array();
var tableG = new Array();
var tbodyN1 = new Array();
var IdTop = new Array();
var IndiceTG,IndiceT;
var BaseImg="images/skins/sguardo_v1/images/";
var TimeEnd;

function ds_getleft(el) {
	var tmp = el.offsetLeft;
	el = el.offsetParent
	while(el) {
		tmp += el.offsetLeft;
		el = el.offsetParent;
	}
	return tmp;
}

function Init(){
	var Noeuds = new Array('libell_','lien','idparent','niveau','ordre','colonne','image1','lienimage1','idfixe');
	var time = ladate.getMilliseconds();
	var myAjax = "";
	myAjax = new Ajax.Request(
      'exports/xml_catalogue.asp?start=0&limit=50&sid=b7959c09a44dc5aec4a92071a114de4f&date='+time,
      {
        method: 'get',
        parameters: {},
        onSuccess: function (xhr)
          {
			ListeFiche = new Array();
			var xml = xhr.responseXML;
			var nodeExports=xml.getElementsByTagName('export')[0];
			var Fiches = nodeExports.getElementsByTagName('fiche');
			for(var i=0;i<Fiches.length;i++)
			{
				//Indice du produit dans tableau ListeFiche
				var Indice = ListeFiche.length;
				var Fiche = Fiches[i];
				var attributes = Fiche.attributes;
				ListeFiche[i] = new Array();
				for(var j=0;j<attributes.length;j++)
				{
					ListeFiche[Indice][attributes[j].name]= attributes[j].nodeValue;
				}
				for(var j=0;j<Noeuds.length;j++)
				{
					ListeFiche[Indice][Noeuds[j]] = typeof(Fiche.getElementsByTagName(Noeuds[j])[0].text)=="undefined"?Fiche.getElementsByTagName(Noeuds[j])[0].textContent:Fiche.getElementsByTagName(Noeuds[j])[0].text;
				}
			}
			buildIt();
			//$$('body')[0].observe("mouseover",function(){autoSwitch();});
		 },
		onFailure: function(xhr)
		{
			buildIt();
		}
      }
    );
};

function compteN1(idparent)
{
	var Compteur=0;
	for(var i=0;i<LibN1.length;i++)
	{
		if(LibN1[i]['idparent']==idparent)
			Compteur++;
	}
	return Compteur;
}

function buildIt()
{
	sortIt();
	Menu=new Array();
	for(var i=0;i<LibN1.length;i++)
	{
		Menu[Menu.length] = LibN1[i];
		for(var j=0;j<LibN2.length;j++)
		{
			if(LibN2[j]['idparent']==LibN1[i]['idfixe'])
			{
				Menu[Menu.length] = LibN2[j];
				for(var x=0;x<LibN3.length;x++)
				{
					if(LibN3[x]['idparent']==LibN2[j]['idfixe'])
					{
						Menu[Menu.length] = LibN3[x];
					}
				}
			}
		}
	}

	if(!$('zonecontenu'))
	{
		var div = el("div",$$('body')[0]);
		div.id='zonecontenu';
		div.style.display="none";
	}
	try{
	for(var i=0;i<Menu.length;i++)
	{
		if(Menu[i]['niveau']==1)
		{
			if(!in_array(Menu[i]['idparent'],IdTop))
			{
				IdTop[IdTop.length] = Menu[i]['idparent'];
				IndiceTG = tableG.length;
				divG[IndiceTG] = el("div",$('zonecontenu'));
				divG[IndiceTG].style.display="none";
				var Reference = $('ID_Top_1');
				var Parent = $('ID_Top_'+Menu[i]['idparent']);
				
				var LienTop = $$('#ID_Top_'+Menu[i]['idparent']+' a.Tab,#ID_Top_'+Menu[i]['idparent']+' a.Tab_Active')[0];
				
				/*if(LienTop.hasClassName('Tab'))
					LienTop.removeClassName('Tab');
				if(LienTop.hasClassName('Tab_Active'))
					LienTop.removeClassName('Tab_Active');
				LienTop.addClassName('TabS');				
				*/
				$('STM'+Menu[i]['idparent']).style.left = parseInt(ds_getleft(Reference)).toString()+"px";
				$('STM'+Menu[i]['idparent']).style.width = "953px";
				//Table global du sous top
				tableG[IndiceTG] = el("table",divG[IndiceTG]);
				tableG[IndiceTG].addClassName('nothing');
				tableG[IndiceTG].style.width="953px";
				tableG[IndiceTG].style.background="url("+BaseImg+"fond_soustop.jpg) no-repeat bottom left";
				//tbody global du sous top
				var tbodyG = el("tbody",tableG[IndiceTG]);
				tbodyN1[IndiceTG] = new Array();
				//tr global du sous top
				var trG = el('tr',tbodyG);
				
			}
			else
				IndiceTG = tableG.length-1;
			
			IndiceT = tbodyN1[IndiceTG].length;
			//Séparation
			if(IndiceT!=0)
			{
			
			}
			var tdC;
			//conteneur colonne
			if(!$('td_c'+Menu[i]['colonne']+'t'+Menu[i]['idparent']))
			{
				tdC = el("td",trG);
				tdC.addClassName('nothing');
				tdC.style.verticalAlign="top";
				tdC.id = 'td_c'+Menu[i]['colonne']+'t'+Menu[i]['idparent'];
				tdC.style.height = "247px";
			}
			else
				tdC = $('td_c'+Menu[i]['colonne']+'t'+Menu[i]['idparent']);
			if(Menu[i]['libell_']!="")
			{
				var tableC = el("table",tdC);
				tableC.addClassName('nothing');
				tableC.style.width="201px";
				tableC.style.marginLeft="22px";
				var tbody = el('tbody',tableC);
				
				//élément Libellé N1
				var tr = el('tr',tbody);
				var td = el('td',tr);
				td.colSpan=2;
				td.style.height="25px";
				td.style.verticalAlign="bottom";
				td.addClassName('libelleGroupe');
				td.innerHTML = Menu[i]['libell_'];
				
				tr = el('tr',tbody);
				td = el('td',tr);
				td.style.width="7px";
				td = el('td',tr);
				td.style.verticalAlign="top";
				td.style.paddingRight="20px";
				table = el("table",td);
				table.addClassName('nothing');
				tbodyN1[IndiceTG][IndiceT]=el('tbody',table);
			}
			else if(Menu[i]['image1']!="")
			{
				var tImg;
				if(!$('tableImg'+'t'+Menu[i]['idparent']))
				{
					var tableImg = el("table",tdC);
					tableImg.addClassName("nothing");
					tableImg.style.height="100%";
					tImg = el("tbody",tableImg);
					tImg.id = 'tableImg'+'t'+Menu[i]['idparent'];
					tdC.style.width="auto";
				}
				else
					tImg = $('tableImg'+'t'+Menu[i]['idparent']);
				var trImg = el("tr",tImg);
				var tdImg = el("td",trImg);
				tdImg.style.verticalAlign = "middle";
				tdImg.innerHTML = "<a href='"+Menu[i]['lienimage1']+"'><img src='images/catalogue/id_1/images/"+Menu[i]['image1']+"' border='0' /></a>";
				
			}
		}
		else if(Menu[i]['niveau']==2)
		{
			var tr = el("tr",tbodyN1[IndiceTG][IndiceT]);
			var td = el('td',tr);
			td.addClassName('libelleRubrique');
			td.innerHTML = "";
			var libT="";
			if(Menu[i]['lien']!="")
				libT+="<a class='SousTopMenu' href='"+Menu[i]['lien']+"'>"
			libT+=Menu[i]['libell_'];
			if(Menu[i]['lien']!="")
				libT+="</a>";
			td.innerHTML+=libT;
		}
		else if(Menu[i]['niveau']==3)
		{
			var tr = el("tr",tbodyN1[IndiceTG][IndiceT]);
			var td = el('td',tr);
			td.addClassName('lienSoustop2');
			td.innerHTML = "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.&nbsp;<a class='SousTopMenu' href='"+Menu[i]['lien']+"' class='lienSoustop2'>"+Menu[i]['libell_']+"</a>";
		}
	}
	for(var i=0;i<tableG.length;i++)
	{
		$$('#STM'+IdTop[i]+' table tr td')[0].innerHTML = divG[i].innerHTML;
		//$('STM'+IdTop[i]).style.display="none";
	}
	}
	catch(any){
		d("Erreur"+ (any.description || any));
	}
}

function autoSwitch()
{
	for(var i=0;i<IdTop.length;i++)
		$('STM'+IdTop[i]).style.display="block";
	$$('body')[0].stopObserving('mouseover');
}

function getTime()
{
	return ladate.getTime();
}

function in_array(val,array)
{
	for(var i=0;i<array.length;i++)
		if(val==array[i])
			return true;
	return false;
}

function el(type,attach)
{
	var el = document.createElement(type);
	Element.extend(el);
	attach.appendChild(el);
	return el;
}

function sortIt()
{
	setLib(1);
	setLib(2);
	setLib(3);
	orderLib();
}

function orderLib()
{
	for(var i=1;i<=3;i++)
	{
		switch(i)
		{
			case 1:
				Flag = true;
				while(Flag)
				{
					Flag = false;
					for(var j=1;j<LibN1.length;j++)
					{
						if(LibN1[j-1]['idparent']>LibN1[j]['idparent'])
						{
							var Temp = LibN1[j-1];
							LibN1[j-1] = LibN1[j];
							LibN1[j] = Temp;
							Flag = true;
						}
					}
				}
				Flag = true;
				while(Flag)
				{
					Flag = false;
					for(var j=1;j<LibN1.length;j++)
					{
						if(LibN1[j-1]['ordre']>LibN1[j]['ordre'] && LibN1[j-1]['idparent']==LibN1[j]['idparent'])
						{
							var Temp = LibN1[j-1];
							LibN1[j-1] = LibN1[j];
							LibN1[j] = Temp;
							Flag = true;
						}
					}
				}
				break;
			case 2:
				Flag = true;
				while(Flag)
				{
					Flag = false;
					for(var j=1;j>LibN2.length;j++)
					{
						if(LibN2[j-1]['idparent']>LibN2[j]['idparent'])
						{
							var Temp = LibN2[j-1];
							LibN2[j-1] = LibN2[j];
							LibN2[j] = Temp;
							Flag = true;
						}
					}
				}
				
				Flag = true;
				while(Flag)
				{
					Flag = false;
					for(var j=1;j<LibN2.length;j++)
					{
						if(LibN2[j-1]['ordre']>LibN2[j]['ordre'] && LibN2[j-1]['idparent']==LibN2[j]['idparent'])
						{
							var Temp = LibN2[j-1];
							LibN2[j-1] = LibN2[j];
							LibN2[j] = Temp;
							Flag = true;
						}
					}
				}
				break;
			case 3:
				Flag = true;
				while(Flag)
				{
					Flag = false;
					for(var j=1;j<LibN3.length;j++)
					{
						if(LibN3[j-1]['idparent']>LibN3[j]['idparent'])
						{
							var Temp = LibN3[j-1];
							LibN3[j-1] = LibN3[j];
							LibN3[j] = Temp;
							Flag = true;
						}
					}
				}
				
				Flag = true;
				while(Flag)
				{
					Flag = false;
					for(var j=1;j<LibN3.length;j++)
					{
						if(LibN3[j-1]['ordre']>LibN3[j]['ordre'] && LibN3[j-1]['idparent']==LibN3[j]['idparent'])
						{
							var Temp = LibN3[j-1];
							LibN3[j-1] = LibN3[j];
							LibN3[j] = Temp;
							Flag = true;
						}
					}
				}
				break;
		}
	}
}

function setLib(niveau)
{
	for(var i=0;i<ListeFiche.length;i++)
	{
		if(ListeFiche[i]['niveau']==niveau)
		{
			switch(niveau){
				case 1:
					LibN1[LibN1.length] = ListeFiche[i];
					break;
				case 2:
					LibN2[LibN2.length] = ListeFiche[i];
					break;
				case 3:
					LibN3[LibN3.length] = ListeFiche[i];
					break;
			}
		}
	}
}



setTimeout("Init()",1000);
