AjaxJspTag.UpdateFieldTecnocom=Class.create();AjaxJspTag.UpdateFieldTecnocom.prototype=Object.extend(new AjaxJspTag.Base(),{initialize:function(b,a){this.url=b;this.setOptions(a);this.setListeners();addAjaxListener(this)},reload:function(){this.setListeners()},setOptions:function(a){this.options=Object.extend({parameters:a.parameters||"",doPost:a.doPost||false,valueUpdateByName:a.valueUpdateByName||false,eventType:a.eventType?a.eventType:"click",parser:a.parser?a.parser:(a.valueUpdateByName?new ResponseXmlParser():new ResponseTextParser()),handler:a.handler?a.handler:this.handler},a||{})},setListeners:function(){eval("$(this.options.action).on"+this.options.eventType+" = this.execute.bindAsEventListener(this)")},execute:function(c){if(isFunction(this.options.preFunction)){this.options.preFunction()}if(this.options.cancelExecution){this.cancelExecution=false;return}var d=buildParameterString(this.options.parameters);var b=this;var a=this.setField;var f=new Ajax.Request(this.url,{asynchronous:true,method:b.options.doPost?"post":"get",evalScripts:true,parameters:d,onSuccess:function(g){b.options.parser.load(g);var e=b.options.parser.itemList;b.options.handler(g,{target:b.options.target,items:e})},onFailure:function(e){if(isFunction(b.options.errorFunction)){b.options.errorFunction(e,b.options.parser)}},onComplete:function(e){if(isFunction(b.options.postFunction)){b.options.postFunction()}}})},handler:function(d,a){$(a.target).options.length=0;$(a.target).disabled=false;for(var b=0;b<a.items.length;b++){var c=new Option(a.items[b][0],a.items[b][1]);$(a.target).options[b]=new Option(a.items[b][0],a.items[b][1]);if(c.selected==false&&a.items[b].length==3&&parseBoolean(a.items[b][2])){c.selected=true}$(a.target).options[b]=c}if(a.items.length==0){$(a.target).options[b]=new Option(this.emptyOptionName,this.emptyOptionValue);$(a.target).disabled=true}if($(a.target).ajaxSelect&&$(a.target).ajaxSelect.execute){$(a.target).ajaxSelect.execute()}}});