/*
 * Copyright (c) 2008. All rights reserved.
 * creator: lifesinger@gmail.com
 */
Unicorn={version:"0.4.0"};Unicorn.namespace=function(){var D=null,B,A,C;for(B=0;B<arguments.length;++B){C=arguments[B].split(".");D=Unicorn;for(A=(C[0]=="Unicorn")?1:0;A<C.length;++A){D[C[A]]=D[C[A]]||{};D=D[C[A]]}}return D};Unicorn.namespace("env","lang","util","widget","example");YAHOO.lang.augmentObject(Unicorn.env,YAHOO.env);YAHOO.lang.augmentObject(Unicorn.lang,YAHOO.lang);YAHOO.lang.augmentObject(Unicorn.util,YAHOO.util);YAHOO.lang.augmentObject(Unicorn.widget,YAHOO.widget);Unicorn.log=YAHOO.log;Unicorn.lang.apply=function(C,D,B){if(B){Unicorn.apply(C,B)}if(C&&D&&typeof D=="object"){for(var A in D){C[A]=D[A]}}return C};Unicorn.lang.apply(Unicorn.lang,{applyIf:function(B,C){if(B&&C){for(var A in C){if(typeof B[A]=="undefined"){B[A]=C[A]}}}return B},extend:function(A,C,B){if(arguments.length==2&&typeof B=="object"){A=function(){}}YAHOO.lang.extend(A,C,B);return A}});Unicorn.extend=Unicorn.lang.extend;Unicorn.lang.applyIf(String.prototype,{trim:function(){return this.replace(/^\s+|\s+$/g,"")},stripTags:function(){return this.replace(/<.*?>/g,"")}});Unicorn.lang.applyIf(Array.prototype,{indexOf:function(D,C){if(C==null){C=0}else{if(C<0){C=Math.max(0,this.length+C)}}for(var B=C,A=this.length;B<A;++B){if(this[B]===D){return B}}return -1},forEach:function(B){var A=this.length;if(typeof B!="function"){throw new TypeError()}var D=arguments[1];for(var C=0;C<A;++C){if(C in this){B.call(D,this[C],C,this)}}}});Unicorn.util.Dom={};Unicorn.lang.augmentObject(Unicorn.util.Dom,YAHOO.util.Dom);Unicorn.lang.apply(Unicorn.util.Dom,function(){var A=Unicorn.lang,F=Unicorn.util.Dom;var E={},C={HYPHEN:/(-[a-z])/i};var G=function(D){if(!C.HYPHEN.test(D)){return D}if(E[D]){return E[D]}var H=D;while(C.HYPHEN.exec(H)){H=H.replace(RegExp.$1,RegExp.$1.substr(1).toUpperCase())}E[D]=H;return H};var B=function(J,I,K){var D={};for(var H in I){D[H]=J.style[H];J.style[H]=I[H]}K.call(J);for(var H in I){J.style[H]=D[H]}};return{toggleClass:function(D,I,H){D=F.get(D);if(!D||!I){return }if(F.hasClass(D,I)){if(H){F.replaceClass(D,I,H)}else{F.removeClass(D,I)}}else{if(H&&F.hasClass(D,H)){F.replaceClass(D,H,I)}else{F.addClass(D,I)}}},getComputedStyle:function(H,L){H=F.get(H);var K=F.getStyle(H,L);if(!K||K.indexOf("px")>-1){return K}var D=/^(\d[.\d]*)+(em|ex|px|gd|rem|vw|vh|vm|ch|mm|cm|in|pt|pc|deg|rad|ms|s|hz|khz){1}?$/i;if(D.test(K)){K=J(H,L,K)}if(K=="auto"&&(L=="width"||L=="height")){if(F.getStyle(H,"display")!="none"){K=I(H,L)}else{B(H,{visibility:"hidden",display:"block"},function(){K=I(H,L)})}}return K;function J(N,Q,P){if(document.defaultView&&document.defaultView.getComputedStyle){var O=N.ownerDocument.defaultView.getComputedStyle(N,"");if(O){P=parseFloat(O[G(Q)]);P=Math.round(P)+"px"}}else{if(document.documentElement.currentStyle&&Unicorn.env.ua.ie){var M=N.style.right;N.style.right=P;P=N.style.pixelRight+"px";N.style.right=M}}return P}function I(N,R){var Q=(R=="width");var O=Q?["Left","Right"]:["Top","Bottom"];var S=0,M=0;O.forEach(function(T){S+=parseFloat(F.getComputedStyle(N,"padding"+T))||0;M+=parseFloat(F.getComputedStyle(N,"border"+T+"Width"))||0});var P=Q?N.offsetWidth:N.offsetHeight;P-=Math.round(S+M);return P+"px"}},getFirstChildByClassName:function(H,D){return F.getFirstChildBy(H,function(I){return F.hasClass(I,D)})}}}());Unicorn.util.Event={};Unicorn.lang.augmentObject(Unicorn.util.Event,YAHOO.util.Event);Unicorn.lang.apply(Unicorn.util.Event,function(){var A=Unicorn.lang,B=Unicorn.util,C=B.Dom;return{addListener:function(F,H,E,G,D){if(A.isArray(F)&&F.length==0){return false}return YAHOO.util.Event.addListener(F,H,E,G,D)},on:function(F,H,E,G,D){return this.addListener(F,H,E,G,D)}}}());Unicorn.lang.apply(Unicorn.util,function(){var A=Unicorn.lang;return{encodeUriQuery:function(B){if(!B){return""}var C=[];for(var I in B){var D=B[I],E=encodeURIComponent(I);var H=typeof D;if(H=="undefined"){C.push(E,"=&")}else{if(H!="function"&&H!="object"){C.push(E,"=",encodeURIComponent(D),"&")}else{if(A.isArray(D)){if(D.length){for(var F=0,G=D.length;F<G;F++){var J=typeof D[F];if(J!="function"&&J!="object"){C.push(E,"=",encodeURIComponent(D[F]===undefined?"":D[F]),"&")}}}else{C.push(E,"=&")}}}}}C.pop();return C.join("")},decodeUriQuery:function(I,K,G){if(!I||!I.length){return{}}var H=I.trim().match(/([^?#]*)(#.*)?$/);if(!H){return{}}var F={};var C=H[1].split(G||"&");var D,B,L;for(var E=0,J=C.length;E<J;++E){D=C[E].split("=");B=decodeURIComponent(D[0]);L=decodeURIComponent(D[1]);if(L===""||L==="undefined"){L=undefined}if(K!==true){if(typeof F[B]=="undefined"){F[B]=L}else{if(typeof F[B]=="string"){F[B]=[F[B]];F[B].push(L)}else{F[B].push(L)}}}else{F[B]=L}}return F}}}());Unicorn.util.Effect={};Unicorn.lang.apply(Unicorn.util.Effect,function(){var A=Unicorn.lang,B=Unicorn.util,G=B.Dom,F=B.Event;var C=[];return{slide:function(H,L,I,E){H=G.get(H);if(!H){return }var M=H.id||G.generateId(H,"unicorn-gen");if((E!==true)&&(C[M]&&C[M].isAnimated())){return }L=L||"-y";I=A.applyIf(I||{},{duration:0.25,easing:Unicorn.util.Easing.easeNone,thisObj:H});var J={x:0,y:0};["x","y"].forEach(function(O){if(L.indexOf(O)>-1){if(L.indexOf("-"+O)>-1){J[O]=-1}else{J[O]=1}}});var D={width:H.style.width,height:H.style.height,overflow:H.style.overflow};var N={width:G.getComputedStyle(H,"width"),height:G.getComputedStyle(H,"height")};var K={};if(J.x!=0){K.width={to:(J.x>0)?parseFloat(N.width):0}}if(J.y!=0){K.height={to:(J.y>0)?parseFloat(N.height):0}}C[M]=new Unicorn.util.Anim(H,K,I.duration,I.easing);C[M].onComplete.subscribe(function(){if(J.x<0||J.y<0){G.setStyle(H,"display","none")}H.style.width=D.width;H.style.height=D.height;H.style.overflow=D.overflow;C[M]=null});if(I.callback){C[M].onComplete.subscribe(I.callback,I.thisObj,true)}if(J.y<0&&Unicorn.env.ua.ie){H.style.height=N.height}G.setStyle(H,"overflow","hidden");if(J.x>0){G.setStyle(H,"width","0")}if(J.y>0){G.setStyle(H,"height","0")}if(G.getStyle(H,"display")=="none"){G.setStyle(H,"display","")}C[M].animate()},slideToggle:function(E,J,D,I){var H=(G.getStyle(E,"display")!="none")?"-":"";var K=H+(J=="x"?"x":"y");this.slide(E,K,D,I)},slideDown:function(E,D,H){this.slide(E,"y",D,H)},slideUp:function(E,D,H){this.slide(E,"-y",D,H)},fadeTo:function(I,H,E){I=G.get(I);if(!I){return }H=A.isNumber(H)?H:1;E=A.applyIf(E||{},{duration:0.25,thisObj:I});var D={opacity:{to:H}};var J=new Unicorn.util.Anim(I,D,E.duration,E.easing);if(E.callback){J.onComplete.subscribe(E.callback,E.thisObj,true)}J.animate()},fadeIn:function(E,D){this.fadeTo(E,1,D)},fadeOut:function(E,D){this.fadeTo(E,0,D)}}}());Unicorn.widget.WidgetHelper={};Unicorn.lang.apply(Unicorn.widget.WidgetHelper,function(){var A=Unicorn.lang,B=Unicorn.util,F=B.Dom,C=B.Event;return{addEvents:function(){if(!this.events){this.events={}}var G=this;var H=arguments;for(var E=0,D=H.length;E<D;++E){(function(){var I=H[E];if(typeof I!="string"){return }G.events[I]=new Unicorn.util.CustomEvent(I,null,false,Unicorn.util.CustomEvent.FLAT);if(G.config&&G.config.events&&G.config.events[I]){G.events[I].subscribe(G.config.events[I])}G[I]=G.events[I]})()}},parseArguments:function(J,G){var I=[];for(var K=0,E=J.length;K<E;++K){if(typeof J[K]!="undefined"){I.push(J[K])}}J=I;var H,D;G=G||"container";E=J.length;if(E==1){if(typeof J[0]=="string"||J[0].nodeType==1){H={};H[G]=J[0]}else{if(typeof J[0]=="object"){H=J[0]}}}else{if(E==2){if((typeof J[0]=="string"||J[0].nodeType==1)&&typeof J[1]=="object"){H=J[1];H[G]=J[0]}else{if(typeof J[0]=="object"&&typeof J[1]=="object"){H=J[0];D=J[1]}}}else{if(E==3){if((typeof J[0]=="string"||J[0].nodeType==1)&&typeof J[2]=="object"){H=J[1]||{};H[G]=J[0];D=J[2]}}}}return[H,D]}}}());Unicorn.widget.InputMask=function(){var O=Unicorn.lang,G=Unicorn.util,A=G.Dom,R=G.Event,F=Unicorn.widget.WidgetHelper;var M={inputEl:null,formatMask:/^.*$/,keyMask:/./,minLength:0,maxLength:-1,chineseCharLength:2,events:{}};var N=function(){var D=F.parseArguments(arguments,"inputEl");this.config=O.applyIf(D[0]||{},M);Q.call(this)};function Q(L){var D=this.config;this.inputEl=A.get(D.inputEl);if(!this.inputEl){return }if(!(D.keyMask instanceof RegExp)){return }if(!(D.formatMask instanceof RegExp)){return }if(D.maxLength=="-1"&&this.inputEl.getAttribute("maxlength")){D.maxLength=this.inputEl.getAttribute("maxlength")}this.value=this.inputEl.value||"";F.addEvents.apply(this,["onRightInput","onErrorInput","onFinish","onPass","onError"]);R.on(this.inputEl,"keypress",function(U){var T=P(U);if(!T||!I(T)){return }if(U.ctrlKey||U.altKey){return }var S=String.fromCharCode(T);if(!D.keyMask.test(S)){this.events.onErrorInput.fire(this);R.stopEvent(U)}},null,this);var E=Unicorn.env.ua.ie?"propertychange":"input";R.on(this.inputEl,E,function(S){if(E=="propertychange"&&S.propertyName!="value"){return }J.apply(this)},null,this);R.on(this.inputEl,"blur",function(S){this.events.onFinish.fire(this);this.value=this.inputEl.value;if(D.formatMask instanceof RegExp){if(D.formatMask.test(this.value)&&H(this.value,this.config.chineseCharLength)>=this.config.minLength){this.events.onPass.fire(this)}else{this.events.onError.fire(this)}}},null,this)}var C={CHINESE_CHAR:/[\u4e00-\u9fa5]/};function I(D){return(D>=32&&D<127)}function P(D){return window.event?window.event.keyCode:(D?D.which:null)}function K(U,T){var E=U.split("");var S=[];for(var L=0,D=E.length;L<D;++L){if(T.test(E[L])){S.push(E[L])}}U=S.join("");return U}function B(S,E,L){if(E==-1){return true}if(!S||S.length==0){return true}var D=H(S,L);return D<=E}function H(U,T){var E=U.split("");var D=0;for(var S=0,L=E.length;S<L;++S){if(C.CHINESE_CHAR.test(E[S])){D+=T}else{D+=1}}return D}function J(){var D=this.inputEl.value;if(this.value==D||D.legnth==0){return }D=K(D,this.config.keyMask);var E=B(D,this.config.maxLength,this.config.chineseCharLength);if(D==this.inputEl.value&&E){this.events.onRightInput.fire(this)}else{this.inputEl.value=E?D:this.value;this.events.onErrorInput.fire(this)}this.value=this.inputEl.value}return N}();Unicorn.widget.InputMask.decorate=function(B,A){return new Unicorn.widget.InputMask(B,A)};Unicorn.widget.SimpleInput=function(){var A=Unicorn.lang,B=Unicorn.util,H=B.Dom,G=B.Event,F=Unicorn.widget.WidgetHelper;var C={tipsCls:"tips",warningCls:"warning",passedCls:"passed",errorCls:"error",currentCls:"current"};var J=function(){var D=F.parseArguments(arguments,"inputEl");var E=A.applyIf(D[0]||{},C);this.constructor.superclass.constructor.call(this,E);I.call(this)};function I(){var E=this.config;var D=H.getElementsByClassName("tips","*",this.inputEl.parentNode)[0];G.on(this.inputEl,"focus",function(){H.removeClass(this.parentNode,E.errorCls);H.removeClass(D,E.warningCls);H.removeClass(D,E.passedCls);H.addClass(this.parentNode,E.currentCls)});this.onRightInput.subscribe(function(){H.removeClass(D,E.warningCls)});this.onErrorInput.subscribe(function(){H.addClass(D,E.warningCls)});this.onFinish.subscribe(function(){H.removeClass(this.inputEl.parentNode,E.currentCls)},null,this);this.onError.subscribe(function(){H.addClass(this.inputEl.parentNode,E.errorCls);H.addClass(D,E.warningCls)},null,this);this.onPass.subscribe(function(){H.removeClass(this.inputEl.parentNode,E.errorCls);H.removeClass(D,E.warningCls);H.addClass(D,E.passedCls)},null,this)}Unicorn.extend(J,Unicorn.widget.InputMask);return J}();Unicorn.widget.SimpleInput.decorate=function(B,A){return new Unicorn.widget.SimpleInput(B,A)};Unicorn.widget.Panel=function(){var I=Unicorn.lang,F=Unicorn.util,A=F.Dom,N=F.Event,G=F.Effect,B=Unicorn.widget.WidgetHelper;var H={container:null,headCls:"panel-hd",bodyCls:"panel-bd",footCls:"panel-ft",collapsible:false,collapsed:false,collapsedCls:"collapsed",titleCollapse:false,disableTriggerClick:true,toolBaseCls:"tool",toolOverCls:"over",toolToggleCls:"toggle",animCollapse:I.isObject(F.Anim),animDuration:0.25,animEasing:F.Easing.easeNone,events:{}};var J=function(){var D=B.parseArguments(arguments);this.config=I.applyIf(D[0]||{},H);if(!I.isObject(F.Anim)){this.config.animCollapse=false}K.call(this)};function K(){var D=this.config;this.container=A.get(D.container);if(!this.container){return }C.call(this);if(D.collapsible&&this.head){M.call(this)}}function C(){var E=this.config;this.head=A.getFirstChildByClassName(this.container,E.headCls);this.body=A.getFirstChildByClassName(this.container,E.bodyCls);this.foot=A.getFirstChildByClassName(this.container,E.footCls);var L=A.getChildren(this.container);var D=L.length;if(!this.head&&!this.body&&D==2){this.head=L[0];this.body=L[1]}if(!this.head&&!this.body&&!this.foot&&D==3){this.head=L[0];this.body=L[1];this.foot=L[2]}if(!this.body){throw new Error("The Config of Panel has something wrong.")}}function M(){var D=this.config;var O=D.toolBaseCls+"-"+D.toolToggleCls;var P=A.getFirstChildByClassName(this.head,O);if(!P){P=document.createElement("div");A.addClass(P,D.toolBaseCls);A.addClass(P,O);this.head.appendChild(P)}var L=D.titleCollapse?this.head:P;var E=D.toolBaseCls+"-"+D.toolToggleCls;var R=D.toolBaseCls+"-"+D.toolToggleCls+"-"+D.toolOverCls;var Q=function(){A.toggleClass(P,E,R)};N.on(P,"mouseover",Q);N.on(P,"mouseout",Q);N.on(L,"click",function(S){if(D.disableTriggerClick!==true&&N.getTarget(S).nodeName=="A"){return }N.preventDefault(S);this.toggleCollapse()},null,this);B.addEvents.apply(this,["onCollapse","beforeCollapse","onExpand","beforeExpand"]);this.collapsed=false;if(D.collapsed){this.collapse(false)}}J.prototype={getDom:function(){return this.container},collapse:function(D,E){if((E!==true)&&(this.isAnimating||this.collapsed)){return }if(this.events.beforeCollapse.fire(this)===false){return }if(typeof D!="boolean"){D=this.config.animCollapse}if(D){var L=function(){this.collapsed=true;A.addClass(this.getDom(),this.config.collapsedCls);this.events.onCollapse.fire(this);this.isAnimating=false};G.slideUp(this.body,{duration:this.config.animDuration,easing:this.config.animEasing,callback:L,thisObj:this},E)}else{A.setStyle(this.body,"display","none");this.collapsed=true;A.addClass(this.getDom(),this.config.collapsedCls)}this.isAnimating=D;Unicorn.log(new Date().toLocaleTimeString()+" collapse fired","info","Panel")},expand:function(D,E){if((E!==true)&&(this.isAnimating||!this.collapsed)){return }if(this.events.beforeExpand.fire(this)===false){return }this.collapsed=false;A.removeClass(this.getDom(),this.config.collapsedCls);if(typeof D!="boolean"){D=this.config.animCollapse}if(D){var L=function(){this.events.onExpand.fire(this);this.isAnimating=false};G.slideDown(this.body,{duration:this.config.animDuration,easing:this.config.animEasing,callback:L,thisObj:this},E)}else{A.setStyle(this.body,"display","")}this.isAnimating=D;Unicorn.log(new Date().toLocaleTimeString()+" expand fired","info","Panel")},toggleCollapse:function(D){this[this.collapsed?"expand":"collapse"](D)}};return J}();Unicorn.widget.Panel.decorate=function(A,B){return new Unicorn.widget.Panel(A,B)};Unicorn.widget.PanelList=function(){var I=Unicorn.lang,C=Unicorn.util,A=C.Dom,K=C.Event,G=C.Effect,B=Unicorn.widget.WidgetHelper;var H={container:null,recursive:false,panelCls:""};var F=function(){var D=B.parseArguments(arguments);this.config=I.applyIf(D[0]||{},H);this.panelConfig=D[1]||{};J.call(this)};function J(){var E=this.config;this.container=A.get(E.container);if(!this.container){return }var L=[];if(E.recursive&&E.panelCls){L=A.getElementsByClassName(E.panelCls,"*",this.container)}else{if(!E.recursive){L=A.getChildrenBy(this.container,function(N){if(E.panelCls){return A.hasClass(N,E.panelCls)}else{return(N.nodeType==1&&["STYLE","SCRIPT"].indexOf(N.nodeName)==-1)}})}else{throw new Error("The config of PanelList has something wrong.")}}this.panels=[];for(var M=0,D=L.length;M<D;++M){this.panels.push(new Unicorn.widget.Panel(L[M],this.panelConfig))}}return F}();Unicorn.widget.PanelList.decorate=function(A,B,C){return new Unicorn.widget.PanelList(A,B,C)};Unicorn.widget.FoldingList=function(){var H=Unicorn.lang,C=Unicorn.util,A=C.Dom,M=C.Event,F=C.Effect,B=Unicorn.widget.WidgetHelper;var G={multiExpand:true};var J=function(){var D=B.parseArguments(arguments);var E=H.applyIf(D[0]||{},G);var L=D[1]||{};L.collapsible=true;this.constructor.superclass.constructor.call(this,E,L);K.call(this)};function K(){if(!this.container){return }if(!this.config.multiExpand){I.call(this)}}function I(){var L=this.panels;for(var N=0,D=L.length;N<D;++N){var E=L[N];E.beforeExpand.subscribe(function(){for(var O=0;O<D;++O){var P=L[O];if(P.getDom().parentNode==this.getDom().parentNode&&P!=this&&!P.collapsed){Unicorn.log("p.isAnimating = "+P.isAnimating,"info","FoldingList");P.collapse(null,P.isAnimating?true:false)}}},null,E)}}Unicorn.extend(J,Unicorn.widget.PanelList,{expandAll:function(){if(!this.config.multiExpand){return }for(var E=0,D=this.panels.length;E<D;++E){this.panels.expand()}},collapseAll:function(){for(var E=0,D=this.panels.length;E<D;++E){this.panels.collapse()}}});return J}();Unicorn.widget.FoldingList.decorate=function(A,B,C){return new Unicorn.widget.FoldingList(A,B,C)};Unicorn.widget.TabView=function(){var J=Unicorn.lang,G=Unicorn.util,B=G.Dom,M=G.Event,C=Unicorn.widget.WidgetHelper;var I={container:null,containerCls:"tv-container",navBarCls:"tv-nav",panelsWrapperCls:"tv-wrapper",eventType:"click",delay:0.1,disableTriggerClick:true,activeIndex:0,parseHash:false,activeNavItemCls:"current",events:{}};var N=function(){var D=C.parseArguments(arguments);this.config=J.applyIf(D[0]||{},I);K.call(this)};function K(){var D=this.config;this.container=B.get(D.container);if(!this.container){return }C.addEvents.apply(this,["onSwitch","beforeSwitch"]);this.parseMackup();H.call(this);if(D.parseHash&&location.hash){var E=F.call(this);if(E!=D.activeIndex){this.setActiveItem(E)}}}function H(){var D=this.config;this.panels.forEach(function(E,P){var O=this.triggers[P];O.setAttribute("rel",P);A.call(this,O,P);E.trigger=O;if(D.parseHash){E.hash="#tab"+P}if(D.disableTriggerClick===true){var L=B.getFirstChildBy(O,function(Q){return Q.nodeName=="A"});if(L){M.on(L,"click",function(Q){M.preventDefault(Q)})}}},this);this.panels.forEach(function(E){if(!B.hasClass(E.trigger,D.activeNavItemCls)){B.setStyle(E,"display","none")}})}function A(L,E){var O,D=this.config;if(this.config.eventType=="mouse"){M.on(L,"mouseover",function(){if(D.activeIndex==E){return }O=J.later(D.delay*1000,this,this.setActiveItem,E)},null,this);M.on(L,"mouseout",function(){if(O){O.cancel()}})}else{M.on(L,"click",function(P){if(D.activeIndex==E){return }this.setActiveItem(E)},null,this)}}function F(){for(var E=0,D=this.panels.length;E<D;++E){var L=this.panels[E].hash;if(L==location.hash){return E}}}N.prototype={parseMackup:function(){var E=this.config;var D=B.getFirstChildBy(this.container,function(R){return B.hasClass(R,E.navBarCls)});var P=B.getFirstChildBy(this.container,function(R){return B.hasClass(R,E.panelsWrapperCls)});if(!D||!P){var L=B.getChildren(this.container);if(L.length==2){for(var O=0;O<2;++O){if(B.hasClass(L[O],this.config.navBarCls)){P=L[1-O];D=L[O];break}}if(!D){for(var O=0;O<2;++O){var Q=L[O].nodeName.toUpperCase();if(Q=="UL"||Q=="OL"){P=L[1-O];D=L[O];break}}}}}if(!D||!P){throw new Error("Can not get navBar and panelsWrapper.")}this.panels=B.getChildren(P);this.triggers=B.getChildren(D)},setActiveItem:function(L){var D=this.panels.length;if(D<1){return }if(!(L in this.panels)){L=0}var E=this.config;var P=this.panels[E.activeIndex];var O=this.panels[L];if(this.events.beforeSwitch.fire(P,O)===false){return }B.removeClass(P.trigger,E.activeNavItemCls);B.addClass(O.trigger,E.activeNavItemCls);this.switchContent(P,O,L)},switchContent:function(P,O,L){var D=this.config;B.setStyle(P,"display","none");B.setStyle(O,"display","");D.activeIndex=L;this.events.onSwitch.fire(P,O);if(D.parseHash){var E=location.href.replace(location.hash,"");location.replace(E+this.panels[L].hash)}}};return N}();Unicorn.widget.TabView.decorate=function(A,B){return new Unicorn.widget.TabView(A,B)};Unicorn.widget.SlideView=function(){var K=Unicorn.lang,G=Unicorn.util,A=G.Dom,P=G.Event,F=Unicorn.widget.WidgetHelper;var J={containerCls:"slide-container",navBarCls:"slide-nav",panelsWrapperCls:"slide-wrapper",eventType:"mouse",autoPlay:true,autoPlayInterval:3,pauseOnMouseOver:true,effect:"none",animDuration:0.5,animEasing:Unicorn.util.Easing.easeOutStrong,animAttributes:{},panelSize:{}};var I=function(){var D=F.parseArguments(arguments);var E=K.applyIf(D[0]||{},J);this.constructor.superclass.constructor.call(this,E);O.call(this)};function O(){if(!this.container){return }var D=this.config;this.panelsWrapper=this.panels[0].parentNode;H.call(this);if(D.eventType=="mouse"&&D.autoPlay&&D.pauseOnMouseOver){M.call(this)}if(D.autoPlay){N.call(this)}}function H(){var D=this.config;this.panelHeight=D.panelSize.height||this.panels[0].offsetHeight;this.panelWidth=D.panelSize.width||this.panels[0].offsetWidth;this.effectType=D.effect.toLowerCase();if(["scrolly","scrollx"].indexOf(this.effectType)>-1){this.panels.forEach(function(E){A.setStyle(E,"display","")});if(this.effectType=="scrollx"){A.setStyle(this.panelsWrapper,"width",this.panelWidth*this.panels.length+"px")}else{A.setStyle(this.panelsWrapper,"height",this.panelHeight*this.panels.length+"px")}}else{if(this.effectType=="fade"){this.panels.forEach(function(E){A.setStyle(E,"display","");C(E,0)});C(this.panels[D.activeIndex],1)}}}function M(){navBar=this.triggers[0].parentNode;P.on([this.panelsWrapper,navBar],"mouseover",function(){this.autoPlayIsPaused=true},null,this);P.on([this.panelsWrapper,navBar],"mouseout",function(){this.autoPlayIsPaused=false},null,this)}function N(){var D=this.config;var E=function(){var L=D.activeIndex;L=(L<this.panels.length-1)?L+1:0;this.setActiveItem(L,true)};this.autoPlayTimer=K.later(D.autoPlayInterval*1000,this,E,null,true)}function C(D,E){A.setStyle(D,"opacity",E);A.setStyle(D,"filter","alpha(opacity="+E*100+")")}function B(L,E,D){this.events.onSwitch.fire(L,E);this.slideAnim=null}Unicorn.extend(I,Unicorn.widget.TabView,{setActiveItem:function(D,E){if(E){if(this.autoPlayIsPaused){return }if(this.slideAnim&&this.slideAnim.isAnimated()){return }}else{if(this.slideAnim&&this.slideAnim.isAnimated()){this.slideAnim.stop()}}this.constructor.superclass.setActiveItem.call(this,D)},switchContent:function(T,S,L){var D=this.config;if(["scrolly","scrollx"].indexOf(this.effectType)>-1){var Q=(this.effectType=="scrollx");var R=(Q?this.panelWidth:this.panelHeight)*L;var E={};E[Q?"left":"top"]={to:-R};this.slideAnim=new G.Anim(this.panelsWrapper,E,D.animDuration,D.animEasing);this.slideAnim.onComplete.subscribe(function(){B.call(this,T,S,L)},this,true);D.activeIndex=L;this.slideAnim.animate()}else{if(this.effectType=="fade"){A.setStyle(S,"z-index","8");A.setStyle(T,"z-index","9");C(S,1);this.slideAnim=new G.Anim(T,{opacity:{to:0}},D.animDuration,D.animEasing);this.slideAnim.onComplete.subscribe(function(){B.call(this,T,S,L)},this,true);D.activeIndex=L;this.slideAnim.animate()}else{this.constructor.superclass.switchContent.call(this,T,S,L)}}}});return I}();Unicorn.widget.SlideView.decorate=function(A,B){return new Unicorn.widget.SlideView(A,B)};Unicorn.widget.LiquidView=function(){var I=Unicorn.lang,F=Unicorn.util,A=F.Dom,K=F.Event,C=Unicorn.widget.WidgetHelper;var H={eventType:"mouse",disableTriggerClick:false,resetOnMouseOut:true,activeIndex:-1,effect:"scrollx",animDuration:0.5,animEasing:Unicorn.util.Easing.easeOutStrong,maxWdith:"",minWidth:"",normalWidth:"",maxHeight:"",minHeight:"",noramlHeight:""};var G=function(){var D=C.parseArguments(arguments);var E=I.applyIf(D[0]||{},H);E.eventType="mouse";this.constructor.superclass.constructor.call(this,E);J.call(this)};function J(){if(!this.container){return }var D=this.config;this.effectType=D.effect.toLowerCase();this.effectAnims=[];this.panels.forEach(function(E){A.setStyle(E,"display","")});if(D.resetOnMouseOut===true){K.on(this.container,"mouseout",function(E){var L=E.toElement||E.relatedTarget;while(L!=null&&typeof (L.tagName)!="undefined"){if(L===this.container){return }L=L.parentNode}if(D.activeIndex!=-1){this.setActiveItem(-1)}},this,true)}}function B(M){var E=this.config;if(["scrolly","scrollx"].indexOf(this.effectType)>-1){var O=(this.effectType=="scrollx");var P=O?"width":"height";var N={};var D={};var L={};N[P]={to:(O?E.maxWidth:E.maxHeight)};D[P]={to:(O?E.minWidth:E.minHeight)};L[P]={to:(O?E.normalWidth:E.normalHeight)};this.panels.forEach(function(Q,S){var R=D;if(M==-1){R=L}else{if(M==S){R=N}}if(M!=-1&&E.activeIndex>-1){if(S!=E.activeIndex&&S!=M){return }}this.effectAnims[S]=new F.Anim(Q,R,E.animDuration,E.animEasing);this.effectAnims[S].onComplete.subscribe(function(){this.events.onSwitch.fire(this);this.effectAnims[S]=null},this,true)},this);E.activeIndex=M;this.effectAnims.forEach(function(Q){if(Q){Q.animate()}})}else{throw new Error("Do not support this effectType: "+this.effectType)}}Unicorn.extend(G,Unicorn.widget.TabView,{parseMackup:function(){this.triggers=A.getChildren(this.container);this.panels=[];this.triggers.forEach(function(D){this.panels.push(A.getFirstChild(D))},this)},setActiveItem:function(L){if(this.effectAnims){for(var M=0,D=this.effectAnims.length;M<D;++M){var N=this.effectAnims[M];if(N&&N.isAnimated()){N.stop(true)}}}if(this.events.beforeSwitch.fire(this)===false){return }var E=this.config;var P=this.panels[E.activeIndex];var O=this.panels[L];if(P){A.removeClass(P.trigger,E.activeNavItemCls)}if(O){A.addClass(O.trigger,E.activeNavItemCls)}B.call(this,L)}});return G}();Unicorn.widget.LiquidView.decorate=function(A,B){return new Unicorn.widget.LiquidView(A,B)};
