var Element = new Object();
Element.cleanWhitespace = function(element) {
    
    var node = element.firstChild;
    while (node) {
      var nextNode = node.nextSibling;
      if (node.nodeType == 3 && !/\S/.test(node.nodeValue))
        element.removeChild(node);
      node = nextNode;
    }
    return element;
  };


if (!window.Event) 
{
	var Event = new Object();
}

Event.element = function(event) {
  return event.target || event.srcElement;
};



Event.stop = function(event) 
{
	if (event.preventDefault) 
	{
    	event.preventDefault();
      	event.stopPropagation();
    } 
	else 
	{
    	event.returnValue = false;
      	event.cancelBubble = true;
    }
};

Event.observe = function(element, name, observer) 
{
	if (element.addEventListener) 
	{
    	element.addEventListener(name, observer, false);
    } 
	else if (element.attachEvent) 
	{
    	element.attachEvent('on' + name, observer);
    }
};




function getObjLeft(obj) {
    oLeft = obj.offsetLeft
    while(obj.offsetParent!=null) {
        oParent = obj.offsetParent
        oLeft += oParent.offsetLeft
        obj = oParent
    }
    return oLeft
}


function getObjTop(obj) {
    objTop = obj.offsetTop
    while(obj.offsetParent!=null) {
        objParent = obj.offsetParent
        objTop += objParent.offsetTop
        obj = objParent
    }
    return objTop
}


function menu()
{

	

	var v_menu = document.getElementById('menu');
	//v_menu.style.backgroundColor = '#5c7c05';
	Element.cleanWhitespace(v_menu);

	Event.observe(document.body, "mouseover", cache);
	Event.observe(document.getElementById("Smenu"), "mouseover", function(e) { Event.stop(e); });

	for (var i = 0; i < v_menu.getElementsByTagName('DD').length; i++)
	{
		v_menu.getElementsByTagName('DD')[i].style.display ='none'; 
	}

	var v_elementStart = v_menu.getElementsByTagName('DT');
	for (var i = 0; i < v_elementStart.length; i++) 
	{
		v_elementStart[i].style.styleFloat = 'left';
		v_elementStart[i].style.cssFloat = 'left';
		v_elementStart[i].style.marginTop = 0 + 'px';
		if((v_elementStart[i].nextSibling != null)&&(v_elementStart[i].nextSibling.nodeName =='DD'))
		{
			Event.observe(v_elementStart[i], "mouseover", function(e) { Event.stop(e); });
			//v_elementStart[i].style.borderRightWidth = 1 + 'px';
			//v_elementStart[i].style.borderRightStyle = 'solid';
			//v_elementStart[i].style.borderRightColor = '#FFFFFF';
			v_elementStart[i].style.paddingRight = 7 + 'px';
			v_elementStart[i].style.paddingLeft = 7 + 'px';
			v_elementStart[i].style.paddingTop = 2 + 'px';
			v_elementStart[i].style.paddingBottom = 2 + 'px';
			v_elementStart[i].style.color = '#5c7c05';
			Event.observe(v_elementStart[i], "mouseover", display);
		}
		else
		{
			var v_aNodes = v_elementStart[i].childNodes;
			for(var k=0;k<v_aNodes.length;k++)
			{
				if(v_aNodes[k].nodeType==1)
				{
					v_aNodes[k].style.color = '#5c7c05';
					//v_aNodes[k].style.borderRightWidth = 1 + 'px';
					//v_aNodes[k].style.borderRightStyle = 'solid';
					//v_aNodes[k].style.borderRightColor = '#FFFFFF';
					v_aNodes[k].style.paddingRight = 7 + 'px';
					v_aNodes[k].style.paddingLeft = 7 + 'px';
					v_aNodes[k].style.paddingTop = 2 + 'px';
					v_aNodes[k].style.paddingBottom = 2 + 'px';
					v_aNodes[k].style.styleFloat = 'left';
					v_aNodes[k].style.cssFloat = 'left';
					Event.observe(v_aNodes[k], "mouseover", colorIn);
					Event.observe(v_aNodes[k], "mouseout", colorOut);
				}
			}
		}		
	}
	v_menu.style.display = 'block';
}

function colorIn(e)
{
var outNode = document.getElementById("Smenu");
	var v_node = Event.element(e);
	v_node.style.backgroundColor = '#E3F7AC';
}


function colorOut()
{
var v_menu = document.getElementById('menu');
	for (var i = 0; i < v_menu.getElementsByTagName('A').length; i++)
	{
		v_menu.getElementsByTagName('A')[i].style.backgroundColor =''; 
	}

}

function display(e)
{
	cache();
	var v_menu = document.getElementById('menu');
	Element.cleanWhitespace(v_menu);
	var outNode = document.getElementById("Smenu");
	var v_node = Event.element(e);
	v_node.style.backgroundColor = '#E3F7AC';
	var v_top = getObjTop(v_node) + v_node.offsetHeight;
	var v_left = getObjLeft(v_node)

	var node = v_node.nextSibling.firstChild;
	while(node)
	{	
		outNode.appendChild(node.cloneNode(true));
		node = node.nextSibling;
		outNode.style.display = 'block';
		outNode.style.position = 'absolute';
		outNode.style.top = v_top +'px';
		outNode.style.left = v_left +'px';
	}
}



function cache()
{
	var outNode = document.getElementById("Smenu");
	while (outNode.hasChildNodes()) 
	{
		outNode.removeChild(outNode.firstChild);
		outNode.style.display = 'none';
	}
	var v_menu = document.getElementById('menu');
	for (var i = 0; i < v_menu.getElementsByTagName('DT').length; i++)
	{
		v_menu.getElementsByTagName('DT')[i].style.backgroundColor =''; 
	}
}



function cacheBloc(bloc)
{
	var v_bloc = document.getElementById(bloc);
	
	if(v_bloc.style.display="block")
	{
		v_bloc.style.display="none";
	}
	else
	{
		v_bloc.style.display="block";
	}

}

function openBloc(bloc)
{
	var v_bloc = document.getElementById(bloc);
	
	if(v_bloc.style.display=="block")
	{
		v_bloc.style.display="none";
	}
	else
	{
		v_bloc.style.display="block";
	}

}
















window.onload=menu;
