(function(){YAHOO.widget.Switcher=function(h,g){YAHOO.widget.Switcher.superclass.constructor.call(this,h,g)};var a="Switcher",b={};var c=YAHOO.widget.Switcher,f=YAHOO.util.Dom,e=YAHOO.util.Event,d=YAHOO.lang;YAHOO.extend(c,YAHOO.util.Element,{CONFIG:{ANIM_SPEED:1,PLAY_SPEED:2,TEXT_PLAY:"Play",TEXT_PAUSE:"Pause",AUTO_PLAY:true,ANIM_EASING:YAHOO.util.Easing.easeOut},container:null,curCard:null,curTab:null,curPanel:null,cards:[],tabs:[],panels:[],photos:[],btnPlay:null,btnPause:null,idx:0,tmr:null,init:function(h,g){var i=this;if(!h){return}i.container=f.get(h);if(!i.container){return}c.superclass.init.call(i,h,g);i.cards=f.getElementsByClassName("b2b-switcher-card","li",i.container);i.tabs=f.getElementsByClassName("b2b-card-tab","h3",i.container);i.panels=f.getElementsByClassName("b2b-card-panel","div",i.container);i.photos=f.getElementsByClassName("b2b-panel-photo","div",i.container);i.curTab=i.tabs[0];i.curPanel=i.panels[0];i.curCard=i.cards[0];i.curPanel.style.display="block";i.buildPlayPauseButtons();i.initEvents();i.get("autoPlay")?i.play():i.pause()},initAttributes:function(g){var h=this;g=g||{};c.superclass.initAttributes.call(h,g);h.setAttributeConfig("animSpeed",{validator:d.isNumber,value:g.animSpeed||h.CONFIG.ANIM_SPEED});h.setAttributeConfig("playSpeed",{validator:d.isNumber,value:g.playSpeed||h.CONFIG.PLAY_SPEED});h.setAttributeConfig("txtPlay",{validator:d.isString,value:g.txtPlay||h.CONFIG.TEXT_PLAY});h.setAttributeConfig("txtPause",{validator:d.isString,value:g.txtPause||h.CONFIG.TEXT_PAUSE});h.setAttributeConfig("autoPlay",{validator:d.isBoolean,value:g.autoPlay||h.CONFIG.AUTO_PLAY})},initEvents:function(){var g=this;e.on(g.tabs,"mouseenter",g.onTabMouseEnter,g);e.on(g.tabs,"mouseleave",g.onTabMouseLeave,g);e.on(g.btnPlay,"click",g.play,g);e.on(g.btnPause,"click",g.pause,g)},buildPlayPauseButtons:function(){var g=this;g.btnPlay=document.createElement("button");g.btnPlay.appendChild(document.createTextNode(g.get("txtPlay")));g.btnPlay.className="play";g.container.appendChild(g.btnPlay);g.btnPause=document.createElement("button");g.btnPause.appendChild(document.createTextNode(g.get("txtPause")));g.btnPause.className="pause";g.container.appendChild(g.btnPause)},selectTab:function(){var j=this;var l=j.tabs[j.idx],h=j.panels[j.idx],g=j.cards[j.idx],i=j.photos[j.idx],k=null;f.removeClass(j.curCard,"b2b-switcher-card-selected");f.removeClass(j.curTab,"b2b-card-tab-selected");f.addClass(g,"b2b-switcher-card-selected");f.addClass(l,"b2b-card-tab-selected");f.setStyle(i,"opacity",0);k=new YAHOO.util.Anim(i,{opacity:{from:0,to:1}},j.get("animSpeed"),j.CONFIG.ANIM_EASING);k.animate();j.curTab=l;j.curPanel=h;j.curCard=g},onTabMouseEnter:function(i,g,h){h.pause();h.idx=parseInt(this.id.replace("switcher-tab-",""),10);h.selectTab()},onTabMouseLeave:function(j,h,i){var g=e.getRelatedTarget(j);if(!f.isAncestor(i.container,g)&&i.get("autoPlay")){i.play()}},play:function(h,g){if(!h){g=this}g.tmr=setInterval(function(){g.idx=g.idx<g.tabs.length-1?g.idx+1:0;g.selectTab()},g.get("playSpeed")*1000);g.btnPlay.style.display="none";g.btnPause.style.display=""},pause:function(h,g){if(!h){g=this}clearInterval(g.tmr);g.tmr=null;g.btnPlay.style.display="";g.btnPause.style.display="none"}})})();
