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,c){var e,a=this.owner,b=this.name;var d={type:b,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(!c){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=b;if(!c){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(c,e,d){this._configs=this._configs||{};var b=this._configs[c];if(!b){return false}return b.setValue(e,d)},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,c){for(var b in d){if(a.hasOwnProperty(d,b)){this.set(b,d[b],c)}}},resetValue:function(b,c){this._configs=this._configs||{};if(this._configs[b]){this.set(b,this._configs[b]._initialConfig.value,c);return true}return false},refresh:function(d,e){this._configs=this._configs||{};var f=this._configs;d=((a.isString(d))?[d]:d)||this.getAttributeKeys();for(var c=0,b=d.length;c<b;++c){if(f.hasOwnProperty(d[c])){this._configs[d[c]].refresh(e)}}},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(e,d){e=e.get?e.get("element"):e;d=(d&&d.get)?d.get("element"):d;return this.get("element").insertBefore(e,d)},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(d,e){return b.setStyle(this.get("element"),d,e)},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,d){e=(e.get)?e.get("element"):b.get(e);this.fireEvent("beforeAppendTo",{type:"beforeAppendTo",target:e});d=(d&&d.get)?d.get("element"):b.get(d);var f=this.get("element");if(!f){return false}if(!e){return false}if(f.parent!=e){if(d){e.insertBefore(f,d)}else{e.appendChild(f)}}this.fireEvent("appendTo",{type:"appendTo",target:e});return f},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,j){var e={},g=this._configOrder;for(var h=0,d=g.length;h<d;++h){if(k[g[h]]!==undefined){e[g[h]]=true;this.set(g[h],k[g[h]],j)}}for(var f in k){if(k.hasOwnProperty(f)&&!e[f]){this.set(f,k[f],j)}}},set:function(d,g,f){var e=this.get("element");if(!e){this._queue[this._queue.length]=["set",arguments];if(this._configs[d]){this._configs[d].value=g}return}if(!this._configs[d]&&!YAHOO.lang.isUndefined(e[d])){this._setHTMLAttrConfig(d)}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(e,d){this._queue=this._queue||[];this._events=this._events||{};this._configs=this._configs||{};this._configOrder=[];d=d||{};d.element=d.element||e||null;var h=false;var g=a.DOM_EVENTS;this.DOM_EVENTS=this.DOM_EVENTS||{};for(var f in g){if(g.hasOwnProperty(f)){this.DOM_EVENTS[f]=g[f]}}if(typeof d.element==="string"){this._setHTMLAttrConfig("id",{value:d.element})}if(b.get(d.element)){h=true;this._initHTMLElement(d);this._initContent(d)}YAHOO.util.Event.onAvailable(d.element,function(){if(!h){this._initHTMLElement(d)}this.fireEvent("available",{type:"available",target:b.get(d.element)})},this,true);YAHOO.util.Event.onContentReady(d.element,function(){if(!h){this._initContent(d)}this.fireEvent("contentReady",{type:"contentReady",target:b.get(d.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"});
