/*

	Super Slide Accordion Menu for CodeCanyon.net
	
	Author: SOFTPAE.com, Anton Pitak
	
	Parameters:
	
	SuperSlide.Make (
	1.	id of the unordered list,
	2.	inner content width,
	3.	[default tab],
	4.	[sliding speed] (lower is fastest),
	5.	[autoslide time in sec.] (no autoslide if you do not set this param)
	);


*/

var ssit=false;

// load stylesheet dynamically

if (ssit==false) {
	if(document.createStyleSheet) {
		document.createStyleSheet('sslide.css');
	}
	else {
		var ss=document.createElement('link');
		ss.rel='stylesheet';
		ss.type='text/css';
		ss.href='sslide.css';
		document.getElementsByTagName("head")[0].appendChild(ss);
	}
	ssit==true;
}

var SuperSlide=function(){
	var sp,st,t,m,l,w,sw,ot,cl,cc,gt;
	var sa=new Array();
	var mo=0;
	return{
		Make:function(sm,sw,sl,s,c){
			try {
				if(s==null) {s=10;}
				if(sl==null) {sl=1;}
				sp=s; st=sw; t=10; cl=c; cc=0;
				m=document.getElementById(sm);
				for(i=0; i<m.childNodes.length; i++) {
					if(m.childNodes[i].nodeType == 1 && m.childNodes[i].nodeName.toLowerCase() == 'li') {
					sa.push(m.childNodes[i]);
					}
				}
				l=sa.length; w=m.offsetWidth; sw=w/l;
				ot=Math.floor((w-st)/(l-1)); var i=0;
				for(i;i<l;i++){s=sa[i]; s.style.width=sw+'px'; this.timer(s)}
				if(sl!=null){m.timer=setInterval(function(){SuperSlide.slide(sa[sl-1])},t)}
				if(cl!=null){gt=setInterval(function(){SuperSlide.timeslide(cc)},c)}
			} catch (e) {}
		},
		MakeOver:function(sm,sw,sl,s,c){
			mo=1;
			SuperSlide.Make(sm,sw,sl,s,c);
		},
		timer:function(s){
			if (mo==1) {
				s.onmouseover=function(){
					try {window.getSelection().removeAllRanges();} catch (e) {}; // mozilla selection hackkk
					//var i=1;
					//for(i;i<sa.length;i++){
					//	sa[i].className='';
					//}
					clearInterval(m.timer);
					m.timer=setInterval(function(){SuperSlide.slide(s)},t);
				}
			} else {
				s.onclick=function(){
					try {window.getSelection().removeAllRanges();} catch (e) {}; // mozilla selection hackkk
					clearInterval(m.timer);
					m.timer=setInterval(function(){SuperSlide.slide(s)},t);
				}
			}
		},
		timeslide:function(ct){
			try {
				clearInterval(m.timer);m.timer=setInterval(function(){SuperSlide.slide(sa[ct])},t)
				cc++;
				if (cc == l) {
					cc = 0;
				}
			} catch (e) {}
		},
		slide:function(s){
			try {
				var cw=parseInt(s.style.width,'10');
				if(cw<st){
					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,'10');o.className='';
							if(ow>ot){oi=Math.floor((ow-ot)/sp); oi=(oi>0)?oi:1; o.style.width=(ow-oi)+'px'}
							owt=owt+(ow-oi)} else {cc=i;}}
					s.style.width=(w-owt)+'px';
					s.className='curslide'+(cc+1);
				}else{clearInterval(m.timer)}
			} catch (e) {}
		}
	};
}();
