(function(){var m;YAHOO.widget.Carousel=function(N,M){YAHOO.widget.Carousel.superclass.constructor.call(this,N,M)};var q=YAHOO.widget.Carousel,A=YAHOO.util.Dom,z=YAHOO.util.Event,J=YAHOO.lang;m="Carousel";var p={},g="afterScroll",C="allItemsRemoved",y="beforeHide",w="beforePageChange",d="beforeScroll",j="beforeShow",G="blur",k="focus",v="hide",o="itemAdded",L="itemRemoved",b="itemSelected",t="loadItems",h="navigationStateChange",e="pageChange",x="render",l="show",u="startAutoPlay",K="stopAutoPlay",i="uiUpdate";function s(N,M){var O=document.createElement(N);M=M||{};if(M.className){A.addClass(O,M.className)}if(M.parent){M.parent.appendChild(O)}if(M.id){O.setAttribute("id",M.id)}if(M.content){if(M.content.nodeName){O.appendChild(M.content)}else{O.innerHTML=M.content}}return O}function B(P,O,N){var Q;if(!P){return 0}function M(T,S){var U;if(S=="marginRight"&&YAHOO.env.ua.webkit){U=parseInt(A.getStyle(T,"marginLeft"),10)}else{U=parseInt(A.getStyle(T,S),10)}return J.isNumber(U)?U:0}function R(T,S){var U;if(S=="marginRight"&&YAHOO.env.ua.webkit){U=parseFloat(A.getStyle(T,"marginLeft"))}else{U=parseFloat(A.getStyle(T,S))}return J.isNumber(U)?U:0}if(typeof N=="undefined"){N="int"}switch(O){case"height":Q=P.offsetHeight;if(Q>0){Q+=M(P,"marginTop")+M(P,"marginBottom")}else{Q=R(P,"height")+M(P,"marginTop")+M(P,"marginBottom")+M(P,"borderTopWidth")+M(P,"borderBottomWidth")+M(P,"paddingTop")+M(P,"paddingBottom")}break;case"width":Q=P.offsetWidth;if(Q>0){Q+=M(P,"marginLeft")+M(P,"marginRight")}else{Q=R(P,"width")+M(P,"marginLeft")+M(P,"marginRight")+M(P,"borderLeftWidth")+M(P,"borderRightWidth")+M(P,"paddingLeft")+M(P,"paddingRight")}break;default:if(N=="int"){Q=M(P,O)}else{if(N=="float"){Q=R(P,O)}else{Q=A.getStyle(P,O)}}break}return Q}function r(P){var O=this,Q,M=0,N=false;if(O._itemsTable.numItems===0){return 0}if(typeof P=="undefined"){if(O._itemsTable.size>0){return O._itemsTable.size}}if(J.isUndefined(O._itemsTable.items[0])){return 0}Q=A.get(O._itemsTable.items[0].id);if(typeof P=="undefined"){N=O.get("isVertical")}else{N=P=="height"}if(N){M=B(Q,"height")}else{M=B(Q,"width")}if(typeof P=="undefined"){O._itemsTable.size=M}return M}function D(N){var M=this.get("numVisible");return Math.floor(N/M)*M}function E(O){var N=0,M=0;N=r.call(this);M=N*O;if(this.get("isVertical")){M-=O}return M}function f(M,N){N.scrollPageBackward();z.preventDefault(M)}function F(M,N){N.scrollPageForward();z.preventDefault(M)}function I(N,Q){var W=this,T=W.CLASSES,O,U=W._firstItem,P=W.get("isCircular"),M=W.get("numItems"),V=W.get("numVisible"),S=Q,R=U+V-1;if(S>=0&&S<M){if(!J.isUndefined(W._itemsTable.items[S])){O=A.get(W._itemsTable.items[S].id);if(O){A.removeClass(O,T.SELECTED_ITEM)}}}if(J.isNumber(N)){N=parseInt(N,10);N=J.isNumber(N)?N:0}else{N=U}if(J.isUndefined(W._itemsTable.items[N])){N=D.call(W,N);W.scrollTo(N)}if(!J.isUndefined(W._itemsTable.items[N])){O=A.get(W._itemsTable.items[N].id);if(O){A.addClass(O,T.SELECTED_ITEM)}}if(N<U||N>R){N=D.call(W,N);W.scrollTo(N)}}function a(){var P=false,R=this,Q=R.CLASSES,O,M,N;if(!R._hasRendered){return}M=R.get("navigation");N=R._firstItem+R.get("numVisible");if(M.prev){if(R.get("numItems")===0||R._firstItem===0){if(R.get("numItems")===0||!R.get("isCircular")){z.removeListener(M.prev,"click",f);A.addClass(M.prev,Q.FIRST_NAV_DISABLED);for(O=0;O<R._navBtns.prev.length;O++){R._navBtns.prev[O].setAttribute("disabled","true")}R._prevEnabled=false}else{P=!R._prevEnabled}}else{P=!R._prevEnabled}if(P){z.on(M.prev,"click",f,R);A.removeClass(M.prev,Q.FIRST_NAV_DISABLED);for(O=0;O<R._navBtns.prev.length;O++){R._navBtns.prev[O].removeAttribute("disabled")}R._prevEnabled=true}}P=false;if(M.next){if(N>=R.get("numItems")){if(!R.get("isCircular")){z.removeListener(M.next,"click",F);A.addClass(M.next,Q.DISABLED);for(O=0;O<R._navBtns.next.length;O++){R._navBtns.next[O].setAttribute("disabled","true")}R._nextEnabled=false}else{P=!R._nextEnabled}}else{P=!R._nextEnabled}if(P){z.on(M.next,"click",F,R);A.removeClass(M.next,Q.DISABLED);for(O=0;O<R._navBtns.next.length;O++){R._navBtns.next[O].removeAttribute("disabled")}R._nextEnabled=true}}R.fireEvent(h,{next:R._nextEnabled,prev:R._prevEnabled})}function n(O){var P=this,M,N;if(!P._hasRendered){return}N=P.get("numVisible");if(!J.isNumber(O)){O=Math.ceil(P.get("selectedItem")/N)}M=Math.ceil(P.get("numItems")/N);P._pages.num=M;P._pages.cur=O;if(M>P.CONFIG.MAX_PAGER_BUTTONS){P._updatePagerMenu()}else{P._updatePagerButtons()}}function H(N){var M=this;if(!J.isObject(N)){return}switch(N.ev){case o:M._syncUiForItemAdd(N);break;case L:M._syncUiForItemRemove(N);break;case t:M._syncUiForLazyLoading(N);break}M.fireEvent(i)}function c(P,N){var R=this,Q=R.get("currentPage"),O,M=R.get("numVisible");O=parseInt(R._firstItem/M,10);if(O!=Q){R.setAttributeConfig("currentPage",{value:O});R.fireEvent(e,O)}if(R.get("selectOnScroll")){if(R.get("selectedItem")!=R._selectedItem){R.set("selectedItem",R._selectedItem)}}clearTimeout(R._autoPlayTimer);delete R._autoPlayTimer;if(R.isAutoPlayOn()){R.startAutoPlay()}R.fireEvent(g,{first:R._firstItem,last:N},R)}q.getById=function(M){return p[M]?p[M].object:false};YAHOO.extend(q,YAHOO.util.Element,{_animObj:null,_carouselEl:null,_clipEl:null,_firstItem:0,_hasFocus:false,_hasRendered:false,_isAnimationInProgress:false,_isAutoPlayInProgress:false,_itemsTable:null,_navBtns:null,_navEl:null,_nextEnabled:true,_pages:null,_prevEnabled:true,_recomputeSize:true,CLASSES:{BUTTON:"yui-carousel-button",CAROUSEL:"yui-carousel",CAROUSEL_EL:"yui-carousel-element",CONTAINER:"yui-carousel-container",CONTENT:"yui-carousel-content",DISABLED:"yui-carousel-button-disabled",FIRST_NAV:" yui-carousel-first-button",FIRST_NAV_DISABLED:"yui-carousel-first-button-disabled",FIRST_PAGE:"yui-carousel-nav-first-page",FOCUSSED_BUTTON:"yui-carousel-button-focus",HORIZONTAL:"yui-carousel-horizontal",ITEM_LOADING:"yui-carousel-item-loading",MIN_WIDTH:"yui-carousel-min-width",NAVIGATION:"yui-carousel-nav",NEXT_NAV:" yui-carousel-next-button",NEXT_PAGE:"yui-carousel-next",NAV_CONTAINER:"yui-carousel-buttons",PAGE_FOCUS:"yui-carousel-nav-page-focus",PREV_PAGE:"yui-carousel-prev",SELECTED_ITEM:"yui-carousel-item-selected",SELECTED_NAV:"yui-carousel-nav-page-selected",VERTICAL:"yui-carousel-vertical",VERTICAL_CONTAINER:"yui-carousel-vertical-container",VISIBLE:"yui-carousel-visible"},CONFIG:{FIRST_VISIBLE:0,HORZ_MIN_WIDTH:180,MAX_PAGER_BUTTONS:5,VERT_MIN_WIDTH:99,NUM_VISIBLE:3},STRINGS:{ITEM_LOADING_CONTENT:"Loading",NEXT_BUTTON_TEXT:"Next Page",PAGER_PREFIX_TEXT:"Go to page ",PREVIOUS_BUTTON_TEXT:"Previous Page"},addItem:function(R,P){var S=this,M,Q,O,N=S.get("numItems");if(!R){return false}if(J.isString(R)||R.nodeName){Q=R.nodeName?R.innerHTML:R}else{if(J.isObject(R)){Q=R.content}else{return false}}M=R.className||"";O=R.id?R.id:A.generateId();if(J.isUndefined(P)){S._itemsTable.items.push({item:Q,className:M,id:O})}else{if(P<0||P>=N){return false}S._itemsTable.items.splice(P,0,{item:Q,className:M,id:O})}S._itemsTable.numItems++;if(N<S._itemsTable.items.length){S.set("numItems",S._itemsTable.items.length)}S.fireEvent(o,{pos:P,ev:o});return true},addItems:function(M){var N,P,O=true;if(!J.isArray(M)){return false}for(N=0,P=M.length;N<P;N++){if(this.addItem(M[N][0],M[N][1])===false){O=false}}return O},blur:function(){this._carouselEl.blur();this.fireEvent(G)},clearItems:function(){var M=this,N=M.get("numItems");while(N>0){if(!M.removeItem(0)){}if(M._itemsTable.numItems===0){M.set("numItems",0);break}N--}M.fireEvent(C)},focus:function(){var W=this,R,O,M,P,U,V,S,Q,N;if(!W._hasRendered){return}if(W.isAnimating()){return}N=W.get("selectedItem");V=W.get("numVisible");S=W.get("selectOnScroll");Q=(N>=0)?W.getItem(N):null;R=W.get("firstVisible");U=R+V-1;M=(N<R||N>U);O=(Q&&Q.id)?A.get(Q.id):null;P=W._itemsTable;if(!S&&M){O=(P&&P.items&&P.items[R])?A.get(P.items[R].id):null}if(O){try{O.focus()}catch(T){}}W.fireEvent(k)},hide:function(){var M=this;if(M.fireEvent(y)!==false){M.removeClass(M.CLASSES.VISIBLE);M.fireEvent(v)}},init:function(O,N){var P=this,M=O,Q=false;if(!O){return}P._hasRendered=false;P._navBtns={prev:[],next:[]};P._pages={el:null,num:0,cur:0};P._itemsTable={loading:{},numItems:0,items:[],size:0};if(J.isString(O)){O=A.get(O)}else{if(!O.nodeName){return}}q.superclass.init.call(P,O,N);if(O){if(!O.id){O.setAttribute("id",A.generateId())}Q=P._parseCarousel(O);if(!Q){P._createCarousel(M)}}else{O=P._createCarousel(M)}M=O.id;P.initEvents();if(Q){P._parseCarouselItems()}if(!N||typeof N.isVertical=="undefined"){P.set("isVertical",false)}P._parseCarouselNavigation(O);P._navEl=P._setupCarouselNavigation();p[M]={object:P};P._loadItems()},initAttributes:function(M){var N=this;M=M||{};q.superclass.initAttributes.call(N,M);N.setAttributeConfig("carouselEl",{validator:J.isString,value:M.carouselEl||"OL"});N.setAttributeConfig("carouselItemEl",{validator:J.isString,value:M.carouselItemEl||"LI"});N.setAttributeConfig("currentPage",{readOnly:true,value:0});N.setAttributeConfig("firstVisible",{method:N._setFirstVisible,validator:N._validateFirstVisible,value:M.firstVisible||N.CONFIG.FIRST_VISIBLE});N.setAttributeConfig("selectOnScroll",{validator:J.isBoolean,value:M.selectOnScroll||true});N.setAttributeConfig("numVisible",{method:N._setNumVisible,validator:N._validateNumVisible,value:M.numVisible||N.CONFIG.NUM_VISIBLE});N.setAttributeConfig("numItems",{method:N._setNumItems,validator:N._validateNumItems,value:N._itemsTable.numItems});N.setAttributeConfig("scrollIncrement",{validator:N._validateScrollIncrement,value:M.scrollIncrement||1});N.setAttributeConfig("selectedItem",{method:N._setSelectedItem,validator:J.isNumber,value:-1});N.setAttributeConfig("revealAmount",{method:N._setRevealAmount,validator:N._validateRevealAmount,value:M.revealAmount||0});N.setAttributeConfig("isCircular",{validator:J.isBoolean,value:M.isCircular||false});N.setAttributeConfig("isVertical",{method:N._setOrientation,validator:J.isBoolean,value:M.isVertical||false});N.setAttributeConfig("navigation",{method:N._setNavigation,validator:N._validateNavigation,value:M.navigation||{prev:null,next:null,page:null}});N.setAttributeConfig("animation",{validator:N._validateAnimation,value:M.animation||{speed:0,effect:null}});N.setAttributeConfig("autoPlay",{validator:J.isNumber,value:M.autoPlay||0});N.setAttributeConfig("autoPlayInterval",{validator:J.isNumber,value:M.autoPlayInterval||0})},initEvents:function(){var O=this,N=O.CLASSES,M;O.on("keydown",O._keyboardEventHandler);O.on(g,a);O.on(o,H);O.on(L,H);O.on(b,function(){if(O._hasFocus){O.focus()}});O.on(t,H);O.on(C,function(P){O.scrollTo(0);a.call(O);n.call(O)});O.on(e,n,O);O.on(x,function(P){O.set("selectedItem",O.get("firstVisible"));a.call(O,P);n.call(O,P);O._setClipContainerSize()});O.on("selectedItemChange",function(P){I.call(O,P.newValue,P.prevValue);if(P.newValue>=0){O._updateTabIndex(O.getElementForItem(P.newValue))}O.fireEvent(b,P.newValue)});O.on(i,function(P){a.call(O,P);n.call(O,P)});O.on("firstVisibleChange",function(P){if(!O.get("selectOnScroll")){if(P.newValue>=0){O._updateTabIndex(O.getElementForItem(P.newValue))}}});O.on("click",function(P){if(O.isAutoPlayOn()){O.stopAutoPlay()}O._itemClickHandler(P);O._pagerClickHandler(P)});z.onFocus(O.get("element"),function(P,Q){var R=z.getTarget(P);if(R&&R.nodeName.toUpperCase()=="A"&&A.getAncestorByClassName(R,N.NAVIGATION)){if(M){A.removeClass(M,N.PAGE_FOCUS)}M=R.parentNode;A.addClass(M,N.PAGE_FOCUS)}else{if(M){A.removeClass(M,N.PAGE_FOCUS)}}Q._hasFocus=true;Q._updateNavButtons(z.getTarget(P),true)},O);z.onBlur(O.get("element"),function(P,Q){Q._hasFocus=false;Q._updateNavButtons(z.getTarget(P),false)},O)},isAnimating:function(){return this._isAnimationInProgress},isAutoPlayOn:function(){return this._isAutoPlayInProgress},getElementForItem:function(M){var N=this;if(M<0||M>=N.get("numItems")){return null}if(N._itemsTable.numItems>M){if(!J.isUndefined(N._itemsTable.items[M])){return A.get(N._itemsTable.items[M].id)}}return null},getElementForItems:function(){var O=this,N=[],M;for(M=0;M<O._itemsTable.numItems;M++){N.push(O.getElementForItem(M))}return N},getItem:function(M){var N=this;if(M<0||M>=N.get("numItems")){return null}if(N._itemsTable.numItems>M){if(!J.isUndefined(N._itemsTable.items[M])){return N._itemsTable.items[M]}}return null},getItems:function(M){return this._itemsTable.items},getItemPositionById:function(P){var N=this,M=0,O=N._itemsTable.numItems;while(M<O){if(!J.isUndefined(N._itemsTable.items[M])){if(N._itemsTable.items[M].id==P){return M}}M++}return -1},getVisibleItems:function(){var O=this,M=O.get("firstVisible"),P=M+O.get("numVisible"),N=[];while(M<P){N.push(O.getElementForItem(M));M++}return N},removeItem:function(N){var P=this,O,M=P.get("numItems");if(N<0||N>=M){return false}O=P._itemsTable.items.splice(N,1);if(O&&O.length==1){P._itemsTable.numItems--;P.set("numItems",M-1);P.fireEvent(L,{item:O[0],pos:N,ev:L});return true}return false},render:function(M){var O=this,N=O.CLASSES;O.addClass(N.CAROUSEL);if(!O._clipEl){O._clipEl=O._createCarouselClip();O._clipEl.appendChild(O._carouselEl)}if(M){O.appendChild(O._clipEl);O.appendTo(M)}else{if(!A.inDocument(O.get("element"))){return false}O.appendChild(O._clipEl)}if(O.get("isVertical")){O.addClass(N.VERTICAL)}else{O.addClass(N.HORIZONTAL)}if(O.get("numItems")<1){return false}O._refreshUi();return true},scrollBackward:function(){var M=this;M.scrollTo(M._firstItem-M.get("scrollIncrement"))},scrollForward:function(){var M=this;M.scrollTo(M._firstItem+M.get("scrollIncrement"))},scrollPageBackward:function(){var N=this,M=N._firstItem-N.get("numVisible");if(N.get("selectOnScroll")){N._selectedItem=N._getSelectedItem(M)}else{M=N._getValidIndex(M)}N.scrollTo(M)},scrollPageForward:function(){var N=this,M=N._firstItem+N.get("numVisible");if(N.get("selectOnScroll")){N._selectedItem=N._getSelectedItem(M)}else{M=N._getValidIndex(M)}N.scrollTo(M)},scrollTo:function(Z,S){var aa=this,T,Q,P,Y,ab,W,M,V,O,U,N,R,X;if(J.isUndefined(Z)||Z==aa._firstItem||aa.isAnimating()){return}Q=aa.get("animation");P=aa.get("isCircular");W=aa._firstItem;M=aa.get("numItems");V=aa.get("numVisible");U=aa.get("currentPage");X=function(){if(aa.isAutoPlayOn()){aa.stopAutoPlay()}};if(Z<0){if(P){Z=M+Z}else{X.call(aa);return}}else{if(M>0&&Z>M-1){if(aa.get("isCircular")){Z=M-Z}else{X.call(aa);return}}}ab=(aa._firstItem>Z)?"backward":"forward";R=W+V;R=(R>M-1)?M-1:R;N=aa.fireEvent(d,{dir:ab,first:W,last:R});if(N===false){return}aa.fireEvent(w,{page:U});Y=W-Z;aa._firstItem=Z;aa.set("firstVisible",Z);aa._loadItems();R=Z+V;R=(R>M-1)?M-1:R;O=E.call(aa,Y);T=Q.speed>0;if(T){aa._animateAndSetCarouselOffset(O,Z,R,S)}else{aa._setCarouselOffset(O);c.call(aa,Z,R)}},selectPreviousItem:function(){var N=this,O=0,M=N.get("selectedItem");if(M==this._firstItem){O=M-N.get("numVisible");N._selectedItem=N._getSelectedItem(M-1);N.scrollTo(O)}else{O=N.get("selectedItem")-N.get("scrollIncrement");N.set("selectedItem",N._getSelectedItem(O))}},selectNextItem:function(){var M=this,N=0;N=M.get("selectedItem")+M.get("scrollIncrement");M.set("selectedItem",M._getSelectedItem(N))},show:function(){var N=this,M=N.CLASSES;if(N.fireEvent(j)!==false){N.addClass(M.VISIBLE);N.fireEvent(l)}},startAutoPlay:function(){var M=this,N;if(J.isUndefined(M._autoPlayTimer)){N=M.get("autoPlayInterval");if(N<=0){return}M._isAutoPlayInProgress=true;M.fireEvent(u);M._autoPlayTimer=setTimeout(function(){M._autoScroll()},N)}},stopAutoPlay:function(){var M=this;if(!J.isUndefined(M._autoPlayTimer)){clearTimeout(M._autoPlayTimer);delete M._autoPlayTimer;M._isAutoPlayInProgress=false;M.fireEvent(K)}},toString:function(){return m+(this.get?" (#"+this.get("id")+")":"")},_animateAndSetCarouselOffset:function(R,O,N){var Q=this,M=Q.get("animation"),P=null;if(Q.get("isVertical")){P=new YAHOO.util.Motion(Q._carouselEl,{points:{by:[0,R]}},M.speed,M.effect)}else{P=new YAHOO.util.Motion(Q._carouselEl,{points:{by:[R,0]}},M.speed,M.effect)}Q._isAnimationInProgress=true;P.onComplete.subscribe(Q._animationCompleteHandler,{scope:Q,item:O,last:N});P.animate()},_animationCompleteHandler:function(M,N,O){O.scope._isAnimationInProgress=false;c.call(O.scope,O.item,O.last)},_autoScroll:function(){var N=this,O=N._firstItem,M;if(O>=N.get("numItems")-1){if(N.get("isCircular")){M=0}else{N.stopAutoPlay()}}else{M=O+N.get("numVisible")}N._selectedItem=N._getSelectedItem(M);N.scrollTo.call(N,M)},_createCarousel:function(M){var P=this,O=P.CLASSES,N=A.get(M);if(!N){N=s("DIV",{className:O.CAROUSEL,id:M})}if(!P._carouselEl){P._carouselEl=s(P.get("carouselEl"),{className:O.CAROUSEL_EL})}return N},_createCarouselClip:function(){return s("DIV",{className:this.CLASSES.CONTENT})},_createCarouselItem:function(M){return s(this.get("carouselItemEl"),{className:M.className,content:M.content,id:M.id})},_getValidIndex:function(P){var Q=this,M=Q.get("isCircular"),O=Q.get("numItems"),N=O-1;if(P<0){P=M?O+P:0}else{if(P>N){P=M?P-O:N}}return P},_getSelectedItem:function(Q){var P=this,M=P.get("isCircular"),O=P.get("numItems"),N=O-1;if(Q<0){if(M){Q=O+Q}else{Q=P.get("selectedItem")}}else{if(Q>N){if(M){Q=Q-O}else{Q=P.get("selectedItem")}}}return Q},_itemClickHandler:function(P){var Q=this,O=Q.get("element"),M,N,R=YAHOO.util.Event.getTarget(P);while(R&&R!=O&&R.id!=Q._carouselEl){M=R.nodeName;if(M.toUpperCase()==Q.get("carouselItemEl")){break}R=R.parentNode}if((N=Q.getItemPositionById(R.id))>=0){Q.set("selectedItem",Q._getSelectedItem(N));Q.focus()}},_keyboardEventHandler:function(O){var P=this,M=z.getCharCode(O),N=false;if(P.isAnimating()){return}switch(M){case 37:case 38:P.selectPreviousItem();N=true;break;case 39:case 40:P.selectNextItem();N=true;break;case 33:P.scrollPageBackward();N=true;break;case 34:P.scrollPageForward();N=true;break}if(N){if(P.isAutoPlayOn()){P.stopAutoPlay()}z.preventDefault(O)}},_loadItems:function(){var P=this,Q=P.get("firstVisible"),N=0,M=P.get("numItems"),O=P.get("numVisible"),R=P.get("revealAmount");N=Q+O-1+(R?1:0);N=N>M-1?M-1:N;if(!P.getItem(Q)||!P.getItem(N)){P.fireEvent(t,{ev:t,first:Q,last:N,num:N-Q})}},_pagerClickHandler:function(N){var O=this,R,Q=z.getTarget(N),P;function M(T){var S=O.get("carouselItemEl");if(T.nodeName.toUpperCase()==S.toUpperCase()){T=A.getChildrenBy(T,function(U){return U.href||U.value});if(T&&T[0]){return T[0]}}else{if(T.href||T.value){return T}}return null}if(Q){Q=M(Q);if(!Q){return}P=Q.href||Q.value;if(J.isString(P)&&P){R=P.lastIndexOf("#");if(R!=-1){P=O.getItemPositionById(P.substring(R+1));O._selectedItem=P;O.scrollTo(P);if(!Q.value){O.focus()}z.preventDefault(N)}}}},_parseCarousel:function(M){var R=this,S,P,N,Q,O;P=R.CLASSES;N=R.get("carouselEl");Q=false;for(S=M.firstChild;S;S=S.nextSibling){if(S.nodeType==1){O=S.nodeName;if(O.toUpperCase()==N){R._carouselEl=S;A.addClass(R._carouselEl,R.CLASSES.CAROUSEL_EL);Q=true}}}return Q},_parseCarouselItems:function(){var Q=this,R,P,N,O,M=Q._carouselEl;P=Q.get("carouselItemEl");for(R=M.firstChild;R;R=R.nextSibling){if(R.nodeType==1){O=R.nodeName;if(O.toUpperCase()==P){if(R.id){N=R.id}else{N=A.generateId();R.setAttribute("id",N)}Q.addItem(R)}}}},_parseCarouselNavigation:function(T){var U=this,R,S=U.CLASSES,N,Q,P,M,O=false;M=A.getElementsByClassName(S.PREV_PAGE,"*",T);if(M.length>0){for(Q in M){if(M.hasOwnProperty(Q)){N=M[Q];if(N.nodeName=="INPUT"||N.nodeName=="BUTTON"){U._navBtns.prev.push(N)}else{P=N.getElementsByTagName("INPUT");if(J.isArray(P)&&P.length>0){U._navBtns.prev.push(P[0])}else{P=N.getElementsByTagName("BUTTON");if(J.isArray(P)&&P.length>0){U._navBtns.prev.push(P[0])}}}}}R={prev:M}}M=A.getElementsByClassName(S.NEXT_PAGE,"*",T);if(M.length>0){for(Q in M){if(M.hasOwnProperty(Q)){N=M[Q];if(N.nodeName=="INPUT"||N.nodeName=="BUTTON"){U._navBtns.next.push(N)}else{P=N.getElementsByTagName("INPUT");if(J.isArray(P)&&P.length>0){U._navBtns.next.push(P[0])}else{P=N.getElementsByTagName("BUTTON");if(J.isArray(P)&&P.length>0){U._navBtns.next.push(P[0])}}}}}if(R){R.next=M}else{R={next:M}}}if(R){U.set("navigation",R);O=true}return O},_refreshUi:function(){var M=this;M._hasRendered=true;M.fireEvent(x)},_setCarouselOffset:function(O){var M=this,N;N=M.get("isVertical")?"top":"left";O+=O!==0?B(M._carouselEl,N):0;A.setStyle(M._carouselEl,N,O+"px")},_setupCarouselNavigation:function(){var R=this,P,M,Q,T,N,S,O;Q=R.CLASSES;N=A.getElementsByClassName(Q.NAVIGATION,"DIV",R.get("element"));if(N.length===0){N=s("DIV",{className:Q.NAVIGATION});R.insertBefore(N,A.getFirstChild(R.get("element")))}else{N=N[0]}R._pages.el=s("UL");N.appendChild(R._pages.el);T=R.get("navigation");if(J.isString(T.prev)||J.isArray(T.prev)){if(J.isString(T.prev)){T.prev=[T.prev]}for(P in T.prev){if(T.prev.hasOwnProperty(P)){R._navBtns.prev.push(A.get(T.prev[P]))}}}else{O=s("SPAN",{className:Q.BUTTON+Q.FIRST_NAV});A.setStyle(O,"visibility","visible");P=A.generateId();O.innerHTML='<button type="button" id="'+P+'" name="'+R.STRINGS.PREVIOUS_BUTTON_TEXT+'">'+R.STRINGS.PREVIOUS_BUTTON_TEXT+"</button>";N.appendChild(O);P=A.get(P);R._navBtns.prev=[P];M={prev:[O]}}if(J.isString(T.next)||J.isArray(T.next)){if(J.isString(T.next)){T.next=[T.next]}for(P in T.next){if(T.next.hasOwnProperty(P)){R._navBtns.next.push(A.get(T.next[P]))}}}else{S=s("SPAN",{className:Q.BUTTON+Q.NEXT_NAV});A.setStyle(S,"visibility","visible");P=A.generateId();S.innerHTML='<button type="button" id="'+P+'" name="'+R.STRINGS.NEXT_BUTTON_TEXT+'">'+R.STRINGS.NEXT_BUTTON_TEXT+"</button>";N.appendChild(S);P=A.get(P);R._navBtns.next=[P];if(M){M.next=[S]}else{M={next:[S]}}}if(M){R.set("navigation",M)}return N},_setClipContainerSize:function(N,P){var U=this,Q,M,R,T,S,V,O;R=U.get("isVertical");S=U.get("revealAmount");O=R?"height":"width";Q=R?"top":"left";N=N||U._clipEl;if(!N){return}P=P||U.get("numVisible");T=r.call(U,O);V=T*P;U._recomputeSize=(V===0);if(U._recomputeSize){U._hasRendered=false;return}if(S>0){S=T*(S/100)*2;V+=S;M=parseFloat(A.getStyle(U._carouselEl,Q));M=J.isNumber(M)?M:0;A.setStyle(U._carouselEl,Q,M+(S/2)+"px")}if(R){V+=B(U._carouselEl,"marginTop")+B(U._carouselEl,"marginBottom")+B(U._carouselEl,"paddingTop")+B(U._carouselEl,"paddingBottom")+B(U._carouselEl,"borderTopWidth")+B(U._carouselEl,"borderBottomWidth");A.setStyle(N,O,(V-(P-1))+"px")}else{V+=B(U._carouselEl,"marginLeft")+B(U._carouselEl,"marginRight")+B(U._carouselEl,"paddingLeft")+B(U._carouselEl,"paddingRight")+B(U._carouselEl,"borderLeftWidth")+B(U._carouselEl,"borderRightWidth");A.setStyle(N,O,V+"px")}U._setContainerSize(N)},_setContainerSize:function(Q,M){var R=this,O=R.CONFIG,P=R.CLASSES,S,N;S=R.get("isVertical");Q=Q||R._clipEl;M=M||(S?"height":"width");N=parseFloat(A.getStyle(Q,M),10);N=J.isNumber(N)?N:0;if(S){N+=B(R._carouselEl,"marginTop")+B(R._carouselEl,"marginBottom")+B(R._carouselEl,"paddingTop")+B(R._carouselEl,"paddingBottom")+B(R._carouselEl,"borderTopWidth")+B(R._carouselEl,"borderBottomWidth")+B(R._navEl,"height")}else{N+=B(Q,"marginLeft")+B(Q,"marginRight")+B(Q,"paddingLeft")+B(Q,"paddingRight")+B(Q,"borderLeftWidth")+B(Q,"borderRightWidth")}if(!S){if(N<O.HORZ_MIN_WIDTH){N=O.HORZ_MIN_WIDTH;R.addClass(P.MIN_WIDTH)}}R.setStyle(M,N+"px");if(S){N=r.call(R,"width");if(N<O.VERT_MIN_WIDTH){N=O.VERT_MIN_WIDTH;R.addClass(P.MIN_WIDTH)}R.setStyle("width",N+"px")}},_setFirstVisible:function(N){var M=this;if(N>=0&&N<M.get("numItems")){M.scrollTo(N)}else{N=M.get("firstVisible")}return N},_setNavigation:function(M){var N=this;if(M.prev){z.on(M.prev,"click",f,N)}if(M.next){z.on(M.next,"click",F,N)}},_setNumVisible:function(N){var M=this;M._setClipContainerSize(M._clipEl,N)},_setNumItems:function(O){var N=this,M=N._itemsTable.numItems;if(J.isArray(N._itemsTable.items)){if(N._itemsTable.items.length!=M){M=N._itemsTable.items.length;N._itemsTable.numItems=M}}if(O<M){while(M>O){N.removeItem(M-1);M--}}return O},_setOrientation:function(O){var N=this,M=N.CLASSES;if(O){N.replaceClass(M.HORIZONTAL,M.VERTICAL)}else{N.replaceClass(M.VERTICAL,M.HORIZONTAL)}N._itemsTable.size=0;return O},_setRevealAmount:function(N){var M=this;if(N>=0&&N<=100){N=parseInt(N,10);N=J.isNumber(N)?N:0;M._setClipContainerSize()}else{N=M.get("revealAmount")}return N},_setSelectedItem:function(M){this._selectedItem=M},_syncUiForItemAdd:function(P){var U=this,T=U._carouselEl,M,S,O=U._itemsTable,N,Q,R;Q=J.isUndefined(P.pos)?O.numItems-1:P.pos;if(!J.isUndefined(O.items[Q])){S=O.items[Q];if(S&&!J.isUndefined(S.id)){N=A.get(S.id)}}if(!N){M=U._createCarouselItem({className:S.className,content:S.item,id:S.id});if(J.isUndefined(P.pos)){if(!J.isUndefined(O.loading[Q])){N=O.loading[Q]}if(N){T.replaceChild(M,N);delete O.loading[Q]}else{T.appendChild(M)}}else{if(!J.isUndefined(O.items[P.pos+1])){R=A.get(O.items[P.pos+1].id)}if(R){T.insertBefore(M,R)}else{}}}else{if(J.isUndefined(P.pos)){if(!A.isAncestor(U._carouselEl,N)){T.appendChild(N)}}else{if(!A.isAncestor(T,N)){if(!J.isUndefined(O.items[P.pos+1])){T.insertBefore(N,A.get(O.items[P.pos+1].id))}}}}if(!U._hasRendered){U._refreshUi()}if(U.get("selectedItem")<0){U.set("selectedItem",U.get("firstVisible"))}},_syncUiForItemRemove:function(R){var Q=this,P=Q._carouselEl,N,O,M,S;M=Q.get("numItems");O=R.item;S=R.pos;if(O&&(N=A.get(O.id))){if(N&&A.isAncestor(P,N)){z.purgeElement(N,true);P.removeChild(N)}if(Q.get("selectedItem")==S){S=S>=M?M-1:S;Q.set("selectedItem",S)}}else{}},_syncUiForLazyLoading:function(S){var R=this,P=R._carouselEl,O,M,Q=R._itemsTable,N;for(M=S.first;M<=S.last;M++){O=R._createCarouselItem({className:R.CLASSES.ITEM_LOADING,content:R.STRINGS.ITEM_LOADING_CONTENT,id:A.generateId()});if(O){if(!J.isUndefined(Q.items[S.last+1])){N=A.get(Q.items[S.last+1].id);if(N){P.insertBefore(O,N)}else{}}else{P.appendChild(O)}}Q.loading[M]=O}},_updateNavButtons:function(P,N){var O,Q=this.CLASSES,R,M=P.parentNode;if(!M){return}R=M.parentNode;if(P.nodeName.toUpperCase()=="BUTTON"&&A.hasClass(M,Q.BUTTON)){if(N){if(R){O=A.getChildren(R);if(O){A.removeClass(O,Q.FOCUSSED_BUTTON)}}A.addClass(M,Q.FOCUSSED_BUTTON)}else{A.removeClass(M,Q.FOCUSSED_BUTTON)}}},_updatePagerButtons:function(){var V=this,S=V.CLASSES,T=V._pages.cur,M,R,P,U,N=V.get("numVisible"),Q=V._pages.num,O=V._pages.el;if(Q===0||!O){return}A.setStyle(O,"visibility","hidden");while(O.firstChild){O.removeChild(O.firstChild)}for(P=0;P<Q;P++){if(J.isUndefined(V._itemsTable.items[P*N])){A.setStyle(O,"visibility","visible");break}U=V._itemsTable.items[P*N].id;M=document.createElement("LI");if(!M){A.setStyle(O,"visibility","visible");break}if(P===0){A.addClass(M,S.FIRST_PAGE)}if(P==T){A.addClass(M,S.SELECTED_NAV)}R='<a href="#'+U+'" tabindex="0"><em>'+V.STRINGS.PAGER_PREFIX_TEXT+" "+(P+1)+"</em></a>";M.innerHTML=R;O.appendChild(M)}A.setStyle(O,"visibility","visible")},_updatePagerMenu:function(){var U=this,S=U._pages.cur,N,Q,T,O=U.get("numVisible"),R=U._pages.num,P=U._pages.el,M;if(R===0){return}M=document.createElement("SELECT");if(!M){return}A.setStyle(P,"visibility","hidden");while(P.firstChild){P.removeChild(P.firstChild)}for(Q=0;Q<R;Q++){if(J.isUndefined(U._itemsTable.items[Q*O])){A.setStyle(P,"visibility","visible");break}T=U._itemsTable.items[Q*O].id;N=document.createElement("OPTION");if(!N){A.setStyle(P,"visibility","visible");break}N.value="#"+T;N.innerHTML=U.STRINGS.PAGER_PREFIX_TEXT+" "+(Q+1);if(Q==S){N.setAttribute("selected","selected")}M.appendChild(N)}N=document.createElement("FORM");if(!N){}else{N.appendChild(M);P.appendChild(N)}A.setStyle(P,"visibility","visible")},_updateTabIndex:function(M){var N=this;if(M){if(N._focusableItemEl){N._focusableItemEl.tabIndex=-1}N._focusableItemEl=M;M.tabIndex=0}},_validateAnimation:function(M){var N=true;if(J.isObject(M)){if(M.speed){N=N&&J.isNumber(M.speed)}if(M.effect){N=N&&J.isFunction(M.effect)}else{if(!J.isUndefined(YAHOO.util.Easing)){M.effect=YAHOO.util.Easing.easeOut}}}else{N=false}return N},_validateFirstVisible:function(O){var N=this,M=N.get("numItems");if(J.isNumber(O)){if(M===0&&O==M){return true}else{return(O>=0&&O<M)}}return false},_validateNavigation:function(M){var N;if(!J.isObject(M)){return false}if(M.prev){if(!J.isArray(M.prev)){return false}for(N in M.prev){if(M.prev.hasOwnProperty(N)){if(!J.isString(M.prev[N].nodeName)){return false}}}}if(M.next){if(!J.isArray(M.next)){return false}for(N in M.next){if(M.next.hasOwnProperty(N)){if(!J.isString(M.next[N].nodeName)){return false}}}}return true},_validateNumItems:function(M){return J.isNumber(M)&&(M>=0)},_validateNumVisible:function(M){var N=false;if(J.isNumber(M)){N=M>0&&M<=this.get("numItems")}return N},_validateRevealAmount:function(M){var N=false;if(J.isNumber(M)){N=M>=0&&M<100}return N},_validateScrollIncrement:function(M){var N=false;if(J.isNumber(M)){N=(M>0&&M<this.get("numItems"))}return N}})})();YAHOO.register("carousel",YAHOO.widget.Carousel,{version:"2.7.0",build:"1799"});
