var Promoband=Class.create({initialize:function(css,options){this.elements=options.elements||'.element';if($$(css)[0].select(this.elements).length==0)return;this.jumpto=options.jump||0;this.containerwidth=$$(css)[0].getWidth();this.troleywidth=$$(css)[0].select(this.elements).invoke('getWidth').inject(0,function(a,b){return a+b;});this.container=$$(css)[0].setStyle({overflow:'hidden',width:this.containerwidth+"px",position:'relative'});this.pages=Math.ceil(this.troleywidth/this.containerwidth);this.troley=new Element('div');this.container.insert(this.troley.setStyle({position:'relative',width:this.troleywidth+25+"px"})).select(this.elements).invoke('setStyle',{cssFloat:'left',styleFloat:'left'}).invoke('wrap',this.troley);if(options.shuffle){var eles=this.container.select(this.elements);eles.sort(function(){return 0.5-Math.random();});for(var i=0;i<eles.length;i++)$(this.troley).insert(eles[i]);}
if(options.pages){this.pagescontainer=$$(options.pages)[0];for(var i=0;i<this.pages;i++){var active=(i==this.jumpto)?{className:'active'}:{};var z=new Element('span',active).setStyle({cursor:'pointer'})
this.pagescontainer.insert(z.observe("click",this.jump.bind(this,i)));}
if(this.pages==1)this.pagescontainer.hide();}
this.jump(this.jumpto);if(options.btnLeft){if(this.pages==1)options.btnLeft.hide();else options.btnLeft.observe('click',this.arrow.bind(this,-1));}
if(options.btnRight){if(this.pages==1)options.btnRight.hide();else options.btnRight.observe('click',this.arrow.bind(this,1));}},jump:function(page,animation){var jump=page||0;var left=-1*(this.containerwidth*jump);if(!animation){this.troley.setStyle({left:left+"px"});}
else{this.troley.morph({left:left+"px"});}
this.jumpto=page;if(this.pagescontainer){this.pagescontainer.select('span').invoke('removeClassName','active')[page].addClassName('active');}},arrow:function(dir,e){e.stop();var neu=this.jumpto+dir;if(neu>=this.pages||neu<0)return;this.jump(neu,1);}});