var SlideShow=Class.create();
SlideShow.prototype={
	bxs:0,bxe:0,fxs:0,fxe:0,ys:0,ye:0,ta:0,ie:0,st:0,ss:0,xp:0,yp:0,t:0,tar:0,tarl:0,

		initialize:function(thumbid){
			var that = this;
			this.ta=document.getElementById(thumbid); 
			this.t=this.ta.getElementsByTagName('li'); this.ie=document.all?true:false;
			this.st=1; this.xp,this.yp=0;
			if(BrowserDetect.browser == 'Chrome'){
				this.ss=1;
			}else if(BrowserDetect.browser == 'Explorer'){
				this.ss=6;
			}else if(BrowserDetect.browser == 'Firefox'){
				if(BrowserDetect.version == '2'){
					this.ss=10;
				}else	if(BrowserDetect.version == '3'){
					this.ss=6;
				}else {
					this.ss=5;
				}
			}else{
				this.ss=5;
			}
			this.ys=this.toppos(this.ta); this.ye=this.ys+this.ta.offsetHeight;
			len=this.t.length;this.tar=[];
			for(i=0;i<len;i++){
				var id=this.t[i].value; this.tar[i]=id;
			}
			this.tarl=this.tar.length;
			this.lim();
		},
		scrl:function(d){
			if(this.tarl>0){
				var that = this;
				clearInterval(this.ta.timer);
				var l=(d==-1)?0:(this.t[this.tarl-1].offsetLeft-(this.ta.parentNode.offsetWidth-this.t[this.tarl-1].offsetWidth)+10)
				this.ta.timer=setInterval(function(){that.mv(d,l)},this.st);
			}
		},
		mv:function(d,l){
			this.ta.style.left=this.ta.style.left||'0px';
			var left=this.ta.style.left.replace('px','');
			if(d==1){
				if(l-Math.abs(left)<=this.ss){
					this.cncl(this.ta.id); //this.ta.style.left='-'+l+'px';
				}else{this.ta.style.left=left-this.ss+'px'}
			}else{
				if(Math.abs(left)-l<=this.ss){
					this.cncl(this.ta.id); this.ta.style.left=l+'px';
				}else{this.ta.style.left=parseInt(left)+this.ss+'px'}
			}
		},
		cncl:function(){clearTimeout(this.ta.timer)},
		lim:function(){
			var taw,taa,len; taw=this.ta.parentNode.offsetWidth; taa=parseInt(taw/2.5); 
			this.bxs=this.leftpos(this.ta); this.bxe=this.bxs+taa; this.fxe=this.bxs+taw; this.fxs=this.fxe-taa;
		},
		pos:function(e){
			this.xp=this.ie?event.clientX+document.documentElement.scrollLeft:e.pageX; 
			this.yp=this.ie?event.clientY+document.documentElement.scrollTop:e.pageY;

			if(this.xp>this.bxs&&this.xp<this.bxe&&this.yp>this.ys&&this.yp<this.ye){
				this.scrl(-1);
			}else if(this.xp>this.fxs&&this.xp<this.fxe&&this.yp>this.ys&&this.yp<this.ye){
				this.scrl(1);
			}else{this.cncl()}
		},
		leftpos:function(t){
			var l=0;
			if(t.offsetParent){
				while(1){l+=t.offsetLeft; if(!t.offsetParent){break}; t=t.offsetParent}
			}else if(t.x){l+=t.x}
			return l;
		},
		toppos:function(t){
			var p=0;
			if(t.offsetParent){
				while(1){p+=t.offsetTop; if(!t.offsetParent){break}; t=t.offsetParent}
			}else if(t.y){p+=t.y}
			return p;
		},
		startListen:function(){
			this.sliding_bind = this.pos.bindAsEventListener(this);
			Event.observe(document,'mouseover',this.sliding_bind);
			//Event.observe(document,'mousemove',this.sliding_bind);
		},
		stopListen:function(){
			Event.stopObserving(document,'mouseover',this.sliding_bind);
			//Event.stopObserving(document,'mousemove',this.sliding_bind);
		}

};
