/*
 * Script from: http://www.leigeber.com/2008/05/horizontal-javascript-accordion-menu/
 * Edited by: Mark (DigiFactory Webworks)
 */
var slideMenu=function(){
	var sp, st, t, m, sa, l, w, gw, ot, a, ha, stop;
	return{
		build:function(sm, sw, mt, s, sl, h)
		{
			stop= 0;
			a	= sl;
			ha	= h;
			sp	= s;
			st	= sw;
			t	= mt;
			m	= document.getElementById(sm);
			sa	= m.getElementsByTagName('li');
			l	= sa.length; 
			w	= m.offsetWidth;
			gw	= w/l;
			ot	= Math.floor((w-st)/(l-1));
			var i=0;
			for(i; i<l; i++)
			{
				s = sa[i];
				s.style.width=gw+'px';
				this.timer(s);
			}
			if(sl != null)
			{
				m.timer = setInterval(function(){ slideMenu.slide(sa[sl-1]) }, t);
			}
			setTimeout("slideMenu.autoSlide(" + sp + ")", 5000);
		},
		timer:function(s)
		{
			s.onmouseover=function(){stop = 1;clearInterval(m.htimer);clearInterval(m.timer);m.timer=setInterval(function(){slideMenu.slide(s)},t)}
		},
		slide:function(s,c)
		{
			var cw=parseInt(s.style.width);
			if((cw<st && !c) || (cw>gw && c)){
				var owt=0; var i=0;
				for(i;i<l;i++){
					if(sa[i]!=s){
						var o,ow; var oi=0; o=sa[i]; ow=parseInt(o.style.width);
						if(ow<gw && c){oi=Math.floor((gw-ow)/sp); oi=(oi>0)?oi:1; o.style.width=(ow+oi)+'px';
						}else if(ow>ot && !c){oi=Math.floor((ow-ot)/sp); oi=(oi>0)?oi:1; o.style.width=(ow-oi)+'px'}
						if(c){owt=owt+(ow+oi)}else{owt=owt+(ow-oi)}}}
				s.style.width=(w-owt)+'px';
			}else{clearInterval(m.timer);clearInterval(m.htimer)}
		},
		autoSlide:function(sp)
		{
			if(stop == 0)
			{
				a 	= a + 1;
				if((a-1) == ha)
				{
					a 	= 1;
				}			
				activate = sa[a-1];
				clearInterval(m.htimer);
				clearInterval(m.timer)
				m.timer = setInterval(function(){ slideMenu.slide(activate) }, t);
				setTimeout("slideMenu.autoSlide(" + sp + ")", 5000);
			}
		}
	};
}();
