

// declaring the class
var ObjMenu = Class.create();

// implementing the class
ObjMenu.prototype = {
	
	initialize: function(element, data_0, data_1, data_2, session) {
		
		//this.MenuElement = element;
		this.data_niveau0 = data_0;
		this.data_niveau1 = data_1;
		this.data_niveau2 = data_2;
		this.data_session = session;
		
		//this.maxIter_0 = data_0.length;
		//this.maxIter_1 = data_1.length;
		//this.maxIter_2 = data_2.length;		
		

		
		for(i=0; i<data_0.length; i++)
		{
			//NIVEAU 0
			
			var niveau1_li = document.createElement('li');
			niveau1_li.className = "liMenu0";
			niveau1_li.id = "liMenu"+data_0[i][2];
			element.appendChild(niveau1_li);
				
			var niveau1_a = document.createElement('a');
			niveau1_a.className = "aLiMenu0";
			niveau1_a.href = "#";
			niveau1_a.id = "aMenu"+data_0[i][2];
			
			niveau1_a.style.cursor = "pointer";
			
			var params = data_0[i][0]+"|"+data_0[i][2]+"|"+data_0[i][3];									
			niveau1_a.onclick = function (myself) {
				this.affiche(myself);
			}.pass(params, this)
			
			document.getElementById("liMenu"+data_0[i][2]).appendChild(niveau1_a);			
			niveau1_a.innerHTML =  data_0[i][1];			
			
			//NIVEAU 1			
			var niveau2_ul = document.createElement('ul');
			niveau2_ul.className = "ulMenuNiveau1";
			niveau2_ul.id = "ulMenu"+data_0[i][2];
			document.getElementById("liMenu"+data_0[i][2]).appendChild(niveau2_ul);
			niveau2_ul.style.display = "none";
		}
		for(j=0; j<data_1.length; j++)
		{
			
			var i2 = data_1[j][2].split('-');
			var parent = i2[0];
			var niveau2_li = document.createElement('li');
			niveau2_li.className = "liMenu1";
			niveau2_li.id = "liMenu"+data_1[j][2];
			document.getElementById("ulMenu"+parent).appendChild(niveau2_li);			
			
			
			var niveau2_a = document.createElement('a');
			niveau2_a.className = "aLiMenu1";
			niveau2_a.id = "aMenu"+data_1[j][2];			
			niveau2_a.style.cursor = "pointer";			
			
			var params = data_1[j][0]+"|"+data_1[j][2]+"|"+data_1[j][3];									
			niveau2_a.onclick = function (myself) {
				this.affiche(myself);
			}.pass(params, this)
			
			document.getElementById("liMenu"+data_1[j][2]).appendChild(niveau2_a);
			niveau2_a.innerHTML =  data_1[j][1];	
			
			// NIVEAU 2
			var niveau3_ul = document.createElement('ul');
			niveau3_ul.className = "ulMenuNiveau2";
			niveau3_ul.id = "ulMenu"+data_1[j][2];			
			document.getElementById("liMenu"+data_1[j][2]).appendChild(niveau3_ul);
			niveau3_ul.style.display = "none";
		}
		for(k=0; k<data_2.length; k++)
		{
			var i3 = data_2[k][2].split('-');
			var grand_parent = i3[0];
			var parent = i3[1];
			var niveau3_li = document.createElement('li');
			niveau3_li.className = "liMenu2";
			niveau3_li.id = "liMenu"+data_2[k][2];
			document.getElementById("ulMenu"+grand_parent+"-"+parent).appendChild(niveau3_li);			
			
			var niveau3_a = document.createElement('a');
			niveau3_a.className = "aLiMenu2";
			niveau3_a.id = "aMenu"+data_2[k][2];
			niveau3_a.href = "page.php?rubrique="+data_2[k][0];			
			document.getElementById("liMenu"+data_2[k][2]).appendChild(niveau3_a);
			niveau3_a.innerHTML =  data_2[k][1];
		}
		
		// D�roulement menu si besoin
		document.getElementById("aMenu"+this.data_session[0]).className = "aLiMenu0_bis";			
		document.getElementById("ulMenu"+this.data_session[0]).style.display = "block";
		if (this.data_session[1]) document.getElementById("ulMenu"+this.data_session[0]+"-"+this.data_session[1]).style.display = "block";	
		
		
	},
	affiche: function (params) {
		var param = params.split('|');
		var rubrique = param[0];
		var famille = param[1];
		var contenu = param[2];
		if (famille.length > 1) {
			var asession = famille.split('-');
			var aprincipale = asession[0];			
		} else {
			var aprincipale = famille;			
		}
		if (document.getElementById("ulMenu"+famille)) {
			for (i=0; i<20; i++) {
				if (document.getElementById("ulMenu"+i)) {
					document.getElementById("aMenu"+i).className = "aLiMenu0";
					document.getElementById("ulMenu"+i).style.display = "none";
					if (famille.length > 2) document.getElementById("ulMenu"+i+"-0").style.display = "none";
				} else break;
			}
			document.getElementById("aMenu"+aprincipale).className = "aLiMenu0_bis";
			if (famille.length > 2) document.getElementById("ulMenu"+famille.substring(0,1)).style.display = "block";			
			document.getElementById("ulMenu"+famille).style.display = "block";
			if (contenu == "on") window.location.href = "page.php?rubrique="+rubrique;
			else if (rubrique == "24") window.location.href = "page.php?rubrique="+rubrique;
		}
		
	}
	
};

function initShowcaseSlideShow(element, data_0, data_1, data_2, session) {
	var menu = new ObjMenu(element, data_0, data_1, data_2, session);
	return menu;
}

function addLoadEvent(func) {
	var oldonload = window.onload;
	if (typeof window.onload != 'function') {
		window.onload = func;
	} else {
		window.onload = function() {
			oldonload();
			func();
		}
	}
}


