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