Object.extend(Element,{condClassName:function(A,C,B){(B?Element.addClassName:Element.removeClassName)(A,C)}});Prado.Element={setValue:function(A,C){var B=$(A);if(B&&typeof(B.value)!="undefined"){B.value=C}},select:function(A,F,D){var C=$(A);var E=A.indexOf("[]")>-1;if(!C&&!E){return}F=E?"check"+F:C.tagName.toLowerCase()+F;var B=Prado.Element.Selection;if(isFunction(B[F])){B[F](E?A:C,D)}},focus:function(A){var B=$(A);if(B){B.focus()}},click:function(B){var C=$(B);if(!C){return}if(document.createEvent){var A=document.createEvent("HTMLEvents");A.initEvent("click",true,true);C.dispatchEvent(A)}else{if(C.fireEvent){C.fireEvent("onclick");if(isFunction(C.onclick)){C.onclick()}}}},setAttribute:function(A,C,D){var B=$(A);if(C=="disabled"&&D==false){B.removeAttribute(C)}else{B.setAttribute(C,D)}},setOptions:function(C,A){var D=$(C);if(D&&D.tagName.toLowerCase()=="select"){while(D.length>0){D.remove(0)}for(var B=0;B<A.length;B++){D.options[D.options.length]=new Option(A[B][0],A[B][1])}}},replaceContent:function(C,A,B){Element.update(C,B)},replaceMultiPartContent:function(E,G,B,D){var A=("<"+G+">").length;var F=D.indexOf("<"+G+">");var C=D.indexOf("</"+G+">");Element.update(E,D.substring(F+A,C))},insertEndScript:function(E,G,B,D){var A=("<"+G+">").length;var F=D.indexOf("<"+G+">");var C=D.indexOf("</"+G+">");Element.update(E,D.substring(F+A,C))}};Prado.Element.Selection={inputValue:function(A,B){switch(A.type.toLowerCase()){case"checkbox":case"radio":return A.checked=B}},selectValue:function(A,B){$A(A.options).each(function(C){C.selected=C.value==B})},selectIndex:function(C,A){if(C.type=="select-one"){C.selectedIndex=A}else{for(var B=0;B<C.length;B++){if(B==A){C.options[B].selected=true}}}},selectClear:function(A){A.selectedIndex=-1},selectAll:function(A){$A(A.options).each(function(B){B.selected=true;Logger.warn(B.value)})},selectInvert:function(A){$A(A.options).each(function(B){B.selected=!B.selected})},checkValue:function(A,B){$A(document.getElementsByName(A)).each(function(C){C.checked=C.value==B})},checkIndex:function(B,A){var D=$A(document.getElementsByName(B));for(var C=0;C<D.length;C++){if(C==A){D[C].checked=true}}},checkClear:function(A){$A(document.getElementsByName(A)).each(function(B){B.checked=false})},checkAll:function(A){$A(document.getElementsByName(A)).each(function(B){B.checked=true})},checkInvert:function(A){$A(document.getElementsByName(A)).each(function(B){B.checked=!B.checked})}};Object.extend(Prado.Element,{Insert:{After:function(A,B){new Insertion.After(A,B)},Before:function(A,B){new Insertion.Before(A.innerHTML)},Below:function(A,B){new Insertion.Bottom(A,B)},Above:function(A,B){new Insertion.Top(A,B)}},CssClass:{set:function(B,A){B=new Element.ClassNames(B);B.set(A)}}});Object.extend(Event,{OnLoad:function(B){var A=document.addEventListener&&!window.addEventListener?document:window;Event.observe(A,"load",B)}});function getAllChildren(A){return A.all?A.all:A.getElementsByTagName("*")}document.getElementsBySelector=function(Q){if(!document.getElementsByTagName){return new Array()}var K=Q.split(" ");var F=new Array(document);for(var S=0;S<K.length;S++){token=K[S].replace(/^\s+/,"").replace(/\s+$/,"");if(token.indexOf("#")>-1){var N=token.split("#");var D=N[0];var M=N[1];var B=document.getElementById(M);if(D&&B.nodeName.toLowerCase()!=D){return new Array()}F=new Array(B);continue}if(token.indexOf(".")>-1){var N=token.split(".");var D=N[0];var C=N[1];if(!D){D="*"}var H=new Array;var G=0;for(var T=0;T<F.length;T++){var I;if(D=="*"){I=getAllChildren(F[T])}else{I=F[T].getElementsByTagName(D)}for(var P=0;P<I.length;P++){H[G++]=I[P]}}F=new Array;var L=0;for(var O=0;O<H.length;O++){if(H[O].className&&H[O].className.match(new RegExp("\\b"+C+"\\b"))){F[L++]=H[O]}}continue}if(token.match(/^(\w*)\[(\w+)([=~\|\^\$\*]?)=?"?([^\]"]*)"?\]$/)){var D=RegExp.$1;var R=RegExp.$2;var A=RegExp.$3;var J=RegExp.$4;if(!D){D="*"}var H=new Array;var G=0;for(var T=0;T<F.length;T++){var I;if(D=="*"){I=getAllChildren(F[T])}else{I=F[T].getElementsByTagName(D)}for(var P=0;P<I.length;P++){H[G++]=I[P]}}F=new Array;var L=0;var E;switch(A){case"=":E=function(U){return(U.getAttribute(R)==J)};break;case"~":E=function(U){return(U.getAttribute(R).match(new RegExp("\\b"+J+"\\b")))};break;case"|":E=function(U){return(U.getAttribute(R).match(new RegExp("^"+J+"-?")))};break;case"^":E=function(U){return(U.getAttribute(R).indexOf(J)==0)};break;case"$":E=function(U){return(U.getAttribute(R).lastIndexOf(J)==U.getAttribute(R).length-J.length)};break;case"*":E=function(U){return(U.getAttribute(R).indexOf(J)>-1)};break;default:E=function(U){return U.getAttribute(R)}}F=new Array;var L=0;for(var O=0;O<H.length;O++){if(E(H[O])){F[L++]=H[O]}}continue}D=token;var H=new Array;var G=0;for(var T=0;T<F.length;T++){var I=F[T].getElementsByTagName(D);for(var P=0;P<I.length;P++){H[G++]=I[P]}}F=H}return F};var Behaviour={register:function(A){this.rules=A;for(rule in this.rules){this.reload(rule)}},reload:function(A){elements=$$(A);for(y=0;y<elements.length;y++){this.rules[A](elements[y])}}};Function.prototype.bindEvent=function(){var A=this,C=$A(arguments),B=C.shift();return function(D){return A.apply(B,[D||window.event].concat(C))}};Object.extend(Event,{fireEvent:function(G,C){var H={HTMLEvents:/^(?:load|unload|abort|error|select|change|submit|reset|focus|blur|resize|scroll)$/,MouseEvents:/^(?:click|mouse(?:down|up|over|move|out))$/};var A={pointerX:0,pointerY:0,button:0,ctrlKey:false,altKey:false,shiftKey:false,metaKey:false,bubbles:true,cancelable:true};var E=Object.extend(Object.clone(A),arguments[2]||{});var B,F=null;for(var D in H){if(H[D].test(C)){F=D;break}}if(!F){throw new SyntaxError("Only HTMLEvents and MouseEvents interfaces are supported")}if(document.createEvent){B=document.createEvent(F);if(F=="HTMLEvents"){B.initEvent(C,E.bubbles,E.cancelable)}else{B.initMouseEvent(C,E.bubbles,E.cancelable,document.defaultView,E.button,E.pointerX,E.pointerY,E.pointerX,E.pointerY,E.ctrlKey,E.altKey,E.shiftKey,E.metaKey,E.button,G)}G.dispatchEvent(B)}else{E.clientX=E.pointerX;E.clientY=E.pointerY;B=Object.extend(document.createEventObject(),E);if(G.tagName=="INPUT"&&G.type=="submit"){G.fireEvent("on"+C,B);G[C]()}else{G.fireEvent("on"+C,B)}}return G}});if(!Prado.WebUI){Prado.WebUI=Class.create()}Prado.WebUI.DefaultButton=Class.create();Object.extend(Prado.WebUI.DefaultButton.prototype,{initialize:function(A){this.options=A;this._event=this.triggerEvent.bindEvent(this);Event.observe(A.Panel,"keydown",this._event)},triggerEvent:function(C,F){var A=C.keyCode==Event.KEY_RETURN;var D=Event.element(C).tagName.toLowerCase()=="textarea";var E=Event.element(C).tagName.toLowerCase()=="select";if(A&&!D&&!E){var B=$(this.options.Target);if(B){this.triggered=true;Event.fireEvent(B,this.options.Event);Event.stop(C)}}}});
