/*	Element.extend(
{
	hide: function() 
	{
		return this.setStyle('display', 'none');
	},
	
	show: function() 
	{
		return this.setStyle('display', '');
	}
});


Script: moo.dropdownmenu.js
	Fx.DropdownMenu.
		
Dependencies:
	<Moo.js>, <Function.js>, <Array.js>, <String.js>, <Element.js>

Author:
	André Fiedler, <http://visualdrugs.net>

License:
	MIT-style license.

Class: Fx.PopMenu
	The DropdownMenu function creates a group of elements that have the behaviour of an dropdown menu.
	
Arguments:
	element - a list-element the effect will be applied to.
	
Example:
	(start code)
	<ul id="dropdownMenu">
		<li>
			<a href="#">Menu 1</a>
			<ul>
				<li><a href="#">SubMenu 1</a></li>
				<li><a href="#">SubMenu 2</a></li>
				<li><a href="#">SubMenu 3</a></li>	
			</ul>
		</li>
		<li><a href="#">Menu 2</a></li>
		<li><a href="#">Menu 3</a></li>	
	</ul>
	
	<script type="text/javascript">
	
		Window.onDomReady(function() {new DropdownMenu($('dropdownMenu'))});
		
	</script>
	(end)
*/
window.addEvent('domready', function() {
	
	
	 


	
	/*$$('#main-menu li ul li a').addEvents({
		mouseover: function(){
			this.setStyle('font-weight','bold');
		},
		mouseout: function(){
			this.setStyle('font-weight','normal');
		}
	});*/
});







var DropdownMenu = new Class({	

	

	initialize: function(element)
	{
		$A($(element).childNodes).each(function(el)
		{
			if(el.nodeName.toLowerCase() == 'li')
			{
				$A($(el).childNodes).each(function(el2)
				{
					
					
					if(el2.nodeName.toLowerCase() == 'ul')
					{
			
						
						var mySlider = new Fx.Slide(el2, {duration: 500});
						
						//mySlider.slideOut();
						
	
						// menu actif ou non?
						if (el.className == 'active')
						{
							
							mySlider.slideIn();
						}
						else
						{
							
							 
							mySlider.hide().slideOut();
							$(el2).get('tween', {property: 'opacity', duration: 'short'}).start(1);
						}
						
						
						el.addEvent('mouseenter', function(e)
						{
							mySlider.cancel();
							
							//e.stop();
							
							if (el.className != 'active'){
								mySlider.slideIn();
								$(el2).get('tween', {property: 'opacity', duration: 'short'}).start(1);
							}

							return false;
						});
						
						
						el.addEvent('mouseleave', function(e)
						{
							mySlider.cancel();
							
							//e.stop();

							if (el.className != 'active'){
								mySlider.slideOut();
								$(el2).get('tween', {property: 'opacity', duration: 'short'}).start(0);
							}
							

							return false;
						});
						
						
						new DropdownMenu(el2);
					}
				});
			}
		});
		return this;
	}
});


//time to implement fancy show / hide
	  Element.implement({
		//implement show
		fancyShow: function() {
			var mySlider = new Fx.Slide(this, {duration: 2000});
			mySlider.toggle();
		  	this.fade('in');
		},
		//implement hide
		fancyHide: function() {
			var mySlider = new Fx.Slide(this, {duration: 2000});
			mySlider.toggle();
		  	this.fade('out');
		}
	  });



