YAHOO.util.Attribute=function(M,u){if(u){this.owner=u;this.configure(M,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(Q,M){var G;var u=this.owner;var r=this.name;var v={type:r,prevValue:this.getValue(),newValue:Q};if(this.readOnly||(this.writeOnce&&this._written)){return false;}if(this.validator&&!this.validator.call(u,Q)){return false;}if(!M){G=u.fireBeforeChangeEvent(v);if(G===false){return false;}}if(this.method){this.method.call(u,Q);}this.value=Q;this._written=true;v.type=r;if(!M){this.owner.fireChangeEvent(v);}return true;},configure:function(M,r){M=M||{};this._written=false;this._initialConfig=this._initialConfig||{};for(var u in M){if(u&&YAHOO.lang.hasOwnProperty(M,u)){this[u]=M[u];if(r){this._initialConfig[u]=M[u];}}}},resetValue:function(){return this.setValue(this._initialConfig.value);},resetConfig:function(){this.configure(this._initialConfig);},refresh:function(u){this.setValue(this.value,u);}};(function(){var u=YAHOO.util.Lang;YAHOO.util.AttributeProvider=function(){};YAHOO.util.AttributeProvider.prototype={_configs:null,get:function(r){this._configs=this._configs||{};var M=this._configs[r];if(!M){return undefined;}return M.value;},set:function(v,G,M){this._configs=this._configs||{};var r=this._configs[v];if(!r){return false;}return r.setValue(G,M);},getAttributeKeys:function(){this._configs=this._configs;var v=[];var M;for(var r in this._configs){M=this._configs[r];if(u.hasOwnProperty(this._configs,r)&&!u.isUndefined(M)){v[v.length]=r;}}return v;},setAttributes:function(v,M){for(var r in v){if(u.hasOwnProperty(v,r)){this.set(r,v[r],M);}}},resetValue:function(r,M){this._configs=this._configs||{};if(this._configs[r]){this.set(r,this._configs[r]._initialConfig.value,M);return true;}return false;},refresh:function(G,r){this._configs=this._configs;G=((u.isString(G))?[G]:G)||this.getAttributeKeys();for(var v=0,M=G.length;v<M;++v){if(this._configs[G[v]]&&!u.isUndefined(this._configs[G[v]].value)&&!u.isNull(this._configs[G[v]].value)){this._configs[G[v]].refresh(r);}}},register:function(M,r){this.setAttributeConfig(M,r);},getAttributeConfig:function(r){this._configs=this._configs||{};var M=this._configs[r]||{};var v={};for(r in M){if(u.hasOwnProperty(M,r)){v[r]=M[r];}}return v;},setAttributeConfig:function(M,r,v){this._configs=this._configs||{};r=r||{};if(!this._configs[M]){r.name=M;this._configs[M]=this.createAttribute(r);}else{this._configs[M].configure(r,v);}},configureAttribute:function(M,r,v){this.setAttributeConfig(M,r,v);},resetAttributeConfig:function(M){this._configs=this._configs||{};this._configs[M].resetConfig();},subscribe:function(M,r){this._events=this._events||{};if(!(M in this._events)){this._events[M]=this.createEvent(M);}YAHOO.util.EventProvider.prototype.subscribe.apply(this,arguments);},on:function(){this.subscribe.apply(this,arguments);},addListener:function(){this.subscribe.apply(this,arguments);},fireBeforeChangeEvent:function(r){var M="before";M+=r.type.charAt(0).toUpperCase()+r.type.substr(1)+"Change";r.type=M;return this.fireEvent(r.type,r);},fireChangeEvent:function(M){M.type+="Change";return this.fireEvent(M.type,M);},createAttribute:function(M){return new YAHOO.util.Attribute(M,this);}};YAHOO.augment(YAHOO.util.AttributeProvider,YAHOO.util.EventProvider);})();(function(){var v=YAHOO.util.Dom,Q=YAHOO.util.AttributeProvider;YAHOO.util.Element=function(A,j){if(arguments.length){this.init(A,j);}};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(A,j){A=A.get?A.get("element"):A;j=(j&&j.get)?j.get("element"):j;this.get("element").insertBefore(A,j);},removeChild:function(A){A=A.get?A.get("element"):A;this.get("element").removeChild(A);return true;},replaceChild:function(A,j){A=A.get?A.get("element"):A;j=j.get?j.get("element"):j;return this.get("element").replaceChild(A,j);},initAttributes:function(A){},addListener:function(n,I,U,H){var j=this.get("element");H=H||this;j=this.get("id")||j;var A=this;if(!this._events[n]){if(this.DOM_EVENTS[n]){YAHOO.util.Event.addListener(j,n,function(Y){if(Y.srcElement&&!Y.target){Y.target=Y.srcElement;}A.fireEvent(n,Y);},U,H);}this.createEvent(n,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(j,A){this.unsubscribe.apply(this,arguments);},addClass:function(A){v.addClass(this.get("element"),A);},getElementsByClassName:function(j,A){return v.getElementsByClassName(j,A,this.get("element"));},hasClass:function(A){return v.hasClass(this.get("element"),A);},removeClass:function(A){return v.removeClass(this.get("element"),A);},replaceClass:function(j,A){return v.replaceClass(this.get("element"),j,A);},setStyle:function(H,j){var A=this.get("element");if(!A){return this._queue[this._queue.length]=["setStyle",arguments];}return v.setStyle(A,H,j);},getStyle:function(A){return v.getStyle(this.get("element"),A);},fireQueue:function(){var j=this._queue;for(var H=0,A=j.length;H<A;++H){this[j[H][0]].apply(this,j[H][1]);}},appendTo:function(j,H){j=(j.get)?j.get("element"):v.get(j);this.fireEvent("beforeAppendTo",{type:"beforeAppendTo",target:j});H=(H&&H.get)?H.get("element"):v.get(H);var A=this.get("element");if(!A){return false;}if(!j){return false;}if(A.parent!=j){if(H){j.insertBefore(A,H);}else{j.appendChild(A);}}this.fireEvent("appendTo",{type:"appendTo",target:j});},get:function(A){var H=this._configs||{};var j=H.element;if(j&&!H[A]&&!YAHOO.lang.isUndefined(j.value[A])){return j.value[A];}return Q.prototype.get.call(this,A);},setAttributes:function(U,j){var n=this.get("element");for(var I in U){if(!this._configs[I]&&!YAHOO.lang.isUndefined(n[I])){this.setAttributeConfig(I);}}for(var H=0,A=this._configOrder.length;H<A;++H){if(U[this._configOrder[H]]!==undefined){this.set(this._configOrder[H],U[this._configOrder[H]],j);}}},set:function(j,I,A){var H=this.get("element");if(!H){this._queue[this._queue.length]=["set",arguments];if(this._configs[j]){this._configs[j].value=I;}return ;}if(!this._configs[j]&&!YAHOO.lang.isUndefined(H[j])){r.call(this,j);}return Q.prototype.set.apply(this,arguments);},setAttributeConfig:function(A,H,I){var j=this.get("element");if(j&&!this._configs[A]&&!YAHOO.lang.isUndefined(j[A])){r.call(this,A,H);}else{Q.prototype.setAttributeConfig.apply(this,arguments);}this._configOrder.push(A);},getAttributeKeys:function(){var j=this.get("element");var H=Q.prototype.getAttributeKeys.call(this);for(var A in j){if(!this._configs[A]){H[A]=H[A]||j[A];}}return H;},createEvent:function(j,A){this._events[j]=true;Q.prototype.createEvent.apply(this,arguments);},init:function(j,A){u.apply(this,arguments);}};var u=function(j,A){this._queue=this._queue||[];this._events=this._events||{};this._configs=this._configs||{};this._configOrder=[];A=A||{};A.element=A.element||j||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 H=false;if(YAHOO.lang.isString(j)){r.call(this,"id",{value:A.element});}if(v.get(j)){H=true;G.call(this,A);M.call(this,A);}YAHOO.util.Event.onAvailable(A.element,function(){if(!H){G.call(this,A);}this.fireEvent("available",{type:"available",target:A.element});},this,true);YAHOO.util.Event.onContentReady(A.element,function(){if(!H){M.call(this,A);}this.fireEvent("contentReady",{type:"contentReady",target:A.element});},this,true);};var G=function(A){this.setAttributeConfig("element",{value:v.get(A.element),readOnly:true});};var M=function(A){this.initAttributes(A);this.setAttributes(A,true);this.fireQueue();};var r=function(A,H){var j=this.get("element");H=H||{};H.name=A;H.method=H.method||function(I){j[A]=I;};H.value=H.value||j[A];this._configs[A]=new YAHOO.util.Attribute(H,this);};YAHOO.augment(YAHOO.util.Element,Q);})();YAHOO.register("element",YAHOO.util.Element,{version:"2.5.1",build:"984"});
