var options={w:223,h:193,num_elem:3,mode:"1",direction:"left",total:14,url:"",wrapper:"ja-slider-center",duration:1000,interval:1000,running:false,auto:1};var jsslider=null;function getShownElements(){for(i=0;i<3;i++){elems=$("ja-slider-center").getElementById("show"+i);if(elems){jsslider.elements[i]=elems}}}function sliderInit(){jsslider=new JS_Slider(options);getShownElements();elems=$$("#ja-slider-center .vm_element");for(i=0;i<elems.length;i++){if(!elems[i].id){jsslider.update(elems[i].innerHTML,i)}}jsslider.setPos(null);if(jsslider.options.auto){jsslider.nextRun()}}var JS_Slider=new Class({options:{w:100,h:200,num_elem:4,total:0,url:"",mode:"horizontal",direction:"right",wrapper:"ja-slide-wrapper",duration:1000,interval:3000,auto:1},initialize:function(a){this.options=a;if(this.options.total){if(this.options.total<this.options.num_elem){this.options.num_elem=this.options.total}this.elements=new Array(this.options.total)}else{this.elements=new Array()}this.current=0;$(this.options.wrapper).setStyle("position","relative");$(this.options.wrapper).setStyle("overflow","hidden");if(this.options.mode=="virtical"){$(this.options.wrapper).setStyle("width",this.options.w);$(this.options.wrapper).setStyle("height",this.options.h*this.options.num_elem)}else{$(this.options.wrapper).setStyle("width",this.options.w*this.options.num_elem);$(this.options.wrapper).setStyle("height",this.options.h)}this.ef_u={};this.ef_d={};this.ef_l={};this.ef_r={};for(i=0;i<=this.options.num_elem;i++){this.ef_u[i]={top:[i*this.options.h,(i-1)*this.options.h]};this.ef_d[i]={top:[(i-1)*this.options.h,i*this.options.h]};this.ef_l[i]={left:[i*this.options.w,(i-1)*this.options.w]};this.ef_r[i]={left:[(i-1)*this.options.w,i*this.options.w]}}},getFx:function(){if(this.options.mode=="virtical"){if(this.options.direction=="up"){return this.ef_u}else{return this.ef_d}}else{if(this.options.direction=="left"){return this.ef_l}else{return this.ef_r}}},add:function(a){divobj=new Element("DIV",{id:"jsslide_"+this.elements.length,"class":"jsslide"});divobj.innerHTML=a;divobj.setStyle("position","absolute");divobj.setStyle("width",this.options.w);divobj.setStyle("height",this.options.h);if(this.elements.length>1){divobj.injectAfter(this.elements[this.elements.length-2])}else{divobj.inject($(this.options.wrapper))}this.hide(divobj);this.elements.push(divobj)},update:function(b,a){divobj=new Element("DIV",{id:"jsslide_"+a,"class":"jsslide"});divobj.innerHTML=b;divobj.setStyle("position","absolute");divobj.setStyle("width",this.options.w);divobj.setStyle("height",this.options.h);divobj.inject($(this.options.wrapper));this.hide(divobj);this.elements[a]=divobj},hide:function(a){if(this.options.mode=="virtical"){a.setStyle("top","-999em");a.setStyle("left","0")}else{a.setStyle("top","0");a.setStyle("left","-999em")}},setPos:function(a){if(!a){a=this.getRunElems()}for(i=0;i<a.length;i++){el=a[i];if(el){if(this.options.mode=="virtical"){if(this.options.direction=="up"){el.setStyle("top",this.options.h*i)}else{el.setStyle("top",this.options.h*(i-1))}}else{if(this.options.direction=="left"){el.setStyle("left",this.options.w*i)}else{el.setStyle("left",this.options.w*(i-1))}}}}},getRunElems:function(){var a=new Array();if(this.options.direction=="left"||this.options.direction=="up"){adj=0}else{adj=this.elements.length-1}for(i=0;i<=this.options.num_elem;i++){a[i]=this.elements[(this.current+i+adj)%this.elements.length]}if(this.options.total<=this.options.num_elem){if(this.options.direction=="left"||this.options.direction=="up"){a[this.options.num_elem]=null}else{a[0]=null}}return a},start:function(){if(!this.elements[this.next()]){this.nextRun();return}var a=this.getRunElems();this.setPos(a);this.x=new Fx.Elements(a,{duration:this.options.duration,onComplete:this.nextRun.bind(this)});this.x.start(this.getFx());this.current=this.nextCurr()},nextRun:function(){clearTimeout(this.timeOut);if(this.options.total<=this.options.num_elem){return}if(this.options.auto){this.timeOut=setTimeout(this.start.bind(this),this.options.interval);this.fetchNext()}},nextCurr:function(){if(this.options.direction=="left"||this.options.direction=="up"){next=(this.current+1)%this.elements.length}else{next=(this.current+this.elements.length-1)%this.elements.length}return next},next:function(){if(this.options.direction=="left"||this.options.direction=="up"){next=(this.current+this.options.num_elem)%this.elements.length}else{next=(this.current+this.elements.length-1)%this.elements.length}return next},fetchNext:function(){next=this.next()},fetchUpdate:function(a){next=this.next();this.update(a,next)}});