
function draw_popups() {
	for ( var i = 0; i < 5; i++) {
		draw_popup(i);
	}
}

function draw_popup(id) {
	document.write("<div id=\"popup_"+id+"\" class=\"popup\">");
	draw_cadre_h("popup_"+id);
	document.write("<table id=\"tb_popup_"+id+"\" class=\"tb_popup\" border=\"1\">");
	document.write("<tr>");
	document.write("<td colspan=\"2\">");
	document.write("<div id=\"d_popup_t_"+id+"\" class=\"d_popup_t\"></div>");
	document.write("<img class=\"img_close\" src=\"images/menu/close.gif\" onclick=\"closePopup('popup_"+id+"');\">");
	document.write("</td>");
	document.write("</tr>");
		
	document.write("<tr>");
	document.write("<td id=\"td_menu_l\">");
	
	draw_cadre_h("d_popup_l_"+id);
	document.write("<div id=\"d_popup_l_"+id+"\" class=\"d_popup_l\"></div>");
	draw_cadre_f("d_popup_l_"+id);
	
	document.write("</td>");
	document.write("<td>");
	
	draw_cadre_h("d_popup_c_"+id);
	document.write("<div id=\"d_popup_c_"+id+"\" class=\"d_popup_c\"></div>");
	draw_cadre_f("d_popup_c_"+id);
	
	document.write("</td>");
	document.write("</tr>");
	document.write("</table>");
	draw_cadre_f("popup_"+id);
	document.write("</div>");
}

/**
 * Cette methode permet de positionner le popup en fonctin de son <b>id</b>.
 * @param id
 * @return
 */
function positionPopup(id) {
	var popup = $("popup_"+id);
	
	var h = document.body.clientHeight;
	var w = document.body.clientWidth;
	// var h = document.body.scrollHeight;
	// var w = document.body.scrollWidth;
	
	popup.style.top = 20;
	popup.style.left = 20;
	popup.style.width = w - 2*(popup.style.left.substring(0,2));
	popup.style.height= h - 2*(popup.style.top.substring(0,2));
	
	// on fixe la hauteur de la boite centrale du popup !!
	$("d_popup_c_"+id).style.height 
	               = (9*popup.style.height.substring(0, popup.style.height.length-2)) / 10;
	
	// Effets d'affichage !!!
	if(popup.style.display != "block") {
		$("popup_"+id).style.display = 'block';
		new Effect.Opacity("popup_"+id, { from: 0.0, to: 1.0, duration: 0.5 });
		//chooseEffect("popup_"+id);
	}
	else {
		chooseEffect("d_popup_c_"+id);
	}
	
	// Ensuite on met en place le positionnement dynamique du popup.
	var os = document.createAttribute("onscroll");
	os.nodeValue = "scrollPopup(\"popup_"+id+"\")";
	$("popup_"+id).parentNode.setAttributeNode(os);
	// $("popup_"+id).onmousemove=function(){scrollPopup("popup_"+id);}
}

/**
 * Affiche le menu de navigation du popup en s'inspirant sur l'affichage des <i>'menus bottom'</b>. 
 * @param indice - Indice du menu.
 * @param popup  - Le rang du popup (son z-index en quelque sorte).
 * @return
 */
function nav_menu(indice, popup) {
	// debug_script_menu(menus);

	var m = menus.menu[indice];
	if( m ) {
		var str = "";
		str += "<table id=\"pop_tb_menu_b\" class=\"tb_menu_b\">";
		str += "<tr>";
		str += "<td>";
		str += "<div id=\"pop_menu_"+indice+"\" class=\"menu_b\">";
		// ajout du nom du menu .
		str += "<div id=\"pop_items_"+indice+"\" class=\"items_b\">";
		for (var j = 0; j < m.items.length; j++) {
			var item = m.items[j];
			str += "<div id=\"pop_item_"+indice+"_"+j+"\" class=\"item_b\">";
			if(item == null) continue;
			if(item.sous_items.length == 0) {
				str += "<a href=\"javascript:void(0)\" onclick=\""+((item.action!=null)?item.action:"")+"\">"+item.name+"</a>";
			} else {
				str += "<em>"+item.name+"</em>";
				str += "<div id=\"pop_sousitems_"+indice+"_"+j+"\" class=\"sousitems_b\">";
				for ( var k = 0; k < item.sous_items.length; k++) {
					var sous_item = item.sous_items[k];
					if(sous_item == null) continue;
					str += "<div id=\"pop_sousitem_"+indice+"_"+j
					    + "\" class=\"sousitem_b\"><a href=\"javascript:void(0)\" onclick=\""
					    + ((sous_item.action && sous_item.action!=null && sous_item.action!="")?sous_item.action:"") + "\">"
					    + sous_item.name + "</a></div>";
//					erreur : menus != blocks
//					if (block.sous_items[k].nouveau) {
//						str += "<img src=\"images/menu/new.gif\" />";
//					}
				}
				str += "</div>";
			}
			str += "</div>";
		}
		str += "</div>";
		str += "</div>";
		str += "</td>";
		str += "</tr>";
		str += "</table>";
		
		
		var menu_popup = document.getElementById("d_popup_l_"+popup);
		if(menu_popup) {
			menu_popup.innerHTML = str;
		}
		
		// ------------------------------------------------
		readPub = function (r_val) {
			var menu_popup = $("d_popup_l_"+popup);
			if(menu_popup) {
				menu_popup.innerHTML += "<div id=\"d_popup_l_"+popup+"_pub\" class=\"pub\">"+r_val+"</div>";
			}
		};
		readBarre = function (r_val) {
			var menu_popup = $("d_popup_t_"+popup);
			if(menu_popup) {
				menu_popup.innerHTML = r_val;
			}
		};
		// ------------------------------------------------

		// Affichage des informations de publicites
		x_call_pub(""+(Math.round( 10*Math.random() )), readPub);
		x_call_popup_barre(""+(Math.round( 10*Math.random() )), readBarre);
	}

}



/* ============================================================================================= */
/* =================================   EFFETS D'ANIMATIONS   =================================== */
/* ============================================================================================= */
/**
 * Effets de fermeture du popup (au hazard).
 * @param id
 * @return
 */
function closePopup(id) {
	switch ( Math.round( 10*Math.random()) ) {
	case 0 : Effect.Puff(id, { duration: 3.0 }); break;
	case 1 : Effect.Fade(id, { duration: 3.0 }); break;
	case 2 : Effect.Fold(id, { duration: 3.0 }); break;
	case 3 : Effect.Fold(id, { duration: 3.0 }); break;
	case 4 : Effect.Shrink(id, { duration: 3.0 }); break;
	case 5 : Effect.Shrink(id, { duration: 3.0 }); break;
	case 6 : Effect.Squish(id, { duration: 3.0 }); break; 
	case 7 : Effect.Squish(id, { duration: 3.0 }); break;
	case 8 : Effect.DropOut(id, { duration: 3.0 }); break;
	case 9 : Effect.SwitchOff(id, { duration: 3.0 }); break;
	default:
		break;
	}
	return false;
}

/**
 * Cette methode permet de choisir un effet d'affichage au hasard.
 * @param id - l'identifiant de la zone a afficher.
 * @return
 */
function chooseEffect(id) {
	switch ( Math.round( 10*Math.random()) ) {
	case 0 : Effect.SlideDown(id, { duration: 3.0 }); break;
	case 1 : Effect.SlideDown(id, { duration: 3.0 }); break;
	case 2 : Effect.Grow(id, { duration: 3.0 }); break;
	case 3 : Effect.Grow(id, { duration: 3.0 }); break;
	case 4 : Effect.Grow(id, { duration: 3.0 }); break;
	case 5 : Effect.BlindDown(id, { duration: 3.0 }); break;
	case 6 : Effect.BlindDown(id, { duration: 3.0 }); break;
	case 7 : Effect.BlindDown(id, { duration: 3.0 }); break;
	case 8 : Effect.Appear(id, { duration: 3.0 }); break;
	case 9 : Effect.Appear(id, { duration: 3.0 }); break;
	default:
		break;
	}
	
	$(id).scrollTop = 10;
	return false;
}

/*
document.write("<>");
document.write("<>");
document.write("<>");
*/

/*
function positionPopup(id) {
	var popup = $("popup_"+id);
	
	var h = document.body.scrollHeight;
	var w = document.body.scrollWidth;
	
	popup.style.top = 20;
	popup.style.left = 20;
	popup.style.width = w - 2*(popup.style.left.substring(0,2));
	popup.style.height= h - 2*(popup.style.top.substring(0,2));
	
	// on fixe la hauteur de la boite centrale du popup !!
	$("d_popup_c_"+id).style.height 
	               = (9*popup.style.height.substring(0, popup.style.height.length-2)) / 10;
	
	// effets d'affichage !!!
	if(popup.style.display != "block") {
		//displays the popup
		$("popup_"+id).style.display = 'block';
		//$("popup_"+id).style.visibility = 'visible';
		new Effect.Opacity("popup_"+id, { from: 0.0, to: 1.0, duration: 0.5 });
		//chooseEffect("popup_"+id);
	}
	else {
		chooseEffect("d_popup_c_"+id);
	}
}
*/
/* ============================================================================================= */
/* ======================================   UTILITAIRES   ====================================== */
/* ============================================================================================= */
/* *** Repositionne automatiquement le popup au centre de la page *** */
function scrollPopup(id) {
	var popup = $(id);	
	if(popup) {
		var h = popup.style.height.substr(0, popup.style.height.length-2);
		if(document.body.scrollHeight > (document.body.clientHeight+scrollY)) {
			popup.style.top = (document.body.clientHeight+scrollY)-h;
		}
	}
}


