/* needs mootools.js [www.mootools.org -> element.js + dependencies] ------------ */

var displayedSubmenu = '';     // submenu displayed under main menu
var selectedMenu = '';         // menu selected (age = color orange)
/* -------------------------------------------------------------------------------
		function  : shows submenu and select (selected color) the corresponding menu item
								[event] onMouseOver menu link
		parameters: idLinkMenu - menu id
		            idSubmenu  - id of submenu to show
		retunrs   : none
	------------------------------------------------------------------------------- */
	function showSubmenu(idLinkMenu,idSubmenu) {
		hideSubmenus();
		deselectMenu();
		if (idLinkMenu!='') {
			$(idLinkMenu).addClass('selected');
			selectedMenu = idLinkMenu;
		}
		if ($(idSubmenu))
		{
			if ($(idSubmenu).getChildren('ul').length>0)
			{
	    		if ($(idSubmenu).getChildren('ul')[0].getChildren('li').length>0)
    			{
				    $(idSubmenu).style.visibility='hidden';
				    $(idSubmenu).style.display='block';
				    var fills = $(idSubmenu).getChildren('ul')[0].getChildren('li');
				    var ampleRealSubmenu = fills[fills.length-1].getPosition().x - fills[0].getPosition().x + fills[fills.length-1].getSize().x;
				    var offsetXHalfMenu = $(idLinkMenu).getPosition().x - $(idLinkMenu).getParent('div').getPosition().x + parseInt($(idLinkMenu).getSize().x/2);
				    var offsetXSubmenu = (parseInt((ampleRealSubmenu/2)) > offsetXHalfMenu) ? 0 : offsetXHalfMenu - parseInt((ampleRealSubmenu/2));
				    if ($(idSubmenu).getSize().x < offsetXHalfMenu + parseInt(ampleRealSubmenu/2))
				    {
					    offsetXSubmenu = $(idSubmenu).getSize().x - ampleRealSubmenu;
				    }
				    $(idSubmenu).style.paddingLeft = offsetXSubmenu +'px';
				    displayedSubmenu = idSubmenu;
				    $(idSubmenu).style.visibility='visible';
				}
			}
		}
	}

	/* -------------------------------------------------------------------------------
		function  : hides the displayed submenu
		parameters: none
		retunrs   : none
	------------------------------------------------------------------------------- */
	function hideSubmenus() {
		if (displayedSubmenu!='')
			$(displayedSubmenu).style.display='none';
	}

	/* -------------------------------------------------------------------------------
		function  : defines selected menu link without selected color
		parameters: none
		retunrs   : none
	------------------------------------------------------------------------------- */
	function deselectMenu() {
		if (selectedMenu!='') {
			$(selectedMenu).removeClass('selected');
		}
	}

	/* -------------------------------------------------------------------------------
		function  : adds the class 'selected' to the menu link and corresponding submenu link
		parameters: idLinkMenu    - menu link id
		            idLinkSubmenu - submenu link id
		retunrs   : none
	------------------------------------------------------------------------------- */
	function selectMenuSubmenu(idLinkMenu,idLinkSubmenu) {
		if (idLinkMenu!='')
			if ($(idLinkMenu))
				$(idLinkMenu).addClass('selected');
		if (idLinkSubmenu!='')
			if ($(idLinkSubmenu))
				$(idLinkSubmenu).addClass('selected');
	}



	/* -------------------------------------------------------------------------------
		function  : initializes menu and submenu when page is loaded
		            1 selects menu and submenu
		            2 shows submenu
		parameters: idLinkMenu    - menu link id
		            idLinkSubmenu - submenu link id
		retunrs   : none
	------------------------------------------------------------------------------- */
	function initializeMenuSubmenu(idLinkMenu,idLinkSubmenu){
		var idSubmenu;
		selectMenuSubmenu(idLinkMenu,idLinkSubmenu);
		if (idLinkSubmenu!='')
			idSubmenu = idLinkSubmenu.substr(0,(idLinkSubmenu.length-3));
		else
			idSubmenu = '';

		var elLinkMenu = $(idLinkMenu);
		if (elLinkMenu)
			showSubmenu(elLinkMenu,idSubmenu);
	}