var Observer=new Class({options:{periodical:false,delay:1000},initialize:function(C,A,B){this.setOptions(B);this.addEvent("onFired",A);this.element=$(C);this.listener=this.fired.bind(this);this.value=this.element.getValue();if(this.options.periodical){this.timer=this.listener.periodical(this.options.periodical)}else{this.element.addEvent("keyup",this.listener)}},fired:function(){var A=this.element.getValue();if(this.value==A){return }this.clear();this.value=A;this.timeout=this.fireEvent.delay(this.options.delay,this,["onFired",[A]])},clear:function(){$clear(this.timeout);return this}});Observer.implement(new Options);Observer.implement(new Events)
