YAHOO.util.Attribute=function(b,a){if(a){this.owner=a;this.configure(b,true)}};YAHOO.util.Attribute.prototype={name:undefined,value:null,owner:null,readOnly:false,writeOnce:false,_initialConfig:null,_written:false,method:null,setter:null,getter:null,validator:null,getValue:function(){var a=this.value;if(this.getter){a=this.getter.call(this.owner,this.name)}return a},setValue:function(f,b){var e,a=this.owner,c=this.name;var d={type:c,prevValue:this.getValue(),newValue:f};if(this.readOnly||(this.writeOnce&&this._written)){return false}if(this.validator&&!this.validator.call(a,f)){return false}if(!b){e=a.fireBeforeChangeEvent(d);if(e===false){return false}}if(this.setter){f=this.setter.call(a,f,this.name);if(f===undefined){}}if(this.method){this.method.call(a,f,this.name)}this.value=f;this._written=true;d.type=c;if(!b){this.owner.fireChangeEvent(d)}return true},configure:function(b,c){b=b||{};if(c){this._written=false}this._initialConfig=this._initialConfig||{};for(var a in b){if(b.hasOwnProperty(a)){this[a]=b[a];if(c){this._initialConfig[a]=b[a]}}}},resetValue:function(){return this.setValue(this._initialConfig.value)},resetConfig:function(){this.configure(this._initialConfig,true)},refresh:function(a){this.setValue(this.value,a)}};(function(){var a=YAHOO.util.Lang;YAHOO.util.AttributeProvider=function(){};YAHOO.util.AttributeProvider.prototype={_configs:null,get:function(c){this._configs=this._configs||{};var b=this._configs[c];if(!b||!this._configs.hasOwnProperty(c)){return null}return b.getValue()},set:function(d,e,b){this._configs=this._configs||{};var c=this._configs[d];if(!c){return false}return c.setValue(e,b)},getAttributeKeys:function(){this._configs=this._configs;var c=[],b;for(b in this._configs){if(a.hasOwnProperty(this._configs,b)&&!a.isUndefined(this._configs[b])){c[c.length]=b}}return c},setAttributes:function(d,b){for(var c in d){if(a.hasOwnProperty(d,c)){this.set(c,d[c],b)}}},resetValue:function(c,b){this._configs=this._configs||{};if(this._configs[c]){this.set(c,this._configs[c]._initialConfig.value,b);return true}return false},refresh:function(e,c){this._configs=this._configs||{};var f=this._configs;e=((a.isString(e))?[e]:e)||this.getAttributeKeys();for(var d=0,b=e.length;d<b;++d){if(f.hasOwnProperty(e[d])){this._configs[e[d]].refresh(c)}}},register:function(b,c){this.setAttributeConfig(b,c)},getAttributeConfig:function(c){this._configs=this._configs||{};var b=this._configs[c]||{};var d={};for(c in b){if(a.hasOwnProperty(b,c)){d[c]=b[c]}}return d},setAttributeConfig:function(b,c,d){this._configs=this._configs||{};c=c||{};if(!this._configs[b]){c.name=b;this._configs[b]=this.createAttribute(c)}else{this._configs[b].configure(c,d)}},configureAttribute:function(b,c,d){this.setAttributeConfig(b,c,d)},resetAttributeConfig:function(b){this._configs=this._configs||{};this._configs[b].resetConfig()},subscribe:function(b,c){this._events=this._events||{};if(!(b in this._events)){this._events[b]=this.createEvent(b)}YAHOO.util.EventProvider.prototype.subscribe.apply(this,arguments)},on:function(){this.subscribe.apply(this,arguments)},addListener:function(){this.subscribe.apply(this,arguments)},fireBeforeChangeEvent:function(c){var b="before";b+=c.type.charAt(0).toUpperCase()+c.type.substr(1)+"Change";c.type=b;return this.fireEvent(c.type,c)},fireChangeEvent:function(b){b.type+="Change";return this.fireEvent(b.type,b)},createAttribute:function(b){return new YAHOO.util.Attribute(b,this)}};YAHOO.augment(YAHOO.util.AttributeProvider,YAHOO.util.EventProvider)})();(function(){var b=YAHOO.util.Dom,c=YAHOO.util.AttributeProvider;var a=function(d,e){this.init.apply(this,arguments)};a.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,change:true};a.prototype={DOM_EVENTS:null,DEFAULT_HTML_SETTER:function(f,d){var e=this.get("element");if(e){e[d]=f}},DEFAULT_HTML_GETTER:function(d){var e=this.get("element"),f;if(e){f=e[d]}return f},appendChild:function(d){d=d.get?d.get("element"):d;return this.get("element").appendChild(d)},getElementsByTagName:function(d){return this.get("element").getElementsByTagName(d)},hasChildNodes:function(){return this.get("element").hasChildNodes()},insertBefore:function(d,e){d=d.get?d.get("element"):d;e=(e&&e.get)?e.get("element"):e;return this.get("element").insertBefore(d,e)},removeChild:function(d){d=d.get?d.get("element"):d;return this.get("element").removeChild(d)},replaceChild:function(d,e){d=d.get?d.get("element"):d;e=e.get?e.get("element"):e;return this.get("element").replaceChild(d,e)},initAttributes:function(d){},addListener:function(h,g,i,f){var e=this.get("element")||this.get("id");f=f||this;var d=this;if(!this._events[h]){if(e&&this.DOM_EVENTS[h]){YAHOO.util.Event.addListener(e,h,function(j){if(j.srcElement&&!j.target){j.target=j.srcElement}d.fireEvent(h,j)},i,f)}this.createEvent(h,this)}return YAHOO.util.EventProvider.prototype.subscribe.apply(this,arguments)},on:function(){return this.addListener.apply(this,arguments)},subscribe:function(){return this.addListener.apply(this,arguments)},removeListener:function(e,d){return this.unsubscribe.apply(this,arguments)},addClass:function(d){b.addClass(this.get("element"),d)},getElementsByClassName:function(e,d){return b.getElementsByClassName(e,d,this.get("element"))},hasClass:function(d){return b.hasClass(this.get("element"),d)},removeClass:function(d){return b.removeClass(this.get("element"),d)},replaceClass:function(e,d){return b.replaceClass(this.get("element"),e,d)},setStyle:function(e,d){return b.setStyle(this.get("element"),e,d)},getStyle:function(d){return b.getStyle(this.get("element"),d)},fireQueue:function(){var e=this._queue;for(var f=0,d=e.length;f<d;++f){this[e[f][0]].apply(this,e[f][1])}},appendTo:function(e,f){e=(e.get)?e.get("element"):b.get(e);this.fireEvent("beforeAppendTo",{type:"beforeAppendTo",target:e});f=(f&&f.get)?f.get("element"):b.get(f);var d=this.get("element");if(!d){return false}if(!e){return false}if(d.parent!=e){if(f){e.insertBefore(d,f)}else{e.appendChild(d)}}this.fireEvent("appendTo",{type:"appendTo",target:e});return d},get:function(d){var f=this._configs||{},e=f.element;if(e&&!f[d]&&!YAHOO.lang.isUndefined(e.value[d])){this._setHTMLAttrConfig(d)}return c.prototype.get.call(this,d)},setAttributes:function(k,g){var e={},h=this._configOrder;for(var j=0,d=h.length;j<d;++j){if(k[h[j]]!==undefined){e[h[j]]=true;this.set(h[j],k[h[j]],g)}}for(var f in k){if(k.hasOwnProperty(f)&&!e[f]){this.set(f,k[f],g)}}},set:function(e,g,d){var f=this.get("element");if(!f){this._queue[this._queue.length]=["set",arguments];if(this._configs[e]){this._configs[e].value=g}return}if(!this._configs[e]&&!YAHOO.lang.isUndefined(f[e])){this._setHTMLAttrConfig(e)}return c.prototype.set.apply(this,arguments)},setAttributeConfig:function(d,e,f){this._configOrder.push(d);c.prototype.setAttributeConfig.apply(this,arguments)},createEvent:function(e,d){this._events[e]=true;return c.prototype.createEvent.apply(this,arguments)},init:function(e,d){this._initElement(e,d)},destroy:function(){var d=this.get("element");YAHOO.util.Event.purgeElement(d,true);this.unsubscribeAll();if(d&&d.parentNode){d.parentNode.removeChild(d)}this._queue=[];this._events={};this._configs={};this._configOrder=[]},_initElement:function(f,e){this._queue=this._queue||[];this._events=this._events||{};this._configs=this._configs||{};this._configOrder=[];e=e||{};e.element=e.element||f||null;var h=false;var d=a.DOM_EVENTS;this.DOM_EVENTS=this.DOM_EVENTS||{};for(var g in d){if(d.hasOwnProperty(g)){this.DOM_EVENTS[g]=d[g]}}if(typeof e.element==="string"){this._setHTMLAttrConfig("id",{value:e.element})}if(b.get(e.element)){h=true;this._initHTMLElement(e);this._initContent(e)}YAHOO.util.Event.onAvailable(e.element,function(){if(!h){this._initHTMLElement(e)}this.fireEvent("available",{type:"available",target:b.get(e.element)})},this,true);YAHOO.util.Event.onContentReady(e.element,function(){if(!h){this._initContent(e)}this.fireEvent("contentReady",{type:"contentReady",target:b.get(e.element)})},this,true)},_initHTMLElement:function(d){this.setAttributeConfig("element",{value:b.get(d.element),readOnly:true})},_initContent:function(d){this.initAttributes(d);this.setAttributes(d,true);this.fireQueue()},_setHTMLAttrConfig:function(d,f){var e=this.get("element");f=f||{};f.name=d;f.setter=f.setter||this.DEFAULT_HTML_SETTER;f.getter=f.getter||this.DEFAULT_HTML_GETTER;f.value=f.value||e[d];this._configs[d]=new YAHOO.util.Attribute(f,this)}};YAHOO.augment(a,c);YAHOO.util.Element=a})();YAHOO.register("element",YAHOO.util.Element,{version:"2.7.0",build:"1799"});
