function slide_in(element)
{
	var e = element.parentNode.getElementsByTagName('UL')[0];
	new Effect.Morph(
		e,
		{
			style: 'margin-left:-100%;',
			afterFinish: function(obj) {
				obj.element.parentNode.style.display = 'none';
			},
			queue:'end',
			duration: 0.5
		}
	);
}
	
function slide_out(element)
{
	var e = element.parentNode.getElementsByTagName('UL')[0];
	new Effect.Morph(
		e,
		{
			style: 'margin-left:0%;',
			beforeStart: function(obj) {
				obj.element.style.marginLeft = '-100%';
				obj.element.parentNode.style.display = 'block';
			},
			queue:'end',
			duration: 0.5
		}
	);
}


Event.observe(window,'load',function() {
	$$('#site-menu div').each(function(e){
		if (!Element.hasClassName(e,'current'))
			e.style.display='none';
		else
			e.style.display='block';
	});
		
	$$('#site-menu a').each(function(e) {
		if ( e.parentNode.getElementsByTagName('UL').length>0 )
			e.onclick = function() {
				var divs = $$('#site-menu div');
				for(var i=0;i<divs.length;i++)
				{
					var a = divs[i].parentNode.getElementsByTagName('A')[0];
					if ( divs[i].visible() && a!=this )
						slide_in(a);
				}
				var div = Element.down(Element.up(this,'li'),'div');
				if (div.visible())
					slide_in(this);
				else
				{
					$$('#site-menu .current').each(function(e){ Element.removeClassName(e,'current') });
					Element.addClassName(this,'current');
					slide_out(this);
				}
				return false;
			}
	});
});