/* Copyright (c) 2010, Yahoo! Inc. All rights reserved. Code licensed under the BSD License: http://developer.yahoo.com/yui/license.html version: 3.2.0 build: 2676 */ YUI.add("classnamemanager",function(C){var B="classNamePrefix",D="classNameDelimiter",A=C.config;A[B]=A[B]||"yui3";A[D]=A[D]||"-";C.ClassNameManager=function(){var E=A[B],F=A[D];return{getClassName:C.cached(function(){var G=C.Array(arguments);if(G[G.length-1]!==true){G.unshift(E);}else{G.pop();}return G.join(F);})};}();},"3.2.0");/* Copyright (c) 2010, Yahoo! Inc. All rights reserved. Code licensed under the BSD License: http://developer.yahoo.com/yui/license.html version: 3.2.0 build: 2676 */ YUI.add("attribute-base",function(C){C.State=function(){this.data={};};C.State.prototype={add:function(O,Y,f){var e=this.data;e[Y]=e[Y]||{};e[Y][O]=f;},addAll:function(O,d){var Y;for(Y in d){if(d.hasOwnProperty(Y)){this.add(O,Y,d[Y]);}}},remove:function(O,Y){var e=this.data;if(e[Y]&&(O in e[Y])){delete e[Y][O];}},removeAll:function(O,e){var Y=this.data;C.each(e||Y,function(f,d){if(C.Lang.isString(d)){this.remove(O,d);}else{this.remove(O,f);}},this);},get:function(O,Y){var e=this.data;return(e[Y]&&O in e[Y])?e[Y][O]:undefined;},getAll:function(O){var e=this.data,Y;C.each(e,function(f,d){if(O in e[d]){Y=Y||{};Y[d]=f[O];}},this);return Y;}};var K=C.Object,F=C.Lang,L=C.EventTarget,X=".",U="Change",N="getter",M="setter",P="readOnly",Z="writeOnce",V="initOnly",c="validator",H="value",Q="valueFn",E="broadcast",S="lazyAdd",J="_bypassProxy",b="added",B="initializing",I="initValue",W="published",T="defaultValue",A="lazy",R="isLazyAdd",G,a={};a[P]=1;a[Z]=1;a[N]=1;a[E]=1;function D(){var d=this,O=this.constructor.ATTRS,Y=C.Base;d._ATTR_E_FACADE={};L.call(d,{emitFacade:true});d._conf=d._state=new C.State();d._stateProxy=d._stateProxy||null;d._requireAddAttr=d._requireAddAttr||false;if(O&&!(Y&&d instanceof Y)){d.addAttrs(this._protectAttrs(O));}}D.INVALID_VALUE={};G=D.INVALID_VALUE;D._ATTR_CFG=[M,N,c,H,Q,Z,P,S,E,J];D.prototype={addAttr:function(Y,O,e){var f=this,h=f._state,g,d;e=(S in O)?O[S]:e;if(e&&!f.attrAdded(Y)){h.add(Y,A,O||{});h.add(Y,b,true);}else{if(!f.attrAdded(Y)||h.get(Y,R)){O=O||{};d=(H in O);if(d){g=O.value;delete O.value;}O.added=true;O.initializing=true;h.addAll(Y,O);if(d){f.set(Y,g);}h.remove(Y,B);}}return f;},attrAdded:function(O){return !!this._state.get(O,b);},modifyAttr:function(Y,O){var d=this,f,e;if(d.attrAdded(Y)){if(d._isLazyAttr(Y)){d._addLazyAttr(Y);}e=d._state;for(f in O){if(a[f]&&O.hasOwnProperty(f)){e.add(Y,f,O[f]);if(f===E){e.remove(Y,W);}}}}},removeAttr:function(O){this._state.removeAll(O);},get:function(O){return this._getAttr(O);},_isLazyAttr:function(O){return this._state.get(O,A);},_addLazyAttr:function(Y){var d=this._state,O=d.get(Y,A);d.add(Y,R,true);d.remove(Y,A);this.addAttr(Y,O);},set:function(O,d,Y){return this._setAttr(O,d,Y);},reset:function(O){var d=this,Y;if(O){if(d._isLazyAttr(O)){d._addLazyAttr(O);}d.set(O,d._state.get(O,I));}else{Y=d._state.data.added;C.each(Y,function(e,f){d.reset(f);},d);}return d;},_set:function(O,d,Y){return this._setAttr(O,d,Y,true);},_getAttr:function(d){var e=this,i=d,f=e._state,g,O,h,Y;if(d.indexOf(X)!==-1){g=d.split(X);d=g.shift();}if(e._tCfgs&&e._tCfgs[d]){Y={};Y[d]=e._tCfgs[d];delete e._tCfgs[d];e._addAttrs(Y,e._tVals);}if(e._isLazyAttr(d)){e._addLazyAttr(d);}h=e._getStateVal(d);O=f.get(d,N);if(O&&!O.call){O=this[O];}h=(O)?O.call(e,h,i):h;h=(g)?K.getValue(h,g):h;return h;},_setAttr:function(d,g,O,e){var k=true,Y=this._state,h=this._stateProxy,m=Y.data,j,n,o,f,i,l;if(d.indexOf(X)!==-1){n=d;o=d.split(X);d=o.shift();}if(this._isLazyAttr(d)){this._addLazyAttr(d);}j=(!m.value||!(d in m.value));if(h&&d in h&&!this._state.get(d,J)){j=false;}if(this._requireAddAttr&&!this.attrAdded(d)){}else{i=Y.get(d,Z);l=Y.get(d,B);if(!j&&!e){if(i){k=false;}if(Y.get(d,P)){k=false;}}if(!l&&!e&&i===V){k=false;}if(k){if(!j){f=this.get(d);}if(o){g=K.setValue(C.clone(f),o,g);if(g===undefined){k=false;}}if(k){if(l){this._setAttrVal(d,n,f,g);}else{this._fireAttrChange(d,n,f,g,O);}}}}return this;},_fireAttrChange:function(h,g,e,d,O){var j=this,f=h+U,Y=j._state,i;if(!Y.get(h,W)){j.publish(f,{queuable:false,defaultTargetOnly:true,defaultFn:j._defAttrChangeFn,silent:true,broadcast:Y.get(h,E)});Y.add(h,W,true);}i=(O)?C.merge(O):j._ATTR_E_FACADE;i.type=f;i.attrName=h;i.subAttrName=g;i.prevVal=e;i.newVal=d;j.fire(i);},_defAttrChangeFn:function(O){if(!this._setAttrVal(O.attrName,O.subAttrName,O.prevVal,O.newVal)){O.stopImmediatePropagation();}else{O.newVal=this.get(O.attrName);}},_getStateVal:function(O){var Y=this._stateProxy;return Y&&(O in Y)&&!this._state.get(O,J)?Y[O]:this._state.get(O,H);},_setStateVal:function(O,d){var Y=this._stateProxy;if(Y&&(O in Y)&&!this._state.get(O,J)){Y[O]=d;}else{this._state.add(O,H,d);}},_setAttrVal:function(m,l,i,g){var o=this,j=true,d=o._state,e=d.get(m,c),h=d.get(m,M),k=d.get(m,B),n=this._getStateVal(m),Y=l||m,f,O;if(e){if(!e.call){e=this[e];}if(e){O=e.call(o,g,Y);if(!O&&k){g=d.get(m,T);O=true;}}}if(!e||O){if(h){if(!h.call){h=this[h];}if(h){f=h.call(o,g,Y);if(f===G){j=false;}else{if(f!==undefined){g=f;}}}}if(j){if(!l&&(g===n)&&!F.isObject(g)){j=false;}else{if(d.get(m,I)===undefined){d.add(m,I,g);}o._setStateVal(m,g);}}}else{j=false;}return j;},setAttrs:function(O,Y){return this._setAttrs(O,Y);},_setAttrs:function(Y,d){for(var O in Y){if(Y.hasOwnProperty(O)){this.set(O,Y[O]);}}return this;},getAttrs:function(O){return this._getAttrs(O);},_getAttrs:function(e){var g=this,j={},f,Y,O,h,d=(e===true);e=(e&&!d)?e:K.keys(g._state.data.added);for(f=0,Y=e.length;f0)?c:d;V.fireEvent("on"+Z,Y);}else{A.error("simulateKeyEvent(): No event simulation framework present.");}}}function B(a,f,X,U,g,Z,W,V,T,R,S,L,e,c,Y,b){if(!a){A.error("simulateMouseEvent(): Invalid target.");}if(D(f)){f=f.toLowerCase();if(!Q[f]){A.error("simulateMouseEvent(): Event type '"+f+"' not supported.");}}else{A.error("simulateMouseEvent(): Event type must be a string.");}if(!G(X)){X=true;}if(!G(U)){U=(f!="mousemove");}if(!P(g)){g=window;}if(!O(Z)){Z=1;}if(!O(W)){W=0;}if(!O(V)){V=0;}if(!O(T)){T=0;}if(!O(R)){R=0;}if(!G(S)){S=false;}if(!G(L)){L=false;}if(!G(e)){e=false;}if(!G(c)){c=false;}if(!O(Y)){Y=0;}var d=null;if(F(N.createEvent)){d=N.createEvent("MouseEvents");if(d.initMouseEvent){d.initMouseEvent(f,X,U,g,Z,W,V,T,R,S,L,e,c,Y,b);}else{d=N.createEvent("UIEvents");d.initEvent(f,X,U);d.view=g;d.detail=Z;d.screenX=W;d.screenY=V;d.clientX=T;d.clientY=R;d.ctrlKey=S;d.altKey=L;d.metaKey=c;d.shiftKey=e;d.button=Y;d.relatedTarget=b;}if(b&&!d.relatedTarget){if(f=="mouseout"){d.toElement=b;}else{if(f=="mouseover"){d.fromElement=b;}}}a.dispatchEvent(d);}else{if(P(N.createEventObject)){d=N.createEventObject();d.bubbles=X;d.cancelable=U;d.view=g;d.detail=Z;d.screenX=W;d.screenY=V;d.clientX=T;d.clientY=R;d.ctrlKey=S;d.altKey=L;d.metaKey=c;d.shiftKey=e;switch(Y){case 0:d.button=1;break;case 1:d.button=4;break;case 2:break;default:d.button=0;}d.relatedTarget=b;a.fireEvent("on"+f,d);}else{A.error("simulateMouseEvent(): No event simulation framework present.");}}}function H(W,V,S,R,L,U){if(!W){A.error("simulateUIEvent(): Invalid target.");}if(D(V)){V=V.toLowerCase();if(!C[V]){A.error("simulateUIEvent(): Event type '"+V+"' not supported.");}}else{A.error("simulateUIEvent(): Event type must be a string.");}var T=null;if(!G(S)){S=(V in E);}if(!G(R)){R=(V=="submit");}if(!P(L)){L=window;}if(!O(U)){U=1;}if(F(N.createEvent)){T=N.createEvent("UIEvents");T.initUIEvent(V,S,R,L,U);W.dispatchEvent(T);}else{if(P(N.createEventObject)){T=N.createEventObject();T.bubbles=S;T.cancelable=R;T.view=L;T.detail=U;W.fireEvent("on"+V,T);}else{A.error("simulateUIEvent(): No event simulation framework present.");}}}A.Event.simulate=function(S,R,L){L=L||{};if(Q[R]){B(S,R,L.bubbles,L.cancelable,L.view,L.detail,L.screenX,L.screenY,L.clientX,L.clientY,L.ctrlKey,L.altKey,L.shiftKey,L.metaKey,L.button,L.relatedTarget);}else{if(M[R]){I(S,R,L.bubbles,L.cancelable,L.view,L.ctrlKey,L.altKey,L.shiftKey,L.metaKey,L.keyCode,L.charCode);}else{if(C[R]){H(S,R,L.bubbles,L.cancelable,L.view,L.detail);}else{A.error("simulate(): Event '"+R+"' can't be simulated.");}}}};})();},"3.2.0",{requires:["event-base"]});/* Copyright (c) 2010, Yahoo! Inc. All rights reserved. Code licensed under the BSD License: http://developer.yahoo.com/yui/license.html version: 3.2.0 build: 2676 */ YUI.add("node-event-simulate",function(A){A.Node.prototype.simulate=function(C,B){A.Event.simulate(A.Node.getDOMNode(this),C,B);};},"3.2.0",{requires:["node-base","event-simulate"]});/* Copyright (c) 2010, Yahoo! Inc. All rights reserved. Code licensed under the BSD License: http://developer.yahoo.com/yui/license.html version: 3.2.0 build: 2676 */ YUI.add("event-key",function(a){a.Env.evt.plugins.key={on:function(e,g,b,k,c){var i=a.Array(arguments,0,true),f,j,h,d;f=k&&k.split(":");if(!k||k.indexOf(":")==-1||!f[1]){i[0]="key"+((f&&f[0])||"press");return a.on.apply(a,i);}j=f[0];h=(f[1])?f[1].split(/,|\+/):null;d=(a.Lang.isString(b)?b:a.stamp(b))+k;d=d.replace(/,/g,"_");if(!a.getEvent(d)){a.on(e+j,function(p){var q=false,m=false,n,l,o;for(n=0;n').onbeforeactivate);function f(h,g,j){var i="_"+h+"Notifiers";e.Event.define(h,{_attach:function(l,m,k){if(e.DOM.isWindow(l)){return d._attach([h,function(n){m.fire(n);},l]);}else{return d._attach([g,this._proxy,l,this,m,k],{capture:true});}},_proxy:function(o,s,p){var m=o.target,q=m.getData(i),t=e.stamp(o.currentTarget._node),k=(b||o.target!==o.currentTarget),l=s.handle.sub,r=[m,o].concat(l.args||[]),n;s.currentTarget=(p)?m:o.currentTarget;s.container=(p)?o.currentTarget:null;if(!l.filter||l.filter.apply(m,r)){if(!q){q={};m.setData(i,q);if(k){n=d._attach([j,this._notify,m._node]).sub;n.once=true;}}if(!q[t]){q[t]=[];}q[t].push(s);if(!k){this._notify(o);}}},_notify:function(p,l){var m=p.currentTarget,r=m.getData(i),s=m.get("ownerDocument")||m,q=m,k=[],t,n,o;if(r){while(q&&q!==s){k.push.apply(k,r[e.stamp(q)]||[]);q=q.get("parentNode");}k.push.apply(k,r[e.stamp(s)]||[]);for(n=0,o=k.length;n=0){R=R-1;if(R===-1&&this.get(Q)){R=this._lastNodeIndex;}U=this._descendants.item(R);if(U&&U.get(I)){this._focusPrevious(S,R);}else{this.focus(R);}}this._preventScroll(S);},_afterActiveDescendantChange:function(R){var S=this._descendants.item(R.prevVal);if(S){S.set(N,-1);}S=this._descendants.item(R.newVal);if(S){S.set(N,0);}},initializer:function(R){this.start();},destructor:function(){this.stop();this.get(O).focusManager=null;},focus:function(R){if(H.isUndefined(R)){R=this.get(J);}this.set(J,R,{src:C});var S=this._descendants.item(this.get(J));if(S){S.focus();if(K.opera&&S.get("nodeName").toLowerCase()==="button"){this._focusTarget=S;}}},blur:function(){var R;if(this.get(E)){R=this._descendants.item(this.get(J));if(R){R.blur();this._removeFocusClass();}this._set(E,false,{src:C});}},start:function(){if(this._stopped){this._initDescendants();this._attachEventHandlers();this._stopped=false;}},stop:function(){if(!this._stopped){this._detachEventHandlers();this._descendants=null;this._focusedNode=null;this._lastNodeIndex=0;this._stopped=true;}},refresh:function(){this._initDescendants();if(!this._eventHandlers){this._attachEventHandlers();}}});D.NAME="nodeFocusManager";D.NS="focusManager";B.namespace("Plugin");B.Plugin.NodeFocusManager=D;},"3.2.0",{requires:["attribute","node","plugin","node-event-simulate","event-key","event-focus"]});/* Copyright (c) 2010, Yahoo! Inc. All rights reserved. Code licensed under the BSD License: http://developer.yahoo.com/yui/license.html version: 3.2.0 build: 2676 */ YUI.add("node-menunav",function(D){var m=D.UA,u=D.later,AM=D.ClassNameManager.getClassName,R="menu",G="menuitem",AI="hidden",S="parentNode",V="children",AA="offsetHeight",AD="offsetWidth",AO="px",g="id",I=".",E="handledMouseOut",s="handledMouseOver",a="active",AK="label",d="a",x="mousedown",AP="keydown",AC="click",Q="",U="first-of-type",AQ="role",N="presentation",AE="descendants",j="UI",v="activeDescendant",J="useARIA",y="aria-hidden",z="content",c="host",h=v+"Change",w="autoSubmenuDisplay",T="mouseOutHideDelay",l=AM(R),AG=AM(R,AI),Z=AM(R,"horizontal"),AJ=AM(R,AK),k=AM(R,AK,a),X=AM(R,AK,(R+"visible")),K=AM(G),A=AM(G,a),i=I+l,AH=(I+AM(R,"toggle")),n=I+AM(R,z),AR=I+AJ,AN=">"+n+">ul>li>a",O=">"+n+">ul>li>"+AR+">a:first-child";var L=function(Y){var AT=Y.previous(),AS;if(!AT){AS=Y.get(S).get(V);AT=AS.item(AS.size()-1);}return AT;};var b=function(Y){var AS=Y.next();if(!AS){AS=Y.get(S).get(V).item(0);}return AS;};var F=function(Y){var AS=false;if(Y){AS=Y.get("nodeName").toLowerCase()===d;}return AS;};var P=function(Y){return Y.hasClass(K);};var t=function(Y){return Y.hasClass(AJ);};var r=function(Y){return Y.hasClass(Z);};var o=function(Y){return Y.hasClass(X);};var q=function(Y){return F(Y)?Y:Y.one(d);};var AB=function(AT,AS,Y){var AU;if(AT){if(AT.hasClass(AS)){AU=AT;}if(!AU&&Y){AU=AT.ancestor((I+AS));}}return AU;};var M=function(Y){return Y.ancestor(i);};var W=function(AS,Y){return AB(AS,l,Y);};var AF=function(AS,Y){var AT;if(AS){AT=AB(AS,K,Y);}return AT;};var p=function(AS,Y){var AT;if(AS){if(Y){AT=AB(AS,AJ,Y);}else{AT=AB(AS,AJ)||AS.one((I+AJ));}}return AT;};var B=function(AS,Y){var AT;if(AS){AT=AF(AS,Y)||p(AS,Y);}return AT;};var C=function(Y){return B(Y.one("li"));};var f=function(Y){return P(Y)?A:k;};var e=function(Y,AS){return Y&&!Y[s]&&(Y.compareTo(AS)||Y.contains(AS));};var H=function(AS,Y){return AS&&!AS[E]&&(!AS.compareTo(Y)&&!AS.contains(Y));};var AL=function(){AL.superclass.constructor.apply(this,arguments);};AL.NAME="nodeMenuNav";AL.NS="menuNav";AL.SHIM_TEMPLATE_TITLE="Menu Stacking Shim";AL.SHIM_TEMPLATE='';AL.ATTRS={useARIA:{value:true,writeOnce:true,lazyAdd:false,setter:function(AV){var AS=this.get(c),AW,Y,AU,AT;if(AV){AS.set(AQ,R);AS.all("ul,li,"+n).set(AQ,N);AS.all((I+AM(G,z))).set(AQ,G);AS.all((I+AJ)).each(function(AX){AW=AX;Y=AX.one(AH);if(Y){Y.set(AQ,N);AW=Y.previous();}AW.set(AQ,G);AW.set("aria-haspopup",true);AU=AX.next();if(AU){AU.set(AQ,R);AW=AU.previous();Y=AW.one(AH);if(Y){AW=Y;}AT=D.stamp(AW);if(!AW.get(g)){AW.set(g,AT);}AU.set("aria-labelledby",AT);AU.set(y,true);}});}}},autoSubmenuDisplay:{value:true,writeOnce:true},submenuShowDelay:{value:250,writeOnce:true},submenuHideDelay:{value:250,writeOnce:true},mouseOutHideDelay:{value:750,writeOnce:true}};D.extend(AL,D.Plugin.Base,{_rootMenu:null,_activeItem:null,_activeMenu:null,_hasFocus:false,_blockMouseEvent:false,_currentMouseX:0,_movingToSubmenu:false,_showSubmenuTimer:null,_hideSubmenuTimer:null,_hideAllSubmenusTimer:null,_firstItem:null,initializer:function(AT){var AU=this,AV=this.get(c),AS=[],Y;if(AV){AU._rootMenu=AV;AV.all("ul:first-child").addClass(U);AV.all(i).addClass(AG);AS.push(AV.on("mouseover",AU._onMouseOver,AU));AS.push(AV.on("mouseout",AU._onMouseOut,AU));AS.push(AV.on("mousemove",AU._onMouseMove,AU));AS.push(AV.on(x,AU._toggleSubmenuDisplay,AU));AS.push(D.on("key",AU._toggleSubmenuDisplay,AV,"down:13",AU));AS.push(AV.on(AC,AU._toggleSubmenuDisplay,AU));AS.push(AV.on("keypress",AU._onKeyPress,AU));AS.push(AV.on(AP,AU._onKeyDown,AU));Y=AV.get("ownerDocument");AS.push(Y.on(x,AU._onDocMouseDown,AU));AS.push(Y.on("focus",AU._onDocFocus,AU));this._eventHandlers=AS;AU._initFocusManager();}},destructor:function(){var Y=this._eventHandlers;if(Y){D.Array.each(Y,function(AS){AS.detach();});this._eventHandlers=null;}this.get(c).unplug("focusManager");},_isRoot:function(Y){return this._rootMenu.compareTo(Y);},_getTopmostSubmenu:function(AU){var AT=this,Y=M(AU),AS;if(!Y){AS=AU;}else{if(AT._isRoot(Y)){AS=AU;}else{AS=AT._getTopmostSubmenu(Y);}}return AS;},_clearActiveItem:function(){var AS=this,Y=AS._activeItem;if(Y){Y.removeClass(f(Y));}AS._activeItem=null;},_setActiveItem:function(AS){var Y=this;if(AS){Y._clearActiveItem();AS.addClass(f(AS));Y._activeItem=AS;}},_focusItem:function(AT){var AS=this,Y,AU;if(AT&&AS._hasFocus){Y=M(AT);AU=q(AT);if(Y&&!Y.compareTo(AS._activeMenu)){AS._activeMenu=Y;AS._initFocusManager();}AS._focusManager.focus(AU);}},_showMenu:function(AU){var Y=M(AU),AT=AU.get(S),AS=AT.getXY();if(this.get(J)){AU.set(y,false);}if(r(Y)){AS[1]=AS[1]+AT.get(AA);}else{AS[0]=AS[0]+AT.get(AD);}AU.setXY(AS);if(m.ie<8){if(m.ie===6&&!AU.hasIFrameShim){AU.appendChild(D.Node.create(AL.SHIM_TEMPLATE));AU.hasIFrameShim=true;}AU.setStyles({height:Q,width:Q});AU.setStyles({height:(AU.get(AA)+AO),width:(AU.get(AD)+AO)});}AU.previous().addClass(X);AU.removeClass(AG);},_hideMenu:function(AU,AS){var AT=this,AV=AU.previous(),Y;AV.removeClass(X);if(AS){AT._focusItem(AV);AT._setActiveItem(AV);}Y=AU.one((I+A));if(Y){Y.removeClass(A);}AU.setStyles({left:Q,top:Q});AU.addClass(AG);if(AT.get(J)){AU.set(y,true);}},_hideAllSubmenus:function(AS){var Y=this;AS.all(i).each(D.bind(function(AT){Y._hideMenu(AT);},Y));},_cancelShowSubmenuTimer:function(){var AS=this,Y=AS._showSubmenuTimer;if(Y){Y.cancel();AS._showSubmenuTimer=null;}},_cancelHideSubmenuTimer:function(){var Y=this,AS=Y._hideSubmenuTimer;if(AS){AS.cancel();Y._hideSubmenuTimer=null;}},_initFocusManager:function(){var AU=this,AW=AU._rootMenu,AS=AU._activeMenu||AW,AV=AU._isRoot(AS)?Q:("#"+AS.get("id")),Y=AU._focusManager,AT,AX,AY;if(r(AS)){AX=AV+AN+","+AV+O;AT={next:"down:39",previous:"down:37"};}else{AX=AV+AN;AT={next:"down:40",previous:"down:38"};}if(!Y){AW.plug(D.Plugin.NodeFocusManager,{descendants:AX,keys:AT,circular:true});Y=AW.focusManager;AY="#"+AW.get("id")+i+" a,"+AH;AW.all(AY).set("tabIndex",-1);Y.on(h,this._onActiveDescendantChange,Y,this);Y.after(h,this._afterActiveDescendantChange,Y,this); AU._focusManager=Y;}else{Y.set(v,-1);Y.set(AE,AX);Y.set("keys",AT);}},_onActiveDescendantChange:function(AS,Y){if(AS.src===j&&Y._activeMenu&&!Y._movingToSubmenu){Y._hideAllSubmenus(Y._activeMenu);}},_afterActiveDescendantChange:function(AS,Y){var AT;if(AS.src===j){AT=B(this.get(AE).item(AS.newVal),true);Y._setActiveItem(AT);}},_onDocFocus:function(AV){var AU=this,Y=AU._activeItem,AT=AV.target,AS;if(AU._rootMenu.contains(AT)){if(AU._hasFocus){AS=M(AT);if(!AU._activeMenu.compareTo(AS)){AU._activeMenu=AS;AU._initFocusManager();AU._focusManager.set(v,AT);AU._setActiveItem(B(AT,true));}}else{AU._hasFocus=true;Y=B(AT,true);if(Y){AU._setActiveItem(Y);}}}else{AU._clearActiveItem();AU._cancelShowSubmenuTimer();AU._hideAllSubmenus(AU._rootMenu);AU._activeMenu=AU._rootMenu;AU._initFocusManager();AU._focusManager.set(v,0);AU._hasFocus=false;}},_onMenuMouseOver:function(AU,AT){var AS=this,Y=AS._hideAllSubmenusTimer;if(Y){Y.cancel();AS._hideAllSubmenusTimer=null;}AS._cancelHideSubmenuTimer();if(AU&&!AU.compareTo(AS._activeMenu)){AS._activeMenu=AU;if(AS._hasFocus){AS._initFocusManager();}}if(AS._movingToSubmenu&&r(AU)){AS._movingToSubmenu=false;}},_hideAndFocusLabel:function(){var AT=this,AS=AT._activeMenu,Y;AT._hideAllSubmenus(AT._rootMenu);if(AS){Y=AT._getTopmostSubmenu(AS);AT._focusItem(Y.previous());}},_onMenuMouseOut:function(AY,AW){var AV=this,AT=AV._activeMenu,AX=AW.relatedTarget,Y=AV._activeItem,AU,AS;if(AT&&!AT.contains(AX)){AU=M(AT);if(AU&&!AU.contains(AX)){if(AV.get(T)>0){AV._cancelShowSubmenuTimer();AV._hideAllSubmenusTimer=u(AV.get(T),AV,AV._hideAndFocusLabel);}}else{if(Y){AS=M(Y);if(!AV._isRoot(AS)){AV._focusItem(AS.previous());}}}}},_onMenuLabelMouseOver:function(AU,Y){var AS=this,AV=AS._activeMenu,AY=AS._isRoot(AV),AT=(AS.get(w)&&AY||!AY),AW=AS.get("submenuShowDelay"),AX;var AZ=function(Aa){AS._cancelHideSubmenuTimer();AS._cancelShowSubmenuTimer();if(!o(AU)){AX=AU.next();if(AX){AS._hideAllSubmenus(AV);AS._showSubmenuTimer=u(Aa,AS,AS._showMenu,AX);}}};AS._focusItem(AU);AS._setActiveItem(AU);if(AT){if(AS._movingToSubmenu){D.message("Pause path");AS._hoverTimer=u(AW,AS,function(){AZ(0);});}else{AZ(AW);}}},_onMenuLabelMouseOut:function(AV,AX){var AW=this,AS=AW._isRoot(AW._activeMenu),AU=(AW.get(w)&&AS||!AS),AY=AX.relatedTarget,AT=AV.next(),Y=AW._hoverTimer;if(Y){Y.cancel();}AW._clearActiveItem();if(AU){if(AW._movingToSubmenu&&!AW._showSubmenuTimer&&AT){AW._hideSubmenuTimer=u(AW.get("submenuHideDelay"),AW,AW._hideMenu,AT);}else{if(!AW._movingToSubmenu&&AT&&(!AY||(AY&&!AT.contains(AY)&&!AY.compareTo(AT)))){AW._cancelShowSubmenuTimer();AW._hideMenu(AT);}}}},_onMenuItemMouseOver:function(AU,AW){var AV=this,AT=AV._activeMenu,Y=AV._isRoot(AT),AS=(AV.get(w)&&Y||!Y);AV._focusItem(AU);AV._setActiveItem(AU);if(AS&&!AV._movingToSubmenu){AV._hideAllSubmenus(AT);}},_onMenuItemMouseOut:function(Y,AS){this._clearActiveItem();},_onVerticalMenuKeyDown:function(Y){var AS=this,AW=AS._activeMenu,Ab=AS._rootMenu,AT=Y.target,AV=false,Aa=Y.keyCode,AY,AU,AX,AZ;switch(Aa){case 37:AU=M(AW);if(AU&&r(AU)){AS._hideMenu(AW);AX=L(AW.get(S));AZ=B(AX);if(AZ){if(t(AZ)){AY=AZ.next();if(AY){AS._showMenu(AY);AS._focusItem(C(AY));AS._setActiveItem(C(AY));}else{AS._focusItem(AZ);AS._setActiveItem(AZ);}}else{AS._focusItem(AZ);AS._setActiveItem(AZ);}}}else{if(!AS._isRoot(AW)){AS._hideMenu(AW,true);}}AV=true;break;case 39:if(t(AT)){AY=AT.next();if(AY){AS._showMenu(AY);AS._focusItem(C(AY));AS._setActiveItem(C(AY));}}else{if(r(Ab)){AY=AS._getTopmostSubmenu(AW);AX=b(AY.get(S));AZ=B(AX);AS._hideAllSubmenus(Ab);if(AZ){if(t(AZ)){AY=AZ.next();if(AY){AS._showMenu(AY);AS._focusItem(C(AY));AS._setActiveItem(C(AY));}else{AS._focusItem(AZ);AS._setActiveItem(AZ);}}else{AS._focusItem(AZ);AS._setActiveItem(AZ);}}}}AV=true;break;}if(AV){Y.preventDefault();}},_onHorizontalMenuKeyDown:function(AX){var AW=this,AU=AW._activeMenu,AS=AX.target,Y=B(AS,true),AV=false,AY=AX.keyCode,AT;if(AY===40){AW._hideAllSubmenus(AU);if(t(Y)){AT=Y.next();if(AT){AW._showMenu(AT);AW._focusItem(C(AT));AW._setActiveItem(C(AT));}AV=true;}}if(AV){AX.preventDefault();}},_onMouseMove:function(AS){var Y=this;u(10,Y,function(){Y._currentMouseX=AS.pageX;});},_onMouseOver:function(AV){var AU=this,AS,Y,AX,AT,AW;if(AU._blockMouseEvent){AU._blockMouseEvent=false;}else{AS=AV.target;Y=W(AS,true);AX=p(AS,true);AW=AF(AS,true);if(e(Y,AS)){AU._onMenuMouseOver(Y,AV);Y[s]=true;Y[E]=false;AT=M(Y);if(AT){AT[E]=true;AT[s]=false;}}if(e(AX,AS)){AU._onMenuLabelMouseOver(AX,AV);AX[s]=true;AX[E]=false;}if(e(AW,AS)){AU._onMenuItemMouseOver(AW,AV);AW[s]=true;AW[E]=false;}}},_onMouseOut:function(AS){var AT=this,AV=AT._activeMenu,Aa=false,AU,AW,AY,Y,AX,AZ;AT._movingToSubmenu=(AV&&!r(AV)&&((AS.pageX-5)>AT._currentMouseX));AU=AS.target;AW=AS.relatedTarget;AY=W(AU,true);Y=p(AU,true);AZ=AF(AU,true);if(H(Y,AW)){AT._onMenuLabelMouseOut(Y,AS);Y[E]=true;Y[s]=false;}if(H(AZ,AW)){AT._onMenuItemMouseOut(AZ,AS);AZ[E]=true;AZ[s]=false;}if(Y){AX=Y.next();if(AX&&AW&&(AW.compareTo(AX)||AX.contains(AW))){Aa=true;}}if(H(AY,AW)||Aa){AT._onMenuMouseOut(AY,AS);AY[E]=true;AY[s]=false;}},_toggleSubmenuDisplay:function(AT){var AU=this,AV=AT.target,AS=p(AV,true),Y=AT.type,AZ,AY,AX,Aa,Ab,AW;if(AS){AZ=F(AV)?AV:AV.ancestor(F);if(AZ){AX=AZ.getAttribute("href",2);Aa=AX.indexOf("#");Ab=AX.length;if(Aa===0&&Ab>1){AW=AX.substr(1,Ab);AY=AS.next();if(AY&&(AY.get(g)===AW)){if(Y===x||Y===AP){if((m.opera||m.gecko||m.ie)&&Y===AP&&!AU._preventClickHandle){AU._preventClickHandle=AU._rootMenu.on("click",function(Ac){Ac.preventDefault();AU._preventClickHandle.detach();AU._preventClickHandle=null;});}if(Y==x){AT.preventDefault();AT.stopImmediatePropagation();AU._hasFocus=true;}if(AU._isRoot(M(AV))){if(o(AS)){AU._hideMenu(AY);AU._focusItem(AS);AU._setActiveItem(AS);}else{AU._hideAllSubmenus(AU._rootMenu);AU._showMenu(AY);AU._focusItem(C(AY));AU._setActiveItem(C(AY));}}else{if(AU._activeItem==AS){AU._showMenu(AY);AU._focusItem(C(AY));AU._setActiveItem(C(AY));}else{if(!AS._clickHandle){AS._clickHandle=AS.on("click",function(){AU._hideAllSubmenus(AU._rootMenu); AU._hasFocus=false;AU._clearActiveItem();AS._clickHandle.detach();AS._clickHandle=null;});}}}}if(Y===AC){AT.preventDefault();}}}}}},_onKeyPress:function(Y){switch(Y.keyCode){case 37:case 38:case 39:case 40:Y.preventDefault();break;}},_onKeyDown:function(AW){var AV=this,Y=AV._activeItem,AS=AW.target,AU=M(AS),AT;if(AU){AV._activeMenu=AU;if(r(AU)){AV._onHorizontalMenuKeyDown(AW);}else{AV._onVerticalMenuKeyDown(AW);}if(AW.keyCode===27){if(!AV._isRoot(AU)){if(m.opera){u(0,AV,function(){AV._hideMenu(AU,true);});}else{AV._hideMenu(AU,true);}AW.stopPropagation();AV._blockMouseEvent=m.gecko?true:false;}else{if(Y){if(t(Y)&&o(Y)){AT=Y.next();if(AT){AV._hideMenu(AT);}}else{AV._focusManager.blur();AV._clearActiveItem();AV._hasFocus=false;}}}}}},_onDocMouseDown:function(AU){var AT=this,AS=AT._rootMenu,Y=AU.target;if(!(AS.compareTo(Y)||AS.contains(Y))){AT._hideAllSubmenus(AS);if(m.webkit){AT._hasFocus=false;AT._clearActiveItem();}}}});D.namespace("Plugin");D.Plugin.NodeMenuNav=AL;},"3.2.0",{requires:["node","classnamemanager","node-focusmanager"]});