var slideMenu=function(){
	var sp,st,t,m,sa,l,w,gw,ot,aaa,sl;
	return{
		build:function(sm,sw,mt,s,sl2,h){
			sp=s; st=sw; t=mt; sl=sl2;
			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);
				sa[sl-1].onmouseover();
			}
		},
		timer:function(s){
			s.onmouseover=function()
				{
					clearTimeout(s.ctimer);
					clearInterval(m.htimer);
					clearInterval(m.timer);
					m.timer=setInterval(function(){slideMenu.slide(s)},t);
					slideMenu.open(s);
				}
			s.onmouseout=function()
				{					
					clearInterval(m.timer);
					clearInterval(m.htimer);
					if (sl!=null)
					{
						m.timer=setInterval(function(){slideMenu.slide(sa[sl-1])},t);
						slideMenu.open(sa[sl-1]);
						if (sa[sl-1]!=s) s.ctimer=setTimeout (function(){slideMenu.close(s)},50)
					}
					else
					{
						m.htimer=setInterval(function(){slideMenu.slide(s,true)},t)
						s.ctimer=setTimeout (function(){slideMenu.close(s)},50)			
					}
					
				}

		},
		close:function(s)
		{
			s.getElementsByTagName('div')[1].style.display='none';
			s.getElementsByTagName('div')[0].style.display='none';
			s.opened=false;
		},
		open:function(s)
		{
			s.getElementsByTagName('div')[0].style.display='block';
			s.opened=true;
		},
		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)}
						if(!c && sa[i].opened) slideMenu.close(sa[i])}}
				s.style.width=(w-owt)+'px';
			}
			else
			{
				clearInterval(m.timer);clearInterval(m.htimer);
				if (!c)	s.getElementsByTagName('div')[1].style.display='block';
			}
		}
	};
}();
