/*publish time:2011-09-22 15:24:23*/
KISSY.add("switchable/base",function(E,F,A,H){function C(J,K){K=K||{};if(!("markupType" in K)){if(K.panelCls){K.markupType=1}else{if(K.panels){K.markupType=2}}}for(var L=this.constructor;L;){K=E.merge(L.Config,K);L=L.superclass?L.superclass.constructor:null}this.container=F.get(J);this.config=K;this.activeIndex=this.completedIndex=K.activeIndex;if(!(this.activeIndex>-1)){if(typeof K.switchTo!="number"){this.completedIndex=this.activeIndex=0}}this._init();this._initPlugins();this.fire(B);this.activeIndex>-1||typeof K.switchTo=="number"&&this.switchTo(K.switchTo)}function G(J){var K={};K.type=J.originalEvent.type;K.target=J.originalEvent.target||J.originalEvent.srcElement;return{originalEvent:K}}var I=E.makeArray,D=A.Target,B="init";C.getDomEvent=G;C.Config={markupType:0,navCls:"ks-switchable-nav",contentCls:"ks-switchable-content",triggerCls:"ks-switchable-trigger",panelCls:"ks-switchable-panel",triggers:[],panels:[],hasTriggers:true,triggerType:"mouse",delay:0.1,activeIndex:-1,activeTriggerCls:"ks-active",steps:1,viewSize:[]};C.Plugins=[];E.augment(C,D,{_initPlugins:function(){for(var J=this,K=J.constructor;K;){E.each(K.Plugins,function(L){L.init&&L.init(J)});K=K.superclass?K.superclass.constructor:null}},_init:function(){var J=this.config;this._parseMarkup();J.hasTriggers&&this._bindTriggers()},_parseMarkup:function(){var J=this.container,L=this.config,O,M,N=[],K=[];switch(L.markupType){case 0:if(O=F.get("."+L.navCls,J)){N=F.children(O)}M=F.get("."+L.contentCls,J);K=F.children(M);break;case 1:N=F.query("."+L.triggerCls,J);K=F.query("."+L.panelCls,J);break;case 2:N=L.triggers;K=L.panels}J=K.length;this.length=J/L.steps;if(L.hasTriggers&&J>0&&N.length===0){N=this._generateTriggersMarkup(this.length)}this.triggers=I(N);this.panels=I(K);this.content=M||K[0].parentNode;this.nav=O||L.hasTriggers&&N[0].parentNode},_generateTriggersMarkup:function(J){var K=this.config,N=F.create("<ul>"),L,M;N.className=K.navCls;for(M=0;M<J;M++){L=F.create("<li>");if(M===this.activeIndex){L.className=K.activeTriggerCls}L.innerHTML=M+1;N.appendChild(L)}this.container.appendChild(N);return F.children(N)},_bindTriggers:function(){var J=this,L=J.config,O=J.triggers,M,N,K=O.length;for(N=0;N<K;N++){(function(P){M=O[P];A.on(M,"click",function(Q){J._onFocusTrigger(P,Q)});if(L.triggerType==="mouse"){A.on(M,"mouseenter",function(Q){J._onMouseEnterTrigger(P,Q)});A.on(M,"mouseleave",function(){J._onMouseLeaveTrigger(P)})}})(N)}},_onFocusTrigger:function(J,K){if(this._triggerIsValid(J)){this._cancelSwitchTimer();this.switchTo(J,H,G(K))}},_onMouseEnterTrigger:function(J,K){var M=this;if(M._triggerIsValid(J)){var L=G(K);M.switchTimer=E.later(function(){M.switchTo(J,H,L)},M.config.delay*1000)}},_onMouseLeaveTrigger:function(){this._cancelSwitchTimer()},_triggerIsValid:function(J){return this.activeIndex!==J},_cancelSwitchTimer:function(){if(this.switchTimer){this.switchTimer.cancel();this.switchTimer=H}},switchTo:function(S,T,P,N){var O=this,U=O.config,R=O.triggers,J=O.panels,K=O.activeIndex,Q=U.steps,M=K*Q,L=S*Q;if(!O._triggerIsValid(S)){return O}if(O.fire("beforeSwitch",{toIndex:S})===false){return O}if(U.hasTriggers){O._switchTrigger(K>-1?R[K]:null,R[S])}if(T===H){T=S>K?"forward":"backward"}O._switchView(K>-1?J.slice(M,M+Q):null,J.slice(L,L+Q),S,T,P,function(){N&&N.call(O,S);O.completedIndex=S});O.activeIndex=S;return O},_switchTrigger:function(J,K){var L=this.config.activeTriggerCls;J&&F.removeClass(J,L);F.addClass(K,L)},_switchView:function(J,L,O,M,N,K){J&&F.css(J,"display","none");F.css(L,"display","block");this._fireOnSwitch(O,N);K&&K.call(this)},_fireOnSwitch:function(J,K){this.fire("switch",E.mix(K||{},{currentIndex:J}))},prev:function(J){var K=this.activeIndex;this.switchTo(K>0?K-1:this.length-1,"backward",J)},next:function(J){var K=this.activeIndex;this.switchTo(K<this.length-1?K+1:0,"forward",J)}});return C},{requires:["dom","event"]});KISSY.add("switchable/aria",function(E,G,F,C){function A(){this.stop&&this.stop()}function B(){this.start&&this.start()}C.Plugins.push({name:"aria",init:function(H){if(H.config.aria){var I=H.container;F.on(I,"focusin",A,H);F.on(I,"focusout",B,H)}}});var D=["a","input","button","object"];return{setTabIndex:function(H,I){H.tabIndex=I;G.query("*",H).each(function(J){var K=J.nodeName.toLowerCase();if(E.inArray(K,D)){G.hasAttr(J,"oriTabIndex")||G.attr(J,"oriTabIndex",J.tabIndex);J.tabIndex=I!=-1?G.attr(J,"oriTabIndex"):I}})}}},{requires:["dom","event","./base"]});KISSY.add("switchable/accordion/base",function(B,D,C){function A(E,F){if(!(this instanceof A)){return new A(E,F)}A.superclass.constructor.apply(this,arguments)}B.extend(A,C,{_switchTrigger:function(E,F){var G=this.config;G.multiple?D.toggleClass(F,G.activeTriggerCls):A.superclass._switchTrigger.apply(this,arguments)},_triggerIsValid:function(E){return this.config.multiple||A.superclass._triggerIsValid.call(this,E)},_switchView:function(F,H,J,I,K,E){var G=H[0];if(this.config.multiple){D.toggle(G);this._fireOnSwitch(J,K);E&&E.call(this)}else{A.superclass._switchView.apply(this,arguments)}}});A.Plugins=[];A.Config={markupType:1,triggerType:"click",multiple:false};return A},{requires:["dom","../base"]});KISSY.add("switchable/accordion/aria",function(V,Z,M,H,Q){function G(A){var C;V.each(this.triggers,function(a){if(a==A||Z.contains(a,A)){C=a}});return C}function J(A){var C;V.each(this.panels,function(a){if(a==A||Z.contains(a,A)){C=a}});return C}function U(A){var C=G.call(this,A);if(!C){A=J.call(this,A);C=this.triggers[V.indexOf(A,this.panels)]}return C}function P(A){switch(A.keyCode){case F:case D:A.ctrlKey&&!A.altKey&&!A.shiftKey&&A.halt();break;case R:A.ctrlKey&&!A.altKey&&A.halt()}}function d(a){var c=a.target,b=this.triggers,C=!a.ctrlKey&&!a.shiftKey&&!a.altKey,A=a.ctrlKey&&!a.shiftKey&&!a.altKey;switch(a.keyCode){case E:case I:if((c=G.call(this,c))&&C){this.switchTo(V.indexOf(c,this.triggers));a.halt()}break;case B:case S:if(c=G.call(this,c)){Y.call(this,c);a.halt()}break;case N:case W:if(c=G.call(this,c)){T.call(this,c);a.halt()}break;case D:if(A){a.halt();c=U.call(this,c);T.call(this,c)}break;case F:if(A){a.halt();c=U.call(this,c);Y.call(this,c)}break;case O:if(C){U.call(this,c);n.call(this,0,true);a.halt()}break;case L:if(C){U.call(this,c);n.call(this,b.length-1,true);a.halt()}break;case R:if(a.ctrlKey&&!a.altKey){a.halt();c=U.call(this,c);a.shiftKey?Y.call(this,c):T.call(this,c)}}}function n(C,b){var a=this.triggers,A=a[C];V.each(a,function(c){if(c!==A){K(c,"-1");Z.removeClass(c,"ks-switchable-select");c.setAttribute("aria-selected","false")}});b&&A.focus();K(A,"0");Z.addClass(A,"ks-switchable-select");A.setAttribute("aria-selected","true")}function Y(A){var C=this.triggers;A=V.indexOf(A,C);n.call(this,A==0?C.length-1:A-1,true)}function T(A){var C=this.triggers;A=V.indexOf(A,C);n.call(this,A==C.length-1?0:A+1,true)}function X(b){var e=!!(b.originalEvent.target||b.originalEvent.srcElement);b=b.currentIndex;var c=this.panels,a=this.triggers,C=a[b],A=c[b];if(!this.config.multiple){V.each(c,function(f){f!==A&&f.setAttribute("aria-hidden","true")});V.each(a,function(f){f!==C&&f.setAttribute("aria-hidden","true")})}c=A.getAttribute("aria-hidden");A.setAttribute("aria-hidden",c=="false"?"true":"false");C.setAttribute("aria-expanded",c=="false"?"false":"true");n.call(this,b,e)}var F=33,D=34,L=35,O=36,B=37,S=38,N=39,W=40,R=9,I=32,E=13;V.mix(Q.Config,{aria:true});Q.Plugins.push({name:"aria",init:function(b){if(b.config.aria){var e=b.container,c=b.activeIndex;Z.attr(e,"aria-multiselectable",b.config.multiple?"true":"false");b.nav&&Z.attr(b.nav,"role","tablist");var a=b.triggers,C=b.panels,A=0;V.each(C,function(f){if(!f.id){f.id=V.guid("ks-accordion-tab-panel")}});V.each(a,function(f){if(!f.id){f.id=V.guid("ks-accordion-tab")}});V.each(a,function(f){f.setAttribute("role","tab");f.setAttribute("aria-expanded",c==A?"true":"false");f.setAttribute("aria-selected",c==A?"true":"false");f.setAttribute("aria-controls",C[A].id);K(f,c==A?"0":"-1");A++});A=0;V.each(C,function(g){var f=a[A];g.setAttribute("role","tabpanel");g.setAttribute("aria-hidden",c==A?"false":"true");g.setAttribute("aria-labelledby",f.id);A++});b.on("switch",X,b);M.on(e,"keydown",d,b);M.on(e,"keypress",P,b)}}});var K=H.setTabIndex},{requires:["dom","event","../aria","./base"]});KISSY.add("switchable/autoplay",function(B,D,C,A){B.mix(C.Config,{autoplay:false,interval:5,pauseOnHover:true});C.Plugins.push({name:"autoplay",init:function(E){function F(){I=B.later(function(){E.paused||E.switchTo(E.activeIndex<E.length-1?E.activeIndex+1:0,"forward")},G,true)}var H=E.config,G=H.interval*1000,I;if(H.autoplay){F();E.stop=function(){if(I){I.cancel();I=A}E.paused=true};E.start=function(){if(I){I.cancel();I=A}E.paused=false;F()};if(H.pauseOnHover){D.on(E.container,"mouseenter",E.stop,E);D.on(E.container,"mouseleave",E.start,E)}}}});return C},{requires:["event","./base"]});KISSY.add("switchable/autorender",function(B,D,C,A){A.autoRender=function(E,F){E="."+(E||"KS_Widget");D.query(E,F).each(function(I){var H=I.getAttribute("data-widget-type"),J;if(H&&"Switchable Tabs Slide Carousel Accordion".indexOf(H)>-1){try{if(J=I.getAttribute("data-widget-config")){J=J.replace(/'/g,'"')}new B[H](I,C.parse(J))}catch(G){}}})}},{requires:["dom","json","switchable/base"]});KISSY.add("switchable/carousel/base",function(E,G,F,C,A){function B(H,I){if(!(this instanceof B)){return new B(H,I)}B.superclass.constructor.apply(this,arguments)}var D={originalEvent:{target:1}};B.Config={circular:true,prevBtnCls:"ks-switchable-prev-btn",nextBtnCls:"ks-switchable-next-btn",disableBtnCls:"ks-switchable-disable-btn"};B.Plugins=[];E.extend(B,C,{_init:function(){var I=this;B.superclass._init.call(I);var J=I.config,H=J.disableBtnCls;E.each(["prev","next"],function(K){var L=I[K+"Btn"]=G.get("."+J[K+"BtnCls"],I.container);F.on(L,"mousedown",function(M){M.preventDefault();G.hasClass(L,H)||I[K](D)})});J.circular||I.on("switch",function(K){K=K.currentIndex;K=K===0?I.prevBtn:K===I.length-1?I.nextBtn:A;G.removeClass([I.prevBtn,I.nextBtn],H);K&&G.addClass(K,H)});F.on(I.panels,"click",function(){I.fire("itemSelected",{item:this})})}});return B},{requires:["dom","event","../base"]});KISSY.add("switchable/carousel/aria",function(Q,T,I,F,M){function E(Y){var W=Y.currentIndex,X=this.activeIndex,A=this.panels,a=A[W*this.config.steps],Z=this.triggers;W=Z[W];if((Y=!!(Y.originalEvent.target||Y.originalEvent.srcElement))||X==-1){Q.each(Z,function(b){K(b,-1)});Q.each(A,function(b){K(b,-1)});W&&K(W,0);K(a,0);Y&&a.focus()}}function G(W){var A;Q.each(this.triggers,function(X){if(X==W||T.contains(X,W)){A=X;return false}});return A}function P(Y){var W=Y.target;switch(Y.keyCode){case D:case R:if(W=G.call(this,W)){W=W;var X=T.next(W),A=this.triggers;X||(X=A[0]);K(W,-1);if(X){K(X,0);X.focus()}Y.halt()}break;case O:case S:if(W=G.call(this,W)){W=W;X=T.prev(W);A=this.triggers;X||(X=A[A.length-1]);K(W,-1);if(X){K(X,0);X.focus()}Y.halt()}break;case H:case C:if(W=G.call(this,W)){this.switchTo(Q.indexOf(W,this.triggers),undefined,B);Y.halt()}}}function L(W){var A;Q.each(this.panels,function(X){if(X==W||T.contains(X,W)){A=X;return false}});return A}function U(Y,W){var X=Q.indexOf(Y,this.panels),A=this.config.steps,Z=Math.floor(X/A);if(Z==this.activeIndex){return 1}if(X%A==0||X%A==A-1){this.switchTo(Z,W,B);return 0}return 1}function V(Y){var W=Y.target;switch(Y.keyCode){case D:case R:if(W=L.call(this,W)){W=W;var X=T.next(W),A=this.panels;X||(X=A[0]);K(W,-1);K(X,0);U.call(this,X,N)&&X.focus();Y.halt()}break;case O:case S:if(W=L.call(this,W)){W=W;X=T.prev(W);A=this.panels;X||(X=A[A.length-1]);K(W,-1);K(X,0);U.call(this,X,J)&&X.focus();Y.halt()}break;case H:case C:if(W=L.call(this,W)){this.fire("itemSelected",{item:W});Y.halt()}}}var S=37,O=38,R=39,D=40,C=32,H=13,K=F.setTabIndex,B={originalEvent:{target:1}},N="forward",J="backward";Q.mix(M.Config,{aria:false});M.Plugins.push({name:"aria",init:function(Y){if(Y.config.aria){var W=Y.triggers,X=Y.panels,A=Y.content,a=Y.activeIndex;if(!A.id){A.id=Q.guid("ks-switchbale-content")}A.setAttribute("role","listbox");var Z=0;Q.each(W,function(b){K(b,a==Z?"0":"-1");b.setAttribute("role","button");b.setAttribute("aria-controls",A.id);Z++});Z=0;Q.each(X,function(b){K(b,"-1");b.setAttribute("role","option");Z++});Y.on("switch",E,Y);(W=Y.nav)&&I.on(W,"keydown",P,Y);I.on(A,"keydown",V,Y);W=Y.prevBtn;X=Y.nextBtn;if(W){K(W,0);W.setAttribute("role","button");I.on(W,"keydown",function(b){if(b.keyCode==H||b.keyCode==C){Y.prev(B);b.preventDefault()}})}if(X){K(X,0);X.setAttribute("role","button");I.on(X,"keydown",function(b){if(b.keyCode==H||b.keyCode==C){Y.next(B);b.preventDefault()}})}}}})},{requires:["dom","event","../aria","./base"]});KISSY.add("switchable/effect",function(E,G,F,C,A,B){var D;E.mix(A.Config,{effect:"none",duration:0.5,easing:"easeNone",nativeAnim:B});A.Effects={none:function(I,J,H){I&&G.css(I,"display","none");G.css(J,"display","block");H&&H()},fade:function(K,N,H){var I=this,M=I.config,J=K?K[0]:null,L=N[0];if(I.anim){I.anim.stop();G.css(I.anim.fromEl,{zIndex:1,opacity:0});G.css(I.anim.toEl,"zIndex",9)}G.css(L,"opacity",1);if(J){I.anim=(new C(J,{opacity:0},M.duration,M.easing,function(){I.anim=B;G.css(L,"z-index",9);G.css(J,"z-index",1);H&&H()},M.nativeAnim)).run();I.anim.toEl=L;I.anim.fromEl=J}else{G.css(L,"z-index",9);H&&H()}},scroll:function(K,N,H,I){var M=this;N=M.config;var J=N.effect==="scrollx",L={};L[J?"left":"top"]=-(M.viewSize[J?0:1]*I)+"px";M.anim&&M.anim.stop();if(K){M.anim=(new C(M.content,L,N.duration,N.easing,function(){M.anim=B;H&&H()},N.nativeAnim)).run()}else{G.css(M.content,L);H&&H()}}};D=A.Effects;D.scrollx=D.scrolly=D.scroll;A.Plugins.push({name:"effect",init:function(L){var J=L.config,P=J.effect,Q=L.panels,N=L.content,K=J.steps,M=L.activeIndex,R=Q.length;L.viewSize=[J.viewSize[0]||Q[0].offsetWidth*K,J.viewSize[1]||Q[0].offsetHeight*K];if(P!=="none"){G.css(Q,"display","block");switch(P){case"scrollx":case"scrolly":G.css(N,"position","absolute");G.css(N.parentNode,"position")=="static"&&G.css(N.parentNode,"position","relative");if(P==="scrollx"){G.css(Q,"float","left");G.width(N,L.viewSize[0]*(R/K))}break;case"fade":var O=M*K,H=O+K-1,I;E.each(Q,function(T,S){I=S>=O&&S<=H;G.css(T,{opacity:I?1:0,position:"absolute",zIndex:I?9:1})})}}}});E.augment(A,{_switchView:function(L,O,H,J,N,K){var M=this,I=M.config.effect;(E.isFunction(I)?I:D[I]).call(M,L,O,function(){M._fireOnSwitch(H,N);K&&K.call(M)},H,J)}});return A},{requires:["dom","event","anim","switchable/base"]});KISSY.add("switchable/circular",function(F,I,A,O){function C(Q,T,a,X,U){var Y=this;T=Y.config;var W=Y.length,c=Y.activeIndex,b=T.scrollType===J,R=b?K:L,Z=Y.viewSize[b?0:1];b=-Z*X;var V={},S,e=U===M;if(S=e&&c===0&&X===W-1||U===G&&c===W-1&&X===0){b=N.call(Y,Y.panels,X,e,R,Z)}V[R]=b+D;Y.anim&&Y.anim.stop();if(Q){Y.anim=(new A(Y.content,V,T.duration,T.easing,function(){S&&P.call(Y,Y.panels,X,e,R,Z);Y.anim=undefined;a&&a()},T.nativeAnim)).run()}else{I.css(Y.content,V);a&&a()}}function N(U,V,W,S,Q){var T=this.config.steps;V=this.length;var R=W?V-1:0;U=U.slice(R*T,(R+1)*T);I.css(U,E,B);I.css(U,S,(W?-1:1)*Q*V);return W?Q:-Q*V}function P(U,V,W,S,Q){var T=this.config.steps;V=this.length;var R=W?V-1:0;U=U.slice(R*T,(R+1)*T);I.css(U,E,H);I.css(U,S,H);I.css(this.content,S,W?-Q*(V-1):H)}var E="position",B="relative",K="left",L="top",H="",D="px",G="forward",M="backward",J="scrollx";F.mix(O.Config,{circular:false});O.Plugins.push({name:"circular",init:function(Q){Q=Q.config;if(Q.circular&&(Q.effect===J||Q.effect==="scrolly")){Q.scrollType=Q.effect;Q.effect=C}}})},{requires:["dom","anim","./base","./effect"]});KISSY.add("switchable/countdown",function(D,F,E,C,A,B){D.mix(A.Config,{countdown:false,countdownFromStyle:"",countdownToStyle:"width: 0"});A.Plugins.push({name:"countdown",init:function(P){function I(Q){G();L=(new C(H[Q],O,K-1)).run()}function G(){if(N){clearTimeout(N);N=null}if(L){L.stop();L=B}}var M=P.config,N,K=M.interval,H=[],J=M.countdownFromStyle,O=M.countdownToStyle,L;if(!(!M.autoplay||!M.hasTriggers||!M.countdown)){D.each(P.triggers,function(Q,R){Q.innerHTML='<div class="ks-switchable-trigger-mask"></div><div class="ks-switchable-trigger-content">'+Q.innerHTML+"</div>";H[R]=Q.firstChild});if(M.pauseOnHover){E.on(P.container,"mouseenter",function(){G();var Q=H[P.activeIndex];if(J){L=(new C(Q,J,0.2,"easeOut")).run()}else{F.attr(Q,"style","")}});E.on(P.container,"mouseleave",function(){G();var Q=P.activeIndex;F.attr(H[Q],"style",J);N=setTimeout(function(){I(Q)},200)})}P.on("beforeSwitch",function(){G();if(H[P.activeIndex]){F.attr(H[P.activeIndex],"style",J||"")}});P.on("switch",function(Q){P.paused||I(Q.currentIndex)});P.activeIndex>-1&&I(P.activeIndex)}}});return A},{requires:["dom","event","anim","./base"]});KISSY.add("switchable/lazyload",function(E,G,F){var C="beforeSwitch",A="img",B="textarea",D={};D[A]="data-ks-lazyload-custom";D[B]="ks-datalazyload-custom";E.mix(F.Config,{lazyDataType:B});F.Plugins.push({name:"lazyload",init:function(K){function M(P){var N=I.steps;P=P.toIndex*N;H.loadCustomLazyData(K.panels.slice(P,P+N),L);I:{if(P=(N=L===A)?"img":L===B?"textarea":""){P=G.query(P,K.container);for(var R=0,O=P.length;R<O;R++){var Q=P[R];if(N?G.attr(Q,J):G.hasClass(Q,J)){N=false;break I}}}N=true}N&&K.detach(C,M)}var H=E.require("datalazyload"),I=K.config,L,J;if(I.lazyDataType==="img-src"){I.lazyDataType=A}if(I.lazyDataType==="area-data"){I.lazyDataType=B}L=I.lazyDataType;J=D[L];!H||!L||!J||K.on(C,M)}});return F},{requires:["dom","./base"]});KISSY.add("switchable/slide/base",function(A,C){function B(E,D){if(!(this instanceof B)){return new B(E,D)}B.superclass.constructor.apply(this,arguments)}B.Config={autoplay:true,circular:true};B.Plugins=[];A.extend(B,C);return B},{requires:["../base"]});KISSY.add("switchable/slide/aria",function(E,G,A,K,C){function J(M){switch(M.keyCode){case H:case B:this.next(I);M.halt();break;case D:case L:this.prev(I);M.halt()}}var L=37,D=38,B=39,H=40;E.mix(C.Config,{aria:false});var I={originalEvent:{target:1}},F=K.setTabIndex;C.Plugins.push({name:"aria",init:function(N){if(N.config.aria){var P=N.panels,M=0,Q=N.activeIndex;E.each(N.triggers,function(R){F(R,"-1");M++});M=0;E.each(P,function(R){F(R,Q==M?"0":"-1");G.attr(R,"role","option");M++});var O=N.content;G.attr(O,"role","listbox");A.on(O,"keydown",J,N);F(P[0],0);N.on("switch",function(S){var T=S.currentIndex;S=!!(S.originalEvent.target||S.originalEvent.srcElement);var R=N.completedIndex;R>-1&&F(P[R],-1);F(P[T],0);S&&P[T].focus()})}}})},{requires:["dom","event","../aria","./base"]});KISSY.add("switchable/tabs/base",function(A,C){function B(E,D){if(!(this instanceof B)){return new B(E,D)}B.superclass.constructor.call(this,E,D);return 0}A.extend(B,C);B.Config={};B.Plugins=[];return B},{requires:["../base"]});KISSY.add("switchable/tabs/aria",function(N,Q,H,E,K,D){function F(U){var T;N.each(this.triggers,function(V){if(V==U||Q.contains(V,U)){T=V}});return T}function M(T){switch(T.keyCode){case S:case P:T.ctrlKey&&!T.altKey&&!T.shiftKey&&T.halt();break;case G:T.ctrlKey&&!T.altKey&&T.halt()}}function J(U){var T=U.target,V=U.ctrlKey&&!U.shiftKey&&!U.altKey;switch(U.keyCode){case L:case O:if(F.call(this,T)){this.prev(A(U));U.halt()}break;case C:case B:if(F.call(this,T)){this.next(A(U));U.halt()}break;case P:if(V){U.halt();this.next(A(U))}break;case S:if(V){U.halt();this.prev(A(U))}break;case G:if(U.ctrlKey&&!U.altKey){U.halt();U.shiftKey?this.prev(A(U)):this.next(A(U))}}}function R(V){var T=!!(V.originalEvent.target||V.originalEvent.srcElement),X=this.completedIndex,U=V.currentIndex;if(X!=U){V=this.triggers[X];var W=this.triggers[U];X=this.panels[X];U=this.panels[U];V&&I(V,"-1");I(W,"0");T&&W.focus();X&&X.setAttribute("aria-hidden","true");U.setAttribute("aria-hidden","false")}}var S=33,P=34,L=37,O=38,C=39,B=40,G=9;N.mix(D.Config,{aria:true});D.Plugins.push({name:"aria",init:function(W){if(W.config.aria){var U=W.triggers,Y=W.activeIndex,V=W.panels,X=W.container;W.nav&&Q.attr(W.nav,"role","tablist");var T=0;N.each(U,function(Z){Z.setAttribute("role","tab");I(Z,Y==T?"0":"-1");if(!Z.id){Z.id=N.guid("ks-switchable")}T++});T=0;N.each(V,function(a){var Z=U[T];a.setAttribute("role","tabpanel");a.setAttribute("aria-hidden",Y==T?"false":"true");a.setAttribute("aria-labelledby",Z.id);T++});W.on("switch",R,W);H.on(X,"keydown",J,W);H.on(X,"keypress",M,W)}}});var I=K.setTabIndex,A=E.getDomEvent},{requires:["dom","event","../base","../aria","./base"]});KISSY.add("switchable",function(F,I,A,O,C,N,P,E,B,K,L,H,D,G,M,J){F.Switchable=I;A={Accordion:O,Carousel:E,Slide:G,Tabs:J};F.mix(F,A);F.mix(I,A);return I},{requires:["switchable/base","switchable/aria","switchable/accordion/base","switchable/accordion/aria","switchable/autoplay","switchable/autorender","switchable/carousel/base","switchable/carousel/aria","switchable/circular","switchable/countdown","switchable/effect","switchable/lazyload","switchable/slide/base","switchable/slide/aria","switchable/tabs/base","switchable/tabs/aria"]});
