/*
 * AMteam (c) 2008 - DynamicBackground v0.1
 */
var DynamicBackground=new Class({Implements:[Options,Events],options:{container:"dynamicbackground",cssClass:"dynamicbackground",childrenFilter:"",mode:"vertical",offset:[0,0],autoStart:true},initialize:function(A){this.setOptions(A);this.container=$(this.options.container).addClass(this.options.cssClass);this.children=this.container.getChildren(this.options.childrenFilter);this.fireEvent("initialize",[this.container,this.children]);if(this.options.autoStart){this.children.each(function(B){this.set(B,this.compute(B))},this)}},set:function(A,B){return A.setStyle("background-position",B)},start:function(A,C,B){if(window.ie){if(this.options.mode=="horizontal"&&B){A.tween("background-position-x",C[0],B[0])}else{if(this.options.mode=="horizontal"){A.tween("background-position-x",C[0])}else{if(B){A.tween("background-position-y",C[1])}else{A.tween("background-position-y",C[1])}}}}else{if(B){A.tween("background-position",C[0]+" "+C[1],B[0]+" "+B[1])}else{A.tween("background-position",C[0]+" "+C[1])}}return A},compute:function(A,C){if(!C){C=[0,0]}var B=[0,0];if(this.options.mode=="horizontal"){B[0]=-(A.getPosition(this.options.container).x-this.options.offset[0]-C[0]);B[1]=((window.ie)?A.currentStyle.backgroundPositionY:A.getStyle("backgroundPosition").split(" ")[1]).toInt()-this.options.offset[1]-C[1]}else{B[0]=((window.ie)?A.currentStyle.backgroundPositionX:A.getStyle("backgroundPosition").split(" ")[0]).toInt()-this.options.offset[0]-C[0];B[1]=-(A.getPosition(this.options.container).y-this.options.offset[1]-C[1])}return B}});