(function(){YAHOO.util.Config=function(A){if(A){this.init(A)}};var F=YAHOO.lang,E=YAHOO.util.CustomEvent,D=YAHOO.util.Config;D.CONFIG_CHANGED_EVENT="configChanged";D.BOOLEAN_TYPE="boolean";D.prototype={owner:null,queueInProgress:false,config:null,initialConfig:null,eventQueue:null,configChangedEvent:null,init:function(A){this.owner=A;this.configChangedEvent=this.createEvent(D.CONFIG_CHANGED_EVENT);this.configChangedEvent.signature=E.LIST;this.queueInProgress=false;this.config={};this.initialConfig={};this.eventQueue=[]},checkBoolean:function(A){return(typeof A==D.BOOLEAN_TYPE)},checkNumber:function(A){return(!isNaN(A))},fireEvent:function(C,A){var B=this.config[C];if(B&&B.event){B.event.fire(A)}},addProperty:function(A,B){A=A.toLowerCase();this.config[A]=B;B.event=this.createEvent(A,{scope:this.owner});B.event.signature=E.LIST;B.key=A;if(B.handler){B.event.subscribe(B.handler,this.owner)}this.setProperty(A,B.value,true);if(!B.suppressEvent){this.queueProperty(A,B.value)}},getConfig:function(){var C={},A,B;for(A in this.config){B=this.config[A];if(B&&B.event){C[A]=B.value}}return C},getProperty:function(B){var A=this.config[B.toLowerCase()];if(A&&A.event){return A.value}else{return undefined}},resetProperty:function(B){B=B.toLowerCase();var A=this.config[B];if(A&&A.event){if(this.initialConfig[B]&&!F.isUndefined(this.initialConfig[B])){this.setProperty(B,this.initialConfig[B]);return true}}else{return false}},setProperty:function(C,A,H){var B;C=C.toLowerCase();if(this.queueInProgress&&!H){this.queueProperty(C,A);return true}else{B=this.config[C];if(B&&B.event){if(B.validator&&!B.validator(A)){return false}else{B.value=A;if(!H){this.fireEvent(C,A);this.configChangedEvent.fire([C,A])}return true}}else{return false}}},queueProperty:function(C,W){C=C.toLowerCase();var U=this.config[C],b=false,c,f,e,d,X,V,g,Z,Y,A,a,B,h;if(U&&U.event){if(!F.isUndefined(W)&&U.validator&&!U.validator(W)){return false}else{if(!F.isUndefined(W)){U.value=W}else{W=U.value}b=false;c=this.eventQueue.length;for(a=0;a<c;a++){f=this.eventQueue[a];if(f){e=f[0];d=f[1];if(e==C){this.eventQueue[a]=null;this.eventQueue.push([C,(!F.isUndefined(W)?W:d)]);b=true;break}}}if(!b&&!F.isUndefined(W)){this.eventQueue.push([C,W])}}if(U.supercedes){X=U.supercedes.length;for(B=0;B<X;B++){V=U.supercedes[B];g=this.eventQueue.length;for(h=0;h<g;h++){Z=this.eventQueue[h];if(Z){Y=Z[0];A=Z[1];if(Y==V.toLowerCase()){this.eventQueue.push([Y,A]);this.eventQueue[h]=null;break}}}}}return true}else{return false}},refireEvent:function(B){B=B.toLowerCase();var A=this.config[B];if(A&&A.event&&!F.isUndefined(A.value)){if(this.queueInProgress){this.queueProperty(B)}else{this.fireEvent(B,A.value)}}},applyConfig:function(H,A){var B,C;if(A){C={};for(B in H){if(F.hasOwnProperty(H,B)){C[B.toLowerCase()]=H[B]}}this.initialConfig=C}for(B in H){if(F.hasOwnProperty(H,B)){this.queueProperty(B,H[B])}}},refresh:function(){var A;for(A in this.config){this.refireEvent(A)}},fireQueue:function(){var I,A,J,B,C;this.queueInProgress=true;for(I=0;I<this.eventQueue.length;I++){A=this.eventQueue[I];if(A){J=A[0];B=A[1];C=this.config[J];C.value=B;this.fireEvent(J,B)}}this.queueInProgress=false;this.eventQueue=[]},subscribeToConfigEvent:function(I,C,A,J){var B=this.config[I.toLowerCase()];if(B&&B.event){if(!D.alreadySubscribed(B.event,C,A)){B.event.subscribe(C,A,J)}return true}else{return false}},unsubscribeFromConfigEvent:function(H,C,A){var B=this.config[H.toLowerCase()];if(B&&B.event){return B.event.unsubscribe(C,A)}else{return false}},toString:function(){var A="Config";if(this.owner){A+=" ["+this.owner.toString()+"]"}return A},outputEventQueue:function(){var H="",A,C,B=this.eventQueue.length;for(C=0;C<B;C++){A=this.eventQueue[C];if(A){H+=A[0]+"="+A[1]+", "}}return H},destroy:function(){var B=this.config,C,A;for(C in B){if(F.hasOwnProperty(B,C)){A=B[C];A.event.unsubscribeAll();A.event=null}}this.configChangedEvent.unsubscribeAll();this.configChangedEvent=null;this.owner=null;this.config=null;this.initialConfig=null;this.eventQueue=null}};D.alreadySubscribed=function(K,B,A){var J=K.subscribers.length,L,C;if(J>0){C=J-1;do{L=K.subscribers[C];if(L&&L.obj==A&&L.fn==B){return true}}while(C--)}return false};YAHOO.lang.augmentProto(D,YAHOO.util.EventProvider)}());(function(){YAHOO.widget.Module=function(A,B){if(A){this.init(A,B)}else{}};var c=YAHOO.util.Dom,P=YAHOO.util.Config,V=YAHOO.util.Event,W=YAHOO.util.CustomEvent,b=YAHOO.widget.Module,a,T,U,d,S={BEFORE_INIT:"beforeInit",INIT:"init",APPEND:"append",BEFORE_RENDER:"beforeRender",RENDER:"render",CHANGE_HEADER:"changeHeader",CHANGE_BODY:"changeBody",CHANGE_FOOTER:"changeFooter",CHANGE_CONTENT:"changeContent",DESTORY:"destroy",BEFORE_SHOW:"beforeShow",SHOW:"show",BEFORE_HIDE:"beforeHide",HIDE:"hide"},Z={VISIBLE:{key:"visible",value:true,validator:YAHOO.lang.isBoolean},EFFECT:{key:"effect",suppressEvent:true,supercedes:["visible"]},MONITOR_RESIZE:{key:"monitorresize",value:true},APPEND_TO_DOCUMENT_BODY:{key:"appendtodocumentbody",value:false}};b.IMG_ROOT=null;b.IMG_ROOT_SSL=null;b.CSS_MODULE="yui-module";b.CSS_HEADER="hd";b.CSS_BODY="bd";b.CSS_FOOTER="ft";b.RESIZE_MONITOR_SECURE_URL="javascript:false;";b.textResizeEvent=new W("textResize");function X(){if(!a){a=document.createElement("div");a.innerHTML=('<div class="'+b.CSS_HEADER+'"></div><div class="'+b.CSS_BODY+'"></div><div class="'+b.CSS_FOOTER+'"></div>');T=a.firstChild;U=T.nextSibling;d=U.nextSibling}return a}function Y(){if(!T){X()}return(T.cloneNode(false))}function R(){if(!U){X()}return(U.cloneNode(false))}function Q(){if(!d){X()}return(d.cloneNode(false))}b.prototype={constructor:b,element:null,header:null,body:null,footer:null,id:null,imageRoot:b.IMG_ROOT,initEvents:function(){var A=W.LIST;this.beforeInitEvent=this.createEvent(S.BEFORE_INIT);this.beforeInitEvent.signature=A;this.initEvent=this.createEvent(S.INIT);this.initEvent.signature=A;this.appendEvent=this.createEvent(S.APPEND);this.appendEvent.signature=A;this.beforeRenderEvent=this.createEvent(S.BEFORE_RENDER);this.beforeRenderEvent.signature=A;this.renderEvent=this.createEvent(S.RENDER);this.renderEvent.signature=A;this.changeHeaderEvent=this.createEvent(S.CHANGE_HEADER);this.changeHeaderEvent.signature=A;this.changeBodyEvent=this.createEvent(S.CHANGE_BODY);this.changeBodyEvent.signature=A;this.changeFooterEvent=this.createEvent(S.CHANGE_FOOTER);this.changeFooterEvent.signature=A;this.changeContentEvent=this.createEvent(S.CHANGE_CONTENT);this.changeContentEvent.signature=A;this.destroyEvent=this.createEvent(S.DESTORY);this.destroyEvent.signature=A;this.beforeShowEvent=this.createEvent(S.BEFORE_SHOW);this.beforeShowEvent.signature=A;this.showEvent=this.createEvent(S.SHOW);this.showEvent.signature=A;this.beforeHideEvent=this.createEvent(S.BEFORE_HIDE);this.beforeHideEvent.signature=A;this.hideEvent=this.createEvent(S.HIDE);this.hideEvent.signature=A},platform:function(){var A=navigator.userAgent.toLowerCase();if(A.indexOf("windows")!=-1||A.indexOf("win32")!=-1){return"windows"}else{if(A.indexOf("macintosh")!=-1){return"mac"}else{return false}}}(),browser:function(){var A=navigator.userAgent.toLowerCase();if(A.indexOf("opera")!=-1){return"opera"}else{if(A.indexOf("msie 7")!=-1){return"ie7"}else{if(A.indexOf("msie")!=-1){return"ie"}else{if(A.indexOf("safari")!=-1){return"safari"}else{if(A.indexOf("gecko")!=-1){return"gecko"}else{return false}}}}}}(),isSecure:function(){if(window.location.href.toLowerCase().indexOf("https")===0){return true}else{return false}}(),initDefaultConfig:function(){this.cfg.addProperty(Z.VISIBLE.key,{handler:this.configVisible,value:Z.VISIBLE.value,validator:Z.VISIBLE.validator});this.cfg.addProperty(Z.EFFECT.key,{suppressEvent:Z.EFFECT.suppressEvent,supercedes:Z.EFFECT.supercedes});this.cfg.addProperty(Z.MONITOR_RESIZE.key,{handler:this.configMonitorResize,value:Z.MONITOR_RESIZE.value});this.cfg.addProperty(Z.APPEND_TO_DOCUMENT_BODY.key,{value:Z.APPEND_TO_DOCUMENT_BODY.value})},init:function(B,C){var E,A;this.initEvents();this.beforeInitEvent.fire(b);this.cfg=new P(this);if(this.isSecure){this.imageRoot=b.IMG_ROOT_SSL}if(typeof B=="string"){E=B;B=document.getElementById(B);if(!B){B=(X()).cloneNode(false);B.id=E}}this.element=B;if(B.id){this.id=B.id}A=this.element.firstChild;if(A){var F=false,G=false,D=false;do{if(1==A.nodeType){if(!F&&c.hasClass(A,b.CSS_HEADER)){this.header=A;F=true}else{if(!G&&c.hasClass(A,b.CSS_BODY)){this.body=A;G=true}else{if(!D&&c.hasClass(A,b.CSS_FOOTER)){this.footer=A;D=true}}}}}while((A=A.nextSibling))}this.initDefaultConfig();c.addClass(this.element,b.CSS_MODULE);if(C){this.cfg.applyConfig(C,true)}if(!P.alreadySubscribed(this.renderEvent,this.cfg.fireQueue,this.cfg)){this.renderEvent.subscribe(this.cfg.fireQueue,this.cfg,true)}this.initEvent.fire(b)},initResizeMonitor:function(){var A=(YAHOO.env.ua.gecko&&this.platform=="windows");if(A){var B=this;setTimeout(function(){B._initResizeMonitor()},0)}else{this._initResizeMonitor()}},_initResizeMonitor:function(){var G,E,C;function A(){b.textResizeEvent.fire()}if(!YAHOO.env.ua.opera){E=c.get("_yuiResizeMonitor");var B=this._supportsCWResize();if(!E){E=document.createElement("iframe");if(this.isSecure&&b.RESIZE_MONITOR_SECURE_URL&&YAHOO.env.ua.ie){E.src=b.RESIZE_MONITOR_SECURE_URL}if(!B){C=["<html><head><script ",'type="text/javascript">',"window.onresize=function(){window.parent.","YAHOO.widget.Module.textResizeEvent.","fire();};<","/script></head>","<body></body></html>"].join("");E.src="data:text/html;charset=utf-8,"+encodeURIComponent(C)}E.id="_yuiResizeMonitor";E.style.position="absolute";E.style.visibility="hidden";var F=document.body,D=F.firstChild;if(D){F.insertBefore(E,D)}else{F.appendChild(E)}E.style.width="10em";E.style.height="10em";E.style.top=(-1*E.offsetHeight)+"px";E.style.left=(-1*E.offsetWidth)+"px";E.style.borderWidth="0";E.style.visibility="visible";if(YAHOO.env.ua.webkit){G=E.contentWindow.document;G.open();G.close()}}if(E&&E.contentWindow){b.textResizeEvent.subscribe(this.onDomResize,this,true);if(!b.textResizeInitialized){if(B){if(!V.on(E.contentWindow,"resize",A)){V.on(E,"resize",A)}}b.textResizeInitialized=true}this.resizeMonitor=E}}},_supportsCWResize:function(){var A=true;if(YAHOO.env.ua.gecko&&YAHOO.env.ua.gecko<=1.8){A=false}return A},onDomResize:function(A,B){var C=-1*this.resizeMonitor.offsetWidth,D=-1*this.resizeMonitor.offsetHeight;this.resizeMonitor.style.top=D+"px";this.resizeMonitor.style.left=C+"px"},setHeader:function(A){var B=this.header||(this.header=Y());if(A.nodeName){B.innerHTML="";B.appendChild(A)}else{B.innerHTML=A}this.changeHeaderEvent.fire(A);this.changeContentEvent.fire()},appendToHeader:function(A){var B=this.header||(this.header=Y());B.appendChild(A);this.changeHeaderEvent.fire(A);this.changeContentEvent.fire()},setBody:function(A){var B=this.body||(this.body=R());if(A.nodeName){B.innerHTML="";B.appendChild(A)}else{B.innerHTML=A}this.changeBodyEvent.fire(A);this.changeContentEvent.fire()},appendToBody:function(A){var B=this.body||(this.body=R());B.appendChild(A);this.changeBodyEvent.fire(A);this.changeContentEvent.fire()},setFooter:function(A){var B=this.footer||(this.footer=Q());if(A.nodeName){B.innerHTML="";B.appendChild(A)}else{B.innerHTML=A}this.changeFooterEvent.fire(A);this.changeContentEvent.fire()},appendToFooter:function(A){var B=this.footer||(this.footer=Q());B.appendChild(A);this.changeFooterEvent.fire(A);this.changeContentEvent.fire()},render:function(C,E){var B=this,A;function D(F){if(typeof F=="string"){F=document.getElementById(F)}if(F){B._addToParent(F,B.element);B.appendEvent.fire()}}this.beforeRenderEvent.fire();if(!E){E=this.element}if(C){D(C)}else{if(!c.inDocument(this.element)){return false}}if(this.header&&!c.inDocument(this.header)){A=E.firstChild;if(A){E.insertBefore(this.header,A)}else{E.appendChild(this.header)}}if(this.body&&!c.inDocument(this.body)){if(this.footer&&c.isAncestor(this.moduleElement,this.footer)){E.insertBefore(this.body,this.footer)}else{E.appendChild(this.body)}}if(this.footer&&!c.inDocument(this.footer)){E.appendChild(this.footer)}this.renderEvent.fire();return true},destroy:function(){var B,A;if(this.element){V.purgeElement(this.element,true);B=this.element.parentNode}if(B){B.removeChild(this.element)}this.element=null;this.header=null;this.body=null;this.footer=null;b.textResizeEvent.unsubscribe(this.onDomResize,this);this.cfg.destroy();this.cfg=null;this.destroyEvent.fire();for(A in this){if(A instanceof W){A.unsubscribeAll()}}},show:function(){this.cfg.setProperty("visible",true)},hide:function(){this.cfg.setProperty("visible",false)},configVisible:function(C,D,B){var A=D[0];if(A){this.beforeShowEvent.fire();c.setStyle(this.element,"display","block");this.showEvent.fire()}else{this.beforeHideEvent.fire();c.setStyle(this.element,"display","none");this.hideEvent.fire()}},configMonitorResize:function(B,C,A){var D=C[0];if(D){this.initResizeMonitor()}else{b.textResizeEvent.unsubscribe(this.onDomResize,this,true);this.resizeMonitor=null}},_addToParent:function(B,A){if(!this.cfg.getProperty("appendtodocumentbody")&&B===document.body&&B.firstChild){B.insertBefore(A,B.firstChild)}else{B.appendChild(A)}},toString:function(){return"Module "+this.id}};YAHOO.lang.augmentProto(b,YAHOO.util.EventProvider)}());(function(){YAHOO.widget.Overlay=function(A,B){YAHOO.widget.Overlay.superclass.constructor.call(this,A,B)};var S=YAHOO.lang,P=YAHOO.util.CustomEvent,T=YAHOO.widget.Module,O=YAHOO.util.Event,K=YAHOO.util.Dom,L=YAHOO.util.Config,M=YAHOO.widget.Overlay,R,N={BEFORE_MOVE:"beforeMove",MOVE:"move"},Q={X:{key:"x",validator:S.isNumber,suppressEvent:true,supercedes:["iframe"]},Y:{key:"y",validator:S.isNumber,suppressEvent:true,supercedes:["iframe"]},XY:{key:"xy",suppressEvent:true,supercedes:["iframe"]},CONTEXT:{key:"context",suppressEvent:true,supercedes:["iframe"]},FIXED_CENTER:{key:"fixedcenter",value:false,validator:S.isBoolean,supercedes:["iframe","visible"]},WIDTH:{key:"width",suppressEvent:true,supercedes:["context","fixedcenter","iframe"]},HEIGHT:{key:"height",suppressEvent:true,supercedes:["context","fixedcenter","iframe"]},ZINDEX:{key:"zindex",value:null},CONSTRAIN_TO_VIEWPORT:{key:"constraintoviewport",value:false,validator:S.isBoolean,supercedes:["iframe","x","y","xy"]},IFRAME:{key:"iframe",value:(YAHOO.env.ua.ie==6?true:false),validator:S.isBoolean,supercedes:["zindex"]}};M.IFRAME_SRC="javascript:false;";M.IFRAME_OFFSET=3;M.VIEWPORT_OFFSET=10;M.TOP_LEFT="tl";M.TOP_RIGHT="tr";M.BOTTOM_LEFT="bl";M.BOTTOM_RIGHT="br";M.CSS_OVERLAY="yui-overlay";M.windowScrollEvent=new P("windowScroll");M.windowResizeEvent=new P("windowResize");M.windowScrollHandler=function(A){if(YAHOO.env.ua.ie){if(!window.scrollEnd){window.scrollEnd=-1}clearTimeout(window.scrollEnd);window.scrollEnd=setTimeout(function(){M.windowScrollEvent.fire()},1)}else{M.windowScrollEvent.fire()}};M.windowResizeHandler=function(A){if(YAHOO.env.ua.ie){if(!window.resizeEnd){window.resizeEnd=-1}clearTimeout(window.resizeEnd);window.resizeEnd=setTimeout(function(){M.windowResizeEvent.fire()},100)}else{M.windowResizeEvent.fire()}};M._initialized=null;if(M._initialized===null){O.on(window,"scroll",M.windowScrollHandler);O.on(window,"resize",M.windowResizeHandler);M._initialized=true}YAHOO.extend(M,T,{init:function(A,B){M.superclass.init.call(this,A);this.beforeInitEvent.fire(M);K.addClass(this.element,M.CSS_OVERLAY);if(B){this.cfg.applyConfig(B,true)}if(this.platform=="mac"&&YAHOO.env.ua.gecko){if(!L.alreadySubscribed(this.showEvent,this.showMacGeckoScrollbars,this)){this.showEvent.subscribe(this.showMacGeckoScrollbars,this,true)}if(!L.alreadySubscribed(this.hideEvent,this.hideMacGeckoScrollbars,this)){this.hideEvent.subscribe(this.hideMacGeckoScrollbars,this,true)}}this.initEvent.fire(M)},initEvents:function(){M.superclass.initEvents.call(this);var A=P.LIST;this.beforeMoveEvent=this.createEvent(N.BEFORE_MOVE);this.beforeMoveEvent.signature=A;this.moveEvent=this.createEvent(N.MOVE);this.moveEvent.signature=A},initDefaultConfig:function(){M.superclass.initDefaultConfig.call(this);this.cfg.addProperty(Q.X.key,{handler:this.configX,validator:Q.X.validator,suppressEvent:Q.X.suppressEvent,supercedes:Q.X.supercedes});this.cfg.addProperty(Q.Y.key,{handler:this.configY,validator:Q.Y.validator,suppressEvent:Q.Y.suppressEvent,supercedes:Q.Y.supercedes});this.cfg.addProperty(Q.XY.key,{handler:this.configXY,suppressEvent:Q.XY.suppressEvent,supercedes:Q.XY.supercedes});this.cfg.addProperty(Q.CONTEXT.key,{handler:this.configContext,suppressEvent:Q.CONTEXT.suppressEvent,supercedes:Q.CONTEXT.supercedes});this.cfg.addProperty(Q.FIXED_CENTER.key,{handler:this.configFixedCenter,value:Q.FIXED_CENTER.value,validator:Q.FIXED_CENTER.validator,supercedes:Q.FIXED_CENTER.supercedes});this.cfg.addProperty(Q.WIDTH.key,{handler:this.configWidth,suppressEvent:Q.WIDTH.suppressEvent,supercedes:Q.WIDTH.supercedes});this.cfg.addProperty(Q.HEIGHT.key,{handler:this.configHeight,suppressEvent:Q.HEIGHT.suppressEvent,supercedes:Q.HEIGHT.supercedes});this.cfg.addProperty(Q.ZINDEX.key,{handler:this.configzIndex,value:Q.ZINDEX.value});this.cfg.addProperty(Q.CONSTRAIN_TO_VIEWPORT.key,{handler:this.configConstrainToViewport,value:Q.CONSTRAIN_TO_VIEWPORT.value,validator:Q.CONSTRAIN_TO_VIEWPORT.validator,supercedes:Q.CONSTRAIN_TO_VIEWPORT.supercedes});this.cfg.addProperty(Q.IFRAME.key,{handler:this.configIframe,value:Q.IFRAME.value,validator:Q.IFRAME.validator,supercedes:Q.IFRAME.supercedes})},moveTo:function(B,A){this.cfg.setProperty("xy",[B,A])},hideMacGeckoScrollbars:function(){K.removeClass(this.element,"show-scrollbars");K.addClass(this.element,"hide-scrollbars")},showMacGeckoScrollbars:function(){K.removeClass(this.element,"hide-scrollbars");K.addClass(this.element,"show-scrollbars")},configVisible:function(e,h,G){var f=h[0],d=K.getStyle(this.element,"visibility"),F=this.cfg.getProperty("effect"),I=[],J=(this.platform=="mac"&&YAHOO.env.ua.gecko),i=L.alreadySubscribed,H,g,j,B,C,D,A,E,c;if(d=="inherit"){j=this.element.parentNode;while(j.nodeType!=9&&j.nodeType!=11){d=K.getStyle(j,"visibility");if(d!="inherit"){break}j=j.parentNode}if(d=="inherit"){d="visible"}}if(F){if(F instanceof Array){E=F.length;for(B=0;B<E;B++){H=F[B];I[I.length]=H.effect(this,H.duration)}}else{I[I.length]=F.effect(this,F.duration)}}if(f){if(J){this.showMacGeckoScrollbars()}if(F){if(f){if(d!="visible"||d===""){this.beforeShowEvent.fire();c=I.length;for(C=0;C<c;C++){g=I[C];if(C===0&&!i(g.animateInCompleteEvent,this.showEvent.fire,this.showEvent)){g.animateInCompleteEvent.subscribe(this.showEvent.fire,this.showEvent,true)}g.animateIn()}}}}else{if(d!="visible"||d===""){this.beforeShowEvent.fire();K.setStyle(this.element,"visibility","visible");this.cfg.refireEvent("iframe");this.showEvent.fire()}}}else{if(J){this.hideMacGeckoScrollbars()}if(F){if(d=="visible"){this.beforeHideEvent.fire();c=I.length;for(D=0;D<c;D++){A=I[D];if(D===0&&!i(A.animateOutCompleteEvent,this.hideEvent.fire,this.hideEvent)){A.animateOutCompleteEvent.subscribe(this.hideEvent.fire,this.hideEvent,true)}A.animateOut()}}else{if(d===""){K.setStyle(this.element,"visibility","hidden")}}}else{if(d=="visible"||d===""){this.beforeHideEvent.fire();K.setStyle(this.element,"visibility","hidden");this.hideEvent.fire()}}}},doCenterOnDOMEvent:function(){if(this.cfg.getProperty("visible")){this.center()}},configFixedCenter:function(E,G,D){var C=G[0],A=L.alreadySubscribed,F=M.windowResizeEvent,B=M.windowScrollEvent;if(C){this.center();if(!A(this.beforeShowEvent,this.center,this)){this.beforeShowEvent.subscribe(this.center)}if(!A(F,this.doCenterOnDOMEvent,this)){F.subscribe(this.doCenterOnDOMEvent,this,true)}if(!A(B,this.doCenterOnDOMEvent,this)){B.subscribe(this.doCenterOnDOMEvent,this,true)}}else{this.beforeShowEvent.unsubscribe(this.center);F.unsubscribe(this.doCenterOnDOMEvent,this);B.unsubscribe(this.doCenterOnDOMEvent,this)}},configHeight:function(D,A,C){var B=A[0],E=this.element;K.setStyle(E,"height",B);this.cfg.refireEvent("iframe")},configWidth:function(D,B,C){var E=B[0],A=this.element;K.setStyle(A,"width",E);this.cfg.refireEvent("iframe")},configzIndex:function(E,B,D){var C=B[0],A=this.element;if(!C){C=K.getStyle(A,"zIndex");if(!C||isNaN(C)){C=0}}if(this.iframe||this.cfg.getProperty("iframe")===true){if(C<=0){C=1}}K.setStyle(A,"zIndex",C);this.cfg.setProperty("zIndex",C,true);if(this.iframe){this.stackIframe()}},configXY:function(F,A,E){var C=A[0],B=C[0],D=C[1];this.cfg.setProperty("x",B);this.cfg.setProperty("y",D);this.beforeMoveEvent.fire([B,D]);B=this.cfg.getProperty("x");D=this.cfg.getProperty("y");this.cfg.refireEvent("iframe");this.moveEvent.fire([B,D])},configX:function(E,A,D){var B=A[0],C=this.cfg.getProperty("y");this.cfg.setProperty("x",B,true);this.cfg.setProperty("y",C,true);this.beforeMoveEvent.fire([B,C]);B=this.cfg.getProperty("x");C=this.cfg.getProperty("y");K.setX(this.element,B,true);this.cfg.setProperty("xy",[B,C],true);this.cfg.refireEvent("iframe");this.moveEvent.fire([B,C])},configY:function(E,A,D){var B=this.cfg.getProperty("x"),C=A[0];this.cfg.setProperty("x",B,true);this.cfg.setProperty("y",C,true);this.beforeMoveEvent.fire([B,C]);B=this.cfg.getProperty("x");C=this.cfg.getProperty("y");K.setY(this.element,C,true);this.cfg.setProperty("xy",[B,C],true);this.cfg.refireEvent("iframe");this.moveEvent.fire([B,C])},showIframe:function(){var A=this.iframe,B;if(A){B=this.element.parentNode;if(B!=A.parentNode){this._addToParent(B,A)}A.style.display="block"}},hideIframe:function(){if(this.iframe){this.iframe.style.display="none"}},syncIframe:function(){var B=this.iframe,E=this.element,C=M.IFRAME_OFFSET,A=(C*2),D;if(B){B.style.width=(E.offsetWidth+A+"px");B.style.height=(E.offsetHeight+A+"px");D=this.cfg.getProperty("xy");if(!S.isArray(D)||(isNaN(D[0])||isNaN(D[1]))){this.syncPosition();D=this.cfg.getProperty("xy")}K.setXY(B,[(D[0]-C),(D[1]-C)])}},stackIframe:function(){if(this.iframe){var A=K.getStyle(this.element,"zIndex");if(!YAHOO.lang.isUndefined(A)&&!isNaN(A)){K.setStyle(this.iframe,"zIndex",(A-1))}}},configIframe:function(E,F,D){var B=F[0];function C(){var I=this.iframe,H=this.element,G;if(!I){if(!R){R=document.createElement("iframe");if(this.isSecure){R.src=M.IFRAME_SRC}if(YAHOO.env.ua.ie){R.style.filter="alpha(opacity=0)";R.frameBorder=0}else{R.style.opacity="0"}R.style.position="absolute";R.style.border="none";R.style.margin="0";R.style.padding="0";R.style.display="none"}I=R.cloneNode(false);G=H.parentNode;var J=G||document.body;this._addToParent(J,I);this.iframe=I}this.showIframe();this.syncIframe();this.stackIframe();if(!this._hasIframeEventListeners){this.showEvent.subscribe(this.showIframe);this.hideEvent.subscribe(this.hideIframe);this.changeContentEvent.subscribe(this.syncIframe);this._hasIframeEventListeners=true}}function A(){C.call(this);this.beforeShowEvent.unsubscribe(A);this._iframeDeferred=false}if(B){if(this.cfg.getProperty("visible")){C.call(this)}else{if(!this._iframeDeferred){this.beforeShowEvent.subscribe(A);this._iframeDeferred=true}}}else{this.hideIframe();if(this._hasIframeEventListeners){this.showEvent.unsubscribe(this.showIframe);this.hideEvent.unsubscribe(this.hideIframe);this.changeContentEvent.unsubscribe(this.syncIframe);this._hasIframeEventListeners=false}}},_primeXYFromDOM:function(){if(YAHOO.lang.isUndefined(this.cfg.getProperty("xy"))){this.syncPosition();this.cfg.refireEvent("xy");this.beforeShowEvent.unsubscribe(this._primeXYFromDOM)}},configConstrainToViewport:function(A,B,D){var C=B[0];if(C){if(!L.alreadySubscribed(this.beforeMoveEvent,this.enforceConstraints,this)){this.beforeMoveEvent.subscribe(this.enforceConstraints,this,true)}if(!L.alreadySubscribed(this.beforeShowEvent,this._primeXYFromDOM)){this.beforeShowEvent.subscribe(this._primeXYFromDOM)}}else{this.beforeShowEvent.unsubscribe(this._primeXYFromDOM);this.beforeMoveEvent.unsubscribe(this.enforceConstraints,this)}},configContext:function(G,A,E){var C=A[0],F,D,B;if(C){F=C[0];D=C[1];B=C[2];if(F){if(typeof F=="string"){this.cfg.setProperty("context",[document.getElementById(F),D,B],true)}if(D&&B){this.align(D,B)}}}},align:function(A,B){var D=this.cfg.getProperty("context"),E=this,F,G,C;function H(J,I){switch(A){case M.TOP_LEFT:E.moveTo(I,J);break;case M.TOP_RIGHT:E.moveTo((I-G.offsetWidth),J);break;case M.BOTTOM_LEFT:E.moveTo(I,(J-G.offsetHeight));break;case M.BOTTOM_RIGHT:E.moveTo((I-G.offsetWidth),(J-G.offsetHeight));break}}if(D){F=D[0];G=this.element;E=this;if(!A){A=D[1]}if(!B){B=D[2]}if(G&&F){C=K.getRegion(F);switch(B){case M.TOP_LEFT:H(C.top,C.left);break;case M.TOP_RIGHT:H(C.top,C.right);break;case M.BOTTOM_LEFT:H(C.bottom,C.left);break;case M.BOTTOM_RIGHT:H(C.bottom,C.right);break}}}},enforceConstraints:function(A,B,E){var C=B[0];var D=this.getConstrainedXY(C[0],C[1]);this.cfg.setProperty("x",D[0],true);this.cfg.setProperty("y",D[1],true);this.cfg.setProperty("xy",D,true)},getConstrainedXY:function(D,F){var a=M.VIEWPORT_OFFSET,E=K.getViewportWidth(),I=K.getViewportHeight(),b=this.element.offsetHeight,G=this.element.offsetWidth,A=K.getDocumentScrollLeft(),C=K.getDocumentScrollTop();var J=D;var c=F;if(G+a<E){var H=A+a;var B=A+E-G-a;if(D<H){J=H}else{if(D>B){J=B}}}else{J=a+A}if(b+a<I){var Z=C+a;var d=C+I-b-a;if(F<Z){c=Z}else{if(F>d){c=d}}}else{c=a+C}return[J,c]},center:function(){var F=M.VIEWPORT_OFFSET,E=this.element.offsetWidth,G=this.element.offsetHeight,A=K.getViewportWidth(),D=K.getViewportHeight(),B,C;if(E<A){B=(A/2)-(E/2)+K.getDocumentScrollLeft()}else{B=F+K.getDocumentScrollLeft()}if(G<D){C=(D/2)-(G/2)+K.getDocumentScrollTop()}else{C=F+K.getDocumentScrollTop()}this.cfg.setProperty("xy",[parseInt(B,10),parseInt(C,10)]);this.cfg.refireEvent("iframe")},syncPosition:function(){var A=K.getXY(this.element);this.cfg.setProperty("x",A[0],true);this.cfg.setProperty("y",A[1],true);this.cfg.setProperty("xy",A,true)},onDomResize:function(C,A){var B=this;M.superclass.onDomResize.call(this,C,A);setTimeout(function(){B.syncPosition();B.cfg.refireEvent("iframe");B.cfg.refireEvent("context")},0)},bringToTop:function(){var F=[],G=this.element;function C(J,Y){var b=K.getStyle(J,"zIndex"),I=K.getStyle(Y,"zIndex"),Z=(!b||isNaN(b))?0:parseInt(b,10),a=(!I||isNaN(I))?0:parseInt(I,10);if(Z>a){return -1}else{if(Z<a){return 1}else{return 0}}}function H(I){var V=K.hasClass(I,M.CSS_OVERLAY),J=YAHOO.widget.Panel;if(V&&!K.isAncestor(G,V)){if(J&&K.hasClass(I,J.CSS_PANEL)){F[F.length]=I.parentNode}else{F[F.length]=I}}}K.getElementsBy(H,"DIV",document.body);F.sort(C);var B=F[0],D;if(B){D=K.getStyle(B,"zIndex");if(!isNaN(D)){var E=false;if(B!=G){E=true}else{if(F.length>1){var A=K.getStyle(F[1],"zIndex");if(!isNaN(A)&&(D==A)){E=true}}}if(E){this.cfg.setProperty("zindex",(parseInt(D,10)+2))}}}},destroy:function(){if(this.iframe){this.iframe.parentNode.removeChild(this.iframe)}this.iframe=null;M.windowResizeEvent.unsubscribe(this.doCenterOnDOMEvent,this);M.windowScrollEvent.unsubscribe(this.doCenterOnDOMEvent,this);M.superclass.destroy.call(this)},toString:function(){return"Overlay "+this.id}})}());(function(){YAHOO.widget.OverlayManager=function(A){this.init(A)};var J=YAHOO.widget.Overlay,K=YAHOO.util.Event,I=YAHOO.util.Dom,L=YAHOO.util.Config,H=YAHOO.util.CustomEvent,G=YAHOO.widget.OverlayManager;G.CSS_FOCUSED="focused";G.prototype={constructor:G,overlays:null,initDefaultConfig:function(){this.cfg.addProperty("overlays",{suppressEvent:true});this.cfg.addProperty("focusevent",{value:"mousedown"})},init:function(A){this.cfg=new L(this);this.initDefaultConfig();if(A){this.cfg.applyConfig(A,true)}this.cfg.fireQueue();var B=null;this.getActive=function(){return B};this.focus=function(E){var D=this.find(E);if(D){if(B!=D){if(B){B.blur()}this.bringToTop(D);B=D;I.addClass(B.element,G.CSS_FOCUSED);D.focusEvent.fire()}}};this.remove=function(E){var N=this.find(E),F;if(N){if(B==N){B=null}var D=(N.element===null&&N.cfg===null)?true:false;if(!D){F=I.getStyle(N.element,"zIndex");N.cfg.setProperty("zIndex",-1000,true)}this.overlays.sort(this.compareZIndexDesc);this.overlays=this.overlays.slice(0,(this.overlays.length-1));N.hideEvent.unsubscribe(N.blur);N.destroyEvent.unsubscribe(this._onOverlayDestroy,N);if(!D){K.removeListener(N.element,this.cfg.getProperty("focusevent"),this._onOverlayElementFocus);N.cfg.setProperty("zIndex",F,true);N.cfg.setProperty("manager",null)}N.focusEvent.unsubscribeAll();N.blurEvent.unsubscribeAll();N.focusEvent=null;N.blurEvent=null;N.focus=null;N.blur=null}};this.blurAll=function(){var D=this.overlays.length,E;if(D>0){E=D-1;do{this.overlays[E].blur()}while(E--)}};this._onOverlayBlur=function(D,E){B=null};var C=this.cfg.getProperty("overlays");if(!this.overlays){this.overlays=[]}if(C){this.register(C);this.overlays.sort(this.compareZIndexDesc)}},_onOverlayElementFocus:function(A){var C=K.getTarget(A),B=this.close;if(B&&(C==B||I.isAncestor(B,C))){this.blur()}else{this.focus()}},_onOverlayDestroy:function(B,C,A){this.remove(A)},register:function(F){var B=this,A,D,E,C;if(F instanceof J){F.cfg.addProperty("manager",{value:this});F.focusEvent=F.createEvent("focus");F.focusEvent.signature=H.LIST;F.blurEvent=F.createEvent("blur");F.blurEvent.signature=H.LIST;F.focus=function(){B.focus(this)};F.blur=function(){if(B.getActive()==this){I.removeClass(this.element,G.CSS_FOCUSED);this.blurEvent.fire()}};F.blurEvent.subscribe(B._onOverlayBlur);F.hideEvent.subscribe(F.blur);F.destroyEvent.subscribe(this._onOverlayDestroy,F,this);K.on(F.element,this.cfg.getProperty("focusevent"),this._onOverlayElementFocus,null,F);A=I.getStyle(F.element,"zIndex");if(!isNaN(A)){F.cfg.setProperty("zIndex",parseInt(A,10))}else{F.cfg.setProperty("zIndex",0)}this.overlays.push(F);this.bringToTop(F);return true}else{if(F instanceof Array){D=0;C=F.length;for(E=0;E<C;E++){if(this.register(F[E])){D++}}if(D>0){return true}}else{return false}}},bringToTop:function(N){var D=this.find(N),A,F,C;if(D){C=this.overlays;C.sort(this.compareZIndexDesc);F=C[0];if(F){A=I.getStyle(F.element,"zIndex");if(!isNaN(A)){var B=false;if(F!==D){B=true}else{if(C.length>1){var E=I.getStyle(C[1].element,"zIndex");if(!isNaN(E)&&(A==E)){B=true}}}if(B){D.cfg.setProperty("zindex",(parseInt(A,10)+2))}}C.sort(this.compareZIndexDesc)}}},find:function(D){var B=this.overlays,A=B.length,C;if(A>0){C=A-1;if(D instanceof J){do{if(B[C]==D){return B[C]}}while(C--)}else{if(typeof D=="string"){do{if(B[C].id==D){return B[C]}}while(C--)}}return null}},compareZIndexDesc:function(A,B){var C=(A.cfg)?A.cfg.getProperty("zIndex"):null,D=(B.cfg)?B.cfg.getProperty("zIndex"):null;if(C===null&&D===null){return 0}else{if(C===null){return 1}else{if(D===null){return -1}else{if(C>D){return -1}else{if(C<D){return 1}else{return 0}}}}}},showAll:function(){var B=this.overlays,A=B.length,C;if(A>0){C=A-1;do{B[C].show()}while(C--)}},hideAll:function(){var B=this.overlays,A=B.length,C;if(A>0){C=A-1;do{B[C].hide()}while(C--)}},toString:function(){return"OverlayManager"}}}());(function(){YAHOO.widget.Tooltip=function(A,B){YAHOO.widget.Tooltip.superclass.constructor.call(this,A,B)};var X=YAHOO.lang,Q=YAHOO.util.Event,R=YAHOO.util.CustomEvent,N=YAHOO.util.Dom,V=YAHOO.widget.Tooltip,W,U={PREVENT_OVERLAP:{key:"preventoverlap",value:true,validator:X.isBoolean,supercedes:["x","y","xy"]},SHOW_DELAY:{key:"showdelay",value:200,validator:X.isNumber},AUTO_DISMISS_DELAY:{key:"autodismissdelay",value:5000,validator:X.isNumber},HIDE_DELAY:{key:"hidedelay",value:250,validator:X.isNumber},TEXT:{key:"text",suppressEvent:true},CONTAINER:{key:"container"},DISABLED:{key:"disabled",value:false,suppressEvent:true}},P={CONTEXT_MOUSE_OVER:"contextMouseOver",CONTEXT_MOUSE_OUT:"contextMouseOut",CONTEXT_TRIGGER:"contextTrigger"};V.CSS_TOOLTIP="yui-tt";function T(F,G,E){var B=E[0],D=E[1],C=this.cfg,A=C.getProperty("width");if(A==D){C.setProperty("width",B)}this.unsubscribe("hide",this._onHide,E)}function M(F,G){var E=document.body,A=this.cfg,B=A.getProperty("width"),D,C;if((!B||B=="auto")&&(A.getProperty("container")!=E||A.getProperty("x")>=N.getViewportWidth()||A.getProperty("y")>=N.getViewportHeight())){C=this.element.cloneNode(true);C.style.visibility="hidden";C.style.top="0px";C.style.left="0px";E.appendChild(C);D=(C.offsetWidth+"px");E.removeChild(C);C=null;A.setProperty("width",D);A.refireEvent("xy");this.subscribe("hide",T,[(B||""),D])}}function O(B,C,A){this.render(A)}function S(){Q.onDOMReady(O,this.cfg.getProperty("container"),this)}YAHOO.extend(V,YAHOO.widget.Overlay,{init:function(A,B){V.superclass.init.call(this,A);this.beforeInitEvent.fire(V);N.addClass(this.element,V.CSS_TOOLTIP);if(B){this.cfg.applyConfig(B,true)}this.cfg.queueProperty("visible",false);this.cfg.queueProperty("constraintoviewport",true);this.setBody("");this.subscribe("beforeShow",M);this.subscribe("init",S);this.subscribe("render",this.onRender);this.initEvent.fire(V)},initEvents:function(){V.superclass.initEvents.call(this);var A=R.LIST;this.contextMouseOverEvent=this.createEvent(P.CONTEXT_MOUSE_OVER);this.contextMouseOverEvent.signature=A;this.contextMouseOutEvent=this.createEvent(P.CONTEXT_MOUSE_OUT);this.contextMouseOutEvent.signature=A;this.contextTriggerEvent=this.createEvent(P.CONTEXT_TRIGGER);this.contextTriggerEvent.signature=A},initDefaultConfig:function(){V.superclass.initDefaultConfig.call(this);this.cfg.addProperty(U.PREVENT_OVERLAP.key,{value:U.PREVENT_OVERLAP.value,validator:U.PREVENT_OVERLAP.validator,supercedes:U.PREVENT_OVERLAP.supercedes});this.cfg.addProperty(U.SHOW_DELAY.key,{handler:this.configShowDelay,value:200,validator:U.SHOW_DELAY.validator});this.cfg.addProperty(U.AUTO_DISMISS_DELAY.key,{handler:this.configAutoDismissDelay,value:U.AUTO_DISMISS_DELAY.value,validator:U.AUTO_DISMISS_DELAY.validator});this.cfg.addProperty(U.HIDE_DELAY.key,{handler:this.configHideDelay,value:U.HIDE_DELAY.value,validator:U.HIDE_DELAY.validator});this.cfg.addProperty(U.TEXT.key,{handler:this.configText,suppressEvent:U.TEXT.suppressEvent});this.cfg.addProperty(U.CONTAINER.key,{handler:this.configContainer,value:document.body});this.cfg.addProperty(U.DISABLED.key,{handler:this.configContainer,value:U.DISABLED.value,supressEvent:U.DISABLED.suppressEvent})},configText:function(C,D,B){var A=D[0];if(A){this.setBody(A)}},configContainer:function(B,C,A){var D=C[0];if(typeof D=="string"){this.cfg.setProperty("container",document.getElementById(D),true)}},_removeEventListeners:function(){var A=this._context,D,B,C;if(A){D=A.length;if(D>0){C=D-1;do{B=A[C];Q.removeListener(B,"mouseover",this.onContextMouseOver);Q.removeListener(B,"mousemove",this.onContextMouseMove);Q.removeListener(B,"mouseout",this.onContextMouseOut)}while(C--)}}},configContext:function(C,G,B){var D=G[0],A,H,E,F;if(D){if(!(D instanceof Array)){if(typeof D=="string"){this.cfg.setProperty("context",[document.getElementById(D)],true)}else{this.cfg.setProperty("context",[D],true)}D=this.cfg.getProperty("context")}this._removeEventListeners();this._context=D;A=this._context;if(A){H=A.length;if(H>0){F=H-1;do{E=A[F];Q.on(E,"mouseover",this.onContextMouseOver,this);Q.on(E,"mousemove",this.onContextMouseMove,this);Q.on(E,"mouseout",this.onContextMouseOut,this)}while(F--)}}}},onContextMouseMove:function(A,B){B.pageX=Q.getPageX(A);B.pageY=Q.getPageY(A)},onContextMouseOver:function(A,B){var C=this;if(C.title){B._tempTitle=C.title;C.title=""}if(B.fireEvent("contextMouseOver",C,A)!==false&&!B.cfg.getProperty("disabled")){if(B.hideProcId){clearTimeout(B.hideProcId);B.hideProcId=null}Q.on(C,"mousemove",B.onContextMouseMove,B);B.showProcId=B.doShow(A,C)}},onContextMouseOut:function(A,B){var C=this;if(B._tempTitle){C.title=B._tempTitle;B._tempTitle=null}if(B.showProcId){clearTimeout(B.showProcId);B.showProcId=null}if(B.hideProcId){clearTimeout(B.hideProcId);B.hideProcId=null}B.fireEvent("contextMouseOut",C,A);B.hideProcId=setTimeout(function(){B.hide()},B.cfg.getProperty("hidedelay"))},doShow:function(B,D){var A=25,C=this;if(YAHOO.env.ua.opera&&D.tagName&&D.tagName.toUpperCase()=="A"){A+=12}return setTimeout(function(){var E=C.cfg.getProperty("text");if(C._tempTitle&&(E===""||YAHOO.lang.isUndefined(E)||YAHOO.lang.isNull(E))){C.setBody(C._tempTitle)}else{C.cfg.refireEvent("text")}C.moveTo(C.pageX,C.pageY+A);if(C.cfg.getProperty("preventoverlap")){C.preventOverlap(C.pageX,C.pageY)}Q.removeListener(D,"mousemove",C.onContextMouseMove);C.contextTriggerEvent.fire(D);C.show();C.hideProcId=C.doHide()},this.cfg.getProperty("showdelay"))},doHide:function(){var A=this;return setTimeout(function(){A.hide()},this.cfg.getProperty("autodismissdelay"))},preventOverlap:function(A,B){var E=this.element.offsetHeight,C=new YAHOO.util.Point(A,B),D=N.getRegion(this.element);D.top-=5;D.left-=5;D.right+=5;D.bottom+=5;if(D.contains(C)){this.cfg.setProperty("y",(B-E-5))}},onRender:function(C,D){function B(){var H=this.element,I=this._shadow;if(I){I.style.width=(H.offsetWidth+6)+"px";I.style.height=(H.offsetHeight+1)+"px"}}function F(){N.addClass(this._shadow,"yui-tt-shadow-visible")}function G(){N.removeClass(this._shadow,"yui-tt-shadow-visible")}function A(){var I=this._shadow,J,K,L,H;if(!I){J=this.element;K=YAHOO.widget.Module;L=YAHOO.env.ua.ie;H=this;if(!W){W=document.createElement("div");W.className="yui-tt-shadow"}I=W.cloneNode(false);J.appendChild(I);this._shadow=I;F.call(this);this.subscribe("beforeShow",F);this.subscribe("beforeHide",G);if(L==6||(L==7&&document.compatMode=="BackCompat")){window.setTimeout(function(){B.call(H)},0);this.cfg.subscribeToConfigEvent("width",B);this.cfg.subscribeToConfigEvent("height",B);this.subscribe("changeContent",B);K.textResizeEvent.subscribe(B,this,true);this.subscribe("destroy",function(){K.textResizeEvent.unsubscribe(B,this)})}}}function E(){A.call(this);this.unsubscribe("beforeShow",E)}if(this.cfg.getProperty("visible")){A.call(this)}else{this.subscribe("beforeShow",E)}},destroy:function(){this._removeEventListeners();V.superclass.destroy.call(this)},toString:function(){return"Tooltip "+this.id}})}());(function(){YAHOO.widget.Panel=function(A,B){YAHOO.widget.Panel.superclass.constructor.call(this,A,B)};var b=YAHOO.lang,f=YAHOO.util.DD,e=YAHOO.util.Dom,U=YAHOO.util.Event,S=YAHOO.widget.Overlay,V=YAHOO.util.CustomEvent,R=YAHOO.util.Config,W=YAHOO.widget.Panel,c,Y,Q,T={SHOW_MASK:"showMask",HIDE_MASK:"hideMask",DRAG:"drag"},a={CLOSE:{key:"close",value:true,validator:b.isBoolean,supercedes:["visible"]},DRAGGABLE:{key:"draggable",value:(f?true:false),validator:b.isBoolean,supercedes:["visible"]},DRAG_ONLY:{key:"dragonly",value:false,validator:b.isBoolean,supercedes:["draggable"]},UNDERLAY:{key:"underlay",value:"shadow",supercedes:["visible"]},MODAL:{key:"modal",value:false,validator:b.isBoolean,supercedes:["visible","zindex"]},KEY_LISTENERS:{key:"keylisteners",suppressEvent:true,supercedes:["visible"]}};W.CSS_PANEL="yui-panel";W.CSS_PANEL_CONTAINER="yui-panel-container";W.FOCUSABLE=["a","button","select","textarea","input"];function X(A,B){if(!this.header&&this.cfg.getProperty("draggable")){this.setHeader("&#160;")}}function Z(F,G,E){var B=E[0],D=E[1],C=this.cfg,A=C.getProperty("width");if(A==D){C.setProperty("width",B)}this.unsubscribe("hide",Z,E)}function d(E,F){var A=YAHOO.env.ua.ie,B,C,D;if(A==6||(A==7&&document.compatMode=="BackCompat")){B=this.cfg;C=B.getProperty("width");if(!C||C=="auto"){D=(this.element.offsetWidth+"px");B.setProperty("width",D);this.subscribe("hide",Z,[(C||""),D])}}}YAHOO.extend(W,S,{init:function(A,B){W.superclass.init.call(this,A);this.beforeInitEvent.fire(W);e.addClass(this.element,W.CSS_PANEL);this.buildWrapper();if(B){this.cfg.applyConfig(B,true)}this.subscribe("showMask",this._addFocusHandlers);this.subscribe("hideMask",this._removeFocusHandlers);this.subscribe("beforeRender",X);this.initEvent.fire(W)},_onElementFocus:function(A){this.blur()},_addFocusHandlers:function(B,H){var E=this,A="focus",F="hidden";function C(K){if(K.type!==F&&!e.isAncestor(E.element,K)){U.on(K,A,E._onElementFocus);return true}return false}var D=W.FOCUSABLE,J=D.length,G=[];for(var I=0;I<J;I++){G=G.concat(e.getElementsBy(C,D[I]))}this.focusableElements=G},_removeFocusHandlers:function(C,D){var A=this.focusableElements,F=A.length,E="focus";if(A){for(var B=0;B<F;B++){U.removeListener(A[B],E,this._onElementFocus)}}},initEvents:function(){W.superclass.initEvents.call(this);var A=V.LIST;this.showMaskEvent=this.createEvent(T.SHOW_MASK);this.showMaskEvent.signature=A;this.hideMaskEvent=this.createEvent(T.HIDE_MASK);this.hideMaskEvent.signature=A;this.dragEvent=this.createEvent(T.DRAG);this.dragEvent.signature=A},initDefaultConfig:function(){W.superclass.initDefaultConfig.call(this);this.cfg.addProperty(a.CLOSE.key,{handler:this.configClose,value:a.CLOSE.value,validator:a.CLOSE.validator,supercedes:a.CLOSE.supercedes});this.cfg.addProperty(a.DRAGGABLE.key,{handler:this.configDraggable,value:a.DRAGGABLE.value,validator:a.DRAGGABLE.validator,supercedes:a.DRAGGABLE.supercedes});this.cfg.addProperty(a.DRAG_ONLY.key,{value:a.DRAG_ONLY.value,validator:a.DRAG_ONLY.validator,supercedes:a.DRAG_ONLY.supercedes});this.cfg.addProperty(a.UNDERLAY.key,{handler:this.configUnderlay,value:a.UNDERLAY.value,supercedes:a.UNDERLAY.supercedes});this.cfg.addProperty(a.MODAL.key,{handler:this.configModal,value:a.MODAL.value,validator:a.MODAL.validator,supercedes:a.MODAL.supercedes});this.cfg.addProperty(a.KEY_LISTENERS.key,{handler:this.configKeyListeners,suppressEvent:a.KEY_LISTENERS.suppressEvent,supercedes:a.KEY_LISTENERS.supercedes})},configClose:function(D,F,B){var A=F[0],E=this.close;function C(H,G){G.hide()}if(A){if(!E){if(!Q){Q=document.createElement("span");Q.innerHTML="&#160;";Q.className="container-close"}E=Q.cloneNode(true);this.innerElement.appendChild(E);U.on(E,"click",C,this);this.close=E}else{E.style.display="block"}}else{if(E){E.style.display="none"}}},configDraggable:function(C,D,B){var A=D[0];if(A){if(!f){this.cfg.setProperty("draggable",false);return }if(this.header){e.setStyle(this.header,"cursor","move");this.registerDragDrop()}this.subscribe("beforeShow",d)}else{if(this.dd){this.dd.unreg()}if(this.header){e.setStyle(this.header,"cursor","auto")}this.unsubscribe("beforeShow",d)}},configUnderlay:function(M,N,E){var A=YAHOO.env.ua,C=(this.platform=="mac"&&A.gecko),B=(A.ie==6||(A.ie==7&&document.compatMode=="BackCompat")),L=N[0].toLowerCase(),I=this.underlay,H=this.element;function K(){var O=this.underlay;e.addClass(O,"yui-force-redraw");window.setTimeout(function(){e.removeClass(O,"yui-force-redraw")},0)}function G(){var O=false;if(!I){if(!Y){Y=document.createElement("div");Y.className="underlay"}I=Y.cloneNode(false);this.element.appendChild(I);this.underlay=I;if(B){this.sizeUnderlay();this.cfg.subscribeToConfigEvent("width",this.sizeUnderlay);this.cfg.subscribeToConfigEvent("height",this.sizeUnderlay);this.changeContentEvent.subscribe(this.sizeUnderlay);YAHOO.widget.Module.textResizeEvent.subscribe(this.sizeUnderlay,this,true)}if(A.webkit&&A.webkit<420){this.changeContentEvent.subscribe(K)}O=true}}function D(){var O=G.call(this);if(!O&&B){this.sizeUnderlay()}this._underlayDeferred=false;this.beforeShowEvent.unsubscribe(D)}function F(){if(this._underlayDeferred){this.beforeShowEvent.unsubscribe(D);this._underlayDeferred=false}if(I){this.cfg.unsubscribeFromConfigEvent("width",this.sizeUnderlay);this.cfg.unsubscribeFromConfigEvent("height",this.sizeUnderlay);this.changeContentEvent.unsubscribe(this.sizeUnderlay);this.changeContentEvent.unsubscribe(K);YAHOO.widget.Module.textResizeEvent.unsubscribe(this.sizeUnderlay,this,true);this.element.removeChild(I);this.underlay=null}}switch(L){case"shadow":e.removeClass(H,"matte");e.addClass(H,"shadow");break;case"matte":if(!C){F.call(this)}e.removeClass(H,"shadow");e.addClass(H,"matte");break;default:if(!C){F.call(this)}e.removeClass(H,"shadow");e.removeClass(H,"matte");break}if((L=="shadow")||(C&&!I)){if(this.cfg.getProperty("visible")){var J=G.call(this);if(!J&&B){this.sizeUnderlay()}}else{if(!this._underlayDeferred){this.beforeShowEvent.subscribe(D);this._underlayDeferred=true}}}},configModal:function(C,D,A){var B=D[0];if(B){if(!this._hasModalityEventListeners){this.subscribe("beforeShow",this.buildMask);this.subscribe("beforeShow",this.bringToTop);this.subscribe("beforeShow",this.showMask);this.subscribe("hide",this.hideMask);S.windowResizeEvent.subscribe(this.sizeMask,this,true);this._hasModalityEventListeners=true}}else{if(this._hasModalityEventListeners){if(this.cfg.getProperty("visible")){this.hideMask();this.removeMask()}this.unsubscribe("beforeShow",this.buildMask);this.unsubscribe("beforeShow",this.bringToTop);this.unsubscribe("beforeShow",this.showMask);this.unsubscribe("hide",this.hideMask);S.windowResizeEvent.unsubscribe(this.sizeMask,this);this._hasModalityEventListeners=false}}},removeMask:function(){var A=this.mask,B;if(A){this.hideMask();B=A.parentNode;if(B){B.removeChild(A)}this.mask=null}},configKeyListeners:function(D,G,A){var E=G[0],B,C,F;if(E){if(E instanceof Array){C=E.length;for(F=0;F<C;F++){B=E[F];if(!R.alreadySubscribed(this.showEvent,B.enable,B)){this.showEvent.subscribe(B.enable,B,true)}if(!R.alreadySubscribed(this.hideEvent,B.disable,B)){this.hideEvent.subscribe(B.disable,B,true);this.destroyEvent.subscribe(B.disable,B,true)}}}else{if(!R.alreadySubscribed(this.showEvent,E.enable,E)){this.showEvent.subscribe(E.enable,E,true)}if(!R.alreadySubscribed(this.hideEvent,E.disable,E)){this.hideEvent.subscribe(E.disable,E,true);this.destroyEvent.subscribe(E.disable,E,true)}}}},configHeight:function(B,D,A){var E=D[0],C=this.innerElement;e.setStyle(C,"height",E);this.cfg.refireEvent("iframe")},configWidth:function(B,E,A){var C=E[0],D=this.innerElement;e.setStyle(D,"width",C);this.cfg.refireEvent("iframe")},configzIndex:function(C,D,A){W.superclass.configzIndex.call(this,C,D,A);if(this.mask||this.cfg.getProperty("modal")===true){var B=e.getStyle(this.element,"zIndex");if(!B||isNaN(B)){B=0}if(B===0){this.cfg.setProperty("zIndex",1)}else{this.stackMask()}}},buildWrapper:function(){var A=this.element.parentNode,C=this.element,B=document.createElement("div");B.className=W.CSS_PANEL_CONTAINER;B.id=C.id+"_c";if(A){A.insertBefore(B,C)}B.appendChild(C);this.element=B;this.innerElement=C;e.setStyle(this.innerElement,"visibility","inherit")},sizeUnderlay:function(){var A=this.underlay,B;if(A){B=this.element;A.style.width=B.offsetWidth+"px";A.style.height=B.offsetHeight+"px"}},registerDragDrop:function(){var A=this;if(this.header){if(!f){return }var B=(this.cfg.getProperty("dragonly")===true);this.dd=new f(this.element.id,this.id,{dragOnly:B});if(!this.header.id){this.header.id=this.id+"_h"}this.dd.startDrag=function(){var F,D,G,H,I,C;if(YAHOO.env.ua.ie==6){e.addClass(A.element,"drag")}if(A.cfg.getProperty("constraintoviewport")){var E=S.VIEWPORT_OFFSET;F=A.element.offsetHeight;D=A.element.offsetWidth;G=e.getViewportWidth();H=e.getViewportHeight();I=e.getDocumentScrollLeft();C=e.getDocumentScrollTop();if(F+E<H){this.minY=C+E;this.maxY=C+H-F-E}else{this.minY=C+E;this.maxY=C+E}if(D+E<G){this.minX=I+E;this.maxX=I+G-D-E}else{this.minX=I+E;this.maxX=I+E}this.constrainX=true;this.constrainY=true}else{this.constrainX=false;this.constrainY=false}A.dragEvent.fire("startDrag",arguments)};this.dd.onDrag=function(){A.syncPosition();A.cfg.refireEvent("iframe");if(this.platform=="mac"&&YAHOO.env.ua.gecko){this.showMacGeckoScrollbars()}A.dragEvent.fire("onDrag",arguments)};this.dd.endDrag=function(){if(YAHOO.env.ua.ie==6){e.removeClass(A.element,"drag")}A.dragEvent.fire("endDrag",arguments);A.moveEvent.fire(A.cfg.getProperty("xy"))};this.dd.setHandleElId(this.header.id);this.dd.addInvalidHandleType("INPUT");this.dd.addInvalidHandleType("SELECT");this.dd.addInvalidHandleType("TEXTAREA")}},buildMask:function(){var A=this.mask;if(!A){if(!c){c=document.createElement("div");c.className="mask";c.innerHTML="&#160;"}A=c.cloneNode(true);A.id=this.id+"_mask";document.body.insertBefore(A,document.body.firstChild);this.mask=A;if(YAHOO.env.ua.gecko&&this.platform=="mac"){e.addClass(this.mask,"block-scrollbars")}this.stackMask()}},hideMask:function(){if(this.cfg.getProperty("modal")&&this.mask){this.mask.style.display="none";this.hideMaskEvent.fire();e.removeClass(document.body,"masked")}},showMask:function(){if(this.cfg.getProperty("modal")&&this.mask){e.addClass(document.body,"masked");this.sizeMask();this.mask.style.display="block";this.showMaskEvent.fire()}},sizeMask:function(){if(this.mask){this.mask.style.height=e.getDocumentHeight()+"px";this.mask.style.width=e.getDocumentWidth()+"px"}},stackMask:function(){if(this.mask){var A=e.getStyle(this.element,"zIndex");if(!YAHOO.lang.isUndefined(A)&&!isNaN(A)){e.setStyle(this.mask,"zIndex",A-1)}}},render:function(A){return W.superclass.render.call(this,A,this.innerElement)},destroy:function(){S.windowResizeEvent.unsubscribe(this.sizeMask,this);this.removeMask();if(this.close){U.purgeElement(this.close)}W.superclass.destroy.call(this)},toString:function(){return"Panel "+this.id}})}());(function(){YAHOO.widget.Dialog=function(A,B){YAHOO.widget.Dialog.superclass.constructor.call(this,A,B)};var O=YAHOO.util.Event,P=YAHOO.util.CustomEvent,K=YAHOO.util.Dom,M=YAHOO.util.KeyListener,Q=YAHOO.util.Connect,S=YAHOO.widget.Dialog,T=YAHOO.lang,N={BEFORE_SUBMIT:"beforeSubmit",SUBMIT:"submit",MANUAL_SUBMIT:"manualSubmit",ASYNC_SUBMIT:"asyncSubmit",FORM_SUBMIT:"formSubmit",CANCEL:"cancel"},R={POST_METHOD:{key:"postmethod",value:"async"},BUTTONS:{key:"buttons",value:"none"},HIDEAFTERSUBMIT:{key:"hideaftersubmit",value:true}};S.CSS_DIALOG="yui-dialog";function L(){var C=this._aButtons,A,D,B;if(T.isArray(C)){A=C.length;if(A>0){B=A-1;do{D=C[B];if(YAHOO.widget.Button&&D instanceof YAHOO.widget.Button){D.destroy()}else{if(D.tagName.toUpperCase()=="BUTTON"){O.purgeElement(D);O.purgeElement(D,false)}}}while(B--)}}}YAHOO.extend(S,YAHOO.widget.Panel,{form:null,initDefaultConfig:function(){S.superclass.initDefaultConfig.call(this);this.callback={success:null,failure:null,argument:null};this.cfg.addProperty(R.POST_METHOD.key,{handler:this.configPostMethod,value:R.POST_METHOD.value,validator:function(A){if(A!="form"&&A!="async"&&A!="none"&&A!="manual"){return false}else{return true}}});this.cfg.addProperty(R.HIDEAFTERSUBMIT.key,{value:R.HIDEAFTERSUBMIT.value});this.cfg.addProperty(R.BUTTONS.key,{handler:this.configButtons,value:R.BUTTONS.value})},initEvents:function(){S.superclass.initEvents.call(this);var A=P.LIST;this.beforeSubmitEvent=this.createEvent(N.BEFORE_SUBMIT);this.beforeSubmitEvent.signature=A;this.submitEvent=this.createEvent(N.SUBMIT);this.submitEvent.signature=A;this.manualSubmitEvent=this.createEvent(N.MANUAL_SUBMIT);this.manualSubmitEvent.signature=A;this.asyncSubmitEvent=this.createEvent(N.ASYNC_SUBMIT);this.asyncSubmitEvent.signature=A;this.formSubmitEvent=this.createEvent(N.FORM_SUBMIT);this.formSubmitEvent.signature=A;this.cancelEvent=this.createEvent(N.CANCEL);this.cancelEvent.signature=A},init:function(A,B){S.superclass.init.call(this,A);this.beforeInitEvent.fire(S);K.addClass(this.element,S.CSS_DIALOG);this.cfg.setProperty("visible",false);if(B){this.cfg.applyConfig(B,true)}this.showEvent.subscribe(this.focusFirst,this,true);this.beforeHideEvent.subscribe(this.blurButtons,this,true);this.subscribe("changeBody",this.registerForm);this.initEvent.fire(S)},doSubmit:function(){var C=this.form,E=false,F=false,D,B,G,A;switch(this.cfg.getProperty("postmethod")){case"async":D=C.elements;B=D.length;if(B>0){G=B-1;do{if(D[G].type=="file"){E=true;break}}while(G--)}if(E&&YAHOO.env.ua.ie&&this.isSecure){F=true}A=(C.getAttribute("method")||"POST").toUpperCase();Q.setForm(C,E,F);Q.asyncRequest(A,C.getAttribute("action"),this.callback);this.asyncSubmitEvent.fire();break;case"form":C.submit();this.formSubmitEvent.fire();break;case"none":case"manual":this.manualSubmitEvent.fire();break}},registerForm:function(){var D=this.element.getElementsByTagName("form")[0],A=this,B,C;if(this.form){if(this.form==D&&K.isAncestor(this.element,this.form)){return }else{O.purgeElement(this.form);this.form=null}}if(!D){D=document.createElement("form");D.name="frm_"+this.id;this.body.appendChild(D)}if(D){this.form=D;O.on(D,"submit",function(E){O.stopEvent(E);this.submit();this.form.blur()},this,true);this.firstFormElement=function(){var E,F,G=D.elements.length;for(E=0;E<G;E++){F=D.elements[E];if(F.focus&&!F.disabled&&F.type!="hidden"){return F}}return null}();this.lastFormElement=function(){var E,F,G=D.elements.length;for(E=G-1;E>=0;E--){F=D.elements[E];if(F.focus&&!F.disabled&&F.type!="hidden"){return F}}return null}();if(this.cfg.getProperty("modal")){B=this.firstFormElement||this.firstButton;if(B){this.preventBackTab=new M(B,{shift:true,keys:9},{fn:A.focusLast,scope:A,correctScope:true});this.showEvent.subscribe(this.preventBackTab.enable,this.preventBackTab,true);this.hideEvent.subscribe(this.preventBackTab.disable,this.preventBackTab,true)}C=this.lastButton||this.lastFormElement;if(C){this.preventTabOut=new M(C,{shift:false,keys:9},{fn:A.focusFirst,scope:A,correctScope:true});this.showEvent.subscribe(this.preventTabOut.enable,this.preventTabOut,true);this.hideEvent.subscribe(this.preventTabOut.disable,this.preventTabOut,true)}}}},configClose:function(E,B,D){var C=B[0];function A(F,G){G.cancel()}if(C){if(!this.close){this.close=document.createElement("div");K.addClass(this.close,"container-close");this.close.innerHTML="&#160;";this.innerElement.appendChild(this.close);O.on(this.close,"click",A,this)}else{this.close.style.display="block"}}else{if(this.close){this.close.style.display="none"}}},configButtons:function(C,D,I){var H=YAHOO.widget.Button,A=D[0],X=this.innerElement,B,F,Y,E,G,Z,J;L.call(this);this._aButtons=null;if(T.isArray(A)){G=document.createElement("span");G.className="button-group";E=A.length;this._aButtons=[];for(J=0;J<E;J++){B=A[J];if(H){Y=new H({label:B.text,container:G});F=Y.get("element");if(B.isDefault){Y.addClass("default");this.defaultHtmlButton=F}if(T.isFunction(B.handler)){Y.set("onclick",{fn:B.handler,obj:this,scope:this})}else{if(T.isObject(B.handler)&&T.isFunction(B.handler.fn)){Y.set("onclick",{fn:B.handler.fn,obj:((!T.isUndefined(B.handler.obj))?B.handler.obj:this),scope:(B.handler.scope||this)})}}this._aButtons[this._aButtons.length]=Y}else{F=document.createElement("button");F.setAttribute("type","button");if(B.isDefault){F.className="default";this.defaultHtmlButton=F}F.innerHTML=B.text;if(T.isFunction(B.handler)){O.on(F,"click",B.handler,this,true)}else{if(T.isObject(B.handler)&&T.isFunction(B.handler.fn)){O.on(F,"click",B.handler.fn,((!T.isUndefined(B.handler.obj))?B.handler.obj:this),(B.handler.scope||this))}}G.appendChild(F);this._aButtons[this._aButtons.length]=F}B.htmlButton=F;if(J===0){this.firstButton=F}if(J==(E-1)){this.lastButton=F}}this.setFooter(G);Z=this.footer;if(K.inDocument(this.element)&&!K.isAncestor(X,Z)){X.appendChild(Z)}this.buttonSpan=G}else{G=this.buttonSpan;Z=this.footer;if(G&&Z){Z.removeChild(G);this.buttonSpan=null;this.firstButton=null;this.lastButton=null;this.defaultHtmlButton=null}}this.cfg.refireEvent("iframe");this.cfg.refireEvent("underlay")},getButtons:function(){var A=this._aButtons;if(A){return A}},focusFirst:function(E,A,C){var F=this.firstFormElement,B;if(A){B=A[1];if(B){O.stopEvent(B)}}if(F){try{F.focus()}catch(D){}}else{this.focusDefaultButton()}},focusLast:function(F,A,D){var C=this.cfg.getProperty("buttons"),G=this.lastFormElement,B;if(A){B=A[1];if(B){O.stopEvent(B)}}if(C&&T.isArray(C)){this.focusLastButton()}else{if(G){try{G.focus()}catch(E){}}}},focusDefaultButton:function(){var B=this.defaultHtmlButton;if(B){try{B.focus()}catch(A){}}},blurButtons:function(){var C=this.cfg.getProperty("buttons"),F,D,A,B;if(C&&T.isArray(C)){F=C.length;if(F>0){B=(F-1);do{D=C[B];if(D){A=D.htmlButton;if(A){try{A.blur()}catch(E){}}}}while(B--)}}},focusFirstButton:function(){var C=this.cfg.getProperty("buttons"),D,B;if(C&&T.isArray(C)){D=C[0];if(D){B=D.htmlButton;if(B){try{B.focus()}catch(A){}}}}},focusLastButton:function(){var C=this.cfg.getProperty("buttons"),A,D,B;if(C&&T.isArray(C)){A=C.length;if(A>0){D=C[(A-1)];if(D){B=D.htmlButton;if(B){try{B.focus()}catch(E){}}}}}},configPostMethod:function(A,B,C){this.registerForm()},validate:function(){return true},submit:function(){if(this.validate()){this.beforeSubmitEvent.fire();this.doSubmit();this.submitEvent.fire();if(this.cfg.getProperty("hideaftersubmit")){this.hide()}return true}else{return false}},cancel:function(){this.cancelEvent.fire();this.hide()},getData:function(){var l=this.form,g,G,D,e,F,I,J,h,C,f,B,k,i,d,j,A,E;function H(U){var V=U.tagName.toUpperCase();return((V=="INPUT"||V=="TEXTAREA"||V=="SELECT")&&U.name==e)}if(l){g=l.elements;G=g.length;D={};for(A=0;A<G;A++){e=g[A].name;F=K.getElementsBy(H,"*",l);I=F.length;if(I>0){if(I==1){F=F[0];J=F.type;h=F.tagName.toUpperCase();switch(h){case"INPUT":if(J=="checkbox"){D[e]=F.checked}else{if(J!="radio"){D[e]=F.value}}break;case"TEXTAREA":D[e]=F.value;break;case"SELECT":C=F.options;f=C.length;B=[];for(E=0;E<f;E++){k=C[E];if(k.selected){i=k.value;if(!i||i===""){i=k.text}B[B.length]=i}}D[e]=B;break}}else{J=F[0].type;switch(J){case"radio":for(E=0;E<I;E++){d=F[E];if(d.checked){D[e]=d.value;break}}break;case"checkbox":B=[];for(E=0;E<I;E++){j=F[E];if(j.checked){B[B.length]=j.value}}D[e]=B;break}}}}}return D},destroy:function(){L.call(this);this._aButtons=null;var B=this.element.getElementsByTagName("form"),A;if(B.length>0){A=B[0];if(A){O.purgeElement(A);if(A.parentNode){A.parentNode.removeChild(A)}this.form=null}}S.superclass.destroy.call(this)},toString:function(){return"Dialog "+this.id}})}());(function(){YAHOO.widget.SimpleDialog=function(A,B){YAHOO.widget.SimpleDialog.superclass.constructor.call(this,A,B)};var E=YAHOO.util.Dom,F=YAHOO.widget.SimpleDialog,D={ICON:{key:"icon",value:"none",suppressEvent:true},TEXT:{key:"text",value:"",suppressEvent:true,supercedes:["icon"]}};F.ICON_BLOCK="blckicon";F.ICON_ALARM="alrticon";F.ICON_HELP="hlpicon";F.ICON_INFO="infoicon";F.ICON_WARN="warnicon";F.ICON_TIP="tipicon";F.ICON_CSS_CLASSNAME="yui-icon";F.CSS_SIMPLEDIALOG="yui-simple-dialog";YAHOO.extend(F,YAHOO.widget.Dialog,{initDefaultConfig:function(){F.superclass.initDefaultConfig.call(this);this.cfg.addProperty(D.ICON.key,{handler:this.configIcon,value:D.ICON.value,suppressEvent:D.ICON.suppressEvent});this.cfg.addProperty(D.TEXT.key,{handler:this.configText,value:D.TEXT.value,suppressEvent:D.TEXT.suppressEvent,supercedes:D.TEXT.supercedes})},init:function(A,B){F.superclass.init.call(this,A);this.beforeInitEvent.fire(F);E.addClass(this.element,F.CSS_SIMPLEDIALOG);this.cfg.queueProperty("postmethod","manual");if(B){this.cfg.applyConfig(B,true)}this.beforeRenderEvent.subscribe(function(){if(!this.body){this.setBody("")}},this,true);this.initEvent.fire(F)},registerForm:function(){F.superclass.registerForm.call(this);this.form.innerHTML+='<input type="hidden" name="'+this.id+'" value=""/>'},configIcon:function(N,O,B){var A=O[0],P=this.body,C=F.ICON_CSS_CLASSNAME,L,M;if(A&&A!="none"){L=E.getElementsByClassName(C,"*",P);if(L){M=L.parentNode;if(M){M.removeChild(L);L=null}}if(A.indexOf(".")==-1){L=document.createElement("span");L.className=(C+" "+A);L.innerHTML="&#160;"}else{L=document.createElement("img");L.src=(this.imageRoot+A);L.className=C}if(L){P.insertBefore(L,P.firstChild)}}},configText:function(C,H,B){var A=H[0];if(A){this.setBody(A);this.cfg.refireEvent("icon")}},toString:function(){return"SimpleDialog "+this.id}})}());(function(){YAHOO.widget.ContainerEffect=function(D,A,B,J,C){if(!C){C=YAHOO.util.Anim}this.overlay=D;this.attrIn=A;this.attrOut=B;this.targetElement=J||D.element;this.animClass=C};var H=YAHOO.util.Dom,F=YAHOO.util.CustomEvent,G=YAHOO.util.Easing,E=YAHOO.widget.ContainerEffect;E.FADE=function(J,C){var A={attributes:{opacity:{from:0,to:1}},duration:C,method:G.easeIn};var D={attributes:{opacity:{to:0}},duration:C,method:G.easeOut};var B=new E(J,A,D,J.element);B.handleUnderlayStart=function(){var I=this.overlay.underlay;if(I&&YAHOO.env.ua.ie){var L=(I.filters&&I.filters.length>0);if(L){H.addClass(J.element,"yui-effect-fade")}}};B.handleUnderlayComplete=function(){var I=this.overlay.underlay;if(I&&YAHOO.env.ua.ie){H.removeClass(J.element,"yui-effect-fade")}};B.handleStartAnimateIn=function(M,N,I){H.addClass(I.overlay.element,"hide-select");if(!I.overlay.underlay){I.overlay.cfg.refireEvent("underlay")}I.handleUnderlayStart();H.setStyle(I.overlay.element,"visibility","visible");H.setStyle(I.overlay.element,"opacity",0)};B.handleCompleteAnimateIn=function(M,N,I){H.removeClass(I.overlay.element,"hide-select");if(I.overlay.element.style.filter){I.overlay.element.style.filter=null}I.handleUnderlayComplete();I.overlay.cfg.refireEvent("iframe");I.animateInCompleteEvent.fire()};B.handleStartAnimateOut=function(M,N,I){H.addClass(I.overlay.element,"hide-select");I.handleUnderlayStart()};B.handleCompleteAnimateOut=function(M,N,I){H.removeClass(I.overlay.element,"hide-select");if(I.overlay.element.style.filter){I.overlay.element.style.filter=null}H.setStyle(I.overlay.element,"visibility","hidden");H.setStyle(I.overlay.element,"opacity",1);I.handleUnderlayComplete();I.overlay.cfg.refireEvent("iframe");I.animateOutCompleteEvent.fire()};B.init();return B};E.SLIDE=function(L,C){var M=L.cfg.getProperty("x")||H.getX(L.element),A=L.cfg.getProperty("y")||H.getY(L.element),B=H.getClientWidth(),D=L.element.offsetWidth,N=new E(L,{attributes:{points:{to:[M,A]}},duration:C,method:G.easeIn},{attributes:{points:{to:[(B+25),A]}},duration:C,method:G.easeOut},L.element,YAHOO.util.Motion);N.handleStartAnimateIn=function(K,I,J){J.overlay.element.style.left=((-25)-D)+"px";J.overlay.element.style.top=A+"px"};N.handleTweenAnimateIn=function(R,S,K){var J=H.getXY(K.overlay.element),T=J[0],I=J[1];if(H.getStyle(K.overlay.element,"visibility")=="hidden"&&T<M){H.setStyle(K.overlay.element,"visibility","visible")}K.overlay.cfg.setProperty("xy",[T,I],true);K.overlay.cfg.refireEvent("iframe")};N.handleCompleteAnimateIn=function(K,I,J){J.overlay.cfg.setProperty("xy",[M,A],true);J.startX=M;J.startY=A;J.overlay.cfg.refireEvent("iframe");J.animateInCompleteEvent.fire()};N.handleStartAnimateOut=function(T,I,K){var S=H.getViewportWidth(),J=H.getXY(K.overlay.element),R=J[1];K.animOut.attributes.points.to=[(S+25),R]};N.handleTweenAnimateOut=function(S,T,R){var J=H.getXY(R.overlay.element),I=J[0],K=J[1];R.overlay.cfg.setProperty("xy",[I,K],true);R.overlay.cfg.refireEvent("iframe")};N.handleCompleteAnimateOut=function(K,I,J){H.setStyle(J.overlay.element,"visibility","hidden");J.overlay.cfg.setProperty("xy",[M,A]);J.animateOutCompleteEvent.fire()};N.init();return N};E.prototype={init:function(){this.beforeAnimateInEvent=this.createEvent("beforeAnimateIn");this.beforeAnimateInEvent.signature=F.LIST;this.beforeAnimateOutEvent=this.createEvent("beforeAnimateOut");this.beforeAnimateOutEvent.signature=F.LIST;this.animateInCompleteEvent=this.createEvent("animateInComplete");this.animateInCompleteEvent.signature=F.LIST;this.animateOutCompleteEvent=this.createEvent("animateOutComplete");this.animateOutCompleteEvent.signature=F.LIST;this.animIn=new this.animClass(this.targetElement,this.attrIn.attributes,this.attrIn.duration,this.attrIn.method);this.animIn.onStart.subscribe(this.handleStartAnimateIn,this);this.animIn.onTween.subscribe(this.handleTweenAnimateIn,this);this.animIn.onComplete.subscribe(this.handleCompleteAnimateIn,this);this.animOut=new this.animClass(this.targetElement,this.attrOut.attributes,this.attrOut.duration,this.attrOut.method);this.animOut.onStart.subscribe(this.handleStartAnimateOut,this);this.animOut.onTween.subscribe(this.handleTweenAnimateOut,this);this.animOut.onComplete.subscribe(this.handleCompleteAnimateOut,this)},animateIn:function(){this.beforeAnimateInEvent.fire();this.animIn.animate()},animateOut:function(){this.beforeAnimateOutEvent.fire();this.animOut.animate()},handleStartAnimateIn:function(B,C,A){},handleTweenAnimateIn:function(B,C,A){},handleCompleteAnimateIn:function(B,C,A){},handleStartAnimateOut:function(B,C,A){},handleTweenAnimateOut:function(B,C,A){},handleCompleteAnimateOut:function(B,C,A){},toString:function(){var A="ContainerEffect";if(this.overlay){A+=" ["+this.overlay.toString()+"]"}return A}};YAHOO.lang.augmentProto(E,YAHOO.util.EventProvider)})();YAHOO.register("container",YAHOO.widget.Module,{version:"2.5.2",build:"1076"});(function(){var D=YAHOO.util.Dom,C=YAHOO.util.Event;YAHOO.widget.MenuManager=function(){var U=false,c={},R={},Y={},d={click:"clickEvent",mousedown:"mouseDownEvent",mouseup:"mouseUpEvent",mouseover:"mouseOverEvent",mouseout:"mouseOutEvent",keydown:"keyDownEvent",keyup:"keyUpEvent",keypress:"keyPressEvent"},X=null;function A(E){var F;if(E&&E.tagName){switch(E.tagName.toUpperCase()){case"DIV":F=E.parentNode;if((D.hasClass(E,"hd")||D.hasClass(E,"bd")||D.hasClass(E,"ft"))&&F&&F.tagName&&F.tagName.toUpperCase()=="DIV"){return F}else{return E}break;case"LI":return E;default:F=E.parentNode;if(F){return A(F)}break}}}function b(I){var M=C.getTarget(I),L=A(M),G,K,J,E,F;if(L){K=L.tagName.toUpperCase();if(K=="LI"){J=L.id;if(J&&Y[J]){E=Y[J];F=E.parent}}else{if(K=="DIV"){if(L.id){F=c[L.id]}}}}if(F){G=d[I.type];if(E&&!E.cfg.getProperty("disabled")){E[G].fire(I);if(I.type=="keyup"||I.type=="mousedown"){if(X!=E){if(X){X.blurEvent.fire()}E.focusEvent.fire()}}}F[G].fire(I,E)}else{if(I.type=="mousedown"){if(X){X.blurEvent.fire();X=null}for(var H in R){if(YAHOO.lang.hasOwnProperty(R,H)){F=R[H];if(F.cfg.getProperty("clicktohide")&&!(F instanceof YAHOO.widget.MenuBar)&&F.cfg.getProperty("position")=="dynamic"){F.hide()}else{if(F.cfg.getProperty("showdelay")>0){F._cancelShowDelay()}if(F.activeItem){F.activeItem.blur();F.activeItem.cfg.setProperty("selected",false);F.activeItem=null}}}}}else{if(I.type=="keyup"){if(X){X.blurEvent.fire();X=null}}}}}function S(F,G,E){if(c[E.id]){this.removeMenu(E)}}function V(F,G){var E=G[0];if(E){X=E}}function a(E,F){X=null}function B(F,G){var H=G[0],E=this.id;if(H){R[E]=this}else{if(R[E]){delete R[E]}}}function W(E,F){T(this)}function T(E){var F=E.id;if(F&&Y[F]){if(X==E){X=null}delete Y[F];E.destroyEvent.unsubscribe(W)}}function Z(G,H){var E=H[0],F;if(E instanceof YAHOO.widget.MenuItem){F=E.id;if(!Y[F]){Y[F]=E;E.destroyEvent.subscribe(W)}}}return{addMenu:function(E){var F;if(E instanceof YAHOO.widget.Menu&&E.id&&!c[E.id]){c[E.id]=E;if(!U){F=document;C.on(F,"mouseover",b,this,true);C.on(F,"mouseout",b,this,true);C.on(F,"mousedown",b,this,true);C.on(F,"mouseup",b,this,true);C.on(F,"click",b,this,true);C.on(F,"keydown",b,this,true);C.on(F,"keyup",b,this,true);C.on(F,"keypress",b,this,true);U=true}E.cfg.subscribeToConfigEvent("visible",B);E.destroyEvent.subscribe(S,E,this);E.itemAddedEvent.subscribe(Z);E.focusEvent.subscribe(V);E.blurEvent.subscribe(a)}},removeMenu:function(E){var G,H,F;if(E){G=E.id;if(c[G]==E){H=E.getItems();if(H&&H.length>0){F=H.length-1;do{T(H[F])}while(F--)}delete c[G];if(R[G]==E){delete R[G]}if(E.cfg){E.cfg.unsubscribeFromConfigEvent("visible",B)}E.destroyEvent.unsubscribe(S,E);E.itemAddedEvent.unsubscribe(Z);E.focusEvent.unsubscribe(V);E.blurEvent.unsubscribe(a)}}},hideVisible:function(){var F;for(var E in R){if(YAHOO.lang.hasOwnProperty(R,E)){F=R[E];if(!(F instanceof YAHOO.widget.MenuBar)&&F.cfg.getProperty("position")=="dynamic"){F.hide()}}}},getVisible:function(){return R},getMenus:function(){return c},getMenu:function(E){var F=c[E];if(F){return F}},getMenuItem:function(F){var E=Y[F];if(E){return E}},getMenuItemGroup:function(G){var I=D.get(G),J,E,F,H;if(I&&I.tagName&&I.tagName.toUpperCase()=="UL"){E=I.firstChild;if(E){J=[];do{H=E.id;if(H){F=this.getMenuItem(H);if(F){J[J.length]=F}}}while((E=E.nextSibling));if(J.length>0){return J}}}},getFocusedMenuItem:function(){return X},getFocusedMenu:function(){if(X){return(X.parent.getRoot())}},toString:function(){return"MenuManager"}}}()})();(function(){YAHOO.widget.Menu=function(A,B){if(B){this.parent=B.parent;this.lazyLoad=B.lazyLoad||B.lazyload;this.itemData=B.itemData||B.itemdata}YAHOO.widget.Menu.superclass.constructor.call(this,A,B)};function V(A){if(typeof A=="string"){return("dynamic,static".indexOf((A.toLowerCase()))!=-1)}}var O=YAHOO.util.Dom,R=YAHOO.util.Event,N=YAHOO.widget.Module,P=YAHOO.widget.Overlay,Y=YAHOO.widget.Menu,T=YAHOO.widget.MenuManager,S=YAHOO.util.CustomEvent,Z=YAHOO.lang,W=YAHOO.env.ua,X,Q={MOUSE_OVER:"mouseover",MOUSE_OUT:"mouseout",MOUSE_DOWN:"mousedown",MOUSE_UP:"mouseup",CLICK:"click",KEY_PRESS:"keypress",KEY_DOWN:"keydown",KEY_UP:"keyup",FOCUS:"focus",BLUR:"blur",ITEM_ADDED:"itemAdded",ITEM_REMOVED:"itemRemoved"},U={VISIBLE:{key:"visible",value:false,validator:Z.isBoolean},CONSTRAIN_TO_VIEWPORT:{key:"constraintoviewport",value:true,validator:Z.isBoolean,supercedes:["iframe","x","y","xy"]},POSITION:{key:"position",value:"dynamic",validator:V,supercedes:["visible","iframe"]},SUBMENU_ALIGNMENT:{key:"submenualignment",value:["tl","tr"],suppressEvent:true},AUTO_SUBMENU_DISPLAY:{key:"autosubmenudisplay",value:true,validator:Z.isBoolean,suppressEvent:true},SHOW_DELAY:{key:"showdelay",value:250,validator:Z.isNumber,suppressEvent:true},HIDE_DELAY:{key:"hidedelay",value:0,validator:Z.isNumber,suppressEvent:true},SUBMENU_HIDE_DELAY:{key:"submenuhidedelay",value:250,validator:Z.isNumber,suppressEvent:true},CLICK_TO_HIDE:{key:"clicktohide",value:true,validator:Z.isBoolean,suppressEvent:true},CONTAINER:{key:"container",suppressEvent:true},SCROLL_INCREMENT:{key:"scrollincrement",value:1,validator:Z.isNumber,supercedes:["maxheight"],suppressEvent:true},MIN_SCROLL_HEIGHT:{key:"minscrollheight",value:90,validator:Z.isNumber,supercedes:["maxheight"],suppressEvent:true},MAX_HEIGHT:{key:"maxheight",value:0,validator:Z.isNumber,supercedes:["iframe"],suppressEvent:true},CLASS_NAME:{key:"classname",value:null,validator:Z.isString,suppressEvent:true},DISABLED:{key:"disabled",value:false,validator:Z.isBoolean,suppressEvent:true}};YAHOO.lang.extend(Y,P,{CSS_CLASS_NAME:"yuimenu",ITEM_TYPE:null,GROUP_TITLE_TAG_NAME:"h6",OFF_SCREEN_POSITION:[-10000,-10000],_nHideDelayId:null,_nShowDelayId:null,_nSubmenuHideDelayId:null,_nBodyScrollId:null,_bHideDelayEventHandlersAssigned:false,_bHandledMouseOverEvent:false,_bHandledMouseOutEvent:false,_aGroupTitleElements:null,_aItemGroups:null,_aListElements:null,_nCurrentMouseX:0,_bStopMouseEventHandlers:false,_sClassName:null,lazyLoad:false,itemData:null,activeItem:null,parent:null,srcElement:null,mouseOverEvent:null,mouseOutEvent:null,mouseDownEvent:null,mouseUpEvent:null,clickEvent:null,keyPressEvent:null,keyDownEvent:null,keyUpEvent:null,itemAddedEvent:null,itemRemovedEvent:null,init:function(A,B){this._aItemGroups=[];this._aListElements=[];this._aGroupTitleElements=[];if(!this.ITEM_TYPE){this.ITEM_TYPE=YAHOO.widget.MenuItem}var C;if(typeof A=="string"){C=document.getElementById(A)}else{if(A.tagName){C=A}}if(C&&C.tagName){switch(C.tagName.toUpperCase()){case"DIV":this.srcElement=C;if(!C.id){C.setAttribute("id",O.generateId())}Y.superclass.init.call(this,C);this.beforeInitEvent.fire(Y);break;case"SELECT":this.srcElement=C;Y.superclass.init.call(this,O.generateId());this.beforeInitEvent.fire(Y);break}}else{Y.superclass.init.call(this,A);this.beforeInitEvent.fire(Y)}if(this.element){O.addClass(this.element,this.CSS_CLASS_NAME);this.initEvent.subscribe(this._onInit);this.beforeRenderEvent.subscribe(this._onBeforeRender);this.renderEvent.subscribe(this._onRender);this.renderEvent.subscribe(this.onRender);this.beforeShowEvent.subscribe(this._onBeforeShow);this.hideEvent.subscribe(this.positionOffScreen);this.showEvent.subscribe(this._onShow);this.beforeHideEvent.subscribe(this._onBeforeHide);this.mouseOverEvent.subscribe(this._onMouseOver);this.mouseOutEvent.subscribe(this._onMouseOut);this.clickEvent.subscribe(this._onClick);this.keyDownEvent.subscribe(this._onKeyDown);this.keyPressEvent.subscribe(this._onKeyPress);if(W.gecko||W.webkit){this.cfg.subscribeToConfigEvent("y",this._onYChange)}if(B){this.cfg.applyConfig(B,true)}T.addMenu(this);this.initEvent.fire(Y)}},_initSubTree:function(){var G=this.srcElement,H,E,B,A,C,D,F;if(G){H=(G.tagName&&G.tagName.toUpperCase());if(H=="DIV"){A=this.body.firstChild;if(A){E=0;B=this.GROUP_TITLE_TAG_NAME.toUpperCase();do{if(A&&A.tagName){switch(A.tagName.toUpperCase()){case B:this._aGroupTitleElements[E]=A;break;case"UL":this._aListElements[E]=A;this._aItemGroups[E]=[];E++;break}}}while((A=A.nextSibling));if(this._aListElements[0]){O.addClass(this._aListElements[0],"first-of-type")}}}A=null;if(H){switch(H){case"DIV":C=this._aListElements;D=C.length;if(D>0){F=D-1;do{A=C[F].firstChild;if(A){do{if(A&&A.tagName&&A.tagName.toUpperCase()=="LI"){this.addItem(new this.ITEM_TYPE(A,{parent:this}),F)}}while((A=A.nextSibling))}}while(F--)}break;case"SELECT":A=G.firstChild;do{if(A&&A.tagName){switch(A.tagName.toUpperCase()){case"OPTGROUP":case"OPTION":this.addItem(new this.ITEM_TYPE(A,{parent:this}));break}}}while((A=A.nextSibling));break}}}},_getFirstEnabledItem:function(){var D=this.getItems(),A=D.length,B;for(var C=0;C<A;C++){B=D[C];if(B&&!B.cfg.getProperty("disabled")&&B.element.style.display!="none"){return B}}},_addItemToGroup:function(F,E,B){var D,A,H,C,G,J,I;function K(M,L){return(M[L]||K(M,(L+1)))}if(E instanceof this.ITEM_TYPE){D=E;D.parent=this}else{if(typeof E=="string"){D=new this.ITEM_TYPE(E,{parent:this})}else{if(typeof E=="object"){E.parent=this;D=new this.ITEM_TYPE(E.text,E)}}}if(D){if(D.cfg.getProperty("selected")){this.activeItem=D}A=typeof F=="number"?F:0;H=this._getItemGroup(A);if(!H){H=this._createItemGroup(A)}if(typeof B=="number"){G=(B>=H.length);if(H[B]){H.splice(B,0,D)}else{H[B]=D}C=H[B];if(C){if(G&&(!C.element.parentNode||C.element.parentNode.nodeType==11)){this._aListElements[A].appendChild(C.element)}else{J=K(H,(B+1));if(J&&(!C.element.parentNode||C.element.parentNode.nodeType==11)){this._aListElements[A].insertBefore(C.element,J.element)}}C.parent=this;this._subscribeToItemEvents(C);this._configureSubmenu(C);this._updateItemProperties(A);this.itemAddedEvent.fire(C);this.changeContentEvent.fire();return C}}else{I=H.length;H[I]=D;C=H[I];if(C){if(!O.isAncestor(this._aListElements[A],C.element)){this._aListElements[A].appendChild(C.element)}C.element.setAttribute("groupindex",A);C.element.setAttribute("index",I);C.parent=this;C.index=I;C.groupIndex=A;this._subscribeToItemEvents(C);this._configureSubmenu(C);if(I===0){O.addClass(C.element,"first-of-type")}this.itemAddedEvent.fire(C);this.changeContentEvent.fire();return C}}}},_removeItemFromGroupByIndex:function(D,F){var E=typeof D=="number"?D:0,C=this._getItemGroup(E),A,B,G;if(C){A=C.splice(F,1);B=A[0];if(B){this._updateItemProperties(E);if(C.length===0){G=this._aListElements[E];if(this.body&&G){this.body.removeChild(G)}this._aItemGroups.splice(E,1);this._aListElements.splice(E,1);G=this._aListElements[0];if(G){O.addClass(G,"first-of-type")}}this.itemRemovedEvent.fire(B);this.changeContentEvent.fire();return B}}},_removeItemFromGroupByValue:function(D,F){var B=this._getItemGroup(D),A,C,E;if(B){A=B.length;C=-1;if(A>0){E=A-1;do{if(B[E]==F){C=E;break}}while(E--);if(C>-1){return(this._removeItemFromGroupByIndex(D,C))}}}},_updateItemProperties:function(E){var D=this._getItemGroup(E),A=D.length,B,C,F;if(A>0){F=A-1;do{B=D[F];if(B){C=B.element;B.index=F;B.groupIndex=E;C.setAttribute("groupindex",E);C.setAttribute("index",F);O.removeClass(C,"first-of-type")}}while(F--);if(C){O.addClass(C,"first-of-type")}}},_createItemGroup:function(A){var B;if(!this._aItemGroups[A]){this._aItemGroups[A]=[];B=document.createElement("ul");this._aListElements[A]=B;return this._aItemGroups[A]}},_getItemGroup:function(A){var B=((typeof A=="number")?A:0);return this._aItemGroups[B]},_configureSubmenu:function(B){var A=B.cfg.getProperty("submenu");if(A){this.cfg.configChangedEvent.subscribe(this._onParentMenuConfigChange,A,true);this.renderEvent.subscribe(this._onParentMenuRender,A,true);A.beforeShowEvent.subscribe(this._onSubmenuBeforeShow)}},_subscribeToItemEvents:function(A){A.focusEvent.subscribe(this._onMenuItemFocus);A.blurEvent.subscribe(this._onMenuItemBlur);A.destroyEvent.subscribe(this._onMenuItemDestroy,A,this);A.cfg.configChangedEvent.subscribe(this._onMenuItemConfigChange,A,this)},_onVisibleChange:function(A,B){var C=B[0];if(C){O.addClass(this.element,"visible")}else{O.removeClass(this.element,"visible")}},_cancelHideDelay:function(){var A=this.getRoot();if(A._nHideDelayId){window.clearTimeout(A._nHideDelayId)}},_execHideDelay:function(){this._cancelHideDelay();var B=this.getRoot(),A=this;function C(){if(B.activeItem){B.clearActiveItem()}if(B==A&&!(A instanceof YAHOO.widget.MenuBar)&&A.cfg.getProperty("position")=="dynamic"){A.hide()}}B._nHideDelayId=window.setTimeout(C,B.cfg.getProperty("hidedelay"))},_cancelShowDelay:function(){var A=this.getRoot();if(A._nShowDelayId){window.clearTimeout(A._nShowDelayId)}},_execShowDelay:function(A){var B=this.getRoot();function C(){if(A.parent.cfg.getProperty("selected")){A.show()}}B._nShowDelayId=window.setTimeout(C,B.cfg.getProperty("showdelay"))},_execSubmenuHideDelay:function(A,C,D){var B=this;A._nSubmenuHideDelayId=window.setTimeout(function(){if(B._nCurrentMouseX>(C+10)){A._nSubmenuHideDelayId=window.setTimeout(function(){A.hide()},D)}else{A.hide()}},50)},_disableScrollHeader:function(){if(!this._bHeaderDisabled){O.addClass(this.header,"topscrollbar_disabled");this._bHeaderDisabled=true}},_disableScrollFooter:function(){if(!this._bFooterDisabled){O.addClass(this.footer,"bottomscrollbar_disabled");this._bFooterDisabled=true}},_enableScrollHeader:function(){if(this._bHeaderDisabled){O.removeClass(this.header,"topscrollbar_disabled");this._bHeaderDisabled=false}},_enableScrollFooter:function(){if(this._bFooterDisabled){O.removeClass(this.footer,"bottomscrollbar_disabled");this._bFooterDisabled=false}},_onMouseOver:function(B,G){if(this._bStopMouseEventHandlers){return false}var A=G[0],C=G[1],K=R.getTarget(A),J,H,D,I,E,F;if(!this._bHandledMouseOverEvent&&(K==this.element||O.isAncestor(this.element,K))){this._nCurrentMouseX=0;R.on(this.element,"mousemove",this._onMouseMove,this,true);this.clearActiveItem();if(this.parent&&this._nSubmenuHideDelayId){window.clearTimeout(this._nSubmenuHideDelayId);this.parent.cfg.setProperty("selected",true);J=this.parent.parent;J._bHandledMouseOutEvent=true;J._bHandledMouseOverEvent=false}this._bHandledMouseOverEvent=true;this._bHandledMouseOutEvent=false}if(C&&!C.handledMouseOverEvent&&!C.cfg.getProperty("disabled")&&(K==C.element||O.isAncestor(C.element,K))){H=this.cfg.getProperty("showdelay");D=(H>0);if(D){this._cancelShowDelay()}I=this.activeItem;if(I){I.cfg.setProperty("selected",false)}E=C.cfg;E.setProperty("selected",true);if(this.hasFocus()){C.focus()}if(this.cfg.getProperty("autosubmenudisplay")){F=E.getProperty("submenu");if(F){if(D){this._execShowDelay(F)}else{F.show()}}}C.handledMouseOverEvent=true;C.handledMouseOutEvent=false}},_onMouseOut:function(B,H){if(this._bStopMouseEventHandlers){return false}var A=H[0],D=H[1],G=R.getRelatedTarget(A),C=false,E,F,J,I;if(D&&!D.cfg.getProperty("disabled")){E=D.cfg;F=E.getProperty("submenu");if(F&&(G==F.element||O.isAncestor(F.element,G))){C=true}if(!D.handledMouseOutEvent&&((G!=D.element&&!O.isAncestor(D.element,G))||C)){if(!C){D.cfg.setProperty("selected",false);if(F){J=this.cfg.getProperty("submenuhidedelay");I=this.cfg.getProperty("showdelay");if(!(this instanceof YAHOO.widget.MenuBar)&&J>0&&I>=J){this._execSubmenuHideDelay(F,R.getPageX(A),J)}else{F.hide()}}}D.handledMouseOutEvent=true;D.handledMouseOverEvent=false}}if(!this._bHandledMouseOutEvent&&((G!=this.element&&!O.isAncestor(this.element,G))||C)){R.removeListener(this.element,"mousemove",this._onMouseMove);this._nCurrentMouseX=R.getPageX(A);this._bHandledMouseOutEvent=true;this._bHandledMouseOverEvent=false}},_onMouseMove:function(A,B){if(this._bStopMouseEventHandlers){return false}this._nCurrentMouseX=R.getPageX(A)},_onClick:function(B,I){var A=I[0],F=I[1],D=false,H,J,K,G,E,C;if(F){if(F.cfg.getProperty("disabled")){R.preventDefault(A)}else{H=F.cfg.getProperty("submenu");G=F.cfg.getProperty("url");if(G){E=G.indexOf("#");C=G.length;if(E!=-1){G=G.substr(E,C);C=G.length;if(C>1){K=G.substr(1,C);D=O.isAncestor(this.element,K)}else{if(C===1){D=true}}}}if(D&&!F.cfg.getProperty("target")){R.preventDefault(A);if(W.webkit){F.focus()}else{F.focusEvent.fire()}}if(!H){if((W.gecko&&this.platform=="windows")&&A.button>0){return }J=this.getRoot();if(J instanceof YAHOO.widget.MenuBar||J.cfg.getProperty("position")=="static"){J.clearActiveItem()}else{J.hide()}}}}},_onKeyDown:function(k,E){var B=E[0],C=E[1],g=this,F,A,L,H,j,M,h,I,l,J,D,i,G;function K(){g._bStopMouseEventHandlers=true;window.setTimeout(function(){g._bStopMouseEventHandlers=false},10)}if(C&&!C.cfg.getProperty("disabled")){A=C.cfg;L=this.parent;switch(B.keyCode){case 38:case 40:j=(B.keyCode==38)?C.getPreviousEnabledSibling():C.getNextEnabledSibling();if(j){this.clearActiveItem();j.cfg.setProperty("selected",true);j.focus();if(this.cfg.getProperty("maxheight")>0){M=this.body;h=M.scrollTop;I=M.offsetHeight;l=this.getItems();J=l.length-1;D=j.element.offsetTop;if(B.keyCode==40){if(D>=(I+h)){M.scrollTop=D-I}else{if(D<=h){M.scrollTop=0}}if(j==l[J]){M.scrollTop=j.element.offsetTop}}else{if(D<=h){M.scrollTop=D-j.element.offsetHeight}else{if(D>=(h+I)){M.scrollTop=D}}if(j==l[0]){M.scrollTop=0}}h=M.scrollTop;i=M.scrollHeight-M.offsetHeight;if(h===0){this._disableScrollHeader();this._enableScrollFooter()}else{if(h==i){this._enableScrollHeader();this._disableScrollFooter()}else{this._enableScrollHeader();this._enableScrollFooter()}}}}R.preventDefault(B);K();break;case 39:F=A.getProperty("submenu");if(F){if(!A.getProperty("selected")){A.setProperty("selected",true)}F.show();F.setInitialFocus();F.setInitialSelection()}else{H=this.getRoot();if(H instanceof YAHOO.widget.MenuBar){j=H.activeItem.getNextEnabledSibling();if(j){H.clearActiveItem();j.cfg.setProperty("selected",true);F=j.cfg.getProperty("submenu");if(F){F.show()}j.focus()}}}R.preventDefault(B);K();break;case 37:if(L){G=L.parent;if(G instanceof YAHOO.widget.MenuBar){j=G.activeItem.getPreviousEnabledSibling();if(j){G.clearActiveItem();j.cfg.setProperty("selected",true);F=j.cfg.getProperty("submenu");if(F){F.show()}j.focus()}}else{this.hide();L.focus()}}R.preventDefault(B);K();break}}if(B.keyCode==27){if(this.cfg.getProperty("position")=="dynamic"){this.hide();if(this.parent){this.parent.focus()}}else{if(this.activeItem){F=this.activeItem.cfg.getProperty("submenu");if(F&&F.cfg.getProperty("visible")){F.hide();this.activeItem.focus()}else{this.activeItem.blur();this.activeItem.cfg.setProperty("selected",false)}}}R.preventDefault(B)}},_onKeyPress:function(A,B){var C=B[0];if(C.keyCode==40||C.keyCode==38){R.preventDefault(C)}},_onYChange:function(E,F){var C=this.parent,A,D,B;if(C){A=C.parent.body.scrollTop;if(A>0){B=(this.cfg.getProperty("y")-A);O.setY(this.element,B);D=this.iframe;if(D){O.setY(D,B)}this.cfg.setProperty("y",B,true)}}},_onScrollTargetMouseOver:function(D,A){this._cancelHideDelay();var H=R.getTarget(D),F=this.body,B=this,G=this.cfg.getProperty("scrollincrement"),J,I;function C(){var K=F.scrollTop;if(K<J){F.scrollTop=(K+G);B._enableScrollHeader()}else{F.scrollTop=J;window.clearInterval(B._nBodyScrollId);B._disableScrollFooter()}}function E(){var K=F.scrollTop;if(K>0){F.scrollTop=(K-G);B._enableScrollFooter()}else{F.scrollTop=0;window.clearInterval(B._nBodyScrollId);B._disableScrollHeader()}}if(O.hasClass(H,"hd")){I=E}else{J=F.scrollHeight-F.offsetHeight;I=C}this._nBodyScrollId=window.setInterval(I,10)},_onScrollTargetMouseOut:function(A,B){window.clearInterval(this._nBodyScrollId);this._cancelHideDelay()},_onInit:function(C,D){this.cfg.subscribeToConfigEvent("visible",this._onVisibleChange);var B=!this.parent,A=this.lazyLoad;if(((B&&!A)||(B&&(this.cfg.getProperty("visible")||this.cfg.getProperty("position")=="static"))||(!B&&!A))&&this.getItemGroups().length===0){if(this.srcElement){this._initSubTree()}if(this.itemData){this.addItems(this.itemData)}}else{if(A){this.cfg.fireQueue()}}},_onBeforeRender:function(E,F){var D=this.element,A=this._aListElements.length,G=true,B=0,H,C;if(A>0){do{H=this._aListElements[B];if(H){if(G){O.addClass(H,"first-of-type");G=false}if(!O.isAncestor(D,H)){this.appendToBody(H)}C=this._aGroupTitleElements[B];if(C){if(!O.isAncestor(D,C)){H.parentNode.insertBefore(C,H)}O.addClass(H,"hastitle")}}B++}while(B<A)}},_onRender:function(A,B){if(this.cfg.getProperty("position")=="dynamic"){if(!this.cfg.getProperty("visible")){this.positionOffScreen()}}},_onBeforeShow:function(B,G){var C,J,F,H,E;if(this.lazyLoad&&this.getItemGroups().length===0){if(this.srcElement){this._initSubTree()}if(this.itemData){if(this.parent&&this.parent.parent&&this.parent.parent.srcElement&&this.parent.parent.srcElement.tagName.toUpperCase()=="SELECT"){C=this.itemData.length;for(J=0;J<C;J++){if(this.itemData[J].tagName){this.addItem((new this.ITEM_TYPE(this.itemData[J])))}}}else{this.addItems(this.itemData)}}E=this.srcElement;if(E){if(E.tagName.toUpperCase()=="SELECT"){if(O.inDocument(E)){this.render(E.parentNode)}else{this.render(this.cfg.getProperty("container"))}}else{this.render()}}else{if(this.parent){this.render(this.parent.element)}else{this.render(this.cfg.getProperty("container"))}}}var I=this.cfg.getProperty("maxheight"),K=this.cfg.getProperty("minscrollheight"),D=this.cfg.getProperty("position")=="dynamic";if(!this.parent&&D){this.cfg.refireEvent("xy")}function A(){this.cfg.setProperty("maxheight",0);this.hideEvent.unsubscribe(A)}if(!(this instanceof YAHOO.widget.MenuBar)&&D){if(I===0){F=O.getViewportHeight();if(this.parent&&this.parent.parent instanceof YAHOO.widget.MenuBar){H=YAHOO.util.Region.getRegion(this.parent.element);F=(F-H.bottom)}if(this.element.offsetHeight>=F){I=(F-(P.VIEWPORT_OFFSET*2));if(I<K){I=K}this.cfg.setProperty("maxheight",I);this.hideEvent.subscribe(A)}}}},_onShow:function(D,E){var A=this.parent,B,G,F;function C(H){var I;if(H.type=="mousedown"||(H.type=="keydown"&&H.keyCode==27)){I=R.getTarget(H);if(I!=B.element||!O.isAncestor(B.element,I)){B.cfg.setProperty("autosubmenudisplay",false);R.removeListener(document,"mousedown",C);R.removeListener(document,"keydown",C)}}}if(A){B=A.parent;G=B.cfg.getProperty("submenualignment");F=this.cfg.getProperty("submenualignment");if((G[0]!=F[0])&&(G[1]!=F[1])){this.cfg.setProperty("submenualignment",[G[0],G[1]])}if(!B.cfg.getProperty("autosubmenudisplay")&&(B instanceof YAHOO.widget.MenuBar||B.cfg.getProperty("position")=="static")){B.cfg.setProperty("autosubmenudisplay",true);R.on(document,"mousedown",C);R.on(document,"keydown",C)}}},_onBeforeHide:function(C,D){var E=this.activeItem,A,B;if(E){A=E.cfg;A.setProperty("selected",false);B=A.getProperty("submenu");if(B){B.hide()}}if(this.getRoot()==this){this.blur()}},_onParentMenuConfigChange:function(D,E,A){var C=E[0][0],B=E[0][1];switch(C){case"iframe":case"constraintoviewport":case"hidedelay":case"showdelay":case"submenuhidedelay":case"clicktohide":case"effect":case"classname":case"scrollincrement":case"minscrollheight":A.cfg.setProperty(C,B);break}},_onParentMenuRender:function(E,F,A){var D=A.parent.parent.cfg,C={constraintoviewport:D.getProperty("constraintoviewport"),xy:[0,0],clicktohide:D.getProperty("clicktohide"),effect:D.getProperty("effect"),showdelay:D.getProperty("showdelay"),hidedelay:D.getProperty("hidedelay"),submenuhidedelay:D.getProperty("submenuhidedelay"),classname:D.getProperty("classname"),scrollincrement:D.getProperty("scrollincrement"),minscrollheight:D.getProperty("minscrollheight"),iframe:D.getProperty("iframe")},B;A.cfg.applyConfig(C);if(!this.lazyLoad){B=this.parent.element;if(this.element.parentNode==B){this.render()}else{this.render(B)}}},_onSubmenuBeforeShow:function(B,C){var A=this.parent,D=A.parent.cfg.getProperty("submenualignment");if(!this.cfg.getProperty("context")){this.cfg.setProperty("context",[A.element,D[0],D[1]])}else{this.align()}},_onMenuItemFocus:function(A,B){this.parent.focusEvent.fire(this)},_onMenuItemBlur:function(A,B){this.parent.blurEvent.fire(this)},_onMenuItemDestroy:function(A,B,C){this._removeItemFromGroupByValue(C.groupIndex,C)},_onMenuItemConfigChange:function(D,E,F){var B=E[0][0],A=E[0][1],C;switch(B){case"selected":if(A===true){this.activeItem=F}break;case"submenu":C=E[0][1];if(C){this._configureSubmenu(F)}break}},enforceConstraints:function(F,H,B){YAHOO.widget.Menu.superclass.enforceConstraints.apply(this,arguments);var C=this.parent,G,D,E,A;if(C){G=C.parent;if(!(G instanceof YAHOO.widget.MenuBar)){D=G.cfg.getProperty("x");A=this.cfg.getProperty("x");if(A<(D+C.element.offsetWidth)){E=(D-this.element.offsetWidth);this.cfg.setProperty("x",E,true);this.cfg.setProperty("xy",[E,(this.cfg.getProperty("y"))],true)}}}},configVisible:function(C,D,B){var E,A;if(this.cfg.getProperty("position")=="dynamic"){Y.superclass.configVisible.call(this,C,D,B)}else{E=D[0];A=O.getStyle(this.element,"display");O.setStyle(this.element,"visibility","visible");if(E){if(A!="block"){this.beforeShowEvent.fire();O.setStyle(this.element,"display","block");this.showEvent.fire()}}else{if(A=="block"){this.beforeHideEvent.fire();O.setStyle(this.element,"display","none");this.hideEvent.fire()}}}},configPosition:function(E,F,B){var C=this.element,D=F[0]=="static"?"static":"absolute",A=this.cfg,G;O.setStyle(C,"position",D);if(D=="static"){O.setStyle(C,"display","block");A.setProperty("visible",true)}else{O.setStyle(C,"visibility","hidden")}if(D=="absolute"){G=A.getProperty("zindex");if(!G||G===0){G=this.parent?(this.parent.parent.cfg.getProperty("zindex")+1):1;A.setProperty("zindex",G)}}},configIframe:function(B,C,A){if(this.cfg.getProperty("position")=="dynamic"){Y.superclass.configIframe.call(this,B,C,A)}},configHideDelay:function(F,G,C){var A=G[0],B=this.mouseOutEvent,E=this.mouseOverEvent,D=this.keyDownEvent;if(A>0){if(!this._bHideDelayEventHandlersAssigned){B.subscribe(this._execHideDelay);E.subscribe(this._cancelHideDelay);D.subscribe(this._cancelHideDelay);this._bHideDelayEventHandlersAssigned=true}}else{B.unsubscribe(this._execHideDelay);E.unsubscribe(this._cancelHideDelay);D.unsubscribe(this._cancelHideDelay);this._bHideDelayEventHandlersAssigned=false}},configContainer:function(C,D,A){var B=D[0];if(typeof B=="string"){this.cfg.setProperty("container",document.getElementById(B),true)}},_setMaxHeight:function(B,C,A){this.cfg.setProperty("maxheight",A);this.renderEvent.unsubscribe(this._setMaxHeight)},configMaxHeight:function(d,F,C){var G=F[0],J=this.element,I=this.body,B=this.header,L=this.footer,D=this._onScrollTargetMouseOver,c=this._onScrollTargetMouseOut,M=this.cfg.getProperty("minscrollheight"),E,H,K;if(G!==0&&G<M){G=M}if(this.lazyLoad&&!I){this.renderEvent.unsubscribe(this._setMaxHeight);if(G>0){this.renderEvent.subscribe(this._setMaxHeight,G,this)}return }O.setStyle(I,"height","");O.removeClass(I,"yui-menu-body-scrolled");var A=((W.gecko&&this.parent&&this.parent.parent&&this.parent.parent.cfg.getProperty("position")=="dynamic")||W.ie);if(A){if(!this.cfg.getProperty("width")){H=J.offsetWidth;J.style.width=H+"px";K=(H-(J.offsetWidth-H))+"px";this.cfg.setProperty("width",K)}}if(!B&&!L){this.setHeader("&#32;");this.setFooter("&#32;");B=this.header;L=this.footer;O.addClass(B,"topscrollbar");O.addClass(L,"bottomscrollbar");J.insertBefore(B,I);J.appendChild(L)}E=(G-(B.offsetHeight+B.offsetHeight));if(E>0&&(I.offsetHeight>G)){O.addClass(I,"yui-menu-body-scrolled");O.setStyle(I,"height",(E+"px"));R.on(B,"mouseover",D,this,true);R.on(B,"mouseout",c,this,true);R.on(L,"mouseover",D,this,true);R.on(L,"mouseout",c,this,true);this._disableScrollHeader();this._enableScrollFooter()}else{if(B&&L){if(A){this.cfg.setProperty("width","")}this._enableScrollHeader();this._enableScrollFooter();R.removeListener(B,"mouseover",D);R.removeListener(B,"mouseout",c);R.removeListener(L,"mouseover",D);R.removeListener(L,"mouseout",c);J.removeChild(B);J.removeChild(L);this.header=null;this.footer=null}}this.cfg.refireEvent("iframe")},configClassName:function(B,C,A){var D=C[0];if(this._sClassName){O.removeClass(this.element,this._sClassName)}O.addClass(this.element,D);this._sClassName=D},_onItemAdded:function(B,C){var A=C[0];if(A){A.cfg.setProperty("disabled",true)}},configDisabled:function(E,F,B){var C=F[0],G=this.getItems(),A,D;if(Z.isArray(G)){A=G.length;if(A>0){D=A-1;do{G[D].cfg.setProperty("disabled",C)}while(D--)}if(C){this.clearActiveItem(true);O.addClass(this.element,"disabled");this.itemAddedEvent.subscribe(this._onItemAdded)}else{O.removeClass(this.element,"disabled");this.itemAddedEvent.unsubscribe(this._onItemAdded)}}},onRender:function(D,E){function C(){var I=this.element,J=this._shadow;if(J&&I){if(J.style.width&&J.style.height){J.style.width="";J.style.height=""}J.style.width=(I.offsetWidth+6)+"px";J.style.height=(I.offsetHeight+1)+"px"}}function A(){this.element.appendChild(this._shadow)}function G(){O.addClass(this._shadow,"yui-menu-shadow-visible")}function H(){O.removeClass(this._shadow,"yui-menu-shadow-visible")}function B(){var I=this._shadow,J,K;if(!I){J=this.element;K=this;if(!X){X=document.createElement("div");X.className="yui-menu-shadow yui-menu-shadow-visible"}I=X.cloneNode(false);J.appendChild(I);this._shadow=I;this.beforeShowEvent.subscribe(G);this.beforeHideEvent.subscribe(H);if(W.ie){window.setTimeout(function(){C.call(K);K.syncIframe()},0);this.cfg.subscribeToConfigEvent("width",C);this.cfg.subscribeToConfigEvent("height",C);this.cfg.subscribeToConfigEvent("maxheight",C);this.changeContentEvent.subscribe(C);N.textResizeEvent.subscribe(C,K,true);this.destroyEvent.subscribe(function(){N.textResizeEvent.unsubscribe(C,K)})}this.cfg.subscribeToConfigEvent("maxheight",A)}}function F(){B.call(this);this.beforeShowEvent.unsubscribe(F)}if(this.cfg.getProperty("position")=="dynamic"){if(this.cfg.getProperty("visible")){B.call(this)}else{this.beforeShowEvent.subscribe(F)}}},initEvents:function(){Y.superclass.initEvents.call(this);var A=S.LIST;this.mouseOverEvent=this.createEvent(Q.MOUSE_OVER);this.mouseOverEvent.signature=A;this.mouseOutEvent=this.createEvent(Q.MOUSE_OUT);this.mouseOutEvent.signature=A;this.mouseDownEvent=this.createEvent(Q.MOUSE_DOWN);this.mouseDownEvent.signature=A;this.mouseUpEvent=this.createEvent(Q.MOUSE_UP);this.mouseUpEvent.signature=A;this.clickEvent=this.createEvent(Q.CLICK);this.clickEvent.signature=A;this.keyPressEvent=this.createEvent(Q.KEY_PRESS);this.keyPressEvent.signature=A;this.keyDownEvent=this.createEvent(Q.KEY_DOWN);this.keyDownEvent.signature=A;this.keyUpEvent=this.createEvent(Q.KEY_UP);this.keyUpEvent.signature=A;this.focusEvent=this.createEvent(Q.FOCUS);this.focusEvent.signature=A;this.blurEvent=this.createEvent(Q.BLUR);this.blurEvent.signature=A;this.itemAddedEvent=this.createEvent(Q.ITEM_ADDED);this.itemAddedEvent.signature=A;this.itemRemovedEvent=this.createEvent(Q.ITEM_REMOVED);this.itemRemovedEvent.signature=A},positionOffScreen:function(){var A=this.iframe,B=this.OFF_SCREEN_POSITION;O.setXY(this.element,B);if(A){O.setXY(A,B)}},getRoot:function(){var A=this.parent,B;if(A){B=A.parent;return B?B.getRoot():this}else{return this}},toString:function(){var A="Menu",B=this.id;if(B){A+=(" "+B)}return A},setItemGroupTitle:function(A,B){var C,D,E,F;if(typeof A=="string"&&A.length>0){C=typeof B=="number"?B:0;D=this._aGroupTitleElements[C];if(D){D.innerHTML=A}else{D=document.createElement(this.GROUP_TITLE_TAG_NAME);D.innerHTML=A;this._aGroupTitleElements[C]=D}E=this._aGroupTitleElements.length-1;do{if(this._aGroupTitleElements[E]){O.removeClass(this._aGroupTitleElements[E],"first-of-type");F=E}}while(E--);if(F!==null){O.addClass(this._aGroupTitleElements[F],"first-of-type")}this.changeContentEvent.fire()}},addItem:function(B,A){if(B){return this._addItemToGroup(A,B)}},addItems:function(C,D){var A,F,B,E;if(Z.isArray(C)){A=C.length;F=[];for(E=0;E<A;E++){B=C[E];if(B){if(Z.isArray(B)){F[F.length]=this.addItems(B,E)}else{F[F.length]=this._addItemToGroup(D,B)}}}if(F.length){return F}}},insertItem:function(C,B,A){if(C){return this._addItemToGroup(A,C,B)}},removeItem:function(C,B){var A;if(typeof C!="undefined"){if(C instanceof YAHOO.widget.MenuItem){A=this._removeItemFromGroupByValue(B,C)}else{if(typeof C=="number"){A=this._removeItemFromGroupByIndex(B,C)}}if(A){A.destroy();return A}}},getItems:function(){var A=this._aItemGroups,B,C=[];if(Z.isArray(A)){B=A.length;return((B==1)?A[0]:(Array.prototype.concat.apply(C,A)))}},getItemGroups:function(){return this._aItemGroups},getItem:function(C,B){var A;if(typeof C=="number"){A=this._getItemGroup(B);if(A){return A[C]}}},getSubmenus:function(){var E=this.getItems(),A=E.length,F,D,B,C;if(A>0){F=[];for(C=0;C<A;C++){B=E[C];if(B){D=B.cfg.getProperty("submenu");if(D){F[F.length]=D}}}}return F},clearContent:function(){var E=this.getItems(),H=E.length,G=this.element,F=this.body,A=this.header,I=this.footer,B,C,D;if(H>0){D=H-1;do{B=E[D];if(B){C=B.cfg.getProperty("submenu");if(C){this.cfg.configChangedEvent.unsubscribe(this._onParentMenuConfigChange,C);this.renderEvent.unsubscribe(this._onParentMenuRender,C)}this.removeItem(B)}}while(D--)}if(A){R.purgeElement(A);G.removeChild(A)}if(I){R.purgeElement(I);G.removeChild(I)}if(F){R.purgeElement(F);F.innerHTML=""}this.activeItem=null;this._aItemGroups=[];this._aListElements=[];this._aGroupTitleElements=[];this.cfg.setProperty("width",null)},destroy:function(){this.clearContent();this._aItemGroups=null;this._aListElements=null;this._aGroupTitleElements=null;Y.superclass.destroy.call(this)},setInitialFocus:function(){var A=this._getFirstEnabledItem();if(A){A.focus()}},setInitialSelection:function(){var A=this._getFirstEnabledItem();if(A){A.cfg.setProperty("selected",true)}},clearActiveItem:function(B){if(this.cfg.getProperty("showdelay")>0){this._cancelShowDelay()}var D=this.activeItem,A,C;if(D){A=D.cfg;if(B){D.blur()}A.setProperty("selected",false);C=A.getProperty("submenu");if(C){C.hide()}this.activeItem=null}},focus:function(){if(!this.hasFocus()){this.setInitialFocus()}},blur:function(){var A;if(this.hasFocus()){A=T.getFocusedMenuItem();if(A){A.blur()}}},hasFocus:function(){return(T.getFocusedMenu()==this.getRoot())},subscribe:function(){function D(I,J,L){var K=J[0],H=K.cfg.getProperty("submenu");if(H){H.subscribe.apply(H,L)}}function A(I,J,K){var H=this.cfg.getProperty("submenu");if(H){H.subscribe.apply(H,K)}}Y.superclass.subscribe.apply(this,arguments);Y.superclass.subscribe.call(this,"itemAdded",D,arguments);var G=this.getItems(),B,C,F,E;if(G){B=G.length;if(B>0){E=B-1;do{C=G[E];F=C.cfg.getProperty("submenu");if(F){F.subscribe.apply(F,arguments)}else{C.cfg.subscribeToConfigEvent("submenu",A,arguments)}}while(E--)}}},initDefaultConfig:function(){Y.superclass.initDefaultConfig.call(this);var A=this.cfg;A.addProperty(U.VISIBLE.key,{handler:this.configVisible,value:U.VISIBLE.value,validator:U.VISIBLE.validator});A.addProperty(U.CONSTRAIN_TO_VIEWPORT.key,{handler:this.configConstrainToViewport,value:U.CONSTRAIN_TO_VIEWPORT.value,validator:U.CONSTRAIN_TO_VIEWPORT.validator,supercedes:U.CONSTRAIN_TO_VIEWPORT.supercedes});A.addProperty(U.POSITION.key,{handler:this.configPosition,value:U.POSITION.value,validator:U.POSITION.validator,supercedes:U.POSITION.supercedes});A.addProperty(U.SUBMENU_ALIGNMENT.key,{value:U.SUBMENU_ALIGNMENT.value,suppressEvent:U.SUBMENU_ALIGNMENT.suppressEvent});A.addProperty(U.AUTO_SUBMENU_DISPLAY.key,{value:U.AUTO_SUBMENU_DISPLAY.value,validator:U.AUTO_SUBMENU_DISPLAY.validator,suppressEvent:U.AUTO_SUBMENU_DISPLAY.suppressEvent});A.addProperty(U.SHOW_DELAY.key,{value:U.SHOW_DELAY.value,validator:U.SHOW_DELAY.validator,suppressEvent:U.SHOW_DELAY.suppressEvent});A.addProperty(U.HIDE_DELAY.key,{handler:this.configHideDelay,value:U.HIDE_DELAY.value,validator:U.HIDE_DELAY.validator,suppressEvent:U.HIDE_DELAY.suppressEvent});A.addProperty(U.SUBMENU_HIDE_DELAY.key,{value:U.SUBMENU_HIDE_DELAY.value,validator:U.SUBMENU_HIDE_DELAY.validator,suppressEvent:U.SUBMENU_HIDE_DELAY.suppressEvent});A.addProperty(U.CLICK_TO_HIDE.key,{value:U.CLICK_TO_HIDE.value,validator:U.CLICK_TO_HIDE.validator,suppressEvent:U.CLICK_TO_HIDE.suppressEvent});A.addProperty(U.CONTAINER.key,{handler:this.configContainer,value:document.body,suppressEvent:U.CONTAINER.suppressEvent});A.addProperty(U.SCROLL_INCREMENT.key,{value:U.SCROLL_INCREMENT.value,validator:U.SCROLL_INCREMENT.validator,supercedes:U.SCROLL_INCREMENT.supercedes,suppressEvent:U.SCROLL_INCREMENT.suppressEvent});A.addProperty(U.MIN_SCROLL_HEIGHT.key,{value:U.MIN_SCROLL_HEIGHT.value,validator:U.MIN_SCROLL_HEIGHT.validator,supercedes:U.MIN_SCROLL_HEIGHT.supercedes,suppressEvent:U.MIN_SCROLL_HEIGHT.suppressEvent});A.addProperty(U.MAX_HEIGHT.key,{handler:this.configMaxHeight,value:U.MAX_HEIGHT.value,validator:U.MAX_HEIGHT.validator,suppressEvent:U.MAX_HEIGHT.suppressEvent,supercedes:U.MAX_HEIGHT.supercedes});A.addProperty(U.CLASS_NAME.key,{handler:this.configClassName,value:U.CLASS_NAME.value,validator:U.CLASS_NAME.validator,supercedes:U.CLASS_NAME.supercedes});A.addProperty(U.DISABLED.key,{handler:this.configDisabled,value:U.DISABLED.value,validator:U.DISABLED.validator,suppressEvent:U.DISABLED.suppressEvent})}})})();(function(){YAHOO.widget.MenuItem=function(A,B){if(A){if(B){this.parent=B.parent;this.value=B.value;this.id=B.id}this.init(A,B)}};var L=YAHOO.util.Dom,K=YAHOO.widget.Module,R=YAHOO.widget.Menu,O=YAHOO.widget.MenuItem,N=YAHOO.util.CustomEvent,Q=YAHOO.lang,J,M={MOUSE_OVER:"mouseover",MOUSE_OUT:"mouseout",MOUSE_DOWN:"mousedown",MOUSE_UP:"mouseup",CLICK:"click",KEY_PRESS:"keypress",KEY_DOWN:"keydown",KEY_UP:"keyup",ITEM_ADDED:"itemAdded",ITEM_REMOVED:"itemRemoved",FOCUS:"focus",BLUR:"blur",DESTROY:"destroy"},P={TEXT:{key:"text",value:"",validator:Q.isString,suppressEvent:true},HELP_TEXT:{key:"helptext",supercedes:["text"],suppressEvent:true},URL:{key:"url",value:"#",suppressEvent:true},TARGET:{key:"target",suppressEvent:true},EMPHASIS:{key:"emphasis",value:false,validator:Q.isBoolean,suppressEvent:true,supercedes:["text"]},STRONG_EMPHASIS:{key:"strongemphasis",value:false,validator:Q.isBoolean,suppressEvent:true,supercedes:["text"]},CHECKED:{key:"checked",value:false,validator:Q.isBoolean,suppressEvent:true,supercedes:["disabled","selected"]},SUBMENU:{key:"submenu",suppressEvent:true,supercedes:["disabled","selected"]},DISABLED:{key:"disabled",value:false,validator:Q.isBoolean,suppressEvent:true,supercedes:["text","selected"]},SELECTED:{key:"selected",value:false,validator:Q.isBoolean,suppressEvent:true},ONCLICK:{key:"onclick",suppressEvent:true},CLASS_NAME:{key:"classname",value:null,validator:Q.isString,suppressEvent:true}};O.prototype={CSS_CLASS_NAME:"yuimenuitem",CSS_LABEL_CLASS_NAME:"yuimenuitemlabel",SUBMENU_TYPE:null,_oAnchor:null,_oHelpTextEM:null,_oSubmenu:null,_oOnclickAttributeValue:null,_sClassName:null,constructor:O,index:null,groupIndex:null,parent:null,element:null,srcElement:null,value:null,browser:K.prototype.browser,id:null,destroyEvent:null,mouseOverEvent:null,mouseOutEvent:null,mouseDownEvent:null,mouseUpEvent:null,clickEvent:null,keyPressEvent:null,keyDownEvent:null,keyUpEvent:null,focusEvent:null,blurEvent:null,init:function(I,A){if(!this.SUBMENU_TYPE){this.SUBMENU_TYPE=R}this.cfg=new YAHOO.util.Config(this);this.initDefaultConfig();var D=N.LIST,E=this.cfg,C="#",B,H,F,G;if(Q.isString(I)){this._createRootNodeStructure();E.queueProperty("text",I)}else{if(I&&I.tagName){switch(I.tagName.toUpperCase()){case"OPTION":this._createRootNodeStructure();E.queueProperty("text",I.text);E.queueProperty("disabled",I.disabled);this.value=I.value;this.srcElement=I;break;case"OPTGROUP":this._createRootNodeStructure();E.queueProperty("text",I.label);E.queueProperty("disabled",I.disabled);this.srcElement=I;this._initSubTree();break;case"LI":B=L.getFirstChild(I);if(B){C=B.getAttribute("href",2);H=B.getAttribute("target");F=B.innerHTML}this.srcElement=I;this.element=I;this._oAnchor=B;E.setProperty("text",F,true);E.setProperty("url",C,true);E.setProperty("target",H,true);this._initSubTree();break}}}if(this.element){G=(this.srcElement||this.element).id;if(!G){G=this.id||L.generateId();this.element.id=G}this.id=G;L.addClass(this.element,this.CSS_CLASS_NAME);L.addClass(this._oAnchor,this.CSS_LABEL_CLASS_NAME);this.mouseOverEvent=this.createEvent(M.MOUSE_OVER);this.mouseOverEvent.signature=D;this.mouseOutEvent=this.createEvent(M.MOUSE_OUT);this.mouseOutEvent.signature=D;this.mouseDownEvent=this.createEvent(M.MOUSE_DOWN);this.mouseDownEvent.signature=D;this.mouseUpEvent=this.createEvent(M.MOUSE_UP);this.mouseUpEvent.signature=D;this.clickEvent=this.createEvent(M.CLICK);this.clickEvent.signature=D;this.keyPressEvent=this.createEvent(M.KEY_PRESS);this.keyPressEvent.signature=D;this.keyDownEvent=this.createEvent(M.KEY_DOWN);this.keyDownEvent.signature=D;this.keyUpEvent=this.createEvent(M.KEY_UP);this.keyUpEvent.signature=D;this.focusEvent=this.createEvent(M.FOCUS);this.focusEvent.signature=D;this.blurEvent=this.createEvent(M.BLUR);this.blurEvent.signature=D;this.destroyEvent=this.createEvent(M.DESTROY);this.destroyEvent.signature=D;if(A){E.applyConfig(A)}E.fireQueue()}},_createRootNodeStructure:function(){var B,A;if(!J){J=document.createElement("li");J.innerHTML='<a href="#"></a>'}B=J.cloneNode(true);B.className=this.CSS_CLASS_NAME;A=B.firstChild;A.className=this.CSS_LABEL_CLASS_NAME;this.element=B;this._oAnchor=A},_initSubTree:function(){var D=this.srcElement,A=this.cfg,F,G,B,C,E;if(D.childNodes.length>0){if(this.parent.lazyLoad&&this.parent.srcElement&&this.parent.srcElement.tagName.toUpperCase()=="SELECT"){A.setProperty("submenu",{id:L.generateId(),itemdata:D.childNodes})}else{F=D.firstChild;G=[];do{if(F&&F.tagName){switch(F.tagName.toUpperCase()){case"DIV":A.setProperty("submenu",F);break;case"OPTION":G[G.length]=F;break}}}while((F=F.nextSibling));B=G.length;if(B>0){C=new this.SUBMENU_TYPE(L.generateId());A.setProperty("submenu",C);for(E=0;E<B;E++){C.addItem((new C.ITEM_TYPE(G[E])))}}}}},configText:function(A,H,F){var I=H[0],G=this.cfg,C=this._oAnchor,T=G.getProperty("helptext"),B="",E="",D="";if(I){if(T){B='<em class="helptext">'+T+"</em>"}if(G.getProperty("emphasis")){E="<em>";D="</em>"}if(G.getProperty("strongemphasis")){E="<strong>";D="</strong>"}C.innerHTML=(E+I+D+B)}},configHelpText:function(A,B,C){this.cfg.refireEvent("text")},configURL:function(A,B,C){var D=B[0];if(!D){D="#"}var E=this._oAnchor;if(YAHOO.env.ua.opera){E.removeAttribute("href")}E.setAttribute("href",D)},configTarget:function(E,A,B){var C=A[0],D=this._oAnchor;if(C&&C.length>0){D.setAttribute("target",C)}else{D.removeAttribute("target")}},configEmphasis:function(A,B,C){var D=B[0],E=this.cfg;if(D&&E.getProperty("strongemphasis")){E.setProperty("strongemphasis",false)}E.refireEvent("text")},configStrongEmphasis:function(E,A,B){var C=A[0],D=this.cfg;if(C&&D.getProperty("emphasis")){D.setProperty("emphasis",false)}D.refireEvent("text")},configChecked:function(A,G,E){var B=G[0],I=this.element,C=this._oAnchor,F=this.cfg,T="-checked",H=this.CSS_CLASS_NAME+T,D=this.CSS_LABEL_CLASS_NAME+T;if(B){L.addClass(I,H);L.addClass(C,D)}else{L.removeClass(I,H);L.removeClass(C,D)}F.refireEvent("text");if(F.getProperty("disabled")){F.refireEvent("disabled")}if(F.getProperty("selected")){F.refireEvent("selected")}},configDisabled:function(C,I,j){var A=I[0],g=this.cfg,c=g.getProperty("submenu"),d=g.getProperty("checked"),H=this.element,E=this._oAnchor,F="-disabled",D="-checked"+F,B="-hassubmenu"+F,f=this.CSS_CLASS_NAME+F,e=this.CSS_LABEL_CLASS_NAME+F,G=this.CSS_CLASS_NAME+D,b=this.CSS_LABEL_CLASS_NAME+D,h=this.CSS_CLASS_NAME+B,i=this.CSS_LABEL_CLASS_NAME+B;if(A){if(g.getProperty("selected")){g.setProperty("selected",false)}L.addClass(H,f);L.addClass(E,e);if(c){L.addClass(H,h);L.addClass(E,i)}if(d){L.addClass(H,G);L.addClass(E,b)}}else{L.removeClass(H,f);L.removeClass(E,e);if(c){L.removeClass(H,h);L.removeClass(E,i)}if(d){L.removeClass(H,G);L.removeClass(E,b)}}},configSelected:function(C,I,j){var g=this.cfg,B=I[0],H=this.element,E=this._oAnchor,d=g.getProperty("checked"),c=g.getProperty("submenu"),F="-selected",D="-checked"+F,A="-hassubmenu"+F,f=this.CSS_CLASS_NAME+F,e=this.CSS_LABEL_CLASS_NAME+F,G=this.CSS_CLASS_NAME+D,b=this.CSS_LABEL_CLASS_NAME+D,h=this.CSS_CLASS_NAME+A,i=this.CSS_LABEL_CLASS_NAME+A;if(YAHOO.env.ua.opera){E.blur()}if(B&&!g.getProperty("disabled")){L.addClass(H,f);L.addClass(E,e);if(c){L.addClass(H,h);L.addClass(E,i)}if(d){L.addClass(H,G);L.addClass(E,b)}}else{L.removeClass(H,f);L.removeClass(E,e);if(c){L.removeClass(H,h);L.removeClass(E,i)}if(d){L.removeClass(H,G);L.removeClass(E,b)}}if(this.hasFocus()&&YAHOO.env.ua.opera){E.focus()}},_onSubmenuBeforeHide:function(E,A){var D=this.parent,C;function B(){D._oAnchor.blur();C.beforeHideEvent.unsubscribe(B)}if(D.hasFocus()){C=D.parent;C.beforeHideEvent.subscribe(B)}},configSubmenu:function(B,I,F){var G=I[0],H=this.cfg,a=this.element,D=this._oAnchor,X=this.parent&&this.parent.lazyLoad,b="-hassubmenu",Z=this.CSS_CLASS_NAME+b,E=this.CSS_LABEL_CLASS_NAME+b,C,A,Y;if(G){if(G instanceof R){C=G;C.parent=this;C.lazyLoad=X}else{if(typeof G=="object"&&G.id&&!G.nodeType){A=G.id;Y=G;Y.lazyload=X;Y.parent=this;C=new this.SUBMENU_TYPE(A,Y);H.setProperty("submenu",C,true)}else{C=new this.SUBMENU_TYPE(G,{lazyload:X,parent:this});H.setProperty("submenu",C,true)}}if(C){L.addClass(a,Z);L.addClass(D,E);this._oSubmenu=C;if(YAHOO.env.ua.opera){C.beforeHideEvent.subscribe(this._onSubmenuBeforeHide)}}}else{L.removeClass(a,Z);L.removeClass(D,E);if(this._oSubmenu){this._oSubmenu.destroy()}}if(H.getProperty("disabled")){H.refireEvent("disabled")}if(H.getProperty("selected")){H.refireEvent("selected")}},configOnClick:function(A,B,C){var D=B[0];if(this._oOnclickAttributeValue&&(this._oOnclickAttributeValue!=D)){this.clickEvent.unsubscribe(this._oOnclickAttributeValue.fn,this._oOnclickAttributeValue.obj);this._oOnclickAttributeValue=null}if(!this._oOnclickAttributeValue&&typeof D=="object"&&typeof D.fn=="function"){this.clickEvent.subscribe(D.fn,((!YAHOO.lang.isUndefined(D.obj))?D.obj:this),D.scope);this._oOnclickAttributeValue=D}},configClassName:function(D,A,B){var C=A[0];if(this._sClassName){L.removeClass(this.element,this._sClassName)}L.addClass(this.element,C);this._sClassName=C},initDefaultConfig:function(){var A=this.cfg;A.addProperty(P.TEXT.key,{handler:this.configText,value:P.TEXT.value,validator:P.TEXT.validator,suppressEvent:P.TEXT.suppressEvent});A.addProperty(P.HELP_TEXT.key,{handler:this.configHelpText,supercedes:P.HELP_TEXT.supercedes,suppressEvent:P.HELP_TEXT.suppressEvent});A.addProperty(P.URL.key,{handler:this.configURL,value:P.URL.value,suppressEvent:P.URL.suppressEvent});A.addProperty(P.TARGET.key,{handler:this.configTarget,suppressEvent:P.TARGET.suppressEvent});A.addProperty(P.EMPHASIS.key,{handler:this.configEmphasis,value:P.EMPHASIS.value,validator:P.EMPHASIS.validator,suppressEvent:P.EMPHASIS.suppressEvent,supercedes:P.EMPHASIS.supercedes});A.addProperty(P.STRONG_EMPHASIS.key,{handler:this.configStrongEmphasis,value:P.STRONG_EMPHASIS.value,validator:P.STRONG_EMPHASIS.validator,suppressEvent:P.STRONG_EMPHASIS.suppressEvent,supercedes:P.STRONG_EMPHASIS.supercedes});A.addProperty(P.CHECKED.key,{handler:this.configChecked,value:P.CHECKED.value,validator:P.CHECKED.validator,suppressEvent:P.CHECKED.suppressEvent,supercedes:P.CHECKED.supercedes});A.addProperty(P.DISABLED.key,{handler:this.configDisabled,value:P.DISABLED.value,validator:P.DISABLED.validator,suppressEvent:P.DISABLED.suppressEvent});A.addProperty(P.SELECTED.key,{handler:this.configSelected,value:P.SELECTED.value,validator:P.SELECTED.validator,suppressEvent:P.SELECTED.suppressEvent});A.addProperty(P.SUBMENU.key,{handler:this.configSubmenu,supercedes:P.SUBMENU.supercedes,suppressEvent:P.SUBMENU.suppressEvent});A.addProperty(P.ONCLICK.key,{handler:this.configOnClick,suppressEvent:P.ONCLICK.suppressEvent});A.addProperty(P.CLASS_NAME.key,{handler:this.configClassName,value:P.CLASS_NAME.value,validator:P.CLASS_NAME.validator,suppressEvent:P.CLASS_NAME.suppressEvent})},getNextEnabledSibling:function(){var A,D,C,E,F;function B(H,G){return H[G]||B(H,(G+1))}if(this.parent instanceof R){A=this.groupIndex;D=this.parent.getItemGroups();if(this.index<(D[A].length-1)){C=B(D[A],(this.index+1))}else{if(A<(D.length-1)){E=A+1}else{E=0}F=B(D,E);C=B(F,0)}return(C.cfg.getProperty("disabled")||C.element.style.display=="none")?C.getNextEnabledSibling():C}},getPreviousEnabledSibling:function(){var F,D,B,C,G;function E(I,H){return I[H]||E(I,(H-1))}function A(I,H){return I[H]?H:A(I,(H+1))}if(this.parent instanceof R){F=this.groupIndex;D=this.parent.getItemGroups();if(this.index>A(D[F],0)){B=E(D[F],(this.index-1))}else{if(F>A(D,0)){C=F-1}else{C=D.length-1}G=E(D,C);B=E(G,(G.length-1))}return(B.cfg.getProperty("disabled")||B.element.style.display=="none")?B.getPreviousEnabledSibling():B}},focus:function(){var D=this.parent,E=this._oAnchor,C=D.activeItem,A=this;function B(){try{if(YAHOO.env.ua.ie&&!document.hasFocus()){return }if(C){C.blurEvent.fire()}E.focus();A.focusEvent.fire()}catch(F){}}if(!this.cfg.getProperty("disabled")&&D&&D.cfg.getProperty("visible")&&this.element.style.display!="none"){window.setTimeout(B,0)}},blur:function(){var A=this.parent;if(!this.cfg.getProperty("disabled")&&A&&A.cfg.getProperty("visible")){var B=this;window.setTimeout(function(){try{B._oAnchor.blur();B.blurEvent.fire()}catch(C){}},0)}},hasFocus:function(){return(YAHOO.widget.MenuManager.getFocusedMenuItem()==this)},destroy:function(){var A=this.element,B,C;if(A){B=this.cfg.getProperty("submenu");if(B){B.destroy()}this.mouseOverEvent.unsubscribeAll();this.mouseOutEvent.unsubscribeAll();this.mouseDownEvent.unsubscribeAll();this.mouseUpEvent.unsubscribeAll();this.clickEvent.unsubscribeAll();this.keyPressEvent.unsubscribeAll();this.keyDownEvent.unsubscribeAll();this.keyUpEvent.unsubscribeAll();this.focusEvent.unsubscribeAll();this.blurEvent.unsubscribeAll();this.cfg.configChangedEvent.unsubscribeAll();C=A.parentNode;if(C){C.removeChild(A);this.destroyEvent.fire()}this.destroyEvent.unsubscribeAll()}},toString:function(){var A="MenuItem",B=this.id;if(B){A+=(" "+B)}return A}};Q.augmentProto(O,YAHOO.util.EventProvider)})();(function(){YAHOO.widget.ContextMenu=function(A,B){YAHOO.widget.ContextMenu.superclass.constructor.call(this,A,B)};var J=YAHOO.util.Event,G=YAHOO.widget.ContextMenu,H={TRIGGER_CONTEXT_MENU:"triggerContextMenu",CONTEXT_MENU:(YAHOO.env.ua.opera?"mousedown":"contextmenu"),CLICK:"click"},I={TRIGGER:{key:"trigger",suppressEvent:true}};function F(B,C,A){this.cfg.setProperty("xy",A);this.beforeShowEvent.unsubscribe(F,A)}YAHOO.lang.extend(G,YAHOO.widget.Menu,{_oTrigger:null,_bCancelled:false,contextEventTarget:null,triggerContextMenuEvent:null,init:function(A,B){G.superclass.init.call(this,A);this.beforeInitEvent.fire(G);if(B){this.cfg.applyConfig(B,true)}this.initEvent.fire(G)},initEvents:function(){G.superclass.initEvents.call(this);this.triggerContextMenuEvent=this.createEvent(H.TRIGGER_CONTEXT_MENU);this.triggerContextMenuEvent.signature=YAHOO.util.CustomEvent.LIST},cancel:function(){this._bCancelled=true},_removeEventHandlers:function(){var A=this._oTrigger;if(A){J.removeListener(A,H.CONTEXT_MENU,this._onTriggerContextMenu);if(YAHOO.env.ua.opera){J.removeListener(A,H.CLICK,this._onTriggerClick)}}},_onTriggerClick:function(A,B){if(A.ctrlKey){J.stopEvent(A)}},_onTriggerContextMenu:function(A,C){if(A.type=="mousedown"&&!A.ctrlKey){return }var B;J.stopEvent(A);this.contextEventTarget=J.getTarget(A);this.triggerContextMenuEvent.fire(A);YAHOO.widget.MenuManager.hideVisible();if(!this._bCancelled){B=J.getXY(A);if(!YAHOO.util.Dom.inDocument(this.element)){this.beforeShowEvent.subscribe(F,B)}else{this.cfg.setProperty("xy",B)}this.show()}this._bCancelled=false},toString:function(){var A="ContextMenu",B=this.id;if(B){A+=(" "+B)}return A},initDefaultConfig:function(){G.superclass.initDefaultConfig.call(this);this.cfg.addProperty(I.TRIGGER.key,{handler:this.configTrigger,suppressEvent:I.TRIGGER.suppressEvent})},destroy:function(){this._removeEventHandlers();G.superclass.destroy.call(this)},configTrigger:function(C,D,A){var B=D[0];if(B){if(this._oTrigger){this._removeEventHandlers()}this._oTrigger=B;J.on(B,H.CONTEXT_MENU,this._onTriggerContextMenu,this,true);if(YAHOO.env.ua.opera){J.on(B,H.CLICK,this._onTriggerClick,this,true)}}else{this._removeEventHandlers()}}})}());YAHOO.widget.ContextMenuItem=YAHOO.widget.MenuItem;(function(){YAHOO.widget.MenuBar=function(A,B){YAHOO.widget.MenuBar.superclass.constructor.call(this,A,B)};function F(A){if(typeof A=="string"){return("dynamic,static".indexOf((A.toLowerCase()))!=-1)}}var H=YAHOO.util.Event,E=YAHOO.widget.MenuBar,G={POSITION:{key:"position",value:"static",validator:F,supercedes:["visible"]},SUBMENU_ALIGNMENT:{key:"submenualignment",value:["tl","bl"],suppressEvent:true},AUTO_SUBMENU_DISPLAY:{key:"autosubmenudisplay",value:false,validator:YAHOO.lang.isBoolean,suppressEvent:true}};YAHOO.lang.extend(E,YAHOO.widget.Menu,{init:function(A,B){if(!this.ITEM_TYPE){this.ITEM_TYPE=YAHOO.widget.MenuBarItem}E.superclass.init.call(this,A);this.beforeInitEvent.fire(E);if(B){this.cfg.applyConfig(B,true)}this.initEvent.fire(E)},CSS_CLASS_NAME:"yuimenubar",_onKeyDown:function(N,O,B){var P=O[0],A=O[1],D,C,M;if(A&&!A.cfg.getProperty("disabled")){C=A.cfg;switch(P.keyCode){case 37:case 39:if(A==this.activeItem&&!C.getProperty("selected")){C.setProperty("selected",true)}else{M=(P.keyCode==37)?A.getPreviousEnabledSibling():A.getNextEnabledSibling();if(M){this.clearActiveItem();M.cfg.setProperty("selected",true);if(this.cfg.getProperty("autosubmenudisplay")){D=M.cfg.getProperty("submenu");if(D){D.show()}}M.focus()}}H.preventDefault(P);break;case 40:if(this.activeItem!=A){this.clearActiveItem();C.setProperty("selected",true);A.focus()}D=C.getProperty("submenu");if(D){if(D.cfg.getProperty("visible")){D.setInitialSelection();D.setInitialFocus()}else{D.show()}}H.preventDefault(P);break}}if(P.keyCode==27&&this.activeItem){D=this.activeItem.cfg.getProperty("submenu");if(D&&D.cfg.getProperty("visible")){D.hide();this.activeItem.focus()}else{this.activeItem.cfg.setProperty("selected",false);this.activeItem.blur()}H.preventDefault(P)}},_onClick:function(B,P,D){E.superclass._onClick.call(this,B,P,D);var C=P[1],A,R,Q,O,N;if(C&&!C.cfg.getProperty("disabled")){A=P[0];R=H.getTarget(A);Q=this.activeItem;O=this.cfg;if(Q&&Q!=C){this.clearActiveItem()}C.cfg.setProperty("selected",true);N=C.cfg.getProperty("submenu");if(N){if(N.cfg.getProperty("visible")){N.hide()}else{N.show()}}}},toString:function(){var A="MenuBar",B=this.id;if(B){A+=(" "+B)}return A},initDefaultConfig:function(){E.superclass.initDefaultConfig.call(this);var A=this.cfg;A.addProperty(G.POSITION.key,{handler:this.configPosition,value:G.POSITION.value,validator:G.POSITION.validator,supercedes:G.POSITION.supercedes});A.addProperty(G.SUBMENU_ALIGNMENT.key,{value:G.SUBMENU_ALIGNMENT.value,suppressEvent:G.SUBMENU_ALIGNMENT.suppressEvent});A.addProperty(G.AUTO_SUBMENU_DISPLAY.key,{value:G.AUTO_SUBMENU_DISPLAY.value,validator:G.AUTO_SUBMENU_DISPLAY.validator,suppressEvent:G.AUTO_SUBMENU_DISPLAY.suppressEvent})}})}());YAHOO.widget.MenuBarItem=function(D,C){YAHOO.widget.MenuBarItem.superclass.constructor.call(this,D,C)};YAHOO.lang.extend(YAHOO.widget.MenuBarItem,YAHOO.widget.MenuItem,{init:function(F,D){if(!this.SUBMENU_TYPE){this.SUBMENU_TYPE=YAHOO.widget.Menu}YAHOO.widget.MenuBarItem.superclass.init.call(this,F);var E=this.cfg;if(D){E.applyConfig(D,true)}E.fireQueue()},CSS_CLASS_NAME:"yuimenubaritem",CSS_LABEL_CLASS_NAME:"yuimenubaritemlabel",toString:function(){var B="MenuBarItem";if(this.cfg&&this.cfg.getProperty("text")){B+=(": "+this.cfg.getProperty("text"))}return B}});YAHOO.register("menu",YAHOO.widget.Menu,{version:"2.5.2",build:"1076"});YAHOO.util.Attribute=function(D,C){if(C){this.owner=C;this.configure(D,true)}};YAHOO.util.Attribute.prototype={name:undefined,value:null,owner:null,readOnly:false,writeOnce:false,_initialConfig:null,_written:false,method:null,validator:null,getValue:function(){return this.value},setValue:function(H,L){var I;var G=this.owner;var K=this.name;var J={type:K,prevValue:this.getValue(),newValue:H};if(this.readOnly||(this.writeOnce&&this._written)){return false}if(this.validator&&!this.validator.call(G,H)){return false}if(!L){I=G.fireBeforeChangeEvent(J);if(I===false){return false}}if(this.method){this.method.call(G,H)}this.value=H;this._written=true;J.type=K;if(!L){this.owner.fireChangeEvent(J)}return true},configure:function(F,E){F=F||{};this._written=false;this._initialConfig=this._initialConfig||{};for(var D in F){if(D&&YAHOO.lang.hasOwnProperty(F,D)){this[D]=F[D];if(E){this._initialConfig[D]=F[D]}}}},resetValue:function(){return this.setValue(this._initialConfig.value)},resetConfig:function(){this.configure(this._initialConfig)},refresh:function(B){this.setValue(this.value,B)}};(function(){var B=YAHOO.util.Lang;YAHOO.util.AttributeProvider=function(){};YAHOO.util.AttributeProvider.prototype={_configs:null,get:function(A){this._configs=this._configs||{};var D=this._configs[A];if(!D){return undefined}return D.value},set:function(F,A,H){this._configs=this._configs||{};var G=this._configs[F];if(!G){return false}return G.setValue(A,H)},getAttributeKeys:function(){this._configs=this._configs;var A=[];var F;for(var E in this._configs){F=this._configs[E];if(B.hasOwnProperty(this._configs,E)&&!B.isUndefined(F)){A[A.length]=E}}return A},setAttributes:function(A,F){for(var E in A){if(B.hasOwnProperty(A,E)){this.set(E,A[E],F)}}},resetValue:function(A,D){this._configs=this._configs||{};if(this._configs[A]){this.set(A,this._configs[A]._initialConfig.value,D);return true}return false},refresh:function(A,G){this._configs=this._configs;A=((B.isString(A))?[A]:A)||this.getAttributeKeys();for(var F=0,H=A.length;F<H;++F){if(this._configs[A[F]]&&!B.isUndefined(this._configs[A[F]].value)&&!B.isNull(this._configs[A[F]].value)){this._configs[A[F]].refresh(G)}}},register:function(D,A){this.setAttributeConfig(D,A)},getAttributeConfig:function(E){this._configs=this._configs||{};var F=this._configs[E]||{};var A={};for(E in F){if(B.hasOwnProperty(F,E)){A[E]=F[E]}}return A},setAttributeConfig:function(F,E,A){this._configs=this._configs||{};E=E||{};if(!this._configs[F]){E.name=F;this._configs[F]=this.createAttribute(E)}else{this._configs[F].configure(E,A)}},configureAttribute:function(F,E,A){this.setAttributeConfig(F,E,A)},resetAttributeConfig:function(A){this._configs=this._configs||{};this._configs[A].resetConfig()},subscribe:function(D,A){this._events=this._events||{};if(!(D in this._events)){this._events[D]=this.createEvent(D)}YAHOO.util.EventProvider.prototype.subscribe.apply(this,arguments)},on:function(){this.subscribe.apply(this,arguments)},addListener:function(){this.subscribe.apply(this,arguments)},fireBeforeChangeEvent:function(A){var D="before";D+=A.type.charAt(0).toUpperCase()+A.type.substr(1)+"Change";A.type=D;return this.fireEvent(A.type,A)},fireChangeEvent:function(A){A.type+="Change";return this.fireEvent(A.type,A)},createAttribute:function(A){return new YAHOO.util.Attribute(A,this)}};YAHOO.augment(YAHOO.util.AttributeProvider,YAHOO.util.EventProvider)})();(function(){var J=YAHOO.util.Dom,H=YAHOO.util.AttributeProvider;YAHOO.util.Element=function(B,A){if(arguments.length){this.init(B,A)}};YAHOO.util.Element.prototype={DOM_EVENTS:null,appendChild:function(A){A=A.get?A.get("element"):A;this.get("element").appendChild(A)},getElementsByTagName:function(A){return this.get("element").getElementsByTagName(A)},hasChildNodes:function(){return this.get("element").hasChildNodes()},insertBefore:function(B,A){B=B.get?B.get("element"):B;A=(A&&A.get)?A.get("element"):A;this.get("element").insertBefore(B,A)},removeChild:function(A){A=A.get?A.get("element"):A;this.get("element").removeChild(A);return true},replaceChild:function(B,A){B=B.get?B.get("element"):B;A=A.get?A.get("element"):A;return this.get("element").replaceChild(B,A)},initAttributes:function(A){},addListener:function(B,C,A,D){var E=this.get("element");D=D||this;E=this.get("id")||E;var F=this;if(!this._events[B]){if(this.DOM_EVENTS[B]){YAHOO.util.Event.addListener(E,B,function(N){if(N.srcElement&&!N.target){N.target=N.srcElement}F.fireEvent(B,N)},A,D)}this.createEvent(B,this)}YAHOO.util.EventProvider.prototype.subscribe.apply(this,arguments)},on:function(){this.addListener.apply(this,arguments)},subscribe:function(){this.addListener.apply(this,arguments)},removeListener:function(A,B){this.unsubscribe.apply(this,arguments)},addClass:function(A){J.addClass(this.get("element"),A)},getElementsByClassName:function(A,B){return J.getElementsByClassName(A,B,this.get("element"))},hasClass:function(A){return J.hasClass(this.get("element"),A)},removeClass:function(A){return J.removeClass(this.get("element"),A)},replaceClass:function(A,B){return J.replaceClass(this.get("element"),A,B)},setStyle:function(A,B){var C=this.get("element");if(!C){return this._queue[this._queue.length]=["setStyle",arguments]}return J.setStyle(C,A,B)},getStyle:function(A){return J.getStyle(this.get("element"),A)},fireQueue:function(){var B=this._queue;for(var A=0,C=B.length;A<C;++A){this[B[A][0]].apply(this,B[A][1])}},appendTo:function(B,A){B=(B.get)?B.get("element"):J.get(B);this.fireEvent("beforeAppendTo",{type:"beforeAppendTo",target:B});A=(A&&A.get)?A.get("element"):J.get(A);var C=this.get("element");if(!C){return false}if(!B){return false}if(C.parent!=B){if(A){B.insertBefore(C,A)}else{B.appendChild(C)}}this.fireEvent("appendTo",{type:"appendTo",target:B})},get:function(C){var A=this._configs||{};var B=A.element;if(B&&!A[C]&&!YAHOO.lang.isUndefined(B.value[C])){return B.value[C]}return H.prototype.get.call(this,C)},setAttributes:function(A,E){var B=this.get("element");for(var C in A){if(!this._configs[C]&&!YAHOO.lang.isUndefined(B[C])){this.setAttributeConfig(C)}}for(var D=0,F=this._configOrder.length;D<F;++D){if(A[this._configOrder[D]]!==undefined){this.set(this._configOrder[D],A[this._configOrder[D]],E)}}},set:function(C,A,D){var B=this.get("element");if(!B){this._queue[this._queue.length]=["set",arguments];if(this._configs[C]){this._configs[C].value=A}return }if(!this._configs[C]&&!YAHOO.lang.isUndefined(B[C])){K.call(this,C)}return H.prototype.set.apply(this,arguments)},setAttributeConfig:function(D,B,A){var C=this.get("element");if(C&&!this._configs[D]&&!YAHOO.lang.isUndefined(C[D])){K.call(this,D,B)}else{H.prototype.setAttributeConfig.apply(this,arguments)}this._configOrder.push(D)},getAttributeKeys:function(){var B=this.get("element");var A=H.prototype.getAttributeKeys.call(this);for(var C in B){if(!this._configs[C]){A[C]=A[C]||B[C]}}return A},createEvent:function(A,B){this._events[A]=true;H.prototype.createEvent.apply(this,arguments)},init:function(A,B){G.apply(this,arguments)}};var G=function(B,C){this._queue=this._queue||[];this._events=this._events||{};this._configs=this._configs||{};this._configOrder=[];C=C||{};C.element=C.element||B||null;this.DOM_EVENTS={click:true,dblclick:true,keydown:true,keypress:true,keyup:true,mousedown:true,mousemove:true,mouseout:true,mouseover:true,mouseup:true,focus:true,blur:true,submit:true};var A=false;if(YAHOO.lang.isString(B)){K.call(this,"id",{value:C.element})}if(J.get(B)){A=true;I.call(this,C);L.call(this,C)}YAHOO.util.Event.onAvailable(C.element,function(){if(!A){I.call(this,C)}this.fireEvent("available",{type:"available",target:C.element})},this,true);YAHOO.util.Event.onContentReady(C.element,function(){if(!A){L.call(this,C)}this.fireEvent("contentReady",{type:"contentReady",target:C.element})},this,true)};var I=function(A){this.setAttributeConfig("element",{value:J.get(A.element),readOnly:true})};var L=function(A){this.initAttributes(A);this.setAttributes(A,true);this.fireQueue()};var K=function(C,A){var B=this.get("element");A=A||{};A.name=C;A.method=A.method||function(D){B[C]=D};A.value=A.value||B[C];this._configs[C]=new YAHOO.util.Attribute(A,this)};YAHOO.augment(YAHOO.util.Element,H)})();YAHOO.register("element",YAHOO.util.Element,{version:"2.5.2",build:"1076"});(function(){var X=YAHOO.util.Dom,R=YAHOO.util.Event,V=YAHOO.lang,S=YAHOO.env.ua,P=YAHOO.widget.Overlay,U=YAHOO.widget.Menu,N={},T=null,Z=null,O=null;function Y(E,F,B,D){var A,C;if(V.isString(E)&&V.isString(F)){if(S.ie){C='<input type="'+E+'" name="'+F+'"';if(D){C+=" checked"}C+=">";A=document.createElement(C)}else{A=document.createElement("input");A.name=F;A.type=E;if(D){A.checked=true}}A.value=B;return A}}function W(H,B){var I=H.nodeName.toUpperCase(),D=this,C,G,F;function A(J){if(!(J in B)){C=H.getAttributeNode(J);if(C&&("value" in C)){B[J]=C.value}}}function E(){A("type");if(B.type=="button"){B.type="push"}if(!("disabled" in B)){B.disabled=H.disabled}A("name");A("value");A("title")}switch(I){case"A":B.type="link";A("href");A("target");break;case"INPUT":E();if(!("checked" in B)){B.checked=H.checked}break;case"BUTTON":E();G=H.parentNode.parentNode;if(X.hasClass(G,this.CSS_CLASS_NAME+"-checked")){B.checked=true}if(X.hasClass(G,this.CSS_CLASS_NAME+"-disabled")){B.disabled=true}H.removeAttribute("value");H.setAttribute("type","button");break}H.removeAttribute("id");H.removeAttribute("name");if(!("tabindex" in B)){B.tabindex=H.tabIndex}if(!("label" in B)){F=I=="INPUT"?H.value:H.innerHTML;if(F&&F.length>0){B.label=F}}}function Q(C){var D=C.attributes,E=D.srcelement,A=E.nodeName.toUpperCase(),B=this;if(A==this.NODE_NAME){C.element=E;C.id=E.id;X.getElementsBy(function(F){switch(F.nodeName.toUpperCase()){case"BUTTON":case"A":case"INPUT":W.call(B,F,D);break}},"*",E)}else{switch(A){case"BUTTON":case"A":case"INPUT":W.call(this,E,D);break}}}YAHOO.widget.Button=function(A,D){if(!P&&YAHOO.widget.Overlay){P=YAHOO.widget.Overlay}if(!U&&YAHOO.widget.Menu){U=YAHOO.widget.Menu}var B=YAHOO.widget.Button.superclass.constructor,C,E;if(arguments.length==1&&!V.isString(A)&&!A.nodeName){if(!A.id){A.id=X.generateId()}B.call(this,(this.createButtonElement(A.type)),A)}else{C={element:null,attributes:(D||{})};if(V.isString(A)){E=X.get(A);if(E){if(!C.attributes.id){C.attributes.id=A}C.attributes.srcelement=E;Q.call(this,C);if(!C.element){C.element=this.createButtonElement(C.attributes.type)}B.call(this,C.element,C.attributes)}}else{if(A.nodeName){if(!C.attributes.id){if(A.id){C.attributes.id=A.id}else{C.attributes.id=X.generateId()}}C.attributes.srcelement=A;Q.call(this,C);if(!C.element){C.element=this.createButtonElement(C.attributes.type)}B.call(this,C.element,C.attributes)}}}};YAHOO.extend(YAHOO.widget.Button,YAHOO.util.Element,{_button:null,_menu:null,_hiddenFields:null,_onclickAttributeValue:null,_activationKeyPressed:false,_activationButtonPressed:false,_hasKeyEventHandlers:false,_hasMouseEventHandlers:false,NODE_NAME:"SPAN",CHECK_ACTIVATION_KEYS:[32],ACTIVATION_KEYS:[13,32],OPTION_AREA_WIDTH:20,CSS_CLASS_NAME:"yui-button",RADIO_DEFAULT_TITLE:"Unchecked.  Click to check.",RADIO_CHECKED_TITLE:"Checked.  Click another button to uncheck",CHECKBOX_DEFAULT_TITLE:"Unchecked.  Click to check.",CHECKBOX_CHECKED_TITLE:"Checked.  Click to uncheck.",MENUBUTTON_DEFAULT_TITLE:"Menu collapsed.  Click to expand.",MENUBUTTON_MENU_VISIBLE_TITLE:"Menu expanded.  Click or press Esc to collapse.",SPLITBUTTON_DEFAULT_TITLE:("Menu collapsed.  Click inside option region or press Ctrl + Shift + M to show the menu."),SPLITBUTTON_OPTION_VISIBLE_TITLE:"Menu expanded.  Press Esc or Ctrl + Shift + M to hide the menu.",SUBMIT_TITLE:"Click to submit form.",_setType:function(A){if(A=="split"){this.on("option",this._onOption)}},_setLabel:function(B){this._button.innerHTML=B;var A,C=S.gecko;if(C&&C<1.9&&X.inDocument(this.get("element"))){A=this.CSS_CLASS_NAME;this.removeClass(A);V.later(0,this,this.addClass,A)}},_setTabIndex:function(A){this._button.tabIndex=A},_setTitle:function(A){var B=A;if(this.get("type")!="link"){if(!B){switch(this.get("type")){case"radio":B=this.RADIO_DEFAULT_TITLE;break;case"checkbox":B=this.CHECKBOX_DEFAULT_TITLE;break;case"menu":B=this.MENUBUTTON_DEFAULT_TITLE;break;case"split":B=this.SPLITBUTTON_DEFAULT_TITLE;break;case"submit":B=this.SUBMIT_TITLE;break}}this._button.title=B}},_setDisabled:function(A){if(this.get("type")!="link"){if(A){if(this._menu){this._menu.hide()}if(this.hasFocus()){this.blur()}this._button.setAttribute("disabled","disabled");this.addStateCSSClasses("disabled");this.removeStateCSSClasses("hover");this.removeStateCSSClasses("active");this.removeStateCSSClasses("focus")}else{this._button.removeAttribute("disabled");this.removeStateCSSClasses("disabled")}}},_setHref:function(A){if(this.get("type")=="link"){this._button.href=A}},_setTarget:function(A){if(this.get("type")=="link"){this._button.setAttribute("target",A)}},_setChecked:function(B){var A=this.get("type"),C;if(A=="checkbox"||A=="radio"){if(B){this.addStateCSSClasses("checked");C=(A=="radio")?this.RADIO_CHECKED_TITLE:this.CHECKBOX_CHECKED_TITLE}else{this.removeStateCSSClasses("checked");C=(A=="radio")?this.RADIO_DEFAULT_TITLE:this.CHECKBOX_DEFAULT_TITLE}this.set("title",C)}},_setMenu:function(C){var I=this.get("lazyloadmenu"),F=this.get("element"),M,A=false,b,J,G,K,L,D,H;if(!P){return false}if(U){M=U.prototype.CSS_CLASS_NAME}function B(){b.render(F.parentNode);this.removeListener("appendTo",B)}function E(){if(b){X.addClass(b.element,this.get("menuclassname"));X.addClass(b.element,"yui-"+this.get("type")+"-button-menu");b.showEvent.subscribe(this._onMenuShow,null,this);b.hideEvent.subscribe(this._onMenuHide,null,this);b.renderEvent.subscribe(this._onMenuRender,null,this);if(U&&b instanceof U){b.keyDownEvent.subscribe(this._onMenuKeyDown,this,true);b.subscribe("click",this._onMenuClick,this,true);b.itemAddedEvent.subscribe(this._onMenuItemAdded,this,true);G=b.srcElement;if(G&&G.nodeName.toUpperCase()=="SELECT"){G.style.display="none";G.parentNode.removeChild(G)}}else{if(P&&b instanceof P){if(!T){T=new YAHOO.widget.OverlayManager()}T.register(b)}}this._menu=b;if(!A){if(I&&U&&!(b instanceof U)){b.beforeShowEvent.subscribe(this._onOverlayBeforeShow,null,this)}else{if(!I){if(X.inDocument(F)){b.render(F.parentNode)}else{this.on("appendTo",B)}}}}}}if(C&&U&&(C instanceof U)){b=C;K=b.getItems();L=K.length;A=true;if(L>0){H=L-1;do{D=K[H];if(D){D.cfg.subscribeToConfigEvent("selected",this._onMenuItemSelected,D,this)}}while(H--)}E.call(this)}else{if(P&&C&&(C instanceof P)){b=C;A=true;b.cfg.setProperty("visible",false);b.cfg.setProperty("context",[F,"tl","bl"]);E.call(this)}else{if(U&&V.isArray(C)){this.on("appendTo",function(){b=new U(X.generateId(),{lazyload:I,itemdata:C});E.call(this)})}else{if(V.isString(C)){J=X.get(C);if(J){if(U&&X.hasClass(J,M)||J.nodeName.toUpperCase()=="SELECT"){b=new U(C,{lazyload:I});E.call(this)}else{if(P){b=new P(C,{visible:false,context:[F,"tl","bl"]});E.call(this)}}}}else{if(C&&C.nodeName){if(U&&X.hasClass(C,M)||C.nodeName.toUpperCase()=="SELECT"){b=new U(C,{lazyload:I});E.call(this)}else{if(P){if(!C.id){X.generateId(C)}b=new P(C,{visible:false,context:[F,"tl","bl"]});E.call(this)}}}}}}}},_setOnClick:function(A){if(this._onclickAttributeValue&&(this._onclickAttributeValue!=A)){this.removeListener("click",this._onclickAttributeValue.fn);this._onclickAttributeValue=null}if(!this._onclickAttributeValue&&V.isObject(A)&&V.isFunction(A.fn)){this.on("click",A.fn,A.obj,A.scope);this._onclickAttributeValue=A}},_setSelectedMenuItem:function(B){var C=this._menu,A;if(U&&C&&C instanceof U){A=C.getItem(B);if(A&&!A.cfg.getProperty("selected")){A.cfg.setProperty("selected",true)}}},_isActivationKey:function(E){var A=this.get("type"),D=(A=="checkbox"||A=="radio")?this.CHECK_ACTIVATION_KEYS:this.ACTIVATION_KEYS,B=D.length,C;if(B>0){C=B-1;do{if(E==D[C]){return true}}while(C--)}},_isSplitButtonOptionKey:function(A){var B=(A.ctrlKey&&A.shiftKey&&R.getCharCode(A)==77);function C(D){R.preventDefault(D);this.removeListener("keypress",C)}if(B&&S.opera){this.on("keypress",C)}return B},_addListenersToForm:function(){var A=this.getForm(),B=YAHOO.widget.Button.onFormKeyPress,C,G,D,E,F;if(A){R.on(A,"reset",this._onFormReset,null,this);R.on(A,"submit",this.createHiddenFields,null,this);G=this.get("srcelement");if(this.get("type")=="submit"||(G&&G.type=="submit")){D=R.getListeners(A,"keypress");C=false;if(D){E=D.length;if(E>0){F=E-1;do{if(D[F].fn==B){C=true;break}}while(F--)}}if(!C){R.on(A,"keypress",B)}}}},_showMenu:function(H){if(YAHOO.widget.MenuManager){YAHOO.widget.MenuManager.hideVisible()}if(T){T.hideAll()}var J=P.VIEWPORT_OFFSET,A=this._menu,C=this,f=C.get("element"),F=false,D=X.getY(f),E=X.getDocumentScrollTop(),M,I,d;if(E){D=D-E}var K=D,L=(X.getViewportHeight()-(D+f.offsetHeight));function G(){if(F){return(K-J)}else{return(L-J)}}function e(){var a=G();if(I>a){M=A.cfg.getProperty("minscrollheight");if(a>M){A.cfg.setProperty("maxheight",a);if(F){A.align("bl","tl")}else{A.align("tl","bl")}}if(a<M){if(F){A.cfg.setProperty("context",[f,"tl","bl"],true);A.align("tl","bl")}else{A.cfg.setProperty("context",[f,"bl","tl"],true);A.align("bl","tl");F=true;return e()}}}}if(U&&A&&(A instanceof U)){A.cfg.applyConfig({context:[f,"tl","bl"],clicktohide:false});A.cfg.fireQueue();A.show();A.cfg.setProperty("maxheight",0);A.align("tl","bl");if(H.type=="mousedown"){R.stopPropagation(H)}I=A.element.offsetHeight;d=A.element.lastChild;e();if(this.get("focusmenu")){this._menu.focus()}}else{if(P&&A&&(A instanceof P)){A.show();A.align("tl","bl");var B=G();I=A.element.offsetHeight;if(B<I){A.align("bl","tl");F=true;B=G();if(B<I){A.align("tl","bl")}}}}},_hideMenu:function(){var A=this._menu;if(A){A.hide()}},_onMouseOver:function(A){if(!this._hasMouseEventHandlers){this.on("mouseout",this._onMouseOut);this.on("mousedown",this._onMouseDown);this.on("mouseup",this._onMouseUp);this._hasMouseEventHandlers=true}this.addStateCSSClasses("hover");if(this._activationButtonPressed){this.addStateCSSClasses("active")}if(this._bOptionPressed){this.addStateCSSClasses("activeoption")}if(this._activationButtonPressed||this._bOptionPressed){R.removeListener(document,"mouseup",this._onDocumentMouseUp)}},_onMouseOut:function(A){this.removeStateCSSClasses("hover");if(this.get("type")!="menu"){this.removeStateCSSClasses("active")}if(this._activationButtonPressed||this._bOptionPressed){R.on(document,"mouseup",this._onDocumentMouseUp,null,this)}},_onDocumentMouseUp:function(B){this._activationButtonPressed=false;this._bOptionPressed=false;var A=this.get("type"),D,C;if(A=="menu"||A=="split"){D=R.getTarget(B);C=this._menu.element;if(D!=C&&!X.isAncestor(C,D)){this.removeStateCSSClasses((A=="menu"?"active":"activeoption"));this._hideMenu()}}R.removeListener(document,"mouseup",this._onDocumentMouseUp)},_onMouseDown:function(C){var A,E,B,D;function F(){this._hideMenu();this.removeListener("mouseup",F)}if((C.which||C.button)==1){if(!this.hasFocus()){this.focus()}A=this.get("type");if(A=="split"){E=this.get("element");B=R.getPageX(C)-X.getX(E);if((E.offsetWidth-this.OPTION_AREA_WIDTH)<B){this.fireEvent("option",C)}else{this.addStateCSSClasses("active");this._activationButtonPressed=true}}else{if(A=="menu"){if(this.isActive()){this._hideMenu();this._activationButtonPressed=false}else{this._showMenu(C);this._activationButtonPressed=true}}else{this.addStateCSSClasses("active");this._activationButtonPressed=true}}if(A=="split"||A=="menu"){D=this;this._hideMenuTimerId=window.setTimeout(function(){D.on("mouseup",F)},250)}}},_onMouseUp:function(B){var A=this.get("type");if(this._hideMenuTimerId){window.clearTimeout(this._hideMenuTimerId)}if(A=="checkbox"||A=="radio"){this.set("checked",!(this.get("checked")))}this._activationButtonPressed=false;if(this.get("type")!="menu"){this.removeStateCSSClasses("active")}},_onFocus:function(A){var B;this.addStateCSSClasses("focus");if(this._activationKeyPressed){this.addStateCSSClasses("active")}O=this;if(!this._hasKeyEventHandlers){B=this._button;R.on(B,"blur",this._onBlur,null,this);R.on(B,"keydown",this._onKeyDown,null,this);R.on(B,"keyup",this._onKeyUp,null,this);this._hasKeyEventHandlers=true}this.fireEvent("focus",A)},_onBlur:function(A){this.removeStateCSSClasses("focus");if(this.get("type")!="menu"){this.removeStateCSSClasses("active")}if(this._activationKeyPressed){R.on(document,"keyup",this._onDocumentKeyUp,null,this)}O=null;this.fireEvent("blur",A)},_onDocumentKeyUp:function(A){if(this._isActivationKey(R.getCharCode(A))){this._activationKeyPressed=false;R.removeListener(document,"keyup",this._onDocumentKeyUp)}},_onKeyDown:function(A){var B=this._menu;if(this.get("type")=="split"&&this._isSplitButtonOptionKey(A)){this.fireEvent("option",A)}else{if(this._isActivationKey(R.getCharCode(A))){if(this.get("type")=="menu"){this._showMenu(A)}else{this._activationKeyPressed=true;this.addStateCSSClasses("active")}}}if(B&&B.cfg.getProperty("visible")&&R.getCharCode(A)==27){B.hide();this.focus()}},_onKeyUp:function(B){var A;if(this._isActivationKey(R.getCharCode(B))){A=this.get("type");if(A=="checkbox"||A=="radio"){this.set("checked",!(this.get("checked")))}this._activationKeyPressed=false;if(this.get("type")!="menu"){this.removeStateCSSClasses("active")}}},_onClick:function(D){var A=this.get("type"),G,C,F,E,B;switch(A){case"radio":case"checkbox":if(this.get("checked")){G=(A=="radio")?this.RADIO_CHECKED_TITLE:this.CHECKBOX_CHECKED_TITLE}else{G=(A=="radio")?this.RADIO_DEFAULT_TITLE:this.CHECKBOX_DEFAULT_TITLE}this.set("title",G);break;case"submit":this.submitForm();break;case"reset":C=this.getForm();if(C){C.reset()}break;case"menu":G=this._menu.cfg.getProperty("visible")?this.MENUBUTTON_MENU_VISIBLE_TITLE:this.MENUBUTTON_DEFAULT_TITLE;this.set("title",G);break;case"split":E=this.get("element");B=R.getPageX(D)-X.getX(E);if((E.offsetWidth-this.OPTION_AREA_WIDTH)<B){return false}else{this._hideMenu();F=this.get("srcelement");if(F&&F.type=="submit"){this.submitForm()}}G=this._menu.cfg.getProperty("visible")?this.SPLITBUTTON_OPTION_VISIBLE_TITLE:this.SPLITBUTTON_DEFAULT_TITLE;this.set("title",G);break}},_onAppendTo:function(A){var B=this;window.setTimeout(function(){B._addListenersToForm()},0)},_onFormReset:function(B){var A=this.get("type"),C=this._menu;if(A=="checkbox"||A=="radio"){this.resetValue("checked")}if(U&&C&&(C instanceof U)){this.resetValue("selectedMenuItem")}},_onDocumentMouseDown:function(A){var D=R.getTarget(A),B=this.get("element"),C=this._menu.element;if(D!=B&&!X.isAncestor(B,D)&&D!=C&&!X.isAncestor(C,D)){this._hideMenu();R.removeListener(document,"mousedown",this._onDocumentMouseDown)}},_onOption:function(A){if(this.hasClass("yui-split-button-activeoption")){this._hideMenu();this._bOptionPressed=false}else{this._showMenu(A);this._bOptionPressed=true}},_onOverlayBeforeShow:function(A){var B=this._menu;B.render(this.get("element").parentNode);B.beforeShowEvent.unsubscribe(this._onOverlayBeforeShow)},_onMenuShow:function(B){R.on(document,"mousedown",this._onDocumentMouseDown,null,this);var C,A;if(this.get("type")=="split"){C=this.SPLITBUTTON_OPTION_VISIBLE_TITLE;A="activeoption"}else{C=this.MENUBUTTON_MENU_VISIBLE_TITLE;A="active"}this.addStateCSSClasses(A);this.set("title",C)},_onMenuHide:function(B){var C=this._menu,D,A;if(this.get("type")=="split"){D=this.SPLITBUTTON_DEFAULT_TITLE;A="activeoption"}else{D=this.MENUBUTTON_DEFAULT_TITLE;A="active"}this.removeStateCSSClasses(A);this.set("title",D);if(this.get("type")=="split"){this._bOptionPressed=false}},_onMenuKeyDown:function(A,B){var C=B[0];if(R.getCharCode(C)==27){this.focus();if(this.get("type")=="split"){this._bOptionPressed=false}}},_onMenuRender:function(C){var A=this.get("element"),D=A.parentNode,B=this._menu.element;if(D!=B.parentNode){D.appendChild(B)}this.set("selectedMenuItem",this.get("selectedMenuItem"))},_onMenuItemSelected:function(B,C,D){var A=C[0];if(A){this.set("selectedMenuItem",D)}},_onMenuItemAdded:function(B,C,D){var A=C[0];A.cfg.subscribeToConfigEvent("selected",this._onMenuItemSelected,A,this)},_onMenuClick:function(C,D){var A=D[1],B;if(A){B=this.get("srcelement");if(B&&B.type=="submit"){this.submitForm()}this._hideMenu()}},createButtonElement:function(C){var A=this.NODE_NAME,B=document.createElement(A);B.innerHTML="<"+A+' class="first-child">'+(C=="link"?"<a></a>":'<button type="button"></button>')+"</"+A+">";return B},addStateCSSClasses:function(B){var A=this.get("type");if(V.isString(B)){if(B!="activeoption"){this.addClass(this.CSS_CLASS_NAME+("-"+B))}this.addClass("yui-"+A+("-button-"+B))}},removeStateCSSClasses:function(B){var A=this.get("type");if(V.isString(B)){this.removeClass(this.CSS_CLASS_NAME+("-"+B));this.removeClass("yui-"+A+("-button-"+B))}},createHiddenFields:function(){this.removeHiddenFields();var D=this.getForm(),A,H,F,C,B,G,E,I;if(D&&!this.get("disabled")){H=this.get("type");F=(H=="checkbox"||H=="radio");if(F||(Z==this)){A=Y((F?H:"hidden"),this.get("name"),this.get("value"),this.get("checked"));if(A){if(F){A.style.display="none"}D.appendChild(A)}}C=this._menu;if(U&&C&&(C instanceof U)){I=C.srcElement;B=this.get("selectedMenuItem");if(B){if(I&&I.nodeName.toUpperCase()=="SELECT"){D.appendChild(I);I.selectedIndex=B.index}else{E=(B.value===null||B.value==="")?B.cfg.getProperty("text"):B.value;G=this.get("name");if(E&&G){I=Y("hidden",(G+"_options"),E);D.appendChild(I)}}}}if(A&&I){this._hiddenFields=[A,I]}else{if(!A&&I){this._hiddenFields=I}else{if(A&&!I){this._hiddenFields=A}}}return this._hiddenFields}},removeHiddenFields:function(){var A=this._hiddenFields,C,B;function D(E){if(X.inDocument(E)){E.parentNode.removeChild(E)}}if(A){if(V.isArray(A)){C=A.length;if(C>0){B=C-1;do{D(A[B])}while(B--)}}else{D(A)}this._hiddenFields=null}},submitForm:function(){var A=this.getForm(),B=this.get("srcelement"),C=false,D;if(A){if(this.get("type")=="submit"||(B&&B.type=="submit")){Z=this}if(S.ie){C=A.fireEvent("onsubmit")}else{D=document.createEvent("HTMLEvents");D.initEvent("submit",true,true);C=A.dispatchEvent(D)}if((S.ie||S.webkit)&&C){A.submit()}}return C},init:function(J,C){var H=C.type=="link"?"a":"button",F=C.srcelement,D=J.getElementsByTagName(H)[0],E;if(!D){E=J.getElementsByTagName("input")[0];if(E){D=document.createElement("button");D.setAttribute("type","button");E.parentNode.replaceChild(D,E)}}this._button=D;YAHOO.widget.Button.superclass.init.call(this,J,C);N[this.get("id")]=this;this.addClass(this.CSS_CLASS_NAME);this.addClass("yui-"+this.get("type")+"-button");R.on(this._button,"focus",this._onFocus,null,this);this.on("mouseover",this._onMouseOver);this.on("click",this._onClick);this.on("appendTo",this._onAppendTo);var A=this.get("container"),I=this.get("element"),B=X.inDocument(I),G;if(A){if(F&&F!=I){G=F.parentNode;if(G){G.removeChild(F)}}if(V.isString(A)){R.onContentReady(A,function(){this.appendTo(A)},null,this)}else{this.appendTo(A)}}else{if(!B&&F&&F!=I){G=F.parentNode;if(G){this.fireEvent("beforeAppendTo",{type:"beforeAppendTo",target:G});G.replaceChild(I,F);this.fireEvent("appendTo",{type:"appendTo",target:G})}}else{if(this.get("type")!="link"&&B&&F&&F==I){this._addListenersToForm()}}}},initAttributes:function(A){var B=A||{};YAHOO.widget.Button.superclass.initAttributes.call(this,B);this.setAttributeConfig("type",{value:(B.type||"push"),validator:V.isString,writeOnce:true,method:this._setType});this.setAttributeConfig("label",{value:B.label,validator:V.isString,method:this._setLabel});this.setAttributeConfig("value",{value:B.value});this.setAttributeConfig("name",{value:B.name,validator:V.isString});this.setAttributeConfig("tabindex",{value:B.tabindex,validator:V.isNumber,method:this._setTabIndex});this.configureAttribute("title",{value:B.title,validator:V.isString,method:this._setTitle});this.setAttributeConfig("disabled",{value:(B.disabled||false),validator:V.isBoolean,method:this._setDisabled});this.setAttributeConfig("href",{value:B.href,validator:V.isString,method:this._setHref});this.setAttributeConfig("target",{value:B.target,validator:V.isString,method:this._setTarget});this.setAttributeConfig("checked",{value:(B.checked||false),validator:V.isBoolean,method:this._setChecked});this.setAttributeConfig("container",{value:B.container,writeOnce:true});this.setAttributeConfig("srcelement",{value:B.srcelement,writeOnce:true});this.setAttributeConfig("menu",{value:null,method:this._setMenu,writeOnce:true});this.setAttributeConfig("lazyloadmenu",{value:(B.lazyloadmenu===false?false:true),validator:V.isBoolean,writeOnce:true});this.setAttributeConfig("menuclassname",{value:(B.menuclassname||"yui-button-menu"),validator:V.isString,method:this._setMenuClassName,writeOnce:true});this.setAttributeConfig("selectedMenuItem",{value:null,method:this._setSelectedMenuItem});this.setAttributeConfig("onclick",{value:B.onclick,method:this._setOnClick});this.setAttributeConfig("focusmenu",{value:(B.focusmenu===false?false:true),validator:V.isBoolean})},focus:function(){if(!this.get("disabled")){this._button.focus()}},blur:function(){if(!this.get("disabled")){this._button.blur()}},hasFocus:function(){return(O==this)},isActive:function(){return this.hasClass(this.CSS_CLASS_NAME+"-active")},getMenu:function(){return this._menu},getForm:function(){return this._button.form},getHiddenFields:function(){return this._hiddenFields},destroy:function(){var C=this.get("element"),D=C.parentNode,E=this._menu,A;if(E){if(T&&T.find(E)){T.remove(E)}E.destroy()}R.purgeElement(C);R.purgeElement(this._button);R.removeListener(document,"mouseup",this._onDocumentMouseUp);R.removeListener(document,"keyup",this._onDocumentKeyUp);R.removeListener(document,"mousedown",this._onDocumentMouseDown);var B=this.getForm();if(B){R.removeListener(B,"reset",this._onFormReset);R.removeListener(B,"submit",this.createHiddenFields)}this.unsubscribeAll();if(D){D.removeChild(C)}delete N[this.get("id")];A=X.getElementsByClassName(this.CSS_CLASS_NAME,this.NODE_NAME,B);if(V.isArray(A)&&A.length===0){R.removeListener(B,"keypress",YAHOO.widget.Button.onFormKeyPress)}},fireEvent:function(B,C){var A=arguments[0];if(this.DOM_EVENTS[A]&&this.get("disabled")){return }return YAHOO.widget.Button.superclass.fireEvent.apply(this,arguments)},toString:function(){return("Button "+this.get("id"))}});YAHOO.widget.Button.onFormKeyPress=function(G){var I=R.getTarget(G),F=R.getCharCode(G),H=I.nodeName&&I.nodeName.toUpperCase(),K=I.type,E=false,C,B,J,A;function D(L){var M,b;switch(L.nodeName.toUpperCase()){case"INPUT":case"BUTTON":if(L.type=="submit"&&!L.disabled){if(!E&&!J){J=L}if(B&&!A){A=L}}break;default:M=L.id;if(M){C=N[M];if(C){E=true;if(!C.get("disabled")){b=C.get("srcelement");if(!B&&(C.get("type")=="submit"||(b&&b.type=="submit"))){B=C}}}}break}}if(F==13&&((H=="INPUT"&&(K=="text"||K=="password"||K=="checkbox"||K=="radio"||K=="file"))||H=="SELECT")){X.getElementsBy(D,"*",this);if(J){J.focus()}else{if(!J&&B){if(A){R.preventDefault(G)}B.submitForm()}}}};YAHOO.widget.Button.addHiddenFieldsToForm=function(F){var A=X.getElementsByClassName(YAHOO.widget.Button.prototype.CSS_CLASS_NAME,"*",F),C=A.length,B,E,D;if(C>0){for(D=0;D<C;D++){E=A[D].id;if(E){B=N[E];if(B){B.createHiddenFields()}}}}};YAHOO.widget.Button.getButton=function(B){var A=N[B];if(A){return A}}})();(function(){var I=YAHOO.util.Dom,J=YAHOO.util.Event,H=YAHOO.lang,F=YAHOO.widget.Button,G={};YAHOO.widget.ButtonGroup=function(B,D){var C=YAHOO.widget.ButtonGroup.superclass.constructor,A,E,L;if(arguments.length==1&&!H.isString(B)&&!B.nodeName){if(!B.id){L=I.generateId();B.id=L}C.call(this,(this._createGroupElement()),B)}else{if(H.isString(B)){E=I.get(B);if(E){if(E.nodeName.toUpperCase()==this.NODE_NAME){C.call(this,E,D)}}}else{A=B.nodeName.toUpperCase();if(A&&A==this.NODE_NAME){if(!B.id){B.id=I.generateId()}C.call(this,B,D)}}}};YAHOO.extend(YAHOO.widget.ButtonGroup,YAHOO.util.Element,{_buttons:null,NODE_NAME:"DIV",CSS_CLASS_NAME:"yui-buttongroup",_createGroupElement:function(){var A=document.createElement(this.NODE_NAME);return A},_setDisabled:function(B){var A=this.getCount(),C;if(A>0){C=A-1;do{this._buttons[C].set("disabled",B)}while(C--)}},_onKeyDown:function(A){var E=J.getTarget(A),C=J.getCharCode(A),D=E.parentNode.parentNode.id,B=G[D],L=-1;if(C==37||C==38){L=(B.index===0)?(this._buttons.length-1):(B.index-1)}else{if(C==39||C==40){L=(B.index===(this._buttons.length-1))?0:(B.index+1)}}if(L>-1){this.check(L);this.getButton(L).focus()}},_onAppendTo:function(B){var A=this._buttons,C=A.length,D;for(D=0;D<C;D++){A[D].appendTo(this.get("element"))}},_onButtonCheckedChange:function(C,D){var A=C.newValue,B=this.get("checkedButton");if(A&&B!=D){if(B){B.set("checked",false,true)}this.set("checkedButton",D);this.set("value",D.get("value"))}else{if(B&&!B.set("checked")){B.set("checked",true,true)}}},init:function(B,C){this._buttons=[];YAHOO.widget.ButtonGroup.superclass.init.call(this,B,C);this.addClass(this.CSS_CLASS_NAME);var A=this.getElementsByClassName("yui-radio-button");if(A.length>0){this.addButtons(A)}function E(L){return(L.type=="radio")}A=I.getElementsBy(E,"input",this.get("element"));if(A.length>0){this.addButtons(A)}this.on("keydown",this._onKeyDown);this.on("appendTo",this._onAppendTo);var D=this.get("container");if(D){if(H.isString(D)){J.onContentReady(D,function(){this.appendTo(D)},null,this)}else{this.appendTo(D)}}},initAttributes:function(A){var B=A||{};YAHOO.widget.ButtonGroup.superclass.initAttributes.call(this,B);this.setAttributeConfig("name",{value:B.name,validator:H.isString});this.setAttributeConfig("disabled",{value:(B.disabled||false),validator:H.isBoolean,method:this._setDisabled});this.setAttributeConfig("value",{value:B.value});this.setAttributeConfig("container",{value:B.container,writeOnce:true});this.setAttributeConfig("checkedButton",{value:null})},addButton:function(C){var A,B,M,N,E,D;if(C instanceof F&&C.get("type")=="radio"){A=C}else{if(!H.isString(C)&&!C.nodeName){C.type="radio";A=new F(C)}else{A=new F(C,{type:"radio"})}}if(A){N=this._buttons.length;E=A.get("name");D=this.get("name");A.index=N;this._buttons[N]=A;G[A.get("id")]=A;if(E!=D){A.set("name",D)}if(this.get("disabled")){A.set("disabled",true)}if(A.get("checked")){this.set("checkedButton",A)}B=A.get("element");M=this.get("element");if(B.parentNode!=M){M.appendChild(B)}A.on("checkedChange",this._onButtonCheckedChange,A,this);return A}},addButtons:function(D){var C,B,A,E;if(H.isArray(D)){C=D.length;A=[];if(C>0){for(E=0;E<C;E++){B=this.addButton(D[E]);if(B){A[A.length]=B}}if(A.length>0){return A}}}},removeButton:function(B){var A=this.getButton(B),C,D;if(A){this._buttons.splice(B,1);delete G[A.get("id")];A.removeListener("checkedChange",this._onButtonCheckedChange);A.destroy();C=this._buttons.length;if(C>0){D=this._buttons.length-1;do{this._buttons[D].index=D}while(D--)}}},getButton:function(A){if(H.isNumber(A)){return this._buttons[A]}},getButtons:function(){return this._buttons},getCount:function(){return this._buttons.length},focus:function(B){var A,C,D;if(H.isNumber(B)){A=this._buttons[B];if(A){A.focus()}}else{C=this.getCount();for(D=0;D<C;D++){A=this._buttons[D];if(!A.get("disabled")){A.focus();break}}}},check:function(B){var A=this.getButton(B);if(A){A.set("checked",true)}},destroy:function(){var A=this._buttons.length,B=this.get("element"),D=B.parentNode,C;if(A>0){C=this._buttons.length-1;do{this._buttons[C].destroy()}while(C--)}J.purgeElement(B);D.removeChild(B)},toString:function(){return("ButtonGroup "+this.get("id"))}})})();YAHOO.register("button",YAHOO.widget.Button,{version:"2.5.2",build:"1076"});var Balloon3;(function(){var A=YAHOO.util.Event,B=YAHOO.util.Dom;Balloon3=function(F){F=F||document.body;var E=this._imgRoot="/images/skin08/balloon/";var D=this._l=document.createElement("div");this._l.className="balloon3";F.insertBefore(this._l,F.firstChild);this._storedMaxH=this._l.clientHeight;this._calloutImg=document.createElement("img");this._calloutImg.className="balloon3calloutArrow";F.insertBefore(this._calloutImg,F.firstChild);this._leftCalloutSrc=E+"left-callout.gif";this._rightCalloutSrc=E+"right-callout.gif";this._calloutImg.src=this._leftCalloutSrc;this.content=document.createElement("div");this.content.className="content";D.appendChild(this.content);this._cross=document.createElement("div");this._cross.className="cross";D.appendChild(this._cross);A.on(this._cross,"mouseover",this._cross_mouseover);A.on(this._cross,"mouseout",this._cross_mouseout);A.on(this._cross,"click",this._cross_click,this,true);this.hideEvent=new YAHOO.util.CustomEvent("hideEvent")};var C=Balloon3.prototype;C._cross_mouseover=function(){B.addClass(this,"hover")};C._cross_mouseout=function(){B.removeClass(this,"hover")};C._cross_click=function(){this.hide()};C.hide=function(){var D=this._l.style;D.visibility=this._calloutImg.style.visibility="hidden";D.visibility.display="none";D.left=D.top="-1000px";this.hideEvent.fire()};C.showFor=function(F){var P=this._l.style;P.display="block";var Q=B.getXY(F);var M=this._l.offsetWidth;var H=this._l.offsetHeight;var L=Q[0]+F.offsetWidth+this._calloutImg.offsetWidth;var J=Q[1]-18;var I=parseInt(B.getStyle(this.content,"paddingTop"))+parseInt(B.getStyle(this.content,"paddingBottom"));this.content.style.height="auto";var D=Math.min(Math.max(this.content.scrollHeight+I,90),this._storedMaxH);this._l.style.height=D+"px";this.content.style.height=this._l.clientHeight-I+"px";var O=8;var K;var E=L+M-document.body.scrollWidth;var N=L;if(E>0){this._calloutImg.src=this._rightCalloutSrc;K=Q[0]-this._calloutImg.offsetWidth-2+O;L=Q[0]-this._l.offsetWidth-this._calloutImg.offsetWidth+O}else{this._calloutImg.src=this._leftCalloutSrc;K=L-this._calloutImg.offsetWidth-O+2;L-=O}var P=this._l.style;P.left=L+"px";P.top=J+"px";P.visibility.display="block";var G=this._calloutImg.style;G.top=J+24+"px";G.left=K+"px";G.visibility=P.visibility="inherit"}})();var MiniTextile;(function(){MiniTextile=function(){this.baseURL=null};var B=MiniTextile.prototype;B._miniTextileRE=/(("[^"]+":)?(http[s]?:\/\/[\da-zA-Z_!~*'().:#;?&=+$%-\/]+))|(!.*?\.(?:png|jpg|jpeg|gif)!)|(<)|(>)/gi;B.miniTextileHandlers=[null,function(D,F,C){var G=F[C+1];var E=F[C+2];G=G?G.substring(1,G.length-2):"Link";E=encodeURI(D.baseURL!=null?D.baseURL+encodeURIComponent(E):encodeURI(E));return'<a target="_blank" href="'+E+'">'+G+"</a>"},null,null,function(D,F,C){var E=F[C];E=E.substring(1,E.length-1);return'<img src="'+encodeURI(E)+'"/>'},function(D,E,C){return"&lt;"},function(D,E,C){return"&gt;"}];function A(D,E){var C=D.miniTextileHandlers;for(var F=0;F<E.length;F++){if(E[F]){var G=C[F];if(G!=null){return G(D,E,F)}}}return"[unknown handler]"}B.textilize=function(D){var C=this;return D.replace(this._miniTextileRE,function(){var E=arguments;return A(C,E)})}})();var Gridz;(function(){var Dom=YAHOO.util.Dom,Event=YAHOO.util.Event,KeyListener=YAHOO.util.KeyListener,Lang=YAHOO.lang,Selector=YAHOO.util.Selector,logger,profilingEnabled=false,$=Dom.get;Event.throwErrors=true;var FEATURE_ID=1,FEATURE_TITLE=0,FEATURE_DATA=2;var maxCellImageWidth=200,maxCellImageHeight=200;Gridz=function(placeholder,footnotesDiv,productInfosDiv,filterPlaceholder){if(profilingEnabled){YAHOO.tool.Profiler.registerObject("Gridz",this)}this._placeholder=placeholder;this._footnotesDiv=footnotesDiv;this._productInfosDiv=productInfosDiv;this._filterPlaceholder=filterPlaceholder;this._redirectURL=Gridz.baseURL+"/link/1/";this._imagesPath=Gridz.baseURL+"/images/gridz/";this._imageLoadingURL=Gridz.baseURL+"/images/active_scaffold/default/indicator-small.gif";this._topChoiceMap=null;this._lastContentsTDHtml="<span></span>";this._init()};Gridz.baseURL="";var profilerViewer;Gridz.enableProfiling=function(){profilingEnabled=true;profilerViewer=new YAHOO.widget.ProfilerViewer("profilerDiv",{base:"/javascripts/yui/build/",showChart:false})};var proto=Gridz.prototype;proto._init=function(){this._placeholder.style.visibility="hidden";this.jsonLoaded=new YAHOO.util.CustomEvent("jsonLoaded");this.layoutCompleted=new YAHOO.util.CustomEvent("layoutCompleted");this.productTDMouseOver=new YAHOO.util.CustomEvent("productTDMouseOver");this.productTDMouseOut=new YAHOO.util.CustomEvent("productTDMouseOut");this._buildElements();this._clear();this._create();if(!YAHOO.env.ua.ie){Event.on(window,"load",this._window_onload,this,true)}Event.on(window,"unload",this.destroy,this,true);Event.on(window,"resize",this._window_onresize,this,true);this._nullDiv=document.createElement("div");this.version=0;this._miniTextile=new MiniTextile();this._miniTextile.grid=this;this._miniTextile.baseURL=Gridz.baseURL+"/link/2/";this._miniTextile.handlers=MiniTextile.prototype.miniTextileHandlers;this._miniTextile.miniTextileHandlers[4]=this._miniTextile_imgHandler};proto._clear=function(){this._loaded=false;this._detachViewModeTableEvents();if(this._footnotesDiv){this._footnotesDiv.innerHTML=""}if(this._productInfosDiv){this._productInfosDiv.innerHTML=""}this._json=null;this._editMode=false;this._footnotesMap={};this._footnotesAr=[];this._editsCount=0;this._myChoiceIx=-1;this._hiddenProductsCount=0;this._hiddenFeatureGroups=0;this._hiddenFeatures=0;this._imagesQueue=[];if(this._contentTable.rows.length>0){for(var i=this._leftTable.rows.length-1;i>=0;i--){this._leftTable.deleteRow(i);this._contentTable.deleteRow(i)}}if(this._headerTR){for(var i=this._headerTR.cells.length-1;i>=0;i--){this._headerTR.removeChild(this._headerTR.cells[i])}}for(var ix in this._topHeadersMap){var header=this._topHeadersMap[ix];header.parentNode.removeChild(header)}this._topHeadersMap={};this._placeholder.style.visibility="hidden"};proto._buildElements=function(){this._topDiv=document.createElement("div");this._topDiv.className="gridTopDiv";this._placeholder.appendChild(this._topDiv);this._topLeftOuterDiv=document.createElement("div");this._topLeftOuterDiv.className="gridTopLeftOuterDiv";this._topDiv.appendChild(this._topLeftOuterDiv);this._topLeftDiv=document.createElement("div");this._topLeftDiv.className="gridTopLeftDiv";this._topLeftOuterDiv.appendChild(this._topLeftDiv);this._addProductDiv=document.createElement("div");this._addProductDiv.className="gridAddProductDiv";this._topLeftDiv.appendChild(this._addProductDiv);this._topScrollDiv=document.createElement("div");this._topScrollDiv.className="gridTopScrollDiv";this._topDiv.appendChild(this._topScrollDiv);this._topHeadersDiv=document.createElement("div");this._topHeadersDiv.className="gridTopHeadersDiv";this._topScrollDiv.appendChild(this._topHeadersDiv);this._topHeadersContDiv=document.createElement("div");this._topHeadersContDiv.className="gridTopHeadersContDiv";this._topHeadersDiv.appendChild(this._topHeadersContDiv);var topSubDiv=document.createElement("div");topSubDiv.className="gridTopScrollSubDiv";this._topScrollDiv.appendChild(topSubDiv);this._topSubDiv=topSubDiv;this._topTable=document.createElement("table");this._topTable.className="gridTopTable2";this._topTable.cellPadding=0;this._topTable.cellSpacing=0;topSubDiv.appendChild(this._topTable);var mainDiv=document.createElement("div");mainDiv.className="gridMainDiv";this._placeholder.appendChild(mainDiv);this._contentScrollDiv=document.createElement("div");this._contentScrollDiv.className="gridzContentScrollDiv";mainDiv.appendChild(this._contentScrollDiv);this._contentScrollSubDiv=document.createElement("div");this._contentScrollDiv.appendChild(this._contentScrollSubDiv);this._contentScrollSubDiv.className="gridzContentScrollSubDiv";Event.on(this._contentScrollSubDiv,"scroll",this._contentScrollSubDiv_scroll,this,true);this._contentRelaxDiv=document.createElement("div");this._contentRelaxDiv.className="gridzContentRelaxDiv";this._contentScrollSubDiv.appendChild(this._contentRelaxDiv);this._contentTable=document.createElement("table");this._contentTable.className="gridzContentTable2";this._contentTable.cellPadding=0;this._contentTable.cellSpacing=0;this._contentTBody=this._contentTable.appendChild(document.createElement("tbody"));this._contentRelaxDiv.appendChild(this._contentTable);this._leftScrollDiv=document.createElement("div");this._leftScrollDiv.className="gridLeftScrollDiv";mainDiv.appendChild(this._leftScrollDiv);this._leftTable=document.createElement("table");this._leftTable.className="gridzLeftTable2";this._leftTable.cellPadding=0;this._leftTable.cellSpacing=0;this._leftTable.appendChild(document.createElement("tbody"));this._leftScrollDiv.appendChild(this._leftTable);this._footnoteTooltip=new YAHOO.widget.Tooltip(Dom.generateId(),{showDelay:0,hideDelay:0,width:"250px",autodismissdelay:20000,zIndex:10000,constraintoviewport:true,monitorresize:false,iframe:false});this._queuedImagesDiv=document.createElement("div");this._queuedImagesDiv.className="gridzQueuedImagesDiv";mainDiv.appendChild(this._queuedImagesDiv)};proto._window_onload=function(){this._syncTables()};proto._syncTables=function(headerOnly,relayoutCTD,relayoutLTD){if(this._placeholder.offsetWidth==0){return }var contentRows=this._contentTable.rows;this._syncCellWidths(contentRows);this._syncCellHeights(contentRows);this._layoutTopDiv();this._layout();this._contentScrollSubDiv_scroll();this.layoutCompleted.fire()};proto._syncCellWidths=function(contentRows){var headerCells=this._headerTR.cells;var count=headerCells.length;var trCount=contentRows.length;var lastIx=count-1;var csizeCells=contentRows[trCount-1].cells;var maxCellWidth=200;this._topTable.style.width=this._contentTable.style.width="";for(var i=0;i<count;i++){headerCells[i].style.width=csizeCells[i].style.width=""}this._contentRelaxDiv.style.width=(maxCellWidth+1)*count+"px";var safePixel=YAHOO.env.ua.ie?-1:0;var tableWidth=0;var colWidths=[];for(var i=0;i<count;i++){var hcell=headerCells[i];var hspan=hcell.firstChild;if(hcell.style.display=="none"){continue}var width=Math.max(contentRows[0].cells[i].clientWidth,hspan.clientWidth);tableWidth+=width+1;colWidths[i]=width+"px"}for(var i=0;i<count;i++){if(colWidths[i]){csizeCells[i].style.width=headerCells[i].style.width=colWidths[i]}}if(tableWidth>0){this._topTable.style.width=this._topHeadersContDiv.style.width=this._contentTable.style.width=tableWidth+safePixel+"px"}this._contentRelaxDiv.style.width=""};proto._syncCellHeights=function(contentRows){var nonclientHeight=YAHOO.env.ua.ie?0:1;var safePixel=1;var resizerIx=contentRows[0].cells.length-1;var lastIx=contentRows.length-1;var leftTRs=this._leftTable.rows;var heights=[];var contentRowsLength=contentRows.length;for(var i=0;i<contentRowsLength;i++){var crow=contentRows[i];var lrow=leftTRs[i];var lcell=lrow.firstChild;var lcellSpan=lcell.firstChild;if(lcellSpan==null){continue}var height=lcellSpan.offsetHeight;for(var cellIx=0;cellIx<crow.cells.length-1;cellIx++){var ccellSpan=crow.cells[cellIx].firstChild;if(ccellSpan==null){continue}var ccellSpan_offsetHeight=ccellSpan.offsetHeight;height=ccellSpan_offsetHeight>height?ccellSpan_offsetHeight:height}var tdHeight=height+safePixel+(i==lastIx?nonclientHeight:0)+1+"px";heights.push(tdHeight)}for(var i=contentRowsLength-1;i>=0;i--){var lcell=leftTRs[i].firstChild,rcell=contentRows[i].cells[resizerIx];lcell.style.height=rcell.style.height=heights[i]}};proto._layoutTopDiv=function(){this._layoutTopHeaders();this._topLeftOuterDiv.style.height=this._topDiv.offsetHeight+"px"};proto._layoutTopHeaders=function(){var ieWebKitBorder=YAHOO.env.ua.ie||YAHOO.env.ua.webkit?1:0;var rightBorder=YAHOO.env.ua.gecko?1:0;var maxHeight=0;this._topHeadersDiv.style.dislpay="none";var first=true;for(var ix in this._topHeadersMap){if(first){this._topHeadersDiv.style.display="block";first=false}var header=this._topHeadersMap[ix];var td=this._topTable.rows[0].cells[ix];if(td.style.display=="none"){header.style.display="none"}else{var leftBorderW=ieWebKitBorder;header.style.display="block";maxHeight=Math.max(maxHeight,header.offsetHeight);if(td.offsetLeft==0){leftBorderW=0}if(!YAHOO.env.ua.ie&&td.offsetLeft+td.offsetWidth+ieWebKitBorder==this._topTable.offsetWidth){if(YAHOO.env.ua.webkit){rightBorder=-1}else{if(YAHOO.env.ua.gecko){rightBorder=0}}}header.style.left=td.offsetLeft+leftBorderW+"px";header.style.width=td.offsetWidth-leftBorderW-rightBorder+"px"}}if(!first){this._topHeadersDiv.style.height=maxHeight+"px"}return maxHeight};proto._layout=function(){this._layoutBounds()};proto.getContentBounds=function(){var w=this._topDiv.offsetHeight;var h=this._topDiv.offsetHeight+this._contentScrollSubDiv.offsetHeight;return{width:w,height:h}};proto._window_onresize=function(nev){this._layoutBounds();this._contentScrollSubDiv_scroll()};proto._layoutBounds=function(){if(this._placeholder.clientHeight==0||this._placeholder.clientWidth==0){return }var w=this._leftTable.offsetWidth;var availHeight=this._placeholder.clientHeight-this._topDiv.offsetHeight-2;var availWidth=this._placeholder.clientWidth-this._leftTable.offsetWidth-2;if(availWidth<1||availHeight<1){return }var hBarVisible=false,vBarVisible=false;if(this._contentTable.offsetWidth>availWidth){hBarVisible=true}if(this._contentTable.offsetHeight>availHeight){vBarVisible=true}if(!vBarVisible&&hBarVisible&&this._contentTable.offsetHeight>availHeight-this._scrollBarWidth){vBarVisible=true}if(!hBarVisible&&vBarVisible&&this._contentTable.offsetWidth>availWidth-this._scrollBarWidth){hBarVisible=true}var hScrollBarHeight=hBarVisible?this._scrollBarWidth:0;var vScrollBarHeight=vBarVisible?this._scrollBarWidth:0;var cH,lH,cW,tW;if(this._contentTable.offsetHeight+hScrollBarHeight<availHeight){cH=this._contentTable.offsetHeight+hScrollBarHeight+"px";lH=this._contentTable.offsetHeight+"px"}else{cH=availHeight+"px";lH=availHeight-hScrollBarHeight+"px"}if(this._contentTable.offsetWidth+vScrollBarHeight<availWidth){cW=this._contentTable.offsetWidth+vScrollBarHeight+"px";tW=this._contentTable.offsetWidth+"px"}else{cW=availWidth+"px";tW=availWidth-vScrollBarHeight+"px"}if(YAHOO.env.ua.ie){this._contentScrollSubDiv.style.overflowX=hBarVisible?"auto":"hidden";this._contentScrollSubDiv.style.overflowY=vBarVisible?"auto":"hidden"}else{if(!hBarVisible&&!vBarVisible){this._contentScrollSubDiv.style.overflow="hidden"}else{this._contentScrollSubDiv.style.overflow="auto"}}this._topLeftOuterDiv.style.width=this._leftScrollDiv.style.width=w+"px";this._contentScrollDiv.firstChild.style.marginLeft=this._topHeadersDiv.style.marginLeft=this._topSubDiv.style.marginLeft=w+1+"px";this._contentScrollSubDiv.style.height=cH;this._leftScrollDiv.style.height=lH;this._contentScrollSubDiv.style.width=cW;this._topHeadersDiv.style.width=this._topSubDiv.style.width=tW};proto._contentScrollSubDiv_scroll=function(nev){this._topHeadersDiv.scrollLeft=this._topSubDiv.scrollLeft=this._contentScrollSubDiv.scrollLeft;this._leftScrollDiv.scrollTop=this._contentScrollSubDiv.scrollTop};proto.destroy=function(){this._nullDiv=null};proto._create=function(){var scrollDiv=document.createElement("div");scrollDiv.style.cssText="position: absolute; visibility: hidden; z-index: -1; top: 0; left: 0; overflow: scroll; width: 100px; height: 100px; ";document.body.insertBefore(scrollDiv,document.body.firstChild);this._scrollBarWidth=scrollDiv.offsetWidth-scrollDiv.clientWidth;document.body.removeChild(scrollDiv);this._headerTR=this._topTable.insertRow(-1);this._attachViewModeTableEvents();this._initDialogs()};proto._findCellIndex=function(td){var tr=td.parentNode;for(var i=0;i<tr.cells.length;i++){if(tr.cells[i]==td){return i}}return -1};proto.load=function(url){this.loadURL=url;var obj=this;new Ajax.Request(url,{method:"GET",onSuccess:function(t){obj._loadSuccessCB(t)},onFailure:function(t){obj._loadFailCB(t)},evalJS:false,evalJSON:false});this._beginProgress()};proto._loadSuccessCB=function(ev){this._endProgress();var json;try{eval("json = "+ev.responseText)}catch(e){alert("Failed to load griz data: "+e.description);return }this.loadJSON(json);var obj=this;setTimeout(function(){obj._syncTables()},0)};proto._makeCompatible=function(json){if(typeof json.nextID!="number"){json.nextID=0;for(var i=0;i<json.featureGroups.length;i++){var group=json.featureGroups[i];group.id="g"+json.nextID++;for(var j=0;j<group.features.length;j++){group.features[j].push("f"+json.nextID++)}}for(var i=0;i<json.products.length;i++){json.products[i].id="p"+json.nextID++}}};proto._loadFailCB=function(ev){this._endProgress();alert("ERROR: "+ev.status+" "+ev.statusText)};proto.loadJSON=function(json){if(this._json){this._clear();var obj=this;setTimeout(function(){obj.loadJSON(json)},0);return }if(!json){alert("ERROR: No data received");json={featureGroups:[],products:[]}}this._makeCompatible(json);this._json=json;var start=new Date().getTime();this._renderContentsRbR();this._renderMyChoice();this._placeholder.style.visibility="inherit";this._loaded=true;this._syncTables();this.jsonLoaded.fire()};proto._renderContentsRbR=function(){var productsLength=this._json.products.length;for(var i=0;i<productsLength;i++){var product=this._json.products[i];var last=productsLength-1==i;this._renderHeaderCell(i,product,last)}var featIxAr=[0];for(var i=0;i<this._json.featureGroups.length;i++){var group=this._json.featureGroups[i];this._renderGroupRowRbR(group,featIxAr)}if(this._leftTable.rows.length>0){this._removeLastRowBorder(this._leftTable.rows.length-1)}};proto._removeLastRowBorder=function(rowIx){this._leftTable.rows[rowIx].cells[0].style.borderBottom="none";var contentCells=this._contentTable.rows[rowIx].cells;for(var i=0;i<contentCells.length;i++){contentCells[i].style.borderBottom="none"}};proto._renderMyChoice=function(){if(!this.myChoiceProductID){return }var productsLength=this._json.products.length;for(var i=0;i<productsLength;i++){var product=this._json.products[i];if(product.id==this.myChoiceProductID){this._renderMyChoiceProduct(i)}}};proto._renderGroupRowRbR=function(group,featIxAr){var tr=document.createElement("tr");var cell=this._renderGroupCell();var groupContext=this._renderGroupContents(tr,cell,group);tr.appendChild(cell);this._leftTable.tBodies[0].appendChild(tr);var tr=document.createElement("tr");var productsLength=this._json.products.length;for(var i=0;i<productsLength;i++){var last=productsLength-1==i;var td=document.createElement("td");this._renderEmptyGroupCellContents(td);if(last){td.style.borderRight="none"}tr.appendChild(td)}this._renderRowResizer(tr);this._contentTBody.appendChild(tr);for(var i=0;i<group.features.length;i++){this._renderFeatureRowRbR(groupContext,group.features[i],featIxAr);featIxAr[0]++}};proto._renderFeatureRowRbR=function(groupContext,feature,featIxAr){var featIx=featIxAr[0];var tbody=this._leftTable.tBodies[0];var tr=document.createElement("tr");var cell=document.createElement("td");cell.className="featureTD";tr.appendChild(cell);this._renderFeature(tr,cell,feature,groupContext);tbody.appendChild(tr);var tr=document.createElement("tr");var productsLength=this._json.products.length;for(var i=0;i<productsLength;i++){var product=this._json.products[i];var last=productsLength-1==i;var td=document.createElement("td");tr.appendChild(td);var dataAr=product.data[featIx];if(dataAr[0]===null||dataAr[0]===""){this._renderEmptyCellContents(td)}else{this._renderCellContents(td,dataAr,true)}td._dataContext={product:product,data:dataAr};if(last){td.style.borderRight="none"}}this._renderRowResizer(tr);this._contentTBody.appendChild(tr)};proto._renderRowResizer=function(tr){var td=document.createElement("td");td.className="resizer";td.innerHTML="<span></span>";tr.appendChild(td)};proto._renderGroupCell=function(){var cell=document.createElement("td");cell.className="featureGroupTD";return cell};proto._renderGroupContents=function(tr,cell,group){this._renderGroupInner(cell,group);return null};proto._renderGroupInner=function(cell,group){var span=document.createElement("span");span.className="inner";span.innerHTML="<span>"+group.title+"</span>";cell.appendChild(span)};proto._renderFeature=function(tr,td,f,groupContext,ix){var title=f[0];this._renderFeatureInner(td,f);tr._feature=f};proto._renderFeatureInner=function(td,f){var title=f[0];td.innerHTML="<span class='inner'><span>"+title.escapeHTML()+"</span></span>"};proto._renderHeaderCell=function(ix,product,last){var headerTD=this._headerTR.insertCell(-1);headerTD.className="productHeaderTD";this._renderHeaderInner(headerTD,last,product.title);headerTD._dataContext={product:product};if(this._topChoiceMap){this._createTopChoice(product,ix,headerTD)}return headerTD};proto._renderHeaderInner=function(headerTD,last,title){headerTD.noWrap="noWrap";var span=document.createElement("span");span.className="outerCell";span.appendChild(document.createTextNode(title));headerTD.appendChild(span);if(last){headerTD.style.borderRight="none"}return headerTD};proto._renderEmptyCellContents=function(td){td.className="productDataTD productNullTD";td.innerHTML="<span class='outerCell'>&nbsp;</span>"};proto._renderEmptyGroupCellContents=function(td){td.innerHTML="<span class='outerCell'>&nbsp;</span>"};proto._renderCellContents=function(td,data,newCell){var value=data[0];this._currentRenderedCell=td;td.className="productDataTD";td.innerHTML="<span class='outerCell'>"+this._miniTextile.textilize(value)+"</span>";this._currentRenderedCell=null;if(data.length>1){this._applyFootnote(td,data[1],newCell)}};proto._miniTextile_imgHandler=function(self,args,ix){var url=args[ix];url=url.substring(1,url.length-1);var td=self.grid._currentRenderedCell;var grid=self.grid;if(/^http[s]?:/.test(url)){var queueIx=grid._queueImage(td,url);return'<img _queueIx="'+queueIx+'" src="'+grid._imageLoadingURL+'"/>'}else{return'<img src="'+encodeURI(grid._imagesPath+url)+'"/>'}};proto._createTopChoice=function(product,ix,headerTD){var topOrder=this._topChoiceMap[product.id];if(!topOrder){return }this._topChoiceHeaderDiv=this._createTopHeader(ix,"community","#"+topOrder+" Community Pick")};proto._HEADER_LINE_HEIGHT=14;proto._createTopHeader=function(ix,id,html){html=html||"";var contDiv=this._topHeadersMap[ix];if(!contDiv){contDiv=document.createElement("div");contDiv.className="topChoiceSubDiv1";this._topHeadersMap[ix]=contDiv;contDiv.innerHTML="<div class='topChoiceSubDiv1_bg'></div><div class='topChoiceSubDiv1_right'></div>";this._topHeadersContDiv.appendChild(contDiv)}var textDiv=document.createElement("div");textDiv.innerHTML=html;textDiv._id=String(id);contDiv.firstChild.appendChild(textDiv);return contDiv};proto._removeFromTopHeader=function(ix,id){var contDiv=this._topHeadersMap[ix];if(!contDiv){return }var bgDiv=contDiv.firstChild;for(var i=0;i<bgDiv.childNodes.length;i++){var node=bgDiv.childNodes[i];if(node.nodeType==1&&node._id==id){bgDiv.removeChild(node)}}if(bgDiv.childNodes.length==0){contDiv.parentNode.removeChild(contDiv);delete this._topHeadersMap[ix]}};proto._queueImage=function(td,url){var bigImage=document.createElement("img");this._queuedImagesDiv.appendChild(bigImage);var queueIx=bigImage._queueIx=this._imagesQueue.length;this._imagesQueue.push([td]);Event.on(bigImage,"load",this._queuedImageLoad,this,true);setTimeout(function(){bigImage.src=url},0);return queueIx};proto._queuedImageLoad=function(nev){try{if(this._queuedSyncTO){clearTimeout(this._queuedSyncTO);this._queuedSyncTO=null}var bigImage=nev.srcElement||nev.currentTarget;if(!bigImage){return }Event.removeListener(bigImage,"load",this._queuedImageLoad);if(this._imagesQueue.length==0||bigImage._queueIx>=this._imagesQueue.length){return }var entry=this._imagesQueue[bigImage._queueIx];if(!entry){return }var td=entry[0];var img;var images=td.getElementsByTagName("img");for(var i=0;i<images.length;i++){if(images[i].getAttribute("_queueIx")==bigImage._queueIx){img=images[i];break}}this._imagesQueue[bigImage._queueIx]=null;if(!td||!img||!td.parentNode){return }var maxw=maxCellImageWidth;var maxh=maxCellImageHeight;var w,h;if(bigImage.width>maxw||bigImage.height>maxh){var ratio=bigImage.width/bigImage.height;if(bigImage.width>bigImage.height){w=maxw;h=w/ratio}else{h=maxh;w=h*ratio}}else{w=bigImage.width;h=bigImage.height}img.width=w;img.height=h;img.src=bigImage.src;img._queueIx=null;var obj=this;bigImage.parentNode.removeChild(bigImage);this._queuedSyncTO=setTimeout(function(){obj._syncTables()},100)}catch(e){alert(e.description)}};proto._applyFootnote=function(td,footnote,newCell){var span=document.createElement("span");span.className="footnoteRefSpan";td.firstChild.appendChild(span);var footnoteContext=this._footnotesMap[footnote];if(footnoteContext){span.innerHTML=footnoteContext.ix+1;if(newCell){footnoteContext.references++}}else{span.innerHTML=this._footnotesAr.length+1;if(this._footnotesDiv){var div=document.createElement("div");div.className="footnoteDiv";this._footnotesDiv.appendChild(div);div.appendChild(span.cloneNode(true));var textSpan=document.createElement("span");div.appendChild(textSpan);textSpan.appendChild(document.createTextNode(footnote))}var obj=this._footnotesMap[footnote]={references:1,div:div,ix:this._footnotesAr.length};this._footnotesAr.push(obj)}};proto._updateFootnoteText=function(oldFootnote,newFootnote){var footnoteContext=this._footnotesMap[oldFootnote];if(!footnoteContext){return false}if(footnoteContext.references!=1){return false}delete this._footnotesMap[oldFootnote];this._footnotesMap[newFootnote]=footnoteContext;footnoteContext.div.innerHTML="";footnoteContext.div.appendChild(document.createTextNode(newFootnote));return true};proto._updateFootnoteSpans=function(cssClass,spans,oldIx,newIx){for(var i=0;i<spans.length;i++){if(spans[i].className==cssClass&&spans[i].innerHTML==oldIx){spans[i].innerHTML=newIx}}};proto._initDialogs=function(){this._progressPanel=new YAHOO.widget.Panel(Dom.generateId(),{width:"240px",fixedcenter:true,close:false,draggable:false,zindex:4,modal:true,visible:false,monitorresize:false});this._progressPanel.setHeader("Please wait...");this._progressPanel.setBody('<img src="'+this._imagesPath+'rel_interstitial_loading.gif"/>');this._progressPanel.render(document.body)};proto._showDialogUnderLink=function(target,dialog){this._productDialog.hide();this._cellDialog.hide();dialog.form.reset();dialog.cfg.setProperty("context",[target,"tl","bl"]);dialog.show();var cXY=dialog.getConstrainedXY(dialog.cfg.getProperty("x"),dialog.cfg.getProperty("y"));dialog.cfg.setProperty("xy",cXY);var pos=Dom.getXY(target);var xy=Dom.getXY(dialog.element);if(xy[1]<pos[1]+target.offsetHeight){dialog.cfg.setProperty("context",[target,"bl","tl"])}};proto._beginProgress=function(){this._progressPanel.show()};proto._endProgress=function(){this._progressPanel.hide()};proto.indexOf=function(a,val){for(var i=0;i<a.length;i++){if(a[i]===val){return i}}return -1};proto._findColIxByProduct=function(product){return this.indexOf(this._json.products,product)};proto._findProductPara=function(product){for(var i=0;i<this._productInfosDiv.childNodes.length;i++){var node=this._productInfosDiv.childNodes[i];if(node._dataContext&&node._dataContext.product==product){return node}}return null};proto._removeColumn=function(table,colIx){for(var i=0;i<table.rows.length;i++){var row=table.rows[i];row.removeChild(row.cells[colIx])}};proto._findLastFeatureTR=function(tr){while(tr&&tr.nextSibling&&tr.nextSibling.cells[0].className=="featureTD"){tr=tr.nextSibling}return tr};proto._getFeatureGroupStartIx=function(fg,asRowIndex){var ix=0;var offset=asRowIndex?1:0;var found=false;for(var i=0;i<this._json.featureGroups.length;i++){if(this._json.featureGroups[i]!=fg){ix+=this._json.featureGroups[i].features.length+offset}else{return ix}}return -1};proto._removeProductsData=function(dataIndex,length){for(var i=0;i<this._json.products.length;i++){var product=this._json.products[i];if(product.data.length>dataIndex){product.data.splice(dataIndex,length)}}};proto._findFeatureGroupTR=function(featureTR){var tr=featureTR;while(tr&&!tr._featureGroup){tr=tr.previousSibling}return tr};proto.findProductById=function(id){if(!this._json||!this._json.products){return null}for(var i=0;i<this._json.products.length;i++){if(this._json.products[i].id==id){return this._json.products[i]}}return null};proto._attachViewModeTableEvents=function(){var to=[this._contentTable,this._topTable];Event.on(to,"mouseover",this._contentTable_viewMode_mouseover,this,true);Event.on(to,"mouseout",this._contentTable_viewMode_mouseout,this,true);Event.on(to,"click",this._contentTable_viewMode_click,this,true);Event.on(to,"mousedown",this._contentTable_viewMode_mousedown,this,true)};proto._detachViewModeTableEvents=function(){var to=[this._contentTable,this._topTable];Event.removeListener(to,"mouseover",this._contentTable_viewMode_mouseover);Event.removeListener(to,"mouseout",this._contentTable_viewMode_mouseout);Event.removeListener(to,"click",this._contentTable_viewMode_click);Event.removeListener(to,"mousedown",this._contentTable_viewMode_mousedown)};proto._contentTable_viewMode_mousedown=function(nev){Event.on(document,"mousemove",this._document_drag_mousemove,this,true);Event.on(document,"mouseup",this._document_drag_mouseup,this,true);this._dragDeltaX=Event.getPageX(nev)-(this._contentScrollSubDiv.scrollWidth-this._contentScrollSubDiv.scrollLeft);this._dragDeltaY=Event.getPageY(nev)-(this._contentScrollSubDiv.scrollHeight-this._contentScrollSubDiv.scrollTop);Event.stopEvent(nev)};proto._document_drag_mousemove=function(nev){this._contentScrollSubDiv.scrollLeft=this._contentScrollSubDiv.scrollWidth-(Event.getPageX(nev)-this._dragDeltaX);this._contentScrollSubDiv.scrollTop=this._contentScrollSubDiv.scrollHeight-(Event.getPageY(nev)-this._dragDeltaY);Event.stopEvent(nev)};proto._document_drag_mouseup=function(nev){Event.removeListener(document,"mousemove",this._document_drag_mousemove);Event.removeListener(document,"mouseup",this._document_drag_mouseup);Event.stopEvent(nev)};proto._contentTable_viewMode_mouseover=function(nev){var t=Event.getTarget(nev);if(t.tagName!="TD"){t=Dom.getAncestorByTagName(t,"TD")}if(!t){return }if(Dom.hasClass(t,"productDataTD")||Dom.hasClass(t,"productNullTD")){var context=t._dataContext;if(context&&context.data.length>1){if(this._footnoteTooltip.cfg.getProperty("context")!=t){this._footnoteTooltip.doHide();this._footnoteTooltip.cfg.setProperty("context",t);this._footnoteTooltip.cfg.setProperty("text",context.data[1]);this._footnoteTooltip.doShow(nev,t)}}}else{if(Dom.hasClass(t,"productHeaderTD")){if(t._dataContext){if(t._dataContext.product.url){Dom.addClass(t,"linkable")}this.productTDMouseOver.fire(t)}}}};proto._contentTable_viewMode_mouseout=function(nev){var t=Event.getTarget(nev);if(t.tagName!="TD"){t=Dom.getAncestorByTagName(t,"TD")}if(!t){return }if(Dom.hasClass(t,"productDataTD")||Dom.hasClass(t,"productNullTD")){}else{if(Dom.hasClass(t,"productHeaderTD")){Dom.removeClass(t,"linkable");this.productTDMouseOut.fire(t)}}};proto._contentTable_viewMode_click=function(nev){var t=Event.getTarget(nev);if(t.tagName!="TD"){t=Dom.getAncestorByTagName(t,"TD")}if(!t){return }if(Dom.hasClass(t,"productHeaderTD")&&t._dataContext&&t._dataContext.product.url){Event.stopEvent(nev);window.open(this._redirectURL+encodeURIComponent(encodeURIComponent(t._dataContext.product.url)),"_blank")}};proto.getJSONString=function(){return Object.toJSON(this._json)};proto.showJSON=function(el){el.innerHTML="";el.appendChild(document.createTextNode(this.getJSONString()))}})();(function(){var B=YAHOO.util.Dom,A=YAHOO.util.Event,D=B.get;var C=Gridz.prototype;C.applyFilterJSON=function(I,H){var L=this._arrayToHashSet(I);for(var G=0;G<this._json.products.length;G++){if(!L[this._json.products[G].id]){this._hideProduct(G)}}var E=0;for(var G=0;G<this._json.featureGroups.length;G++){var J=this._json.featureGroups[G];if(!L[J.id]){this._hideFeatureGroup(this._leftTable.rows[E]);E+=J.features.length+1}else{E++;for(var F=0;F<J.features.length;F++){var K=J.features[F][1];if(!L[K]){this._setFeatureVisibility(this._leftTable.rows[E],false)}E++}}}if(H&&this._permalinkDiv){this._showPermalink(H)}this._syncTables()};C._arrayToHashSet=function(E){var G={};for(var F=0;F<E.length;F++){G[E[F]]=true}return G};C._hideProduct=function(E){if(this._contentTable.rows[0].cells[E].style.display=="none"){return }this._hiddenProductsCount++;this._topTable.rows[0].cells[E].style.display="none";for(var F=0;F<this._contentTable.rows.length;F++){this._contentTable.rows[F].cells[E].style.display="none"}};C._hideFeatureGroup=function(H,I,E){if(H.style.display=="none"){return }var F=this.indexOf(this._leftTable.rows,H);var G=this._contentTable.rows[F+1];this._setRowDisplay(H,false);this._setRowDisplay(G,false);if(!I){H=H.nextSibling;G=G.nextSibling;while(H&&H.cells[0].className=="featureTD"){this._setRowDisplay(H,false);this._setRowDisplay(G,false);H=H.nextSibling;G=G.nextSibling}}this._hiddenFeatureGroups++;if(!E){this._syncTables(true)}};C._setFeatureVisibility=function(H,I,F){if(I&&H.style.display=="none"||!I&&H.style.display!="none"){if(I){var E=this._findFeatureGroupTR(H);if(E.style.display=="none"){this._showFeatureGroup(E,true,true)}}this._setRowDisplay(H,I);var G=this._contentTable.rows[this.indexOf(this._leftTable.rows,H)];this._setRowDisplay(G,I);this._hiddenFeatureGroups+=I?-1:1;if(!F){this._syncTables(true)}}};C._setRowDisplay=function(E,F){E.style.display=F?(YAHOO.env.ua.ie?"block":"table-row"):"none"}})();(function(){var E=YAHOO.util.Dom,B=YAHOO.util.Event,D=YAHOO.util.KeyListener,G=YAHOO.lang,A=YAHOO.util.Selector,H=E.get;var F=Gridz.prototype;F.setSaveLink=function(I){B.on(I,"click",this._saveLink_click,this,true);this._saveLink=I};F.setRevertLink=function(I){B.on(I,"click",this._revertLink_click,this,true);this._revertLink=I};F._saveLink_click=function(I){B.stopEvent(I);this._saveLink.disabled=true;if(this._revertLink){this._revertLink.disabled=true}this.saveJson()};F._revertLink_click=function(I){B.stopEvent(I);this.revert()};var C=F._renderContentsRbR;F._renderContentsRbR=function(){C.apply(this);var I=this._json.products.length;for(var J=0;J<I;J++){var K=this._json.products[J];this._renderProductPara(K)}};F._renderProductPara=function(L,K){var J=document.createElement("div");J.className="gridzPIContDiv";if(K){this._productInfosDiv.insertBefore(J,this._productInfosDiv.firstChild)}else{this._productInfosDiv.appendChild(J)}var N=document.createElement("div");N.className="gridzPIDiv_title";J.appendChild(N);if(L.title){N.appendChild(document.createTextNode(L.title))}N=document.createElement("div");N.className="gridzPIDiv_url";J.appendChild(N);var I=document.createElement("a");N.appendChild(I);I.href="/link/1/"+encodeURIComponent(encodeURIComponent(L.url));I.target="_blank";if(L.url){I.appendChild(document.createTextNode(L.url))}N=document.createElement("div");N.className="gridzPIDiv_description";J.appendChild(N);var M=L.description;if(!M){M="No Description"}N.appendChild(document.createTextNode(M));J._dataContext={product:L};return J}})();(function(){var Dom=YAHOO.util.Dom,Event=YAHOO.util.Event,KeyListener=YAHOO.util.KeyListener,Lang=YAHOO.lang,Selector=YAHOO.util.Selector,$=Dom.get;var proto=Gridz.prototype;var _init=proto._init;proto._init=function(){_init.apply(this);this.fromEditMode=new YAHOO.util.CustomEvent("fromEditMode");this.fromViewMode=new YAHOO.util.CustomEvent("fromViewMode");this.jsonSaving=new YAHOO.util.CustomEvent("jsonSaving");this.jsonSaved=new YAHOO.util.CustomEvent("jsonSaved");this._lastContentsTDHtml="&nbsp;"};var _clear=proto._clear;proto._clear=function(){this.toViewMode();_clear.apply(this)};var _create=proto._create;proto._create=function(){_create.apply(this);this._createEditModeElements()};var destroy=proto.destroy;proto.destroy=function(){this._lastLeftTR=null;this._lastContentsTR=null;this._addGroupTDContents=null;this._productDialog.destroy();this._productDialog=null;this._cellDialog.destroy();this._cellDialog=null;destroy.apply(this)};proto._createEditModeElements=function(){var div=document.createElement("div");div.className="addNewProductLinkDiv";div.innerHTML="Add Product";this._topLeftDiv.appendChild(div);this._addNewProductLinkDiv=div;var img=document.createElement("img");img.style.width="14px";img.style.height="13px";this._addProductDiv.appendChild(img).src=this._imagesPath+"add_plus_icon.gif";Event.addListener([this._addNewProductLinkDiv,this._addProductDiv],"click",this.beginAddProduct,this,true);this._createDetachedAddGroupRow(img.cloneNode(true));this._createCellEditBox();var div=this._editDiv=document.createElement("div");div.className="gridzEditDiv";var innerDiv=document.createElement("div");div.appendChild(innerDiv);var img=document.createElement("img");innerDiv.appendChild(img);img.src=this._imagesPath+"note_edit.png";img.title="Edit";Event.on(img,"mousedown",this._editImg_click,this,true);var img=document.createElement("img");innerDiv.appendChild(img);img.src=this._imagesPath+"delete.png";img.title="Delete";Event.on(img,"mousedown",this._deleteImg_click,this,true);this._initEditDialogs()};proto._initEditDialogs=function(){this._productDialog=new YAHOO.widget.Dialog("gridzProductDialog",{width:"40em",visible:false,postmethod:"manual",close:false,keylisteners:[new YAHOO.util.KeyListener($("gridzProductDialog"),{},{fn:this._productDialog_KeyListener,scope:this,correctScope:true},"keyup")],buttons:[{text:"OK",handler:{fn:this._productDialog_OK,scope:this},isDefault:true},{text:"Cancel",handler:{fn:this._productDialog_Cancel,scope:this}}]});this._productDialog.manualSubmitEvent.subscribe(this._productDialog_OK,this,true);this._productDialog.render();this._cellDialog=new YAHOO.widget.Dialog("gridzCellDialog",{width:"40em",zindex:10,visible:false,postmethod:"none",close:false,buttons:[{text:"OK",handler:{fn:this._cellDialog_OK,scope:this},isDefault:true},{text:"Cancel",handler:{fn:this._cellDialog_Cancel,scope:this}}]});this._cellDialog.render(document.body);var iconsDiv=Dom.getElementsByClassName("iconsDiv",null,this._cellDialog.element)[0];Event.on(iconsDiv,"mouseover",this._iconsDiv_mouseover,this,true);Event.on(iconsDiv,"mouseout",this._iconsDiv_mouseout,this,true);Event.on(iconsDiv,"click",this._iconsDiv_click,this,true);this._deleteDialog=new YAHOO.widget.SimpleDialog(Dom.generateId(),{width:"20em",modal:true,visible:false,close:false});this._deleteDialog.setHeader("Warning!");this._deleteDialog.render(document.body);this._deleteDialog.cfg.setProperty("icon",YAHOO.widget.SimpleDialog.ICON_WARN)};proto._updateEditsCount=function(){this._editsCount++;if(this._saveLink){this._saveLink.disabled=false;this._saveLink.innerHTML="Save "+this._editsCount+" Change"+(this._editsCount>1?"s":"")}if(this._revertLink){this._revertLink.disabled=false}};proto.revert=function(){this._editsCount=0;if(this.loadURL){this.load(this.loadURL)}};proto.saveJson=function(){if(!this.saveURL){return }var obj=this;new Ajax.Request(this.saveURL,{method:"POST",onSuccess:function(t){obj._saveSuccessCB(t)},onFailure:function(t){obj._loadFailCB(t)},parameters:"data="+encodeURIComponent(this.getJSONString())+"&version="+this.version,evalJS:false,evalJSON:false});this.jsonSaving.fire();this._beginProgress()};proto._saveSuccessCB=function(ev){this._endProgress();var json;try{eval("json = "+ev.responseText)}catch(e){alert("ERROR: failed to parse json data: "+e.description);return }if(json&&(json.status=="OK"||json.status=="MERGE")){this._editsCount=0;if(this._saveLink){this._saveLink.innerHTML="Save"}if(json.new_version!=undefined){this.version=json.new_version}this.jsonSaved.fire(json);if(json.status=="MERGE"){this.revert()}}else{alert("ERROR: failed to save data");if(this._saveLink){this._saveLink.disabled=false}}};proto._removeFootnote=function(footnote){var footnoteContext=this._footnotesMap[footnote];if(!footnoteContext){return }if(footnoteContext.references-1<=0){footnoteContext.div.parentNode.removeChild(footnoteContext.div);this._footnotesAr.splice(footnoteContext.ix,1);delete this._footnotesMap[footnote];for(var i=footnoteContext.ix;i<this._footnotesAr.length;i++){footnoteContext=this._footnotesAr[i];var oldIx=footnoteContext.ix+1,newIx=i+1;var spans=this._contentTable.getElementsByTagName("span");this._updateFootnoteSpans("footnoteRefSpan",spans,oldIx,newIx);var spans=this._footnotesDiv.getElementsByTagName("span");this._updateFootnoteSpans("footnoteRefSpan",spans,oldIx,newIx);footnoteContext.ix=i}}if(footnoteContext.references>0){footnoteContext.references--}};proto._createCellEditBox=function(){this._autoCompleteDiv=document.createElement("div");this._autoCompleteDiv.className="autoCompleteDiv";var box=document.createElement("input");box.type="text";this._autoCompleteDiv.appendChild(box);new YAHOO.util.KeyListener(box,{keys:13},{fn:this._acBox_key_ok,scope:this,correctScope:true}).enable();new YAHOO.util.KeyListener(box,{keys:27},{fn:this._acBox_key_cancel,scope:this,correctScope:true}).enable()};var _renderContentsRbR=proto._renderContentsRbR;proto._renderContentsRbR=function(){_renderContentsRbR.apply(this);this._renderAddGroupRow()};proto._createDetachedAddGroupRow=function(imgNode){var cellContents=this._addGroupTDContents=document.createDocumentFragment();var cellInner=document.createElement("span");cellInner.className="inner";cellContents.appendChild(cellInner);var span=document.createElement("span");span.appendChild(document.createTextNode("Add Group"));cellInner.appendChild(span);cellInner.appendChild(document.createTextNode(" "));cellInner.appendChild(imgNode);cellContents.appendChild(document.createTextNode(" "))};proto._renderAddGroupRow=function(){this._renderLastRow();var cell=this._lastLeftTR.cells[0];cell.innerHTML="";cell.appendChild(this._addGroupTDContents.cloneNode(true));Event.on(cell,"click",this.beginAddFeatureGroup,this,true)};proto._removeLastRowBorder=function(){};proto._renderLastRow=function(){var tr=this._lastLeftTR=document.createElement("TR");tr.className="lastLeftTR";var cell=document.createElement("TD");tr.appendChild(cell);this._leftTable.tBodies[0].appendChild(tr);cell.innerHTML="<span></span>";var tr=this._lastContentsTR=this._contentTBody.insertRow(-1);tr.className="lastContentsTR";var productsLength=this._json.products.length;for(var i=0;i<productsLength;i++){var product=this._json.products[i];var last=productsLength-1==i;this._renderLastContentTD(i,last)}this._renderRowResizer(this._lastContentsTR)};proto._renderLastContentTD=function(cellIx,last){var td=this._lastContentsTR.insertCell(cellIx);td.innerHTML=this._lastContentsTDHtml;if(last){td.style.borderRight="none"}return td};proto._setLastColBorder=function(cellIx,addBorder){var border=addBorder?(YAHOO.env.ua.ie?"1px solid":""):"none";this._headerTR.cells[cellIx].style.borderRight=border;for(var i=0;i<this._contentTable.rows.length;i++){this._contentTable.rows[i].cells[cellIx].style.borderRight=border}};proto._confirmAndDeleteEntity=function(contextTD,type,message,entity,block){var gridz=this;var deleteFunction;if(type=="product"){deleteFunction=function(){gridz.removeProduct(entity)}}else{if(type=="feature"){deleteFunction=function(){gridz.removeFeature(entity)}}else{if(type=="group"){deleteFunction=function(){gridz.removeFeatureGroup(entity)}}}}var productDeleteButtons=[{text:"Delete",handler:function(){this.hide();deleteFunction();if(block){block()}}},{text:"Cancel",handler:function(){this.hide()},isDefault:true}];this._deleteDialog.cfg.setProperty("buttons",productDeleteButtons);this._deleteDialog.cfg.setProperty("context",[contextTD,"tl","bl"]);this._deleteDialog.setBody(message);this._deleteDialog.show()};proto.removeProduct=function(product){var div=this._findProductPara(product);if(!div){alert("ASSERT: !div")}div.parentNode.removeChild(div);for(var i=0;i<product.data.length;i++){var data=product.data[i];if(data.length>1){this._removeFootnote(data[1])}}var ix=this._findColIxByProduct(product);if(ix!=-1){this._topTable.style.width=this._contentTable.style.width="auto";this._rebuildTopHeadersMapAfterProductDelete(ix);this._removeColumn(this._topTable,ix);this._removeColumn(this._contentTable,ix)}var ix=this.indexOf(this._json.products,product);if(ix==this._json.products.length-1){this._setLastColBorder(ix-1,false)}if(ix!=-1){this._json.products.splice(ix,1)}this._productsMenu.removeItem(ix,1);this._syncTables();this._updateEditsCount()};proto._rebuildTopHeadersMapAfterProductDelete=function(ix){var newMap={};for(var topIx in this._topHeadersMap){topIx=Number(topIx);var header=this._topHeadersMap[topIx];if(topIx>ix){newMap[topIx-1]=header}else{if(topIx==ix){header.parentNode.removeChild(header)}else{newMap[topIx]=header}}}this._topHeadersMap=newMap;if(this._myChoiceIx!=-1){if(this._myChoiceIx>ix){this._myChoiceIx--}else{if(this._myChoiceIx==ix){this._myChoiceIx=-1}}}};proto.beginEditProduct=function(product){this.endAllEdits();var ix=this._findColIxByProduct(product);var headerTD=this._topTable.rows[0].cells[ix];this._currentProductContext={product:product,colIx:ix,productParaDiv:this._findProductPara(product),action:"edit"};this._beginEditProduct(headerTD,product)};proto.beginAddProduct=function(nev){this.endAllEdits();var target=Event.getTarget(nev,true);var td=Dom.getAncestorByTagName(target,"TD");var initialData={title:"New Product"};var cellIx=this._headerTR.cells.length;var last=true;var headerTD=this._headerTR.insertCell(cellIx);headerTD.className="productHeaderTD";this._renderHeaderInner(headerTD,last,initialData.title);var rowIx=0;for(var i=0;i<this._json.featureGroups.length;i++){var td=this._contentTable.rows[rowIx++].insertCell(cellIx);this._renderEmptyGroupCellContents(td);var fg=this._json.featureGroups[i];for(var j=0;j<fg.features.length;j++){var td=this._contentTable.rows[rowIx++].insertCell(cellIx);this._renderEmptyCellContents(td)}}this._processFeatureGroupContentTR(cellIx,last);var div=this._renderProductPara(initialData,true);this._currentProductContext={colIx:cellIx,productParaDiv:div,action:"add"};if(this._json.products.length!=0){this._setLastColBorder(this._json.products.length-1,true)}this._setLastColBorder(cellIx,false);if(this._contentScrollSubDiv.offsetWidth<this._contentScrollSubDiv.scrollWidth){this._contentScrollSubDiv.scrollLeft=this._contentTable.offsetWidth}this._beginEditProduct(headerTD,initialData);this._layoutTopHeaders();this._syncTables();if(this._contentScrollSubDiv.offsetWidth<this._contentScrollSubDiv.scrollWidth){this._contentScrollSubDiv.scrollLeft=this._contentTable.offsetWidth}else{this._contentScrollSubDiv.scrollLeft=0}};proto._processFeatureGroupContentTR=function(cellIx,last){var td=this._lastContentsTR.insertCell(cellIx);td.innerHTML="&nbsp;";if(last){td.style.borderRight="none"}};proto._endAddProduct=function(commit){if(commit){var product={id:"p"+this._json.nextID++,title:"",data:[]};if(!this._commitEditProduct(product)){return false}this._json.products.push(product);var headerTD=this._contentTable.rows[0].cells[this._currentProductContext.colIx];this._productsMenu.addItem({text:product.title,checked:true,value:headerTD},1);this._currentProductContext.productParaDiv._dataContext={product:product};for(var i=1;i<this._contentTable.rows.length-1;i++){var td=this._contentTable.rows[i].cells[this._currentProductContext.colIx];if(Dom.hasClass(td,"productDataTD")){var dataAr=[null];product.data.push(dataAr);td._dataContext={product:product,data:dataAr}}}}else{this._removeColumn(this._topTable,this._currentProductContext.colIx);this._removeColumn(this._contentTable,this._currentProductContext.colIx);var div=this._currentProductContext.productParaDiv;div.parentNode.removeChild(div);if(this._json.products.length>0){this._setLastColBorder(this._json.products.length-1,false)}}this._syncTables();return true};proto._beginEditProduct=function(headerTD,product){Dom.addClass(headerTD,"selectedHeaderTD");this._showDialogUnderLink(headerTD,this._productDialog);for(var i in product){var el=this._productDialog.form.elements[i];if(el){el.value=product[i]?product[i]:""}}var box=this._productDialog.form.elements.title;box.focus();box.select()};proto.endEditProduct=function(commit){if(!this._currentProductContext){return }if(this._currentProductContext.action=="add"){if(!this._endAddProduct(commit)){return }}else{if(this._currentProductContext.action=="edit"){if(!this._endEditProduct(commit)){return }}}var headerTD=this._topTable.rows[0].cells[this._currentProductContext.colIx];Dom.removeClass(headerTD,"selectedHeaderTD");this._resetProductEditStatus();if(commit){this._updateEditsCount()}this._syncTables()};proto._resetProductEditStatus=function(){if(!this._currentProductContext){return }this._productDialog.form.reset();this._productDialog.cancel();this._currentProductContext=null};proto._endEditProduct=function(commit){var product=this._currentProductContext.product;if(commit){if(!this._commitEditProduct(product)){return false}var menuItem=this._productsMenu.getItem(this.indexOf(this._json.products,product),1);if(menuItem){menuItem.cfg.setProperty("text",product.title)}}else{}this._updateProductPara(product,this._currentProductContext.productParaDiv);return true};proto._commitEditProduct=function(product){var headerTD=this._topTable.rows[0].cells[this._currentProductContext.colIx];var value=this._productDialog.form.elements.title.value;if(value==""){var gridz=this;this._confirmAndDeleteEntity(headerTD,"product","Are you sure to delete Product column?",product,function(){gridz._resetProductEditStatus()});return false}headerTD.innerHTML="";this._renderHeaderInner(headerTD,this._json.products.length==0,value);if(!headerTD._dataContext){headerTD._dataContext={product:product}}this._fillProductFromForm(product,this._productDialog.form);return true};proto._fillProductFromForm=function(product,form){for(var i=0;i<form.elements.length;i++){var el=form.elements[i];var name=el.name||el.id;if(name!=""){product[name]=el.value}}};proto._productDialog_OK=function(){this.endEditProduct(true)};proto._productDialog_Cancel=function(){this.endEditProduct(false)};proto._productDialog_KeyListener=function(nev,arg){nev=typeof nev=="string"?arg[1]:nev;this._updateProductWhileEditing(nev);if(nev.keyCode==13){this.endEditProduct(true)}};proto._updateProductWhileEditing=function(nev){if(!this._currentProductContext){return }var target=Event.getTarget(nev);if(target.tagName!="TEXTAREA"&&target.tagName!="INPUT"){return }var name=target.name||target.id;this._updateProductParaField(name,target.value,this._currentProductContext.productParaDiv)};proto._updateProductParaField=function(name,value,productParaDiv){var clazz="gridzPIDiv_"+name;var ar=Dom.getElementsByClassName(clazz,null,productParaDiv);if(ar.length!=1){return }var el=ar[0];if(name=="url"){el=el.getElementsByTagName("a")[0];el.href=value}else{if(name=="description"&&!value){value="No Description"}}el.innerHTML=this._formatText(value)};proto._formatText=function(value){return value.replace(/</g,"&lt;").replace(/&/,"&amp;").replace(/\n|\r\n|\r/g,"<br/>")};proto._updateProductPara=function(product,productParaDiv){for(var i in product){this._updateProductParaField(i,product[i],productParaDiv)}};proto.toggleEditMode=function(nev){Event.stopEvent(nev);var target=Event.getTarget(nev,true);if(target.tagName=="A"){this._toggleModeLink=target}if(!this._editMode){this.toEditMode()}else{this.toViewMode()}};proto.toEditMode=function(){if(this._editMode){return }this._editMode=true;if(this._toggleModeLink){this._toggleModeLink.innerHTML="Exit Edit Mode"}if(this._filterLink){this._filterLink.style.display="none"}if(this._saveLink){this._saveLink.innerHTML="Save";this._saveLink.style.display="inline";this._saveLink.disabled=true}if(this._revertLink){this._revertLink.style.display="inline";this._revertLink.disabled=true}this._setChoiceAssetsVisibility(false);for(var i=0;i<this._leftTable.rows.length;i++){var tr=this._leftTable.rows[i];var td=tr.cells[0];if(td.className=="featureGroupTD"){this._featureGroupTR_toEditMode(tr)}}this._addNewProductLinkDiv.style.display="block";this._addProductDiv.style.display="inline";this._featuresSelectorSpan._display=this._featuresSelectorSpan.style.display;this._productSelector.style.display=this._featuresSelectorSpan.style.display="none";Dom.addClass(this._leftTable,"editMode");Dom.addClass(this._topTable,"editMode");Dom.addClass(this._lastLeftTR.cells[0],"editMode");Dom.addClass(this._contentTable,"editMode");var to=[this._leftTable,this._contentTable,this._topTable];Event.on(to,"mouseover",this._l_mouseover,this,true);Event.on(to,"mouseout",this._l_mouseout,this,true);Event.on(to,"click",this._l_click,this,true);Event.on(this._leftTable,"mousedown",this._leftTable_mousedown,this,true);Event.on(this._topTable,"mousedown",this._topTable_mousedown,this,true);this._detachViewModeTableEvents();this._syncTables();this.fromViewMode.fire()};proto.toViewMode=function(){if(!this._editMode){return }this.endAllEdits();if(this._toggleModeLink){this._toggleModeLink.innerHTML="Edit Grid"}if(this._filterLink){this._filterLink.style.display=""}this._addProductDiv.style.display="none";this._addNewProductLinkDiv.style.display="none";this._addProductDiv.style.display="none";this._productSelector.style.display="";this._featuresSelectorSpan.style.display=this._featuresSelectorSpan._display;if(this._saveLink){this._saveLink.style.display="none"}if(this._revertLink){this._revertLink.style.display="none"}this._editMode=false;this._setChoiceAssetsVisibility(true);for(var i=0;i<this._leftTable.rows.length;i++){var tr=this._leftTable.rows[i];var td=tr.cells[0];if(td.className=="featureGroupTD"){this._featureGroupTR_toViewMode(tr)}}Dom.removeClass(this._leftTable,"editMode");Dom.removeClass(this._topTable,"editMode");Dom.removeClass(this._contentTable,"editMode");Dom.removeClass(this._lastLeftTR.cells[0],"editMode");var to=[this._leftTable,this._contentTable,this._topTable];Event.removeListener(to,"mouseover",this._l_mouseover);Event.removeListener(to,"mouseout",this._l_mouseout);Event.removeListener(to,"click",this._l_click);Event.removeListener(this._leftTable,"mousedown",this._leftTable_mousedown);Event.removeListener(this._topTable,"mousedown",this._topTable_mousedown);this._attachViewModeTableEvents();this._syncTables();this.fromEditMode.fire()};proto._l_mouseover=function(nev){var t=Event.getTarget(nev);if(t.tagName!="TD"){t=Dom.getAncestorByTagName(t,"TD")}if(!t){return }if(Dom.hasClass(t,"productDataTD")||Dom.hasClass(t,"productNullTD")){Dom.addClass(t,"hover")}else{if(!this._currentProductContext&&!this._currentFeatureGroupContext&&!this._currentFeatureContext){var showEdit=false;var alignRight=false;if(Dom.hasClass(t,"productHeaderTD")&&t._dataContext){if(!this._currentProductContext){showEdit=true;alignRight=true}}else{if(Dom.hasClass(t,"featureTD")||Dom.hasClass(t,"featureGroupTD")){showEdit=true}}if(showEdit){Dom.addClass(t,"editable");if(t.firstChild.tagName=="SPAN"){t=t.firstChild}t.title="Click to edit"}}}};proto._l_mouseout=function(nev){var t=Event.getTarget(nev);if(t.tagName!="TD"){t=Dom.getAncestorByTagName(t,"TD")}if(!t){return }var rt=Event.getRelatedTarget(nev);if(Dom.hasClass(t,"productDataTD")||Dom.hasClass(t,"productNullTD")){Dom.removeClass(t,"hover")}else{if((Dom.hasClass(t,"productHeaderTD")||Dom.hasClass(t,"featureTD")||Dom.hasClass(t,"featureGroupTD"))&&!Dom.isAncestor(t,rt)){Dom.removeClass(t,"editable");if(t.firstChild.tagName=="SPAN"){t=t.firstChild}t.title=""}}};proto._hideEditButtons=function(){var parent=this._editDiv.parentNode;if(parent){parent.removeChild(this._editDiv)}};proto._l_click=function(nev){var t=Event.getTarget(nev);if(t.tagName!="TD"){t=Dom.getAncestorByTagName(t,"TD")}if(!t){return }Event.stopEvent(nev);if(Dom.hasClass(t,"productDataTD")||Dom.hasClass(t,"productNullTD")){this.beginEditCell(t)}else{if(!this._currentProductContext&&!this._currentFeatureGroupContext&&!this._currentFeatureContext){if(Dom.hasClass(t,"productHeaderTD")&&t._dataContext){this.beginEditProduct(t._dataContext.product)}else{if(Dom.hasClass(t,"featureTD")){this.beginEditFeature(t.parentNode)}else{if(Dom.hasClass(t,"featureGroupTD")){this.beginEditFeatureGroup(t.parentNode)}}}}}};proto.endAllEdits=function(){this._hideEditButtons();this.endEditProduct(false);this.endEditFeatureGroup(false);this.endEditFeature(false);this.endEditCell(true)};proto._featureGroupTR_toEditMode=function(tr){var td=tr.cells[0];var innerSpan=td.firstChild;innerSpan.lastChild.style.display="none";var img=document.createElement("img");img.style.width="14px";img.style.height="13px";img.style.verticalAlign="top";innerSpan.appendChild(img);img.src=this._imagesPath+"add_plus_icon.gif";Event.on(img,"click",this._featureGroupTR_img_onclick,this,true);Event.removeListener(innerSpan,"mousedown",this._featureSpan_mousedown);this._footnoteTooltip.cfg.setProperty("context",this._nullDiv);this._footnoteTooltip.cfg.setProperty("visible",false);this._footnoteTooltip.cfg.setProperty("disabled",true)};proto._featureGroupTR_toViewMode=function(tr){var td=tr.cells[0];var img=td.getElementsByTagName("img")[1];img.parentNode.removeChild(img);td.firstChild.lastChild.style.display="inline";var menu=tr._menu;var span=td.getElementsByTagName("span")[0];this._enableGroupMenu(span,menu)};proto.removeFeatureGroup=function(featureGroupTR){var fg=featureGroupTR._featureGroup;var startIndex=this._getFeatureGroupStartIx(fg);var startRowIndex=this._getFeatureGroupStartIx(fg,true);this._removeProductsData(startIndex,fg.features.length);var ix=this.indexOf(this._json.featureGroups,fg);if(ix==-1){alert("ASSERT: ix == -1");return }this._json.featureGroups.splice(ix,1);var tr=featureGroupTR;var ctr=this._contentTable.rows[startRowIndex++];while(tr&&(tr==featureGroupTR||tr._feature)){var nextTR=tr.nextSibling;tr.parentNode.removeChild(tr);tr=nextTR;var nextCtr=ctr.nextSibling;ctr.parentNode.removeChild(ctr);ctr=nextCtr}this._updateEditsCount();this._syncTables()};proto.beginEditFeatureGroup=function(tr){this.endAllEdits();var cell=tr.cells[0];this._beginEditFeatureGroup(tr.cells[0],tr._featureGroup.title);this._currentFeatureGroupContext={tr:tr,action:"edit"}};proto.beginAddFeatureGroup=function(){if(!this._editMode){return }this.endAllEdits();var ix=this._lastLeftTR.rowIndex;var tr=this._leftTable.insertRow(ix);var td=tr.insertCell(-1);td.className="featureGroupTD";td.innerHTML="<span class='inner'></span>";var contentTR=this._contentTable.insertRow(ix);var lastIx=this._json.products.length-1;for(var i=0;i<this._json.products.length;i++){var ctd=contentTR.insertCell(-1);this._renderEmptyGroupCellContents(ctd);if(lastIx==i){ctd.style.borderRight="none"}}this._renderRowResizer(contentTR);this._beginEditFeatureGroup(td,"New Group",true);this._currentFeatureGroupContext={tr:tr,contentTR:contentTR,action:"add"}};proto._beginEditFeatureGroup=function(td,boxValue,isNew){var inner=td.firstChild;var cellW=td.offsetWidth;inner.innerHTML="";Dom.addClass(td,"selectedGroupTD");var box=document.createElement("input");box.type="text";box.value=boxValue;box.style.width=Math.max(cellW-57,80)+"px";var paddings=YAHOO.env.ua.ie?parseInt(td.currentStyle.paddingTop)+parseInt(td.currentStyle.paddingBottom):0;inner.appendChild(box);var img=document.createElement("img");img.style.width=img.style.height="16px";img.src=this._imagesPath+"accept.png";Event.on(img,"click",this._featureGroup_ok_onclick,this,true);inner.appendChild(img);var img=document.createElement("img");img.style.width=img.style.height="16px";img.src=this._imagesPath+"cancel.png";Event.on(img,"click",this._featureGroup_cancel_onclick,this,true);inner.appendChild(img);box.focus();box.select();new YAHOO.util.KeyListener(box,{keys:13},{fn:this._featureGroup_ok_onclick,scope:this,correctScope:true}).enable();new YAHOO.util.KeyListener(box,{keys:27},{fn:this._featureGroup_cancel_onclick,scope:this,correctScope:true}).enable();Event.on(img,"click",this._featureGroup_cancel_onclick,this,true);this._syncTables()};proto._featureGroup_ok_onclick=function(nevOrType,arg){if(typeof nevOrType=="string"){nevOrType=arg[1]}Event.stopEvent(nevOrType);this.endEditFeatureGroup(true)};proto._featureGroup_cancel_onclick=function(){this.endEditFeatureGroup(false)};proto.endEditFeatureGroup=function(commit){if(!this._currentFeatureGroupContext){return }var tr=this._currentFeatureGroupContext.tr;var td=tr.cells[0];var box=td.firstChild.firstChild;var value=box.value;if(commit&&value==""){var gridz=this;this._confirmAndDeleteEntity(td,"group","Are you sure to delete Feature Group and all its Feature rows?",tr,function(){gridz._currentFeatureGroupContext=null});return false}if(this._currentFeatureGroupContext.action=="edit"){this._endEditFeatureGroup(commit,value,tr,td)}else{if(this._currentFeatureGroupContext.action=="add"){this._endAddFeatureGroup(commit,value,tr,td)}}Dom.removeClass(td,"selectedGroupTD");this._currentFeatureGroupContext=null;if(commit){this._updateEditsCount()}this._syncTables()};proto._endEditFeatureGroup=function(commit,value,tr,td){td.innerHTML="";if(commit){tr._featureGroup.title=value;var item=tr._menu.getItem(0);item.cfg.setProperty("text",value);var item=this._featureGroupsMenu.getItem(this.indexOf(this._json.featureGroups,tr._featureGroup),1);item.cfg.setProperty("text",value)}this._renderGroupInner(td,tr._featureGroup,tr._menu);this._featureGroupTR_toEditMode(this._currentFeatureGroupContext.tr)};proto._endAddFeatureGroup=function(commit,value,tr,td){if(commit){td.innerHTML="";var group={id:"g"+this._json.nextID++,title:value,features:[]};this._json.featureGroups.push(group);this._renderGroupContents(tr,td,group);this._featureGroupTR_toEditMode(this._currentFeatureGroupContext.tr)}else{tr.parentNode.removeChild(tr);this._contentTBody.removeChild(this._currentFeatureGroupContext.contentTR)}};proto._featureGroupTR_img_onclick=function(nev){Event.stopEvent(nev);var tr=Dom.getAncestorByTagName(Event.getTarget(nev),"TR");this.beginAddFeature(tr)};proto.removeFeature=function(featureTR){var tr=this._findFeatureGroupTR(featureTR);if(!tr){alert("ASSERT: !tr");return }var fg=tr._featureGroup;var dataIndex=this._getFeatureGroupStartIx(fg);var ix=this.indexOf(fg.features,featureTR._feature);if(ix==-1){alert("ix == -1");return }dataIndex+=ix;this._removeProductsData(dataIndex,1);fg.features.splice(ix,1);featureTR.parentNode.removeChild(featureTR);var rowIndex=this._getFeatureGroupStartIx(fg,true)+ix+1;var ctr=this._contentTable.rows[rowIndex];ctr.parentNode.removeChild(ctr);var items=this._featureGroupsMenu.getItemGroups();for(var i=0;i<items[1].length;i++){var item=items[1][i];if(item.value&&item.value.type=="feature"&&item.value.tr==featureTR){this._featureGroupsMenu.removeItem(item,1);item.value=null;break}}this._updateEditsCount();this._syncTables()};proto.beginEditFeature=function(featureTR){this.endAllEdits();var td=featureTR.cells[0];this._beginEditFeature(td,featureTR._feature[0]);this._currentFeatureContext={tr:featureTR,featureGroupTR:this._findFeatureGroupTR(featureTR),action:"edit"}};proto.beginAddFeature=function(featureGroupTR){this.endAllEdits();var lastFeatureTR=this._findLastFeatureTR(featureGroupTR);var ix=lastFeatureTR.rowIndex+1;var tr=this._leftTable.insertRow(ix);var td=tr.insertCell(-1);td.className="featureTD";td.innerHTML="<span class='inner'></span>";var contentTR=this._contentTable.insertRow(ix);var lastIx=this._json.products.length-1;for(var i=0;i<this._json.products.length;i++){var ctd=contentTR.insertCell(-1);this._renderEmptyCellContents(ctd);if(lastIx==i){ctd.style.borderRight="none"}}this._renderRowResizer(contentTR);this._beginEditFeature(td,"New Feature");this._currentFeatureContext={tr:tr,contentTR:contentTR,featureGroupTR:featureGroupTR,action:"add"}};proto._beginEditFeature=function(td,boxValue){var cellW=td.offsetWidth;var inner=td.firstChild;inner.innerHTML="";Dom.addClass(td,"selectedFeatureTD");var box=document.createElement("input");box.type="text";box.style.width=Math.max(cellW-70,50)+"px";inner.appendChild(box);box.value=boxValue;var img=document.createElement("img");inner.appendChild(img);img.src=this._imagesPath+"accept.png";img.title="Save";Event.on(img,"click",this._feature_ok_onclick,this,true);var img=document.createElement("img");inner.appendChild(img);img.src=this._imagesPath+"cancel.png";img.title="Cancel Edit";Event.on(img,"click",this._feature_cancel_onclick,this,true);box.focus();box.select();new YAHOO.util.KeyListener(box,{keys:13},{fn:this._feature_ok_onclick,scope:this,correctScope:true}).enable();new YAHOO.util.KeyListener(box,{keys:27},{fn:this._feature_cancel_onclick,scope:this,correctScope:true}).enable();YAHOO.util.Event.on(img,"click",this._addFeatureGroup_cancel_onclick,this,true);this._syncTables(false,null,td)};proto._feature_ok_onclick=function(nevOrType,arg){if(typeof nevOrType=="string"){nevOrType=arg[1]}Event.stopEvent(nevOrType);this.endEditFeature(true)};proto._feature_cancel_onclick=function(nev){Event.stopEvent(nev);this.endEditFeature(false)};proto.endEditFeature=function(commit){if(!this._currentFeatureContext){return }var tr=this._currentFeatureContext.tr;var td=tr.cells[0];var box=td.firstChild.firstChild;var value=box.value;if(commit&&value==""){var gridz=this;this._confirmAndDeleteEntity(td,"feature","Are you sure to delete Feature row?",tr,function(){gridz._currentFeatureContext=null});return false}if(this._currentFeatureContext.action=="add"){this._endAddFeature(commit,tr,td,value)}else{if(this._currentFeatureContext.action=="edit"){this._endEditFeature(commit,tr,td,value)}}this._currentFeatureContext=null;Dom.removeClass(td,"selectedFeatureTD");if(commit){this._updateEditsCount()}this._syncTables(false,null,td)};proto._endEditFeature=function(commit,tr,td,value){var feature=tr._feature;if(commit){var featureGroupTR=this._currentFeatureContext.featureGroupTR;var featureGroup=featureGroupTR._featureGroup;var menu=featureGroupTR._menu;var menuItem=menu.getItem(this.indexOf(featureGroup.features,feature)+1);var menuText=this._featureMenuPrefix+value;menuItem.cfg.setProperty("text",menuText);feature[0]=value;var items=this._featureGroupsMenu.getItemGroups()[1];for(var i=0;i<items.length;i++){if(items[i].value.tr==tr){items[i].cfg.setProperty("text",menuText);break}}}this._renderFeatureInner(td,feature)};proto._endAddFeature=function(commit,tr,td,value){if(commit){var featureGroupTR=this._currentFeatureContext.featureGroupTR;var featureGroup=featureGroupTR._featureGroup;td.innerHTML="";var f=[value,"f"+this._json.nextID++];var ix=this._getFeatureGroupStartIx(featureGroup);ix+=featureGroup.features.length;featureGroup.features.push(f);var nextTR=featureGroupTR.nextSibling;while(nextTR&&nextTR.cells.length>0&&!Dom.hasClass(nextTR.cells[0],"featureGroupTD")){nextTR=nextTR.nextSibling}var menuIx;var items=this._featureGroupsMenu.getItemGroups()[1];for(var i=0;i<items.length;i++){if(items[i].value.tr==nextTR){menuIx=i;break}}this._renderFeature(tr,td,f,{menu:featureGroupTR._menu},menuIx);var contentTR=this._currentFeatureContext.contentTR;for(var i=0;i<this._json.products.length;i++){var product=this._json.products[i];var dataAr=[null];product.data.splice(ix,0,dataAr);contentTR.cells[i]._dataContext={product:product,data:dataAr}}}else{tr.parentNode.removeChild(tr);this._contentTable.tBodies[0].removeChild(this._currentFeatureContext.contentTR)}};proto._leftTable_mousedown=function(nev){if(this._currentProductContext||this._currentFeatureGroupContext||this._currentFeatureContext||this._currentCellContext){return }var t=Event.getTarget(nev);if(t.tagName=="TD"||t.tagName=="SPAN"&&t.className!=""){if(t.tagName!="TD"){t=Dom.getAncestorByTagName(t,"TD")}this._tryToStartRowDrag(nev,t)}};proto._tryToStartRowDrag=function(nev,td){if(!this._dragDiv){this._createDragStuff()}this._dragDiv.className="gridzRowDragDiv allowed";document.body.appendChild(this._dragDiv);this._draggedSourceTR=td.parentNode;this._dragDiv.innerHTML=td.innerHTML;this._dragInsertCursor.style.width=td.offsetWidth+"px";this._dragInsertCursor.style.height="2px";this._dragDiv.style.width=td.offsetWidth-4+"px";var xy=Dom.getXY(td);Dom.setXY(this._dragDiv,xy);this._leftTableXY=Dom.getXY(this._leftTable);this._dragDeltaX=Event.getPageX(nev)-xy[0];this._dragDeltaY=Event.getPageY(nev)-xy[1];Event.on(document,"mousemove",this._rowDrag_mousemove,this,true);Event.on(document,"mouseup",this._rowDrag_mouseup,this,true);Event.stopEvent(nev)};proto._rowDrag_mousemove=function(nev){var y=Event.getPageY(nev)-this._dragDeltaY;this._dragDiv.style.top=y+"px";Event.stopEvent(nev);var lty=this._leftTableXY[1];var cursorVisible=false;var position=null;for(var i=0;i<this._leftTable.rows.length-1;i++){var tr=this._leftTable.rows[i];var trY=lty+tr.offsetTop;if(y>=trY&&y<(trY+tr.offsetHeight/2)){this._dragInsertCursor.style.top=trY-2+"px";cursorVisible=true;position="before"}else{if(y>=trY&&y<trY+tr.offsetHeight){this._dragInsertCursor.style.top=trY+tr.offsetHeight-2+"px";cursorVisible=true;position="after"}}if(cursorVisible){this._dragInsertCursor.style.left=this._leftTableXY[0]-2+"px";this._dragInsertCursor.style.visibility="visible";if(this._checkDrag(tr,position)){this._lastDragInsertContext=[this._draggedSourceTR,tr,position];if(this._dragInsertCursor.className!="gridzDragInsertCursor allowed"){this._dragInsertCursor.className="gridzDragInsertCursor allowed";this._dragDiv.className="gridzRowDragDiv allowed"}}else{this._lastDragInsertContext=null;if(this._dragInsertCursor.className!="gridzDragInsertCursor denied"){this._dragInsertCursor.className="gridzDragInsertCursor denied";this._dragDiv.className="gridzRowDragDiv denied"}}break}}if(!cursorVisible){this._dragInsertCursor.style.visibility="hidden";this._lastDragInsertContext=null}};proto._rowDrag_mouseup=function(nev){Event.removeListener(document,"mousemove",this._rowDrag_mousemove);Event.removeListener(document,"mouseup",this._rowDrag_mouseup);Event.stopEvent(nev);this._dragDiv.parentNode.removeChild(this._dragDiv);this._dragInsertCursor.style.visibility="hidden";this._draggedSourceTR=null;if(this._lastDragInsertContext){this._moveRows(this._lastDragInsertContext);this._lastDragInsertContext=null}};proto._checkDrag=function(tr,position){if(this._draggedSourceTR._featureGroup){if(position=="before"){if(tr.previousSibling==null||tr._featureGroup!=null){return true}}else{if(position=="after"){if(tr.nextSibling==this._lastLeftTR||tr.nextSibling!=null&&tr.nextSibling._featureGroup!=null){return true}}}}else{if(this._draggedSourceTR._feature){if(position=="before"&&tr.previousSibling==null){return false}else{return true}}}return false};proto._moveRows=function(contextAr){var moved=false;var tr=contextAr[0];var toTR=contextAr[1];var pos=contextAr[2];if(tr==toTR||toTR.nextSibling==tr&&pos=="after"||toTR.previousSibling==tr&&pos=="before"){return }if(tr._feature){moved=this._moveFeature(tr,toTR,pos)}else{if(tr._featureGroup){moved=this._moveGroup(tr,toTR,pos)}}if(moved){this._updateEditsCount();this._rowsReordered=true}};proto._moveGroup=function(tr,toTR,pos){var fromTRIx=this._getFeatureGroupStartIx(tr._featureGroup,true);var fromCTR=this._contentTable.rows[fromTRIx];var fromDataIx=this._getFeatureGroupStartIx(tr._featureGroup);var toCTR,toGroupIx,toDataIx;if(pos=="after"&&toTR.nextSibling&&(toTR.nextSibling._featureGroup||toTR.nextSibling==this._lastLeftTR)){pos="before";toTR=toTR.nextSibling;if(toTR==this._lastLeftTR){toCTR=this._lastContentsTR;toGroupIx=this._json.featureGroups.length-1;var last=this._json.featureGroups[this._json.featureGroups.length-1];toDataIx=this._getFeatureGroupStartIx(last)+last.features.length}}if(!toCTR){var toCTRIx=this._getFeatureGroupStartIx(toTR._featureGroup,true);toCTR=this._contentTable.rows[toCTRIx];toGroupIx=this._json.featureGroups.indexOf(toTR._featureGroup)-1;toDataIx=this._getFeatureGroupStartIx(toTR._featureGroup)}var groupIx=this._json.featureGroups.indexOf(tr._featureGroup);if(groupIx==toGroupIx){return false}var parentNode=tr.parentNode;var cparentNode=toCTR.parentNode;if(pos=="before"){if(groupIx>toGroupIx){toGroupIx++}this._moveDataToRows();this._moveArrayPartition(this._json.featureGroups,groupIx,toGroupIx,1);this._moveDataToProducts();var movedFeatureTR=tr.nextSibling;var movedFeatureCTR=fromCTR.nextSibling;parentNode.insertBefore(tr,toTR);cparentNode.insertBefore(fromCTR,toCTR);var targetTR=toTR;var targetCTR=toCTR;while(movedFeatureTR&&movedFeatureTR._feature){var tempTR=movedFeatureTR.nextSibling;var tempCTR=movedFeatureCTR.nextSibling;parentNode.insertBefore(movedFeatureTR,toTR);cparentNode.insertBefore(movedFeatureCTR,toCTR);movedFeatureTR=tempTR;movedFeatureCTR=tempCTR}return true}return false};proto._moveFeature=function(tr,toTR,pos){var fromFeatureTR=this._findFeatureGroupTR(tr);var fromGroup=fromFeatureTR._featureGroup;var fromFeatIx=fromGroup.features.indexOf(tr._feature);var fromDataIx=this._getFeatureGroupStartIx(fromGroup)+fromFeatIx;var fromTRIx=this._getFeatureGroupStartIx(fromGroup,true)+fromFeatIx+1;var fromCTR=this._contentTable.rows[fromTRIx];var toGroup,toFeatIx,ctrOffset=0;if(toTR._featureGroup){if(pos=="before"){var ix=this._json.featureGroups.indexOf(toTR._featureGroup);if(ix<1){alert("ASSERT: ix < 1");return false}toGroup=this._json.featureGroups[ix-1];toFeatIx=toGroup.features.length;ctrOffset=1}else{toGroup=toTR._featureGroup;toFeatIx=-1}}else{if(toTR._feature){var toFeatureTR=this._findFeatureGroupTR(toTR);toGroup=toFeatureTR._featureGroup;toFeatIx=toGroup.features.indexOf(toTR._feature);if(pos=="before"){toFeatIx--}}}var toDataIx=this._getFeatureGroupStartIx(toGroup)+toFeatIx;var toTRIx=this._getFeatureGroupStartIx(toGroup,true)+1+toFeatIx;var toCTR=this._contentTable.rows[toTRIx-ctrOffset];if(pos=="before"){toTR.parentNode.insertBefore(tr,toTR);toCTR.parentNode.insertBefore(fromCTR,toCTR.nextSibling)}else{toTR.parentNode.insertBefore(tr,toTR.nextSibling);toCTR.parentNode.insertBefore(fromCTR,toCTR.nextSibling)}this._moveDataToRows();if(fromGroup==toGroup){if(fromDataIx>toDataIx){toFeatIx++}this._moveArrayPartition(fromGroup.features,fromFeatIx,toFeatIx,1)}else{toFeatIx++;fromGroup.features.splice(fromFeatIx,1);toGroup.features.splice(toFeatIx,0,tr._feature)}this._moveDataToProducts();return true};var FEATURE_ID=1,FEATURE_TITLE=0,FEATURE_DATA=2;proto._moveDataToRows=function(){if(this._json.products.length>0&&this._json.products[0].data==null){throw new Error("No data in products")}for(var pix=0;pix<this._json.products.length;pix++){var product=this._json.products[pix];var feat_ix=0;for(var gix=0;gix<this._json.featureGroups.length;gix++){var group=this._json.featureGroups[gix];for(var fix=0;fix<group.features.length;fix++){var feature=group.features[fix];if(pix==0){feature[FEATURE_DATA]=[]}feature[FEATURE_DATA].push(product.data[feat_ix]);feat_ix+=1}}delete product.data}};proto._moveDataToProducts=function(){if(this._json.products.length>0&&typeof this._json.products[0].data!="undefined"){throw new Error("Already have data in products")}for(var pix=0;pix<this._json.products.length;pix++){var product=this._json.products[pix];var data=product.data=[];for(var gix=0;gix<this._json.featureGroups.length;gix++){var group=this._json.featureGroups[gix];for(var fix=0;fix<group.features.length;fix++){var feature=group.features[fix];data.push(feature[FEATURE_DATA][pix])}}data.collect(function(d){return d==null?[d]:d})}for(var gix=0;gix<this._json.featureGroups.length;gix++){var group=this._json.featureGroups[gix];for(var fix=0;fix<group.features.length;fix++){group.features[fix].length=2}}};proto._moveArrayPartition=function(ar,fromIx,toIx,length){if(toIx==fromIx||length==0){return false}if(fromIx<toIx){toIx-=length-1}var part=ar.splice(fromIx,length);for(var i=0;i<part.length;i++){ar.splice(toIx+i,0,part[i])}return true};proto._createDragStuff=function(){this._dragDiv=document.createElement("div");this._dragInsertCursor=document.createElement("div");this._dragInsertCursor.className="gridzDragInsertCursor";document.body.appendChild(this._dragInsertCursor)};proto._topTable_mousedown=function(nev){if(this._currentProductContext||this._currentFeatureGroupContext||this._currentFeatureContext||this._currentCellContext){return }var t=Event.getTarget(nev);if(t.tagName=="TD"){this._tryToStartColDrag(nev,t)}else{t=Dom.getAncestorByTagName(t,"TD");this._detectColDrag(nev,t)}};proto._detectColDrag=function(nev,td){Event.on(document,"mousemove",this._colDrag_detectDrag_mousemove,this,true);Event.on(document,"mouseup",this._colDrag_detectDrag_mouseup,this,true);Event.stopEvent(nev);this._detectDragStartX=Event.getPageX(nev);this._detectDragTD=td};proto._colDrag_detectDrag_mousemove=function(nev){var offset=Event.getPageX(nev)-this._detectDragStartX;if(Math.abs(offset)>3){Event.removeListener(document,"mousemove",this._colDrag_detectDrag_mousemove);Event.removeListener(document,"mouseup",this._colDrag_detectDrag_mouseup);this._tryToStartColDrag(nev,this._detectDragTD,offset);this._detectDragTD=null;Event.stopEvent(nev)}};proto._colDrag_detectDrag_mouseup=function(nev){Event.removeListener(document,"mousemove",this._colDrag_detectDrag_mousemove);Event.removeListener(document,"mouseup",this._colDrag_detectDrag_mouseup)};proto._tryToStartColDrag=function(nev,td,offset){offset=offset||0;if(!this._dragDiv){this._createDragStuff()}document.body.appendChild(this._dragDiv);this._draggedSourceTD=td;this._dragDiv.className="gridzColDragDiv";this._dragDiv.innerHTML=td.innerHTML;this._dragInsertCursor.style.width="4px";this._dragInsertCursor.className="gridzDragInsertCursor allowed";this._dragDiv.style.width=td.offsetWidth+"px";this._dragInsertCursor.style.height=this._dragDiv.style.height=td.offsetHeight+"px";var xy=Dom.getXY(td);Dom.setXY(this._dragDiv,xy);this._topTableXY=Dom.getXY(this._topTable);this._dragDeltaX=Event.getPageX(nev)-xy[0];Event.on(document,"mousemove",this._colDrag_mousemove,this,true);Event.on(document,"mouseup",this._colDrag_mouseup,this,true);Event.stopEvent(nev)};proto._colDrag_mousemove=function(nev){var x=Event.getPageX(nev)-this._dragDeltaX;this._dragDiv.style.left=x+"px";Event.stopEvent(nev);var ttx=this._topTableXY[0];var cursorVisible=false;var position=null;var cells=this._topTable.rows[0].cells;for(var i=0;i<cells.length;i++){var td=cells[i];var tdX=ttx+td.offsetLeft;if(x>=tdX&&(x<(tdX+td.offsetWidth/2))){this._dragInsertCursor.style.left=tdX-2+"px";cursorVisible=true;position="before"}else{if(x>=tdX&&x<tdX+td.offsetWidth){this._dragInsertCursor.style.left=tdX+td.offsetWidth-2+"px";cursorVisible=true;position="after"}}if(cursorVisible){this._dragInsertCursor.style.top=this._topTableXY[1]+"px";this._dragInsertCursor.style.visibility="visible";this._lastDragInsertContext=[this._draggedSourceTD,td,position];break}}if(!cursorVisible){this._dragInsertCursor.style.visibility="hidden";this._lastDragInsertContext=null}};proto._colDrag_mouseup=function(nev){Event.removeListener(document,"mousemove",this._colDrag_mousemove);Event.removeListener(document,"mouseup",this._colDrag_mouseup);Event.stopEvent(nev);this._dragDiv.parentNode.removeChild(this._dragDiv);this._dragInsertCursor.style.visibility="hidden";this._draggedSourceTD=null;if(this._lastDragInsertContext){this._moveCols(this._lastDragInsertContext);this._lastDragInsertContext=null}};proto._moveCols=function(contextAr){var td=contextAr[0];var toTD=contextAr[1];var pos=contextAr[2];if(td==toTD&&pos=="before"||toTD.nextSibling==td&&pos=="after"||td==toTD&&pos=="after"&&td.nextSibling==null){return }if(td.nextSibling!=null&&(td==toTD&&pos=="after"||toTD==td.nextSibling&&pos=="before")){toTD=toTD.nextSibling}if(pos=="after"){toTD=toTD.nextSibling}var ix=this.indexOf(this._topTable.rows[0].cells,td);var toIx;if(toTD!=null){toIx=this.indexOf(this._topTable.rows[0].cells,toTD);if(td.nextSibling==null){this._setLastColBorder(ix,true);this._setLastColBorder(ix-1,false)}}else{toIx=this._json.products.length;this._setLastColBorder(toIx-1,true);this._setLastColBorder(ix,false)}this._topTable.rows[0].insertBefore(td,toTD);var crows=this._contentTable.rows;for(var i=0;i<crows.length;i++){var row=crows[i];row.insertBefore(row.cells[ix],row.cells[toIx])}if(toIx>ix){toIx--}this._remapTopHeadersAfterColDrag(ix,toIx);this._moveArrayPartition(this._json.products,ix,toIx,1);this._layoutTopHeaders();this._updateEditsCount();this._colsReordered=true};proto._remapTopHeadersAfterColDrag=function(ix,toIx){var newMap={};for(var topIx in this._topHeadersMap){topIxNum=Number(topIx);var header=this._topHeadersMap[topIxNum];if(toIx>ix){if(topIxNum==ix){topIxNum=toIx}else{if(topIxNum>ix&&topIxNum<=toIx){topIxNum--}}}else{if(topIxNum==ix){topIxNum=toIx}else{if(topIxNum<ix&&topIxNum>=toIx){topIxNum++}}}newMap[topIxNum]=header}this._topHeadersMap=newMap;if(this._myChoiceIx==ix){this._myChoiceIx=toIx}};proto.beginEditCell=function(td){if(this._currentCellContext&&this._currentCellContext.td==td){return }this.endAllEdits();var cellW=Math.max(td.clientWidth-8,20);Dom.addClass(td,"selected");td.innerHTML="";var dataContext=td._dataContext;var optionsAr=this._getRowOptions(td.parentNode);this._updateCellDialogOptions(optionsAr);td.appendChild(this._autoCompleteDiv);this._autoCompleteDiv.style.display="block";var box=this._autoCompleteDiv.firstChild;box.style.width=cellW+"px";var dataAr=dataContext.data;if(dataAr[0]){box.value=dataAr[0]}else{box.value=""}Event.on(document,"click",this._beginEditCell_document_click,this,true);this._currentCellContext={td:td,box:box};$("addFootnoteA1").style.display="";$("footnoteDiv1").style.display="";this._showDialogUnderLink(td,this._cellDialog);if(dataAr.length>1){this._cellDialog.form.elements.footnote.value=dataAr[1]}var iconEl=this._cellDialog.form.elements.icon;Event.on(iconEl,"click",this._cellDialog_icon_click,this,true);for(var i=0;i<iconEl.length;i++){if(dataAr[0]==iconEl[i].value){iconEl[i].checked=true;break}}box.focus();box.select()};proto._iconsDiv_mouseover=function(nev){var t=Event.getTarget(nev);if(t.tagName!="IMG"){return }Dom.addClass(t,"hovered")};proto._iconsDiv_mouseout=function(nev){var t=Event.getTarget(nev);if(t.tagName!="IMG"){return }Dom.removeClass(t,"hovered")};proto._iconsDiv_click=function(nev){var t=Event.getTarget(nev);if(t.tagName!="IMG"){return }Dom.removeClass(t,"hovered");var radio=Dom.getPreviousSibling(t);if(radio.tagName!="INPUT"){return }this._currentCellContext.box.value=radio.value;this.endEditCell(true)};proto._cellDialog_icon_click=function(nev){var iconEl=this._cellDialog.form.elements.icon;for(var i=0;i<iconEl.length;i++){if(iconEl[i].checked){this._currentCellContext.box.value=iconEl[i].value}}};proto._updateCellDialogOptions=function(optionsAr){var div=Dom.getElementsByClassName("optionsDiv",null,this._cellDialog.element)[0];div.innerHTML="";div.style.height="auto";div.style.display="none";for(var i=0;i<optionsAr.length;i++){var a=document.createElement("a");a.href="#";a.appendChild(document.createTextNode(optionsAr[i][0]));div.appendChild(a);if(i==0){div.style.display="block";div.style.height=a.offsetHeight*Math.min(optionsAr.length,4)+"px"}Event.on(a,"click",this._cellDialogOption_click,this,true)}};proto._cellDialogOption_click=function(nev){Event.stopEvent(nev);this._currentCellContext.box.value=Event.getTarget(nev).innerHTML;this.endEditCell(true)};proto._beginEditCell_document_click=function(nev){var t=Event.getTarget(nev);if(t==this._cellDialog.element||Dom.isAncestor(this._cellDialog.element,t)){return }this.endEditCell(true)};proto._acBox_key_ok=proto._cellDialog_OK=function(){this.endEditCell(true)};proto._acBox_key_cancel=proto._cellDialog_Cancel=function(){this.endEditCell(false)};proto.endEditCell=function(commit){try{if(!this._currentCellContext){return }this._cellDialog.hide();var td=this._currentCellContext.td;Dom.removeClass(td,"selected");this._autoCompleteDiv.style.display="none";td.removeChild(this._autoCompleteDiv);var dataContext=td._dataContext;var value="";var dataAr=dataContext.data;var changed=false;var processFootnote=true;if(commit){var box=this._autoCompleteDiv.firstChild;value=YAHOO.lang.trim(box.value);dataAr=dataContext.data;var footnote=Lang.trim(this._cellDialog.form.elements.footnote.value);if(dataAr[0]==null&&value!=""||dataAr[0]!=null&&dataAr[0]!=value||dataAr.length==1&&footnote!=""||dataAr.length>1&&dataAr[1]!=footnote){changed=true;dataAr[0]=value;if(footnote!=""){if(dataAr[1]!=footnote){processFootnote=!this._updateFootnoteText(dataAr[1],footnote);if(processFootnote){this._removeFootnote(dataAr[1])}dataAr[1]=footnote}}else{if(dataAr.length>1){this._removeFootnote(dataAr[1]);dataAr.length=1}}}}if(dataAr[0]==""||dataAr[0]==null){this._renderEmptyCellContents(td)}else{this._renderCellContents(td,dataAr,processFootnote)}if(this._myChoiceIx!=-1&&td.parentNode.cells[this._myChoiceIx]==td){Dom.addClass(td,"myChoice")}this._currentCellContext=null;Event.removeListener(this._cellDialog.form.elements.icon,"click",this._cellDialog_icon_click);Event.removeListener(document,"click",this._beginEditCell_document_click);if(changed){this._updateEditsCount()}this._syncTables()}catch(e){alert(e+" "+e.description)}};proto._getRowOptions=function(tr){var ar=[];var map={};for(var i=0;i<tr.cells.length-1;i++){var td=tr.cells[i];var data=td._dataContext.data[0];if(!data){continue}data=String(data);if(data.charAt(0)=="!"&&data.charAt(data.length-1)=="!"){continue}var dataAr=map[data];if(!dataAr){dataAr=[data,1];ar.push(dataAr);map[data]=dataAr}else{dataAr[1]++}}ar.sort(function(a,b){if(a[1]==b[1]){return 0}return a[1]<b[1]?1:-1});return ar};proto.setMyChoice=function(productID){var product=null,ix,td,deselect=false;if(productID){for(var i=0;i<this._json.products.length;i++){var p=this._json.products[i];if(p.id==productID){product=p;break}}if(product==null){return }ix=this._findColIxByProduct(product);td=this._topTable.rows[0].cells[ix]}else{deselect=true}if(this.userIsLogged){if(deselect){this._removeMyChoice()}else{this._renderMyChoiceProduct(ix)}this._layoutTopDiv();this._syncTables()}if(this.userIsLogged||!this.userIsLogged&&!deselect){this._beginProgress();var obj=this;new Ajax.Request(this.myChoiceSaveURL,{method:"POST",onSuccess:function(t){obj._myChoiceSaveSuccessCB(t)},onFailure:function(t){obj._loadFailCB(t)},parameters:"product_id="+(deselect?"":productID),evalScripts:true})}};proto._myChoiceSaveSuccessCB=function(){this._endProgress()};proto._removeMyChoice=function(){if(this._myChoiceIx!=-1){this._myChoiceImg.parentNode.removeChild(this._myChoiceImg);this._removeFromTopHeader(this._myChoiceIx,"mychoice");for(var i=1;i<this._contentTable.rows.length;i++){var row=this._contentTable.rows[i];var td=row.cells[this._myChoiceIx];Dom.removeClass(td,"myChoice")}Dom.removeClass(this._topTable.rows[0].cells[this._myChoiceIx],"myChoice")}this._myChoiceIx=-1};proto._renderMyChoiceProduct=function(ix){this._removeMyChoice();var div=this._createTopHeader(ix,"mychoice","My Choice!");this._myChoiceIx=ix;var img=this._myChoiceImg=document.createElement("img");img.src="/images/icons/gstar-24.png";img.className="myChoiceImg";div.appendChild(this._myChoiceImg);for(var i=0;i<this._contentTable.rows.length;i++){var row=this._contentTable.rows[i];var td=row.cells[this._myChoiceIx];Dom.addClass(td,"myChoice")}Dom.addClass(this._topTable.rows[0].cells[this._myChoiceIx],"myChoice")};proto.setTopChoiceJSON=function(json){this._topChoiceMap={};for(var i=0;i<json.length&&i<3;i++){this._topChoiceMap["p"+json[i]]=i+1}};proto._setChoiceAssetsVisibility=function(visible){var display=visible?"inline":"none";if(this._myChoiceImg){this._myChoiceImg.style.display=display}}})();(function(){var Dom=YAHOO.util.Dom,Event=YAHOO.util.Event,KeyListener=YAHOO.util.KeyListener,Lang=YAHOO.lang,Selector=YAHOO.util.Selector,$=Dom.get;var proto=Gridz.prototype;var _init=proto._init;proto._init=function(){_init.apply(this);this.filterSaved=new YAHOO.util.CustomEvent("filterSaved");this.fromEditMode.subscribe(this._fromEditMode,this,true)};var _clear=proto._clear;proto._clear=function(){_clear.apply(this);if(this._productsMenu!=null){this._productsMenu.clearContent()}if(this._featureGroupsMenu!=null){this._featureGroupsMenu.clearContent()}};var _create=proto._create;proto._create=function(){this._featureMenuPrefix="&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";_create.apply(this);var span=document.createElement("span");span.className="selectorSpan menu";span.innerHTML="Show/Hide Columns &#x25bc;";this._productSelector=span;if(this._filterPlaceholder){this._filterPlaceholder.appendChild(span)}this._productsMenu=new YAHOO.widget.Menu(Dom.generateId(),{position:"dynamic",zindex:1000});this._productsMenu.subscribe("click",this._productsMenu_click,this,true);Event.addListener(span,"selectstart",Event.stopEvent,true,Event);Event.addListener(span,"mousedown",this._execShowMenu,this._productsMenu);var span=document.createElement("span");span.className="featuresSelectorSpan menu";span.innerHTML="Show/Hide Features &#x25bc;";this._featuresSelectorSpan=span;if(this._filterPlaceholder){this._filterPlaceholder.appendChild(span)}this._featureGroupsMenu=new YAHOO.widget.Menu(Dom.generateId(),{position:"dynamic",zindex:1000});this._featureGroupsMenu.subscribe("click",this._featureGroupsMenu_click,this,true);Event.addListener(span,"selectstart",Event.stopEvent,true,Event);Event.addListener(span,"mousedown",this._execShowMenu,this._featureGroupsMenu)};var _renderContentsRbR=proto._renderContentsRbR;proto._renderContentsRbR=function(){this._featureGroupsMenu.addItem({text:"Show All",value:"showall"},0);this._productsMenu.addItem({text:"Show All",value:"showall"},0);_renderContentsRbR.apply(this);this._productsMenu.render(document.body);this._featureGroupsMenu.render(document.body)};proto._renderGroupContents=function(tr,cell,group){tr._globalMenuItem=this._featureGroupsMenu.addItem({text:group.title,checked:true,value:{tr:tr}},1);tr._featureGroup=group;var menu=new YAHOO.widget.Menu(Dom.generateId(),{position:"dynamic",zindex:1000});menu.subscribe("click",this._featuresMenu_click,this,true);tr._menu=menu;tr._localMenuItem=menu.addItem({text:group.title,checked:true,value:{type:"group",tr:tr}});this._renderGroupInner(cell,group,menu);menu.render(document.body);return{menu:menu}};proto._renderGroupInner=function(cell,group,menu){var span=document.createElement("span");span.className="inner";span.innerHTML="<span>"+group.title+"</span>";cell.appendChild(span);var img=document.createElement("img");img.className="arDownWhite";img.src=this._imagesPath+"ar-down-white.png";span.appendChild(img);Event.addListener(img,"mousedown",this._featureSpan_mousedown,menu);this._enableGroupMenu(span,menu)};proto._enableGroupMenu=function(span,menu){Event.addListener(span,"mousedown",this._featureSpan_mousedown,menu)};proto._renderFeature=function(tr,td,f,groupContext,ix){var menu=groupContext.menu;var title=f[0];this._renderFeatureInner(td,f);tr._feature=f;var item={text:this._featureMenuPrefix+title,checked:true,value:{type:"feature",tr:tr}};tr._localMenuItem=menu.addItem(item);if(ix){tr._globalMenuItem=this._featureGroupsMenu.insertItem(item,ix,1)}else{tr._globalMenuItem=this._featureGroupsMenu.addItem(item,1)}};proto._featureSpan_mousedown=function(nev,menu){menu.cfg.setProperty("context",[Event.getTarget(nev),"tl","bl"]);setTimeout(function(){menu.show()},0)};var _renderHeaderCell=proto._renderHeaderCell;proto._renderHeaderCell=function(ix,product,last){var headerTD=_renderHeaderCell.apply(this,arguments);this._productsMenu.addItem({text:product.title,checked:true,value:headerTD},1)};proto.setFilterLink=function(link,permalinkDiv){this._filterLink=link;Event.on(this._filterLink,"click",this._filterLink_click,this,true);this._permalinkDiv=permalinkDiv};proto._filterApplied=function(){if(this._filterLink){var filtersApplied=this._hiddenFeatureGroups>0||this._hiddenProductsCount>0||this._hiddenFeatures>0;this._filterLink.disabled=filtersApplied?"":"disabled";this._filterLink.style.display="";if(this._permalinkDiv){this._permalinkDiv.innerHTML=""}}};proto._productsMenu_click=function(ev,arg){if(arg[1].value=="showall"){for(var i=0;i<this._contentTable.rows[1].cells.length;i++){if(this._contentTable.rows[1].cells[i].style.display=="none"){this._showProduct(i)}}}else{var ix=this._findCellIndex(arg[1].value);var checked=!arg[1].cfg.getProperty("checked");if(checked){this._showProduct(ix)}else{this._hideProduct(ix)}}this._filterApplied();this._syncTables()};proto._featureGroupsMenu_click=function(ev,arg){if(arg[1].value=="showall"){for(var i=0;i<this._leftTable.rows.length;i++){var tr=this._leftTable.rows[i];if(tr._featureGroup){this._showFeatureGroup(tr,true,true)}else{if(tr._feature){this._setFeatureVisibility(tr,true,true)}}}}else{var item=arg[1];var checked=!item.cfg.getProperty("checked");if(item.value.type=="feature"){this._setFeatureVisibility(item.value.tr,checked)}else{if(checked){this._showFeatureGroup(item.value.tr)}else{this._hideFeatureGroup(item.value.tr)}}}this._filterApplied();this._syncTables()};proto._featuresMenu_click=function(ev,arg){var item=arg[1];var checked=!item.cfg.getProperty("checked");item.cfg.setProperty("checked",checked);if(item.value.type=="group"){var tr=item.value.tr;if(checked){this._showFeatureGroup(tr)}else{this._hideFeatureGroup(tr)}}else{if(item.value.type=="feature"){this._setFeatureVisibility(item.value.tr,checked)}}this._filterApplied()};proto._setFeatureVisibility=function(tr,visible,noSync){if(visible&&tr.style.display=="none"||!visible&&tr.style.display!="none"){if(visible){var groupTR=this._findFeatureGroupTR(tr);if(groupTR.style.display=="none"){this._showFeatureGroup(groupTR,true,true)}}this._setRowDisplay(tr,visible);var ctr=this._contentTable.rows[this.indexOf(this._leftTable.rows,tr)];this._setRowDisplay(ctr,visible);this._hiddenFeatureGroups+=visible?-1:1;tr._localMenuItem.cfg.setProperty("checked",visible);tr._globalMenuItem.cfg.setProperty("checked",visible);if(!noSync){this._syncTables(true)}}};proto._hideFeatureGroup=function(tr,noChildren,noSync){if(tr.style.display=="none"){return }tr._globalMenuItem.cfg.setProperty("checked",false);tr._localMenuItem.cfg.setProperty("checked",false);var ix=this.indexOf(this._leftTable.rows,tr);var ctr=this._contentTable.rows[ix];this._setRowDisplay(tr,false);this._setRowDisplay(ctr,false);if(!noChildren){tr=tr.nextSibling;ctr=ctr.nextSibling;while(tr&&tr.cells[0].className=="featureTD"){this._setRowDisplay(tr,false);this._setRowDisplay(ctr,false);tr._localMenuItem.cfg.setProperty("checked",false);tr._globalMenuItem.cfg.setProperty("checked",false);tr=tr.nextSibling;ctr=ctr.nextSibling}}this._hiddenFeatureGroups++;if(!noSync){this._syncTables(true)}};proto._showFeatureGroup=function(tr,noChildren,noSync){if(tr.style.display!="none"){return }var ix=this.indexOf(this._leftTable.rows,tr);var ctr=this._contentTable.rows[ix];tr._globalMenuItem.cfg.setProperty("checked",true);tr._localMenuItem.cfg.setProperty("checked",true);this._setRowDisplay(tr,true);this._setRowDisplay(ctr,true);if(!noChildren){tr=tr.nextSibling;ctr=ctr.nextSibling;while(tr&&tr.cells[0].className=="featureTD"){this._setRowDisplay(tr,true);this._setRowDisplay(ctr,true);tr._localMenuItem.cfg.setProperty("checked",true);tr._globalMenuItem.cfg.setProperty("checked",true);tr=tr.nextSibling;ctr=ctr.nextSibling}}this._hiddenFeatureGroups--;if(!noSync){this._syncTables(true)}};proto._filterLink_click=function(){this._saveFilter()};proto._saveFilter=function(){var filterJson=[];for(var i=0;i<this._json.products.length;i++){var td=this._contentTable.rows[0].cells[i];if(td.style.display!="none"){filterJson.push(this._json.products[i].id)}}for(var i=0;i<this._leftTable.rows.length-1;i++){var tr=this._leftTable.rows[i];if(tr.style.display!="none"){if(tr._featureGroup){filterJson.push(tr._featureGroup.id)}else{if(tr._feature){filterJson.push(tr._feature[1])}}}}var filterJsonString=Object.toJSON(filterJson);if(!this.filterSaveURL){return }var obj=this;new Ajax.Request(this.filterSaveURL,{method:"GET",onSuccess:function(t){obj._filterSaveSuccessCB(t)},onFailure:function(t){obj._loadFailCB(t)},parameters:"data="+encodeURIComponent(filterJsonString),evalJS:false,evalJSON:false});this._beginProgress()};proto._filterSaveSuccessCB=function(ev){this._endProgress();var json;try{eval("json = "+ev.responseText)}catch(e){alert("ERROR: failed to parse json data: "+e.description);return }if(json&&json.status=="OK"){if(this._filterLink){this._filterLink.style.display="none"}this._showPermalink(json.permalink);this.filterSaved.fire(json)}else{alert("ERROR: failed to save filter data")}};proto._showPermalink=function(url){if(!this._permalinkDiv){return }this._permalinkDiv.innerHTML="Permalink: <a target='_blank' href='"+encodeURI(url)+"'>"+url+"</a>"};proto._hideProduct=function(ix){if(this._contentTable.rows[0].cells[ix].style.display=="none"){return }if(this._hiddenProductsCount==0){var item=this._productsMenu.getItem(0,0);item.cfg.setProperty("disabled",false)}this._hiddenProductsCount++;var item=this._productsMenu.getItem(ix,1);item.cfg.setProperty("checked",false);this._topTable.rows[0].cells[ix].style.display="none";for(var i=0;i<this._contentTable.rows.length;i++){this._contentTable.rows[i].cells[ix].style.display="none"}};proto._showProduct=function(ix){if(this._contentTable.rows[0].cells[ix].style.display!="none"){return }this._hiddenProductsCount--;if(this._hiddenProductsCount==0){var item=this._productsMenu.getItem(0,0);item.cfg.setProperty("disabled",true)}var item=this._productsMenu.getItem(ix,1);item.cfg.setProperty("checked",true);var display=YAHOO.env.ua.ie?"block":"table-cell";this._topTable.rows[0].cells[ix].style.display=display;for(var i=0;i<this._contentTable.rows.length;i++){this._contentTable.rows[i].cells[ix].style.display=display}};proto._execShowMenu=function(nev,menu){menu.cfg.setProperty("context",[Event.getTarget(nev),"tl","bl"]);setTimeout(function(){menu.show()},0)};proto._fromEditMode=function(){if(this._colsReordered){this._rebuildColMenus()}if(this._rowsReordered){this._rebuildRowMenus()}};proto._rebuildColMenus=function(){this._productsMenu.clearContent();this._productsMenu.addItem({text:"Show All",value:"showall"},0);var cells=this._topTable.rows[0].cells;for(var i=0;i<cells.length;i++){var headerTD=cells[i];var product=headerTD._dataContext.product;this._productsMenu.addItem({text:product.title,checked:headerTD.style.display!="none",value:headerTD},1)}this._productsMenu.render();this._colsReordered=false};proto._rebuildRowMenus=function(){this._rowsReordered=false;this._featureGroupsMenu.clearContent();this._featureGroupsMenu.addItem({text:"Show All",value:"showall"},0);var rows=this._leftTable.rows;var group,menu;for(var i=0;i<rows.length;i++){var tr=rows[i];var checked=tr.style.display!="none";if(tr._featureGroup){menu=tr._menu;group=tr._featureGroup;menu.clearContent();tr._globalMenuItem=this._featureGroupsMenu.addItem({text:group.title,checked:checked,value:{tr:tr}},1);tr._localMenuItem=menu.addItem({text:group.title,checked:checked,value:{type:"group",tr:tr}});menu.render()}else{if(tr._feature){var feature=tr._feature;var item={text:this._featureMenuPrefix+feature[0],checked:checked,value:{type:"feature",tr:tr}};tr._localMenuItem=menu.addItem(item);tr._globalMenuItem=this._featureGroupsMenu.addItem(item,1)}}}this._featureGroupsMenu.render()}})();(function(){var D=YAHOO.util.Dom,B=YAHOO.util.Event,C=YAHOO.util.KeyListener,F=YAHOO.lang,A=YAHOO.util.Selector,G=D.get;var E=Gridz.prototype;var H=E._create;E._create=function(){H.apply(this,arguments);this._createBalloon();this.productTDMouseOver.subscribe(this._productTDMouseOver,this,true);this.productTDMouseOut.subscribe(this._productTDMouseOut,this,true)};E._productTDMouseOver=function(J,I){this._showProductBalloon(I[0])};E._productTDMouseOut=function(){this._requestBalloonHide()};E._createBalloon=function(){if(this._balloon){return }this._balloon=new Balloon3();B.on(this._balloon._l,"mouseover",this._balloon_mouseover,this,true);B.on(this._balloon._l,"mouseout",this._balloon_mouseout,this,true);B.on(this._balloon._l,"mousedown",B.stopPropagation,B,true);this._balloon.hideEvent.subscribe(this._balloon_hideEvent,this,true)};E._balloon_mouseover=function(){this._cancelBalloonHideRequest()};E._balloon_mouseout=function(J){var I=B.getRelatedTarget(J);if(D.isAncestor(this._balloon._l,I)){return }this._requestBalloonHide()};E._requestBalloonHide=function(){this._cancelBalloonHideRequest();var I=this;this._balloonTO=setTimeout(function(){I._hideBalloon()},1000)};E._cancelBalloonHideRequest=function(){if(this._balloonTO){clearTimeout(this._balloonTO)}};E._showProductBalloon=function(K){if(!this._balloon){return }this._cancelBalloonHideRequest();var M=K._dataContext.product;if(M===this._currentBalloonProduct){return }if(!M.description&&!M.url){this._hideBalloon();return }this._currentBalloonProduct=M;var I=this._findProductPara(M);this._balloon.content.innerHTML=I.innerHTML;var J=this._findColIxByProduct(this._currentBalloonProduct);var L=this._myChoiceIx==J;var N=D.getElementsByClassName("gridzPIDiv_description","*",this._balloon.content)[0];N.style.height="auto";if(N.offsetHeight>152){N.style.height="152px"}this._balloon.showFor(K);B.on(document,"mousedown",this._hideBalloon,this,true)};E._hideBalloon=function(){if(this._balloon){this._balloon.hide()}};E._balloon_hideEvent=function(){this._cancelBalloonHideRequest();B.removeListener(document,"mousedown",this._hideBalloon);this._currentBalloonProduct=null}})();var GridzMyChoiceButton;(function(){var B=YAHOO.util.Dom,A=YAHOO.util.Event,D=YAHOO.lang,E=B.get;GridzMyChoiceButton=function(F,G){this._gridz=G;this._jsonWasChanged=true;this._menu=new YAHOO.widget.Menu(B.generateId(),{zindex:1000,position:"dynamic"});this._button=new YAHOO.widget.Button({type:"menu",label:"Select My Choice",name:"mymenubutton",className:"myChoiceButton",menu:this._menu,visible:true,container:E(F)});this._button.on("mouseover",this._button_mouseover,this,true);this._button.on("mouseout",this._button_mouseout,this,true);this._menu.subscribe("click",this._menu_click,this,true);G.fromViewMode.subscribe(this._gridz_fromViewMode,this,true);G.fromEditMode.subscribe(this._gridz_fromEditMode,this,true);G.jsonLoaded.subscribe(this._gridz_jsonLoaded,this,true);G.jsonSaving.subscribe(this._gridz_jsonSaving,this,true)};var C=GridzMyChoiceButton.prototype;C._button_mouseover=function(H){var G=A.getTarget(H),F=A.getRelatedTarget(H);if(B.isAncestor(G,F)){return }if(!B.hasClass(this._button.get("element"),"selected")){this._menu.cfg.setProperty("context",[this._button.get("element"),"tl","bl"]);this._menu.show()}};C._button_mouseout=function(H){var G=A.getTarget(H),F=A.getRelatedTarget(H);if(B.isAncestor(G,F)){return }};C._gridz_jsonSaving=function(){this._jsonWasChanged=true};C._gridz_jsonLoaded=function(){try{if(!this._gridz._json||!this._gridz._json.products||!this._jsonWasChanged){return }this._menu.clearContent();var J=this._gridz._json.products;for(var F=0;F<J.length;F++){var I=J[F];this._menu.addItem({text:I.title,value:I.id},0)}this._menu.addItem({text:"None",value:"none"},1);this._menu.render(document.body);var G=null;if(this._gridz.myChoiceProductID){G=this._gridz.findProductById(this._gridz.myChoiceProductID)}this._setButtonText(G==null?null:G.title);this._jsonWasChanged=false}catch(H){alert("Error: "+H)}};C._gridz_fromViewMode=function(F){this._button.set("disabled",true)};C._gridz_fromEditMode=function(G){try{this._button.set("disabled",false);this._gridz_jsonLoaded();if(this._lastText){var F=this._button.get("element");setTimeout(function(){B.addClass(F,"selected")},0)}}catch(H){alert("Error: "+H)}};C._setButtonText=function(F){this._lastText=F;if(F==null){this._button.set("label","Select My Choice");B.removeClass(this._button.get("element"),"selected")}else{this._button.set("label","<b>"+F+"</b> is my choice");B.addClass(this._button.get("element"),"selected")}};C._menu_click=function(H,F){try{if(!F[1]){return }var I=F[1].value,G=F[1];this._setButtonText(I=="none"?null:G.cfg.getProperty("text"));this._gridz.setMyChoice(I=="none"?null:I)}catch(J){alert("Error: "+J.description)}}})();var GridzPage;(function(){var C=YAHOO.util.Dom,A=YAHOO.util.Event,D=C.get;var E=55;var B=Class.create(Effect.Base,{initialize:function(I,H,K,G,F){this.l=this.element=D(I);if(!this.element){throw (Effect._elementDoesNotExistError)}this.finalW=H;this.finalH=K;this.startW=this.l.offsetWidth;this.startH=this.l.offsetHeight;this.diffW=this.finalW-this.startW;this.diffH=this.finalH-this.startH;this.startX=this.l.offsetLeft;this.startY=this.l.offsetTop;this.offY=F;this.offX=G;var J=arguments[5]||{};this.start(J)},update:function(F){window.status=F;if(this.finalW){var H=Math.round(this.startW+this.diffW*F);this.l.style.width=H+"px";if(this.offX){this.l.style.left=(this.startX-H+this.startW)+"px"}}if(this.finalH){var G=Math.round(this.startH+this.diffH*F);this.l.style.height=G+"px";if(this.offY){this.l.style.top=(this.startY-G+this.startH)+"px"}}},finish:function(F){if(this.finalH){this.l.style.height=this.finalH}if(this.finalW){this.l.style.width=this.finalW}if(this.offY){this.l.style.top=Math.round(this.startY-this.l.offsetHeight+this.startH)+"px"}if(this.offX){this.l.style.left=Math.round(this.startX-this.l.offsetWidth+this.startW)+"px"}}});GridzPage={ignoreUnload:false,_footerHeight:E,init:function(H,F){this.gridPlaceholder1=D("gridPlaceholder1");this.wrapper=D("wrapper");this._initJson=H;this.layout();this._addToFavoritesURL=H.add_to_favorites_url;var I=new Gridz(this.gridPlaceholder1,D("gridzTable_footnotes"),D("gridzTable_productInfos"),D("gridz_filterPlaceholder"));this._myChoiceButton=new GridzMyChoiceButton("myChoicePlaceholder",I);if(H.editable){I.setSaveLink(D("gridz1Save"));I.setRevertLink(D("gridz1Cancel"))}I.setFilterLink(D("gridz1Filter"),D("gridz1PermalinkDiv"));this.authTokenParam=I.authTokenParam="authenticity_token="+H.form_authenticity_token;I.saveURL="/grid/savedata/"+H.grid_id+"?"+I.authTokenParam;I.loadURL="/grid/load_data/"+H.grid_id;I.filterSaveURL="/grid/savefilterdata/"+H.grid_id+"?"+I.authTokenParam;I.myChoiceSaveURL="/grid/savemychoice/"+H.grid_id+"?"+I.authTokenParam;I.userIsLogged=H.logged_in;I.version=H.version;I.myChoiceProductID=H.favorite_my_choice_product_id;if(H.top_choices){I.setTopChoiceJSON(H.top_choices)}I.loadJSON(F);if(H.filter_spec){I.applyFilterJSON(H.filter_spec,H.filter_permalink)}I.fromEditMode.subscribe(this._gridz1_fromEditMode,this,true);I.jsonSaved.subscribe(this._gridz1_jsonSaved,this,true);I.filterSaved.subscribe(this._gridz1_filterSaved,this,true);this.gridz1=I;var J=new CustomTabView("tabView1","tabsViewTabs1");J.beforeButtonSelect.subscribe(this._tabView_beforeButtonSelect,this,true);J.buttonSelected.subscribe(this._tabView_buttonSelected,this,true);this.tabView1=J;this._simpleDialog=new YAHOO.widget.SimpleDialog(C.generateId(),{width:"30em",modal:true,visible:false,close:false,fixedcenter:true,buttons:[{text:"OK",handler:function(){this.hide()}}]});this._simpleDialog.setHeader("Warning!");this._simpleDialog.render(document.body);this._simpleDialog.cfg.setProperty("icon",YAHOO.widget.SimpleDialog.ICON_WARN);A.on(window,"beforeunload",this._window_unload,this,true);A.on(window,"resize",this.layout,this,true);if(location.hash=="#edit"){if(this._initJson.editable){this.tabView1.selectButton(D("editTabButton"))}else{this._showEditPermissionError()}}else{var G=J.navigateToHash();if(G=="shareTab"||G=="detailsTab"){this._resyncOnView=true}}},showEditTab:function(){GridzPage.tabView1.showTab("gridContents1");GridzPage.gridz1.toEditMode()},showShowTab:function(F){if(this.gridz1._editsCount!=0){return }this.tabView1.showTab("gridContents1");this.gridz1.toViewMode();if(!F){this.tabView1.selectButton(D("showTabButton"))}if(this._resyncOnView){this._resyncOnView=false;this.gridz1._syncTables()}},_tabView_beforeButtonSelect:function(G,F){if(F[0].id=="editTabButton"){if(!this._initJson.editable){this._showEditPermissionError();return false}}else{if(this.gridz1._editsCount!=0){this._simpleDialog.setBody("Please save or cancel your changes before leaving edit mode");this._simpleDialog.show();return false}}return true},_tabView_buttonSelected:function(G,F){switch(F[0].id){case"showTabButton":this.showShowTab(true);break;case"editTabButton":this.showEditTab(true);break;case"shareTabButton":this.tabView1.showTab("shareTab");break;case"detailsTabButton":this.tabView1.showTab("detailsTab");break}},_showEditPermissionError:function(){var F="/login?back=true";this.showFlash('You must be a Registered user to edit this grid - please <a href="'+encodeURI(F)+'">login</a>')},_window_unload:function(F){if(!this.ignoreUnload&&this.gridz1._editsCount!=0){F.returnValue="You have unsaved changes, are you sure to leave?"}},_gridz1_fromEditMode:function(){this.showShowTab()},addToFavorites:function(){document.location=this._addToFavoritesURL},layout:function(){var G=C.getXY(this.gridPlaceholder1);var F=C.getClientHeight()-G[1]-this._footerHeight;this.gridPlaceholder1.style.height=Math.max(100,F)+"px";if(this.gridz1&&this.gridz1._layoutBounds){this.gridz1._layoutBounds()}},general_edit_click:function(F){window.$("gridGeneralView","gridViewControls").each(function(G){G.hide()});window.$("gridGeneralEdit","gridEditControls").each(function(G){G.show()});A.stopEvent(F)},general_save_click:function(F){window.$("generalFormError","generalFormInfo").each(function(G){G.hide()});if(D("gridGeneralForm").elements["grid[name]"].value.blank()){D("generalFormError").innerHTML="Title is required";window.$("generalFormError").show();return }window.$("generalFormError","generalFormInfo").each(function(G){G.hide()});D("gridGeneralForm_saveButton").disabled=true;D("gridGeneralForm").onsubmit()},general_cancel_click:function(F){window.$("gridGeneralView","gridViewControls").each(function(G){G.show()});window.$("gridGeneralEdit","gridEditControls").each(function(G){G.hide()});A.stopEvent(F)},_gridz1_jsonSaved:function(G,F){if(F[0].warnings){this.showFlash(F[0].warnings,"error")}},showFlash:function(K,I){I=I||"error";var H=D("appFlash");if(!H){H=document.createElement("div");H.className="flash";H.id="appFlash";var L=D("bd");L.parentNode.insertBefore(H,L)}var G=I+"-message";var F;var J=D(H).select("."+G);if(J.length==0){F=document.createElement("div");F.className=G;H.appendChild(F)}else{F=J.first()}clearTimeout(this._appTimeout);F.innerHTML=K;H.show();this._appTimeout=setTimeout(function(){D("appFlash").hide()},10000)},maximizeGrid:function(G){if(G){A.stopEvent(G)}D("maximizeGridLink").style.display="none";D("restoreGridLink").style.display="";var F=document.createElement("div");F.className="animResizeDiv";document.body.appendChild(F);var H=D("bd");this._orignialBDBounds=C.getXY(H);this._orignialBDBounds[2]=H.clientWidth;this._orignialBDBounds[3]=H.clientHeight;C.setXY(F,this._orignialBDBounds);F.style.width=H.clientWidth+"px";F.style.height=H.clientHeight+"px";new Effect.Parallel([new B(F,document.body.clientWidth-4,document.body.clientHeight-4,false,false),new Effect.Move(F,{x:0,y:0,mode:"absolute"})],{duration:0.2,afterFinish:function(){F.parentNode.removeChild(F);GridzPage._continueMaximizeGrid()}})},_continueMaximizeGrid:function(){var F=D("bd");this._previousBdParent=F.parentNode;document.body.insertBefore(F,document.body.firstChild);D("hd").style.display="none";D("wrapper").style.display="none";D("appFooter").style.display="none";document.documentElement.style.overflow="hidden";C.addClass(F,"maximixed");this._footerHeight=0;this.layout();this.gridz1._syncTables()},restoreGrid:function(G){if(G){A.stopEvent(G)}D("maximizeGridLink").style.display="";D("restoreGridLink").style.display="none";var F=document.createElement("div");F.className="animResizeDiv";document.body.appendChild(F);F.style.width=document.body.clientWidth-4+"px";F.style.height=document.body.clientHeight-4+"px";F.style.top=F.style.left="0px";new Effect.Parallel([new B(F,this._orignialBDBounds[2],this._orignialBDBounds[3],false,false),new Effect.Move(F,{x:this._orignialBDBounds[0],y:this._orignialBDBounds[1],mode:"absolute"})],{duration:0.2,afterFinish:function(){F.parentNode.removeChild(F);GridzPage._continueRestoreGrid()}})},_continueRestoreGrid:function(){var F=D("bd");C.removeClass(F,"maximixed");this._previousBdParent.appendChild(F);this._previousBdParent=null;D("hd").style.display="";D("wrapper").style.display="";D("appFooter").style.display="";document.documentElement.style.overflow="";this._footerHeight=E;this.layout();this.gridz1._syncTables()},print:function(F){A.stopEvent(F);window.open("/grid/print/"+this._initJson.filter_hash_string)},_gridz1_filterSaved:function(H,F){var G=F[0];this._initJson.filter_hash_string=G.hash_string}}})();function onABCommComplete(){}function validateInviteForm(A){try{var C="";if(A.elements.recipient_list.value.strip()==""){C+="To is required<br/>"}if(A.elements.subject.value.strip()==""){C+="Subject is required<br/>"}$("inviteFormInfo").hide();if(C){$("inviteFormError").innerHTML=C;$("inviteFormError").show();return false}else{$("inviteFormError").innerHTML="";$("inviteFormError").hide();A.sendButton.disabled=true;A.sendButton.value="Sending...";return true}}catch(B){alert(B.message)}}function inviteFormSentCallback(D,B){try{var A=$("inviteForm");A.sendButton.value="Send";A.sendButton.disabled=false;if(D){A.reset();$("inviteFormInfo").innerHTML="The invitation has been successfully sent";$("inviteFormInfo").show();$("inviteFormError").hide()}else{if(B){$("inviteFormError").innerHTML=B;$("inviteFormError").show();$("inviteFormInfo").hide()}}}catch(C){alert(C.message)}}function formDiv_onclick(B){YAHOO.util.Event.stopEvent(B);var A="/sessions/login_dialog?goto_hash="+location.hash.substring(1)+"&goto="+encodeURI(location.href.replace(/#.*$/,""));new Ajax.Request(A,{asynchronous:true,evalScripts:true,parameters:GridzPage.authTokenParam})}var SimpleList={addRow:function(D,B){Event.stop(D);var C=$(B);var A=C.select("tr.simpleListEdit")[0];A.style.display="";A.select("input").each(function(E){if(E.type!="button"&&E.type!="submit"){E.value=""}})},cancel:function(A){Event.stop(A);Event.element(A).up("tr").hide();if(this._currentHiddenTR){this._currentHiddenTR.show();this._currentHiddenTR=null}},editRow:function(C,E){Event.stop(C);var D=Event.element(C).up("tr");var B=D.up("table");var A=B.select("tr.simpleListEdit")[0];A.style.display="";D.hide();this._currentHiddenTR=D;A.select("input").each(function(F){if(E[F.name]){F.value=decodeURI(E[F.name])}})},submit:function(C,A){Event.stop(C);var B=Event.element(C);var E=B.up("tr");var D=Form.serializeElements(E.select("input"),{hash:true});if(this.validate(D,E)){B.disabled=true;A(Object.toQueryString(D),function(F){})}},validate:function(C,B){var A=false;B.select(".validator").each(function(E){var D=E.attributes["for"];if(D&&C[D.value]!=null&&C[D.value].blank()){A=true;E.style.display="inline"}else{E.hide()}});return !A}};var loginDialog;(function(){var C=document.createElement("div");document.body.appendChild(C);var B=document.createElement("div");B.className="hd";B.innerHTML="Please login or register";C.appendChild(B);var A=document.createElement("div");A.className="bd";A.id="loginDialogDiv";C.appendChild(A);loginDialog=new YAHOO.widget.Dialog(C,{width:"318px",close:true,fixedcenter:true,visible:false,modal:true});loginDialog.render(document.body)})();