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