sub_actif = new Array();
sub_current = new Array();
sub_show = new Array();
sub_hide = new Array();
var Menu = {
	showSub: function(idp, levelp, effect) {
		if (!effect) effect = 'slide';
		if (!Effect.PAIRS[effect]) { effect = 'slide'; }
		var effectShow = Effect.PAIRS[effect][0];
		
		if (sub_actif.in_array(idp)===false && sub_current.in_array(idp)===false) {
			this.hideSub(levelp, effect, idp);
			sub_actif.push(idp);

			sEval = "sub_show[idp] = new Effect."+effectShow+"(idp, { "; 
			sEval += "duration: 0.5, ";
			sEval += "queue: {position: 'end', scope: idp},"; 
			sEval += "afterFinish: function(effect) { " +
					"if (typeof(sub_show[effect.element.id]) != 'undefined') { delete sub_show[effect.element.id]; } " +
					"$(idp).childNodes[0].style.bottom = null;" +
					"$(idp).childNodes[0].style.top = null;" +
					"$(idp).childNodes[0].style.left = null;" +
					"$(idp).childNodes[0].style.right = null; }";
			sEval += "})";
			eval(sEval);
		}
	},

	hideSub: function(levelp, effect, exceptid) {
//		if (!effect) effect = 'slide';
//		if (!Effect.PAIRS[effect]) { effect = 'slide'; }
//		effectHide = Effect.PAIRS[effect][1];
		for (i=sub_actif.length-1; i>=levelp; i--) {	
			var idp = sub_actif[i];
			sub_actif.pop();
//			if (exceptid != sub_actif[i] && sub_current.in_array(sub_actif[i])==false ) {
//				sub_current.push(sub_actif[i]);	
//			}
			if (exceptid != idp) {
				$(idp).hide(); 
			}			
		}
	}
};

Menu.hideAll = function() {
	Menu.hideSub(0);
};

document.onclick = Menu.hideAll;

