(function(){Object.extend(Form.Element.Methods,{resetInput:function(element){element=$(element);if($F(element)==$(element).defaultValue){$(element).value='';}return element;}});Element.addMethods();var clearForms=function(){var form_elements=$$('input[type=text]','textarea');form_elements.invoke('observe','focus',function(){this.resetInput();});form_elements.invoke('observe','blur',function(){if($F(this).blank()){this.value=this.defaultValue;}});$$('form').invoke('observe','submit',function(){this.select('input[type=text]','textarea').invoke('resetInput');});};document.observe('dom:loaded',clearForms);Element.addMethods({delegate:function(element,event_name,rules){element=$(element);element.observe(event_name,function(event){var e=event.element();for(var selector in rules){if(rules.hasOwnProperty(selector)&&(e.match(selector)||e.up(selector))){var self=(e.match(selector))?e:e.up(selector);event.__absoluteElement__=self;return rules[selector].apply(self,$A(arguments));}}});return element;}});})();