YAHOO.namespace("extension");YAHOO.extension.Carousel=function(v,Q){this.init(v,Q);};YAHOO.extension.Carousel.prototype={UNBOUNDED_SIZE:1000000,init:function(z,R){var b=this;var t="carousel-list";var Q="carousel-clip-region";var X="carousel-next";var v="carousel-prev";this.carouselElemID=z;this.carouselElem=YAHOO.util.Dom.get(z);this.prevEnabled=true;this.nextEnabled=true;this.cfg=new YAHOO.util.Config(this);this.cfg.addProperty("orientation",{value:"horizontal",handler:function(B,a,n){b.orientation=a[0];b.reload();},validator:function(a){if(typeof a=="string"){return ("horizontal,vertical".indexOf(a.toLowerCase())!=-1);}else{return false;}}});this.cfg.addProperty("size",{value:this.UNBOUNDED_SIZE,handler:function(B,a,n){b.size=a[0];b.reload();},validator:b.cfg.checkNumber});this.cfg.addProperty("numVisible",{value:3,handler:function(B,a,n){b.numVisible=a[0];b.load();},validator:b.cfg.checkNumber});this.cfg.addProperty("firstVisible",{value:1,handler:function(B,a,n){b.moveTo(a[0]);},validator:b.cfg.checkNumber});this.cfg.addProperty("scrollInc",{value:3,handler:function(B,a,n){b.scrollInc=a[0];},validator:b.cfg.checkNumber});this.cfg.addProperty("animationSpeed",{value:0.25,handler:function(B,a,n){b.animationSpeed=a[0];},validator:b.cfg.checkNumber});this.cfg.addProperty("animationMethod",{value:YAHOO.util.Easing.easeOut,handler:function(B,a,n){b.animationMethod=a[0];}});this.cfg.addProperty("animationCompleteHandler",{value:null,handler:function(B,a,n){if(b.animationCompleteEvt){b.animationCompleteEvt.unsubscribe(b.animationCompleteHandler,b);}b.animationCompleteHandler=a[0];if(b._isValidObj(b.animationCompleteHandler)){b.animationCompleteEvt=new YAHOO.util.CustomEvent("onAnimationComplete",b);b.animationCompleteEvt.subscribe(b.animationCompleteHandler,b);}}});this.cfg.addProperty("autoPlay",{value:0,handler:function(B,a,n){b.autoPlay=a[0];if(b.autoPlay>0){b.startAutoPlay();}else{b.stopAutoPlay();}}});this.cfg.addProperty("wrap",{value:false,handler:function(B,a,n){b.wrap=a[0];},validator:b.cfg.checkBoolean});this.cfg.addProperty("navMargin",{value:0,handler:function(B,a,n){b.navMargin=a[0];},validator:b.cfg.checkNumber});this.cfg.addProperty("prevElementID",{value:null,handler:function(B,a,n){if(b.carouselPrev){YAHOO.util.Event.removeListener(b.carouselPrev,"click",b._scrollPrev);}b.prevElementID=a[0];if(b.prevElementID==null){b.carouselPrev=YAHOO.util.Dom.getElementsByClassName(v,"div",b.carouselElem)[0];}else{b.carouselPrev=YAHOO.util.Dom.get(b.prevElementID);}YAHOO.util.Event.addListener(b.carouselPrev,"click",b._scrollPrev,b);}});this.cfg.addProperty("prevElement",{value:null,handler:function(B,a,n){if(b.carouselPrev){YAHOO.util.Event.removeListener(b.carouselPrev,"click",b._scrollPrev);}b.prevElementID=a[0];if(b.prevElementID==null){b.carouselPrev=YAHOO.util.Dom.getElementsByClassName(v,"div",b.carouselElem)[0];}else{b.carouselPrev=YAHOO.util.Dom.get(b.prevElementID);}YAHOO.util.Event.addListener(b.carouselPrev,"click",b._scrollPrev,b);}});this.cfg.addProperty("nextElementID",{value:null,handler:function(B,a,n){if(b.carouselNext){YAHOO.util.Event.removeListener(b.carouselNext,"click",b._scrollNext);}b.nextElementID=a[0];if(b.nextElementID==null){b.carouselNext=YAHOO.util.Dom.getElementsByClassName(X,"div",b.carouselElem);}else{b.carouselNext=YAHOO.util.Dom.get(b.nextElementID);}if(b.carouselNext){YAHOO.util.Event.addListener(b.carouselNext,"click",b._scrollNext,b);}}});this.cfg.addProperty("nextElement",{value:null,handler:function(B,a,n){if(b.carouselNext){YAHOO.util.Event.removeListener(b.carouselNext,"click",b._scrollNext);}b.nextElementID=a[0];if(b.nextElementID==null){b.carouselNext=YAHOO.util.Dom.getElementsByClassName(X,"div",b.carouselElem);}else{b.carouselNext=YAHOO.util.Dom.get(b.nextElementID);}if(b.carouselNext){YAHOO.util.Event.addListener(b.carouselNext,"click",b._scrollNext,b);}}});this.cfg.addProperty("loadInitHandler",{value:null,handler:function(B,a,n){if(b.loadInitHandlerEvt){b.loadInitHandlerEvt.unsubscribe(b.loadInitHandler,b);}b.loadInitHandler=a[0];if(b.loadInitHandlerEvt){b.loadInitHandlerEvt=new YAHOO.util.CustomEvent("onLoadInit",b);b.loadInitHandlerEvt.subscribe(b.loadInitHandler,b);}}});this.cfg.addProperty("loadNextHandler",{value:null,handler:function(B,a,n){if(b.loadNextHandlerEvt){b.loadNextHandlerEvt.unsubscribe(b.loadNextHandler,b);}b.loadNextHandler=a[0];if(b.loadNextHandlerEvt){b.loadNextHandlerEvt=new YAHOO.util.CustomEvent("onLoadNext",b);b.loadNextHandlerEvt.subscribe(b.loadNextHandler,b);}}});this.cfg.addProperty("loadPrevHandler",{value:null,handler:function(B,a,n){if(b.loadPrevHandlerEvt){b.loadPrevHandlerEvt.unsubscribe(b.loadPrevHandler,b);}b.loadPrevHandler=a[0];if(b.loadPrevHandlerEvt){b.loadPrevHandlerEvt=new YAHOO.util.CustomEvent("onLoadPrev",b);b.loadPrevHandlerEvt.subscribe(b.loadPrevHandler,b);}}});this.cfg.addProperty("prevButtonStateHandler",{value:null,handler:function(B,a,n){if(b.prevButtonStateHandler){b.prevButtonStateHandlerEvt.unsubscribe(b.prevButtonStateHandler,b);}b.prevButtonStateHandler=a[0];if(b.prevButtonStateHandler){b.prevButtonStateHandlerEvt=new YAHOO.util.CustomEvent("onPrevButtonStateChange",b);b.prevButtonStateHandlerEvt.subscribe(b.prevButtonStateHandler,b);}}});this.cfg.addProperty("nextButtonStateHandler",{value:null,handler:function(B,a,n){if(b.nextButtonStateHandler){b.nextButtonStateHandlerEvt.unsubscribe(b.nextButtonStateHandler,b);}b.nextButtonStateHandler=a[0];if(b.nextButtonStateHandler){b.nextButtonStateHandlerEvt=new YAHOO.util.CustomEvent("onNextButtonStateChange",b);b.nextButtonStateHandlerEvt.subscribe(b.nextButtonStateHandler,b);}}});if(R){this.cfg.applyConfig(R);}this.scrollInc=this.cfg.getProperty("scrollInc");this.navMargin=this.cfg.getProperty("navMargin");this.loadInitHandler=this.cfg.getProperty("loadInitHandler");this.loadNextHandler=this.cfg.getProperty("loadNextHandler");this.loadPrevHandler=this.cfg.getProperty("loadPrevHandler");this.prevButtonStateHandler=this.cfg.getProperty("prevButtonStateHandler");this.nextButtonStateHandler=this.cfg.getProperty("nextButtonStateHandler");this.animationCompleteHandler=this.cfg.getProperty("animationCompleteHandler");this.size=this.cfg.getProperty("size");this.wrap=this.cfg.getProperty("wrap");this.animationMethod=this.cfg.getProperty("animationMethod");this.orientation=this.cfg.getProperty("orientation");this.nextElementID=this.cfg.getProperty("nextElementID");if(!this.nextElementID){this.nextElementID=this.cfg.getProperty("nextElement");}this.prevElementID=this.cfg.getProperty("prevElementID");if(!this.prevElementID){this.prevElementID=this.cfg.getProperty("prevElement");}this.autoPlay=this.cfg.getProperty("autoPlay");this.autoPlayTimer=null;this.numVisible=this.cfg.getProperty("numVisible");this.firstVisible=this.cfg.getProperty("firstVisible");this.lastVisible=this.firstVisible;this.lastPrebuiltIdx=0;this.currSize=0;this.carouselList=YAHOO.util.Dom.getElementsByClassName(t,"ul",this.carouselElem)[0];if(this.nextElementID==null){this.carouselNext=YAHOO.util.Dom.getElementsByClassName(X,"div",this.carouselElem)[0];}else{this.carouselNext=YAHOO.util.Dom.get(this.nextElementID);}if(this.prevElementID==null){this.carouselPrev=YAHOO.util.Dom.getElementsByClassName(v,"div",this.carouselElem)[0];}else{this.carouselPrev=YAHOO.util.Dom.get(this.prevElementID);}this.clipReg=YAHOO.util.Dom.getElementsByClassName(Q,"div",this.carouselElem)[0];if(this.isVertical()){YAHOO.util.Dom.addClass(this.carouselList,"carousel-vertical");}this.scrollNextAnim=new YAHOO.util.Motion(this.carouselList,this.scrollNextParams,this.cfg.getProperty("animationSpeed"),this.animationMethod);this.scrollPrevAnim=new YAHOO.util.Motion(this.carouselList,this.scrollPrevParams,this.cfg.getProperty("animationSpeed"),this.animationMethod);if(this.carouselNext){YAHOO.util.Event.addListener(this.carouselNext,"click",this._scrollNext,this);}if(this.carouselPrev){YAHOO.util.Event.addListener(this.carouselPrev,"click",this._scrollPrev,this);}if(this.loadInitHandler){this.loadInitHandlerEvt=new YAHOO.util.CustomEvent("onLoadInit",this);this.loadInitHandlerEvt.subscribe(this.loadInitHandler,this);}if(this.loadNextHandler){this.loadNextHandlerEvt=new YAHOO.util.CustomEvent("onLoadNext",this);this.loadNextHandlerEvt.subscribe(this.loadNextHandler,this);}if(this.loadPrevHandler){this.loadPrevHandlerEvt=new YAHOO.util.CustomEvent("onLoadPrev",this);this.loadPrevHandlerEvt.subscribe(this.loadPrevHandler,this);}if(this.animationCompleteHandler){this.animationCompleteEvt=new YAHOO.util.CustomEvent("onAnimationComplete",this);this.animationCompleteEvt.subscribe(this.animationCompleteHandler,this);}if(this.prevButtonStateHandler){this.prevButtonStateHandlerEvt=new YAHOO.util.CustomEvent("onPrevButtonStateChange",this);this.prevButtonStateHandlerEvt.subscribe(this.prevButtonStateHandler,this);}if(this.nextButtonStateHandler){this.nextButtonStateHandlerEvt=new YAHOO.util.CustomEvent("onNextButtonStateChange",this);this.nextButtonStateHandlerEvt.subscribe(this.nextButtonStateHandler,this);}YAHOO.util.Event.onAvailable(this.carouselElemID+"-item-1",this._calculateSize,this);this._loadInitial();},clear:function(){this.moveTo(1);this._removeChildrenFromNode(this.carouselList);this.stopAutoPlay();this.firstVisible=1;this.lastVisible=1;this.lastPrebuiltIdx=0;this.currSize=0;this.size=this.cfg.getProperty("size");},reload:function(Q){if(this._isValidObj(Q)){this.numVisible=Q;}this.clear();YAHOO.util.Event.onAvailable(this.carouselElemID+"-item-1",this._calculateSize,this);this._loadInitial();},load:function(){YAHOO.util.Event.onAvailable(this.carouselElemID+"-item-1",this._calculateSize,this);this._loadInitial();},addItem:function(b,v){var R=this.getCarouselItem(b);if(!this._isValidObj(R)){R=this._createItem(b,v);this.carouselList.appendChild(R);}else{if(this._isValidObj(R.placeholder)){var Q=this._createItem(b,v);this.carouselList.replaceChild(Q,R);}}if(this.isVertical()){YAHOO.util.Dom.setStyle(R,"height",R.offsetHeight+"px");}return R;},insertBefore:function(v,R){if(v<1){v=1;}var Q=v-1;if(Q>this.lastPrebuiltIdx){this._prebuildItems(this.lastPrebuiltIdx,v);}var b=this._insertBeforeItem(v,R);if(this.firstVisible>Q||this.lastVisible<this.size){if(this.nextEnabled===false){this._enableNext();}}return b;},insertAfter:function(v,R){if(v>this.size){v=this.size;}var Q=v+1;if(Q>this.lastPrebuiltIdx){this._prebuildItems(this.lastPrebuiltIdx,Q+1);}var b=this._insertAfterItem(v,R);if(Q>this.size){this.size=Q;if(this.nextEnabled===false){this._enableNext();}}if(this.firstVisible>Q||this.lastVisible<this.size){if(this.nextEnabled===false){this._enableNext();}}return b;},scrollNext:function(){this._scrollNext(null,this);this.autoPlayTimer=null;if(this.autoPlay!==0){this.autoPlayTimer=this.startAutoPlay();}},scrollPrev:function(){this._scrollPrev(null,this);},scrollTo:function(Q){this._position(Q,true);},moveTo:function(Q){this._position(Q,false);},startAutoPlay:function(Q){if(this._isValidObj(Q)){this.autoPlay=Q;}if(this.autoPlayTimer!==null){return this.autoPlayTimer;}var b=this;var v=function(){b.scrollNext();};this.autoPlayTimer=setTimeout(v,this.autoPlay);return this.autoPlayTimer;},stopAutoPlay:function(){if(this.autoPlayTimer!==null){clearTimeout(this.autoPlayTimer);this.autoPlayTimer=null;}},isVertical:function(){return (this.orientation!="horizontal");},isItemLoaded:function(Q){var v=this.getCarouselItem(Q);if(this._isValidObj(v)&&!this._isValidObj(v.placeholder)){return true;}return false;},getCarouselItem:function(Q){var v=this.carouselElemID+"-item-"+Q;var b=YAHOO.util.Dom.get(v);return b;},show:function(){YAHOO.util.Dom.setStyle(this.carouselElem,"display","block");this.calculateSize();},hide:function(){YAHOO.util.Dom.setStyle(this.carouselElem,"display","none");},calculateSize:function(){var z=this.carouselList.childNodes;var Q=null;for(var t=0;t<z.length;t++){Q=z[t];if(Q.tagName=="LI"||Q.tagName=="li"){break;}}var X;if(this.isVertical()){YAHOO.util.Dom.removeClass(this.carouselList,"carousel-horizontal");YAHOO.util.Dom.removeClass(this.carouselList,"carousel-vertical");YAHOO.util.Dom.addClass(this.carouselList,"carousel-vertical");X=parseInt(YAHOO.util.Dom.getStyle(Q,"paddingLeft"),10)+parseInt(YAHOO.util.Dom.getStyle(Q,"paddingRight"),10)+parseInt(YAHOO.util.Dom.getStyle(Q,"marginLeft"),10)+parseInt(YAHOO.util.Dom.getStyle(Q,"marginRight"),10);var v=parseInt(YAHOO.util.Dom.getStyle(Q,"paddingTop"),10)+parseInt(YAHOO.util.Dom.getStyle(Q,"paddingBottom"),10)+parseInt(YAHOO.util.Dom.getStyle(Q,"marginTop"),10)+parseInt(YAHOO.util.Dom.getStyle(Q,"marginBottom"),10);this.scrollAmountPerInc=(Q.offsetHeight+v);this.clipReg.style.width=(Q.offsetWidth+X)+"px";this.clipReg.style.height=(this.scrollAmountPerInc*this.numVisible)+"px";this.carouselElem.style.width=(Q.offsetWidth+X*2)+"px";var b=YAHOO.util.Dom.getY(this.carouselList);YAHOO.util.Dom.setY(this.carouselList,b-this.scrollAmountPerInc*(this.firstVisible-1));}else{YAHOO.util.Dom.removeClass(this.carouselList,"carousel-vertical");YAHOO.util.Dom.removeClass(this.carouselList,"carousel-horizontal");YAHOO.util.Dom.addClass(this.carouselList,"carousel-horizontal");X=parseInt(YAHOO.util.Dom.getStyle(Q,"paddingLeft"),10)+parseInt(YAHOO.util.Dom.getStyle(Q,"paddingRight"),10)+parseInt(YAHOO.util.Dom.getStyle(Q,"marginLeft"),10)+parseInt(YAHOO.util.Dom.getStyle(Q,"marginRight"),10);this.scrollAmountPerInc=(Q.offsetWidth+X);this.carouselElem.style.width=((this.scrollAmountPerInc*this.numVisible)+this.navMargin*2)+"px";this.clipReg.style.width=(this.scrollAmountPerInc*this.numVisible)+"px";var R=YAHOO.util.Dom.getX(this.carouselList);YAHOO.util.Dom.setX(this.carouselList,R-this.scrollAmountPerInc*(this.firstVisible-1));}},_calculateSize:function(Q){Q.calculateSize();YAHOO.util.Dom.setStyle(Q.carouselElem,"visibility","visible");},_removeChildrenFromNode:function(v){if(!this._isValidObj(v)){return ;}var Q=v.childNodes.length;while(v.hasChildNodes()){v.removeChild(v.firstChild);}},_prebuildLiElem:function(Q){var v=document.createElement("li");v.id=this.carouselElemID+"-item-"+Q;v.placeholder=true;this.carouselList.appendChild(v);this.lastPrebuiltIdx=(Q>this.lastPrebuiltIdx)?Q:this.lastPrebuiltIdx;},_createItem:function(v,Q){var b=document.createElement("li");b.id=this.carouselElemID+"-item-"+v;if(typeof (Q)==="string"){b.innerHTML=Q;}else{b.appendChild(Q);}return b;},_insertAfterItem:function(v,Q){return this._insertBeforeItem(v+1,Q);},_insertBeforeItem:function(z,Q){var v=this.getCarouselItem(z);if(this.size!=this.UNBOUNDED_SIZE){this.size+=1;}for(var b=this.lastPrebuiltIdx;b>=z;b--){var t=this.getCarouselItem(b);if(this._isValidObj(t)){t.id=this.carouselElemID+"-item-"+(b+1);}}var X=this._createItem(z,Q);var R=this.carouselList.insertBefore(X,v);this.lastPrebuiltIdx+=1;return X;},insertAfterEnd:function(Q){return this.insertAfter(this.size,Q);},_position:function(Q,v){if(Q>this.firstVisible){var b=Q-this.firstVisible;this._scrollNextInc(this,b,v);}else{var R=this.firstVisible-Q;this._scrollPrevInc(this,R,v);}},_scrollNext:function(v,Q){if(Q.scrollNextAnim.isAnimated()){return false;}var b=Q.firstVisible+Q.numVisible-1;if(Q.wrap&&b==Q.size){Q.scrollTo(1);}else{if(v!==null){Q.stopAutoPlay();Q._scrollNextInc(Q,Q.scrollInc,(Q.cfg.getProperty("animationSpeed")!==0));}else{Q._scrollNextInc(Q,Q.scrollInc,(Q.cfg.getProperty("animationSpeed")!==0));}}},_scrollNextInc:function(n,b,X){var t=n.firstVisible;var R=n.firstVisible+b+n.numVisible-1;R=(R>n.size)?n.size:R;var a=R-n.numVisible+1;b=a-n.firstVisible;n.firstVisible=a;if((n.prevEnabled===false)&&(n.firstVisible>1)){n._enablePrev();}if((n.nextEnabled===true)&&(R==n.size)){n._disableNext();}if(b>0){if(n._isValidObj(n.loadNextHandler)){n.lastVisible=n.firstVisible+n.numVisible-1;n.currSize=(n.lastVisible>n.currSize)?n.lastVisible:n.currSize;var z=n._areAllItemsLoaded(t,n.lastVisible);n.loadNextHandlerEvt.fire(n.firstVisible,n.lastVisible,z);}if(X){var B={points:{by:[-n.scrollAmountPerInc*b,0]}};if(n.isVertical()){B={points:{by:[0,-n.scrollAmountPerInc*b]}};}n.scrollNextAnim=new YAHOO.util.Motion(n.carouselList,B,n.cfg.getProperty("animationSpeed"),n.animationMethod);if(n._isValidObj(n.animationCompleteHandler)){n.scrollNextAnim.onComplete.subscribe(this._handleAnimationComplete,[n,"next"]);}n.scrollNextAnim.animate();}else{if(n.isVertical()){var Q=YAHOO.util.Dom.getY(n.carouselList);YAHOO.util.Dom.setY(n.carouselList,Q-n.scrollAmountPerInc*b);}else{var v=YAHOO.util.Dom.getX(n.carouselList);YAHOO.util.Dom.setX(n.carouselList,v-n.scrollAmountPerInc*b);}}}return false;},_handleAnimationComplete:function(b,v,Q){var t=Q[0];var R=Q[1];t.animationCompleteEvt.fire(R);},_areAllItemsLoaded:function(R,b){var Q=true;for(var v=R;v<=b;v++){var t=this.getCarouselItem(v);if(!this._isValidObj(t)){this._prebuildLiElem(v);Q=false;}else{if(this._isValidObj(t.placeholder)){Q=false;}}}return Q;},_prebuildItems:function(b,v){for(var Q=b;Q<=v;Q++){var R=this.getCarouselItem(Q);if(!this._isValidObj(R)){this._prebuildLiElem(Q);}}},_scrollPrev:function(v,Q){if(Q.scrollPrevAnim.isAnimated()){return false;}Q._scrollPrevInc(Q,Q.scrollInc,(Q.cfg.getProperty("animationSpeed")!==0));},_scrollPrevInc:function(n,R,z){var B=n.lastVisible;var X=n.firstVisible-R;X=(X<=1)?1:(X);var b=n.firstVisible-X;n.firstVisible=X;if((n.prevEnabled===true)&&(n.firstVisible==1)){n._disablePrev();}if((n.nextEnabled===false)&&((n.firstVisible+n.numVisible-1)<n.size)){n._enableNext();}if(b>0){if(n._isValidObj(n.loadPrevHandler)){n.lastVisible=n.firstVisible+n.numVisible-1;n.currSize=(n.lastVisible>n.currSize)?n.lastVisible:n.currSize;var t=n._areAllItemsLoaded(n.firstVisible,B);n.loadPrevHandlerEvt.fire(n.firstVisible,n.lastVisible,t);}if(z){var a={points:{by:[n.scrollAmountPerInc*b,0]}};if(n.isVertical()){a={points:{by:[0,n.scrollAmountPerInc*b]}};}n.scrollPrevAnim=new YAHOO.util.Motion(n.carouselList,a,n.cfg.getProperty("animationSpeed"),n.animationMethod);if(n._isValidObj(n.animationCompleteHandler)){n.scrollPrevAnim.onComplete.subscribe(this._handleAnimationComplete,[n,"prev"]);}n.scrollPrevAnim.animate();}else{if(n.isVertical()){var Q=YAHOO.util.Dom.getY(n.carouselList);YAHOO.util.Dom.setY(n.carouselList,Q+n.scrollAmountPerInc*b);}else{var v=YAHOO.util.Dom.getX(n.carouselList);YAHOO.util.Dom.setX(n.carouselList,v+n.scrollAmountPerInc*b);}}}return false;},_loadInitial:function(){this.lastVisible=this.firstVisible+this.numVisible-1;this.currSize=(this.lastVisible>this.currSize)?this.lastVisible:this.currSize;if(this.firstVisible==1){this._disablePrev();}if(this.lastVisible==this.size){this._disableNext();}if(this._isValidObj(this.loadInitHandler)){var Q=this._areAllItemsLoaded(1,this.lastVisible);this.loadInitHandlerEvt.fire(1,this.lastVisible,Q);}if(this.autoPlay!==0){this.autoPlayTimer=this.startAutoPlay();}},_disablePrev:function(){this.prevEnabled=false;if(this._isValidObj(this.prevButtonStateHandlerEvt)){this.prevButtonStateHandlerEvt.fire(false,this.carouselPrev);}if(this._isValidObj(this.carouselPrev)){YAHOO.util.Event.removeListener(this.carouselPrev,"click",this._scrollPrev);}},_enablePrev:function(){this.prevEnabled=true;if(this._isValidObj(this.prevButtonStateHandlerEvt)){this.prevButtonStateHandlerEvt.fire(true,this.carouselPrev);}if(this._isValidObj(this.carouselPrev)){YAHOO.util.Event.addListener(this.carouselPrev,"click",this._scrollPrev,this);}},_disableNext:function(){if(this.wrap){return ;}this.nextEnabled=false;if(this._isValidObj(this.nextButtonStateHandlerEvt)){this.nextButtonStateHandlerEvt.fire(false,this.carouselNext);}if(this._isValidObj(this.carouselNext)){YAHOO.util.Event.removeListener(this.carouselNext,"click",this._scrollNext);}},_enableNext:function(){this.nextEnabled=true;if(this._isValidObj(this.nextButtonStateHandlerEvt)){this.nextButtonStateHandlerEvt.fire(true,this.carouselNext);}if(this._isValidObj(this.carouselNext)){YAHOO.util.Event.addListener(this.carouselNext,"click",this._scrollNext,this);}},_isValidObj:function(Q){if(null==Q){return false;}if("undefined"==typeof (Q)){return false;}return true;}};