(function(){var l=YAHOO.util.Dom,g=YAHOO.util.Event,k=YAHOO.lang,r=YAHOO.env.ua,p=YAHOO.widget.Overlay,d=YAHOO.widget.Menu,f={},h=null,o=null,t=null;function w(a,b,c,e){var j;if(k.isString(a)&&k.isString(b)){if(r.ie){a='<input type="'+a+'" name="'+b+'"';if(e)a+=" checked";a+=">";j=document.createElement(a)}else{j=document.createElement("input");j.name=b;j.type=a;if(e)j.checked=true}j.value=c}return j}function x(a,b){var c=a.nodeName.toUpperCase(),e=this.CLASS_NAME_PREFIX+this.CSS_CLASS_NAME,j,i;function m(u){if(!(u in
b))if((j=a.getAttributeNode(u))&&"value"in j)b[u]=j.value}function n(){m("type");if(b.type=="button")b.type="push";if(!("disabled"in b))b.disabled=a.disabled;m("name");m("value");m("title")}switch(c){case "A":b.type="link";m("href");m("target");break;case "INPUT":n();if(!("checked"in b))b.checked=a.checked;break;case "BUTTON":n();i=a.parentNode.parentNode;if(l.hasClass(i,e+"-checked"))b.checked=true;if(l.hasClass(i,e+"-disabled"))b.disabled=true;a.removeAttribute("value");a.setAttribute("type","button");
break}a.removeAttribute("id");a.removeAttribute("name");if(!("tabindex"in b))b.tabindex=a.tabIndex;if(!("label"in b))if((c=c=="INPUT"?a.value:a.innerHTML)&&c.length>0)b.label=c}function y(a){var b=a.attributes,c=b.srcelement,e=c.nodeName.toUpperCase(),j=this;if(e==this.NODE_NAME){a.element=c;a.id=c.id;l.getElementsBy(function(i){switch(i.nodeName.toUpperCase()){case "BUTTON":case "A":case "INPUT":x.call(j,i,b);break}},"*",c)}else switch(e){case "BUTTON":case "A":case "INPUT":x.call(this,c,b);break}}
YAHOO.widget.Button=function(a,b){if(!p&&YAHOO.widget.Overlay)p=YAHOO.widget.Overlay;if(!d&&YAHOO.widget.Menu)d=YAHOO.widget.Menu;var c=YAHOO.widget.Button.superclass.constructor,e,j;if(arguments.length==1&&!k.isString(a)&&!a.nodeName){if(!a.id)a.id=l.generateId();c.call(this,this.createButtonElement(a.type),a)}else{e={element:null,attributes:b||{}};if(k.isString(a)){if(j=l.get(a)){if(!e.attributes.id)e.attributes.id=a;e.attributes.srcelement=j;y.call(this,e);if(!e.element)e.element=this.createButtonElement(e.attributes.type);
c.call(this,e.element,e.attributes)}}else if(a.nodeName){if(!e.attributes.id)e.attributes.id=a.id?a.id:l.generateId();e.attributes.srcelement=a;y.call(this,e);if(!e.element)e.element=this.createButtonElement(e.attributes.type);c.call(this,e.element,e.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,
_nOptionRegionX:0,CLASS_NAME_PREFIX:"yui-",NODE_NAME:"SPAN",CHECK_ACTIVATION_KEYS:[32],ACTIVATION_KEYS:[13,32],OPTION_AREA_WIDTH:20,CSS_CLASS_NAME:"button",_setType:function(a){a=="split"&&this.on("option",this._onOption)},_setLabel:function(a){this._button.innerHTML=a;if((a=r.gecko)&&a<1.9&&l.inDocument(this.get("element"))){a=this.CLASS_NAME_PREFIX+this.CSS_CLASS_NAME;this.removeClass(a);k.later(0,this,this.addClass,a)}},_setTabIndex:function(a){this._button.tabIndex=a},_setTitle:function(a){if(this.get("type")!=
"link")this._button.title=a},_setDisabled:function(a){if(this.get("type")!="link")if(a){this._menu&&this._menu.hide();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){this.get("type")==
"link"&&this._button.setAttribute("target",a)},_setChecked:function(a){var b=this.get("type");if(b=="checkbox"||b=="radio")a?this.addStateCSSClasses("checked"):this.removeStateCSSClasses("checked")},_setMenu:function(a){var b=this.get("lazyloadmenu"),c=this.get("element"),e,j=false,i,m,n;function u(){i.render(c.parentNode);this.removeListener("appendTo",u)}function q(){i.cfg.queueProperty("container",c.parentNode);this.removeListener("appendTo",q)}function s(){var v;if(i){l.addClass(i.element,this.get("menuclassname"));
l.addClass(i.element,this.CLASS_NAME_PREFIX+this.get("type")+"-button-menu");i.showEvent.subscribe(this._onMenuShow,null,this);i.hideEvent.subscribe(this._onMenuHide,null,this);i.renderEvent.subscribe(this._onMenuRender,null,this);if(d&&i instanceof d){if(b)(v=this.get("container"))?i.cfg.queueProperty("container",v):this.on("appendTo",q);i.cfg.queueProperty("clicktohide",false);i.keyDownEvent.subscribe(this._onMenuKeyDown,this,true);i.subscribe("click",this._onMenuClick,this,true);this.on("selectedMenuItemChange",
this._onSelectedMenuItemChange);if((n=i.srcElement)&&n.nodeName.toUpperCase()=="SELECT"){n.style.display="none";n.parentNode.removeChild(n)}}else if(p&&i instanceof p){h||(h=new YAHOO.widget.OverlayManager);h.register(i)}this._menu=i;if(!j&&!b)l.inDocument(c)?i.render(c.parentNode):this.on("appendTo",u)}}if(p){if(d)e=d.prototype.CSS_CLASS_NAME;if(a&&d&&a instanceof d){i=a;j=true;s.call(this)}else if(p&&a&&a instanceof p){i=a;j=true;i.cfg.queueProperty("visible",false);s.call(this)}else if(d&&k.isArray(a)){this._menu=
i=new d(l.generateId(),{lazyload:b,itemdata:a});this.on("appendTo",s)}else if(k.isString(a)){if(m=l.get(a))if(d&&l.hasClass(m,e)||m.nodeName.toUpperCase()=="SELECT"){i=new d(a,{lazyload:b});s.call(this)}else if(p){i=new p(a,{visible:false});s.call(this)}}else if(a&&a.nodeName)if(d&&l.hasClass(a,e)||a.nodeName.toUpperCase()=="SELECT"){i=new d(a,{lazyload:b});s.call(this)}else if(p){a.id||l.generateId(a);i=new p(a,{visible:false});s.call(this)}}},_setOnClick:function(a){if(this._onclickAttributeValue&&
this._onclickAttributeValue!=a){this.removeListener("click",this._onclickAttributeValue.fn);this._onclickAttributeValue=null}if(!this._onclickAttributeValue&&k.isObject(a)&&k.isFunction(a.fn)){this.on("click",a.fn,a.obj,a.scope);this._onclickAttributeValue=a}},_isActivationKey:function(a){var b=this.get("type");b=b=="checkbox"||b=="radio"?this.CHECK_ACTIVATION_KEYS:this.ACTIVATION_KEYS;var c=b.length,e=false;if(c>0){c=c-1;do if(a==b[c]){e=true;break}while(c--)}return e},_isSplitButtonOptionKey:function(a){var b=
g.getCharCode(a)==40;function c(e){g.preventDefault(e);this.removeListener("keypress",c)}if(b){r.opera&&this.on("keypress",c);g.preventDefault(a)}return b},_addListenersToForm:function(){var a=this.getForm(),b=YAHOO.widget.Button.onFormKeyPress,c,e,j;if(a){g.on(a,"reset",this._onFormReset,null,this);g.on(a,"submit",this._onFormSubmit,null,this);c=this.get("srcelement");if(this.get("type")=="submit"||c&&c.type=="submit"){e=g.getListeners(a,"keypress");c=false;if(e){j=e.length;if(j>0){j=j-1;do if(e[j].fn==
b){c=true;break}while(j--)}}c||g.on(a,"keypress",b)}}},_showMenu:function(a){YAHOO.widget.MenuManager&&YAHOO.widget.MenuManager.hideVisible();h&&h.hideAll();var b=this._menu,c=this.get("menualignment"),e=this.get("focusmenu");if(this._renderedMenu){b.cfg.setProperty("context",[this.get("element"),c[0],c[1]]);b.cfg.setProperty("preventcontextoverlap",true);b.cfg.setProperty("constraintoviewport",true)}else{b.cfg.queueProperty("context",[this.get("element"),c[0],c[1]]);b.cfg.queueProperty("preventcontextoverlap",
true);b.cfg.queueProperty("constraintoviewport",true)}this.focus();if(d&&b&&b instanceof d){c=b.focus;b.focus=function(){};if(this._renderedMenu){b.cfg.setProperty("minscrollheight",this.get("menuminscrollheight"));b.cfg.setProperty("maxheight",this.get("menumaxheight"))}else{b.cfg.queueProperty("minscrollheight",this.get("menuminscrollheight"));b.cfg.queueProperty("maxheight",this.get("menumaxheight"))}b.show();b.focus=c;b.align();a.type=="mousedown"&&g.stopPropagation(a);e&&b.focus()}else if(p&&
b&&b instanceof p){this._renderedMenu||b.render(this.get("element").parentNode);b.show();b.align()}},_hideMenu:function(){var a=this._menu;a&&a.hide()},_onMouseOver:function(a){var b=this.get("type"),c;if(b==="split"){c=this.get("element");this._nOptionRegionX=c=l.getX(c)+(c.offsetWidth-this.OPTION_AREA_WIDTH)}if(!this._hasMouseEventHandlers){b==="split"&&this.on("mousemove",this._onMouseMove);this.on("mouseout",this._onMouseOut);this._hasMouseEventHandlers=true}this.addStateCSSClasses("hover");b===
"split"&&g.getPageX(a)>c&&this.addStateCSSClasses("hoveroption");this._activationButtonPressed&&this.addStateCSSClasses("active");this._bOptionPressed&&this.addStateCSSClasses("activeoption");if(this._activationButtonPressed||this._bOptionPressed)g.removeListener(document,"mouseup",this._onDocumentMouseUp)},_onMouseMove:function(a){var b=this._nOptionRegionX;if(b)g.getPageX(a)>b?this.addStateCSSClasses("hoveroption"):this.removeStateCSSClasses("hoveroption")},_onMouseOut:function(a){var b=this.get("type");
this.removeStateCSSClasses("hover");b!="menu"&&this.removeStateCSSClasses("active");if(this._activationButtonPressed||this._bOptionPressed)g.on(document,"mouseup",this._onDocumentMouseUp,null,this);b==="split"&&g.getPageX(a)>this._nOptionRegionX&&this.removeStateCSSClasses("hoveroption")},_onDocumentMouseUp:function(a){this._bOptionPressed=this._activationButtonPressed=false;var b=this.get("type"),c;if(b=="menu"||b=="split"){a=g.getTarget(a);c=this._menu.element;if(a!=c&&!l.isAncestor(c,a)){this.removeStateCSSClasses(b==
"menu"?"active":"activeoption");this._hideMenu()}}g.removeListener(document,"mouseup",this._onDocumentMouseUp)},_onMouseDown:function(a){var b,c=true;function e(){this._hideMenu();this.removeListener("mouseup",e)}if((a.which||a.button)==1){this.hasFocus()||this.focus();b=this.get("type");if(b=="split")if(g.getPageX(a)>this._nOptionRegionX){this.fireEvent("option",a);c=false}else{this.addStateCSSClasses("active");this._activationButtonPressed=true}else if(b=="menu")if(this.isActive()){this._hideMenu();
this._activationButtonPressed=false}else{this._showMenu(a);this._activationButtonPressed=true}else{this.addStateCSSClasses("active");this._activationButtonPressed=true}if(b=="split"||b=="menu")this._hideMenuTimer=k.later(250,this,this.on,["mouseup",e])}return c},_onMouseUp:function(a){var b=this.get("type"),c=this._hideMenuTimer,e=true;c&&c.cancel();if(b=="checkbox"||b=="radio")this.set("checked",!this.get("checked"));this._activationButtonPressed=false;b!="menu"&&this.removeStateCSSClasses("active");
if(b=="split"&&g.getPageX(a)>this._nOptionRegionX)e=false;return e},_onFocus:function(a){var b;this.addStateCSSClasses("focus");this._activationKeyPressed&&this.addStateCSSClasses("active");t=this;if(!this._hasKeyEventHandlers){b=this._button;g.on(b,"blur",this._onBlur,null,this);g.on(b,"keydown",this._onKeyDown,null,this);g.on(b,"keyup",this._onKeyUp,null,this);this._hasKeyEventHandlers=true}this.fireEvent("focus",a)},_onBlur:function(a){this.removeStateCSSClasses("focus");this.get("type")!="menu"&&
this.removeStateCSSClasses("active");this._activationKeyPressed&&g.on(document,"keyup",this._onDocumentKeyUp,null,this);t=null;this.fireEvent("blur",a)},_onDocumentKeyUp:function(a){if(this._isActivationKey(g.getCharCode(a))){this._activationKeyPressed=false;g.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(g.getCharCode(a)))if(this.get("type")==
"menu")this._showMenu(a);else{this._activationKeyPressed=true;this.addStateCSSClasses("active")}if(b&&b.cfg.getProperty("visible")&&g.getCharCode(a)==27){b.hide();this.focus()}},_onKeyUp:function(a){if(this._isActivationKey(g.getCharCode(a))){a=this.get("type");if(a=="checkbox"||a=="radio")this.set("checked",!this.get("checked"));this._activationKeyPressed=false;this.get("type")!="menu"&&this.removeStateCSSClasses("active")}},_onClick:function(a){var b=this.get("type"),c;switch(b){case "submit":a.returnValue!==
false&&this.submitForm();break;case "reset":(a=this.getForm())&&a.reset();break;case "split":if(this._nOptionRegionX>0&&g.getPageX(a)>this._nOptionRegionX)c=false;else{this._hideMenu();(b=this.get("srcelement"))&&b.type=="submit"&&a.returnValue!==false&&this.submitForm()}break}return c},_onDblClick:function(a){var b=true;if(this.get("type")=="split"&&g.getPageX(a)>this._nOptionRegionX)b=false;return b},_onAppendTo:function(){k.later(0,this,this._addListenersToForm)},_onFormReset:function(){var a=
this.get("type"),b=this._menu;if(a=="checkbox"||a=="radio")this.resetValue("checked");d&&b&&b instanceof d&&this.resetValue("selectedMenuItem")},_onFormSubmit:function(){this.createHiddenFields()},_onDocumentMouseDown:function(a){a=g.getTarget(a);var b=this.get("element"),c=this._menu.element;if(a!=b&&!l.isAncestor(b,a)&&a!=c&&!l.isAncestor(c,a)){this._hideMenu();r.ie&&a.focus&&a.setActive();g.removeListener(document,"mousedown",this._onDocumentMouseDown)}},_onOption:function(a){if(this.hasClass(this.CLASS_NAME_PREFIX+
"split-button-activeoption")){this._hideMenu();this._bOptionPressed=false}else{this._showMenu(a);this._bOptionPressed=true}},_onMenuShow:function(){g.on(document,"mousedown",this._onDocumentMouseDown,null,this);var a=this.get("type")=="split"?"activeoption":"active";this.addStateCSSClasses(a)},_onMenuHide:function(){var a=this.get("type")=="split"?"activeoption":"active";this.removeStateCSSClasses(a);if(this.get("type")=="split")this._bOptionPressed=false},_onMenuKeyDown:function(a,b){a=b[0];if(g.getCharCode(a)==
27){this.focus();if(this.get("type")=="split")this._bOptionPressed=false}},_onMenuRender:function(){var a=this.get("element");a=a.parentNode;var b=this._menu,c=b.element,e=b.srcElement;a!=c.parentNode&&a.appendChild(c);this._renderedMenu=true;if(e&&e.nodeName.toLowerCase()==="select"&&e.value){a=b.getItem(e.selectedIndex);this.set("selectedMenuItem",a,true);this._onSelectedMenuItemChange({newValue:a})}},_onMenuClick:function(a,b){if(a=b[1]){this.set("selectedMenuItem",a);(a=this.get("srcelement"))&&
a.type=="submit"&&this.submitForm();this._hideMenu()}},_onSelectedMenuItemChange:function(a){var b=a.prevValue;a=a.newValue;var c=this.CLASS_NAME_PREFIX;b&&l.removeClass(b.element,c+"button-selectedmenuitem");a&&l.addClass(a.element,c+"button-selectedmenuitem")},_onLabelClick:function(){this.focus();var a=this.get("type");if(a=="radio"||a=="checkbox")this.set("checked",!this.get("checked"))},createButtonElement:function(a){var b=this.NODE_NAME,c=document.createElement(b);c.innerHTML="<"+b+' class="first-child">'+
(a=="link"?"<a></a>":'<button type="button"></button>')+"</"+b+">";return c},addStateCSSClasses:function(a){var b=this.get("type"),c=this.CLASS_NAME_PREFIX;if(k.isString(a)){a!="activeoption"&&a!="hoveroption"&&this.addClass(c+this.CSS_CLASS_NAME+("-"+a));this.addClass(c+b+("-button-"+a))}},removeStateCSSClasses:function(a){var b=this.get("type"),c=this.CLASS_NAME_PREFIX;if(k.isString(a)){this.removeClass(c+this.CSS_CLASS_NAME+("-"+a));this.removeClass(c+b+("-button-"+a))}},createHiddenFields:function(){this.removeHiddenFields();
var a=this.getForm(),b,c,e,j,i,m,n;c=false;if(a&&!this.get("disabled")){c=this.get("type");if((e=c=="checkbox"||c=="radio")&&this.get("checked")||o==this)if(b=w(e?c:"hidden",this.get("name"),this.get("value"),this.get("checked"))){if(e)b.style.display="none";a.appendChild(b)}c=this._menu;if(d&&c&&c instanceof d){j=this.get("selectedMenuItem");c=(e=c.srcElement)&&e.nodeName.toUpperCase()=="SELECT";if(j){i=j.value===null||j.value===""?j.cfg.getProperty("text"):j.value;j=this.get("name");if(c)n=e.name;
else if(j)n=j+"_options";if(i&&n){m=w("hidden",n,i);a.appendChild(m)}}else if(c)m=a.appendChild(e)}if(b&&m)this._hiddenFields=[b,m];else if(!b&&m)this._hiddenFields=m;else if(b&&!m)this._hiddenFields=b;e=this._hiddenFields}return e},removeHiddenFields:function(){var a=this._hiddenFields,b;function c(e){l.inDocument(e)&&e.parentNode.removeChild(e)}if(a){if(k.isArray(a)){b=a.length;if(b>0){b=b-1;do c(a[b]);while(b--)}}else c(a);this._hiddenFields=null}},submitForm:function(){var a=this.getForm(),b=
this.get("srcelement"),c=false;if(a){if(this.get("type")=="submit"||b&&b.type=="submit")o=this;if(r.ie)c=a.fireEvent("onsubmit");else{b=document.createEvent("HTMLEvents");b.initEvent("submit",true,true);c=a.dispatchEvent(b)}if((r.ie||r.webkit)&&c)a.submit()}return c},init:function(a,b){var c=b.type=="link"?"a":"button",e=b.srcelement;c=a.getElementsByTagName(c)[0];var j;if(!c)if(j=a.getElementsByTagName("input")[0]){c=document.createElement("button");c.setAttribute("type","button");j.parentNode.replaceChild(c,
j)}this._button=c;YAHOO.widget.Button.superclass.init.call(this,a,b);var i=this.get("id"),m=i+"-button";c.id=m;var n;function u(v){return v.htmlFor===i}function q(){n.setAttribute(r.ie?"htmlFor":"for",m)}if(e&&this.get("type")!="link"){a=l.getElementsBy(u,"label");if(k.isArray(a)&&a.length>0)n=a[0]}f[i]=this;a=this.CLASS_NAME_PREFIX;this.addClass(a+this.CSS_CLASS_NAME);this.addClass(a+this.get("type")+"-button");g.on(this._button,"focus",this._onFocus,null,this);this.on("mouseover",this._onMouseOver);
this.on("mousedown",this._onMouseDown);this.on("mouseup",this._onMouseUp);this.on("click",this._onClick);a=this.get("onclick");this.set("onclick",null);this.set("onclick",a);this.on("dblclick",this._onDblClick);if(n)if(this.get("replaceLabel")){this.set("label",n.innerHTML);b=n.parentNode;b.removeChild(n)}else{this.on("appendTo",q);g.on(n,"click",this._onLabelClick,null,this);this._label=n}this.on("appendTo",this._onAppendTo);var s=this.get("container");a=this.get("element");b=l.inDocument(a);if(s){if(e&&
e!=a)(b=e.parentNode)&&b.removeChild(e);k.isString(s)?g.onContentReady(s,this.appendTo,s,this):this.on("init",function(){k.later(0,this,this.appendTo,s)})}else if(!b&&e&&e!=a){if(b=e.parentNode){this.fireEvent("beforeAppendTo",{type:"beforeAppendTo",target:b});b.replaceChild(a,e);this.fireEvent("appendTo",{type:"appendTo",target:b})}}else this.get("type")!="link"&&b&&e&&e==a&&this._addListenersToForm();this.fireEvent("init",{type:"init",target:this})},initAttributes:function(a){a=a||{};YAHOO.widget.Button.superclass.initAttributes.call(this,
a);this.setAttributeConfig("type",{value:a.type||"push",validator:k.isString,writeOnce:true,method:this._setType});this.setAttributeConfig("label",{value:a.label,validator:k.isString,method:this._setLabel});this.setAttributeConfig("value",{value:a.value});this.setAttributeConfig("name",{value:a.name,validator:k.isString});this.setAttributeConfig("tabindex",{value:a.tabindex,validator:k.isNumber,method:this._setTabIndex});this.configureAttribute("title",{value:a.title,validator:k.isString,method:this._setTitle});
this.setAttributeConfig("disabled",{value:a.disabled||false,validator:k.isBoolean,method:this._setDisabled});this.setAttributeConfig("href",{value:a.href,validator:k.isString,method:this._setHref});this.setAttributeConfig("target",{value:a.target,validator:k.isString,method:this._setTarget});this.setAttributeConfig("checked",{value:a.checked||false,validator:k.isBoolean,method:this._setChecked});this.setAttributeConfig("container",{value:a.container,writeOnce:true});this.setAttributeConfig("srcelement",
{value:a.srcelement,writeOnce:true});this.setAttributeConfig("menu",{value:null,method:this._setMenu,writeOnce:true});this.setAttributeConfig("lazyloadmenu",{value:a.lazyloadmenu===false?false:true,validator:k.isBoolean,writeOnce:true});this.setAttributeConfig("menuclassname",{value:a.menuclassname||this.CLASS_NAME_PREFIX+"button-menu",validator:k.isString,method:this._setMenuClassName,writeOnce:true});this.setAttributeConfig("menuminscrollheight",{value:a.menuminscrollheight||90,validator:k.isNumber});
this.setAttributeConfig("menumaxheight",{value:a.menumaxheight||0,validator:k.isNumber});this.setAttributeConfig("menualignment",{value:a.menualignment||["tl","bl"],validator:k.isArray});this.setAttributeConfig("selectedMenuItem",{value:null});this.setAttributeConfig("onclick",{value:a.onclick,method:this._setOnClick});this.setAttributeConfig("focusmenu",{value:a.focusmenu===false?false:true,validator:k.isBoolean});this.setAttributeConfig("replaceLabel",{value:false,validator:k.isBoolean,writeOnce:true})},
focus:function(){this.get("disabled")||this._button.focus()},blur:function(){this.get("disabled")||this._button.blur()},hasFocus:function(){return t==this},isActive:function(){return this.hasClass(this.CLASS_NAME_PREFIX+this.CSS_CLASS_NAME+"-active")},getMenu:function(){return this._menu},getForm:function(){var a=this._button,b;if(a)b=a.form;return b},getHiddenFields:function(){return this._hiddenFields},destroy:function(){var a=this.get("element"),b=this._menu,c=this._label;if(b){h&&h.find(b)&&h.remove(b);
b.destroy()}g.purgeElement(a);g.purgeElement(this._button);g.removeListener(document,"mouseup",this._onDocumentMouseUp);g.removeListener(document,"keyup",this._onDocumentKeyUp);g.removeListener(document,"mousedown",this._onDocumentMouseDown);if(c){g.removeListener(c,"click",this._onLabelClick);b=c.parentNode;b.removeChild(c)}if(c=this.getForm()){g.removeListener(c,"reset",this._onFormReset);g.removeListener(c,"submit",this._onFormSubmit)}this.unsubscribeAll();(b=a.parentNode)&&b.removeChild(a);delete f[this.get("id")];
a=this.CLASS_NAME_PREFIX+this.CSS_CLASS_NAME;a=l.getElementsByClassName(a,this.NODE_NAME,c);k.isArray(a)&&a.length===0&&g.removeListener(c,"keypress",YAHOO.widget.Button.onFormKeyPress)},fireEvent:function(){var a=arguments[0];if(this.DOM_EVENTS[a]&&this.get("disabled"))return false;return YAHOO.widget.Button.superclass.fireEvent.apply(this,arguments)},toString:function(){return"Button "+this.get("id")}});YAHOO.widget.Button.onFormKeyPress=function(a){var b=g.getTarget(a),c=g.getCharCode(a),e=b.nodeName&&
b.nodeName.toUpperCase();b=b.type;var j=false,i,m,n;function u(q){switch(q.nodeName.toUpperCase()){case "INPUT":case "BUTTON":if(q.type=="submit"&&!q.disabled)if(!j&&!n)n=q;break;default:if(q=q.id)if(i=f[q]){j=true;if(!i.get("disabled")){q=i.get("srcelement");if(!m&&(i.get("type")=="submit"||q&&q.type=="submit"))m=i}}break}}if(c==13&&(e=="INPUT"&&(b=="text"||b=="password"||b=="checkbox"||b=="radio"||b=="file")||e=="SELECT")){l.getElementsBy(u,"*",this);if(n)n.focus();else if(!n&&m){g.preventDefault(a);
if(r.ie)m.get("element").fireEvent("onclick");else{a=document.createEvent("HTMLEvents");a.initEvent("click",true,true);r.gecko<1.9?m.fireEvent("click",a):m.get("element").dispatchEvent(a)}}}};YAHOO.widget.Button.addHiddenFieldsToForm=function(a){var b=YAHOO.widget.Button.prototype;a=l.getElementsByClassName(b.CLASS_NAME_PREFIX+b.CSS_CLASS_NAME,"*",a);b=a.length;var c,e;if(b>0)for(e=0;e<b;e++)if(c=a[e].id)(c=f[c])&&c.createHiddenFields()};YAHOO.widget.Button.getButton=function(a){return f[a]}})();
(function(){var l=YAHOO.util.Dom,g=YAHOO.util.Event,k=YAHOO.lang,r=YAHOO.widget.Button,p={};YAHOO.widget.ButtonGroup=function(d,f){var h=YAHOO.widget.ButtonGroup.superclass.constructor,o;if(arguments.length==1&&!k.isString(d)&&!d.nodeName){if(!d.id){o=l.generateId();d.id=o}h.call(this,this._createGroupElement(),d)}else if(k.isString(d))(o=l.get(d))&&o.nodeName.toUpperCase()==this.NODE_NAME&&h.call(this,o,f);else if((o=d.nodeName.toUpperCase())&&o==this.NODE_NAME){if(!d.id)d.id=l.generateId();h.call(this,
d,f)}};YAHOO.extend(YAHOO.widget.ButtonGroup,YAHOO.util.Element,{_buttons:null,NODE_NAME:"DIV",CLASS_NAME_PREFIX:"yui-",CSS_CLASS_NAME:"buttongroup",_createGroupElement:function(){var d=document.createElement(this.NODE_NAME);return d},_setDisabled:function(d){var f=this.getCount();if(f>0){f=f-1;do this._buttons[f].set("disabled",d);while(f--)}},_onKeyDown:function(d){var f=g.getTarget(d);d=g.getCharCode(d);f=f.parentNode.parentNode.id;f=p[f];var h=-1;if(d==37||d==38)h=f.index===0?this._buttons.length-
1:f.index-1;else if(d==39||d==40)h=f.index===this._buttons.length-1?0:f.index+1;if(h>-1){this.check(h);this.getButton(h).focus()}},_onAppendTo:function(){var d=this._buttons,f=d.length,h;for(h=0;h<f;h++)d[h].appendTo(this.get("element"))},_onButtonCheckedChange:function(d,f){d=d.newValue;var h=this.get("checkedButton");if(d&&h!=f){h&&h.set("checked",false,true);this.set("checkedButton",f);this.set("value",f.get("value"))}else h&&!h.set("checked")&&h.set("checked",true,true)},init:function(d,f){this._buttons=
[];YAHOO.widget.ButtonGroup.superclass.init.call(this,d,f);this.addClass(this.CLASS_NAME_PREFIX+this.CSS_CLASS_NAME);d=YAHOO.widget.Button.prototype.CLASS_NAME_PREFIX+"radio-button";d=this.getElementsByClassName(d);d.length>0&&this.addButtons(d);function h(t){return t.type=="radio"}d=l.getElementsBy(h,"input",this.get("element"));d.length>0&&this.addButtons(d);this.on("keydown",this._onKeyDown);this.on("appendTo",this._onAppendTo);var o=this.get("container");if(o)k.isString(o)?g.onContentReady(o,
function(){this.appendTo(o)},null,this):this.appendTo(o)},initAttributes:function(d){d=d||{};YAHOO.widget.ButtonGroup.superclass.initAttributes.call(this,d);this.setAttributeConfig("name",{value:d.name,validator:k.isString});this.setAttributeConfig("disabled",{value:d.disabled||false,validator:k.isBoolean,method:this._setDisabled});this.setAttributeConfig("value",{value:d.value});this.setAttributeConfig("container",{value:d.container,writeOnce:true});this.setAttributeConfig("checkedButton",{value:null})},
addButton:function(d){var f,h,o;if(d instanceof r&&d.get("type")=="radio")d=d;else if(!k.isString(d)&&!d.nodeName){d.type="radio";d=new r(d)}else d=new r(d,{type:"radio"});if(d){f=this._buttons.length;h=d.get("name");o=this.get("name");d.index=f;this._buttons[f]=d;p[d.get("id")]=d;h!=o&&d.set("name",o);this.get("disabled")&&d.set("disabled",true);d.get("checked")&&this.set("checkedButton",d);f=d.get("element");h=this.get("element");f.parentNode!=h&&h.appendChild(f);d.on("checkedChange",this._onButtonCheckedChange,
d,this)}return d},addButtons:function(d){var f,h,o,t;if(k.isArray(d)){f=d.length;o=[];if(f>0)for(t=0;t<f;t++)if(h=this.addButton(d[t]))o[o.length]=h}return o},removeButton:function(d){var f=this.getButton(d);if(f){this._buttons.splice(d,1);delete p[f.get("id")];f.removeListener("checkedChange",this._onButtonCheckedChange);f.destroy();d=this._buttons.length;if(d>0){d=this._buttons.length-1;do this._buttons[d].index=d;while(d--)}}},getButton:function(d){return this._buttons[d]},getButtons:function(){return this._buttons},
getCount:function(){return this._buttons.length},focus:function(d){var f,h;if(k.isNumber(d))(d=this._buttons[d])&&d.focus();else{f=this.getCount();for(h=0;h<f;h++){d=this._buttons[h];if(!d.get("disabled")){d.focus();break}}}},check:function(d){(d=this.getButton(d))&&d.set("checked",true)},destroy:function(){var d=this._buttons.length,f=this.get("element"),h=f.parentNode;if(d>0){d=this._buttons.length-1;do this._buttons[d].destroy();while(d--)}g.purgeElement(f);h.removeChild(f)},toString:function(){return"ButtonGroup "+
this.get("id")}})})();YAHOO.register("button",YAHOO.widget.Button,{version:"2.8.0r4",build:"2449"});
