/*
Class: Wheel [Built on MooTools framework: www.mootools.net]
Author: Martin Jezek 2009
Version: 2.0 with navigation
*/  
var Wheel=new Class({Implements:Options,options:{id:"wheel",delay:3500,effect:"none",transition:"quad:out",wrap:"false",navi:"false"},initialize:function(options){this.setOptions(options);this.createWheeler();this.createNavi();if((this.images_count>3&&this.options.effect=="slide")||(this.images_count>1&&this.options.effect!="slide")){this.looper=this.wheeling.periodical(this.options.delay,this);}},width:"0px",height:"0px",images_count:0,now:0,createWheeler:function(){this.wheel=$(this.options.id);if(this.options.effect=="slide"){this.wrap_clone=this.wheel.getElements("img").getLast().clone();this.wheel.getElements("img")[0].clone().inject(this.wheel);this.wrap_clone.inject(this.wheel,"top");this.now=1;}
this.images_count=this.wheel.getElements("img").length;this.wheeler=new Element("div",{"id":"wheeler","styles":{"position":"absolute","top":"0px","left":"0px"}});this.width=this.wheel.getStyle("width");this.wheeler.setStyle("width",this.width);this.height=this.wheel.getStyle("height");this.wheeler.setStyle("height",this.height);this.images_temp=this.wheel.innerHTML;this.wheel.innerHTML="";this.wheeler.inject(this.wheel);this.wheeler.innerHTML=this.images_temp;this.wheeler.setStyle("width",this.width.toInt()*this.images_count);if(this.options.effect=="slide"){this.wheeler.setStyle("left",-this.width.toInt());this.tween=new Fx.Tween(this.wheeler,{transition:this.options.transition,property:"left"});}},createNavi:function(){if(this.options.navi=="true"){$("wheel_navi").set("html","");if(this.images_count>1){for(var x=this.images_count;x>0;x--){$("wheel_navi").innerHTML+='<li><a href="#'+x+'">'+x+'</a></li>';}
$("wheel_navi").getLast().getFirst().addClass("act");this.navi=$("wheel_navi").getElements("li");$$("#wheel_navi li a").each(function(item,index){item.addEvent("click",this.naviClick.bind(this,{item:item,index:index}));},this);}}},wheeling:function(){if(this.now<this.images_count-1){this.now++;}else{this.now=0;}
if(this.options.effect=="fade"){this.wheeler.fade("out");(function(){this.wheeler.setStyle("left",this.width.toInt()*-this.now);this.wheeler.fade("in");}).delay(400,this);}else if(this.options.effect=="slide"){if(this.options.wrap=="false"&&this.now==this.images_count-2){this.tween.start(this.wheeler.getStyle("left"),this.width.toInt()*-this.now);this.now=0;}else if(this.options.wrap=="true"&&this.now==this.images_count-1){this.tween.start(this.wheeler.getStyle("left"),this.width.toInt()*-this.now).chain(this.wrapping.bind(this));}else{this.tween.start(this.wheeler.getStyle("left"),this.width.toInt()*-this.now);}}else{this.wheeler.setStyle("left",this.width.toInt()*-this.now);}
if(this.options.navi=="true"&&this.images_count>1){$$("#wheel_navi li a").removeClass("act");this.navi[this.images_count-this.now-1].getFirst().addClass("act");}},wrapping:function(){this.now=1;this.wheeler.setStyle("left",-this.width.toInt());},naviClick:function(link){this.looper=$clear(this.looper);this.now=this.images_count-link.index-2;this.wheeling();return false;}});