var TerminyStep4=new Class({Implements:[Events,Options],options:{innerSelector:".terminy-desc-inner",loaderSelector:".terminy-desc .loader",terminSelectId:"terminy-trigger",formFiltersId:"terminy-filters",ajax:{mode:"turystyka_wycieczki",instance:1,priority:1,state:"step4_filter"},loaderFx:{duration:500},onStart:$empty,onSend:$empty,onNewHtml:$empty,onLoaderHide:$empty},initialize:function(a){this.setOptions(a);this.inner=document.getElement(this.options.innerSelector);this.loader=document.getElement(this.options.loaderSelector);this.termin=$(this.options.terminSelectId);this.termin.addEvent("change",this.send.bind(this));this.onStart()},onStart:function(){this.onNewHtml();this.fireEvent("start",[this])},onNewHtml:function(){this.handleForm();this.fireEvent("newHtml",[this])},handleForm:function(){this.form=$(this.options.formFiltersId);for(var a=0,b=this.form.elements.length;a<b;a++){var c=$(this.form.elements[a]);if(c.type&&c.type=="select-one"){c.addEvent("change",this.send.bind(this))}}},handleHash:function(){var a=window.location.hash.substring(1);if(a!=""&&a.indexOf("termin_sp")!=-1){this.send(null,{filters:[{name:"last_cfg",value:a.split("=")[1]}]})}},send:function(a,b){var c=new Form(this.form),d=this.inner.getSize(),e=this.options;c.simpleOutput=true;var f=$merge({state:e.ajax.state},$pick(b,{filters:c.getAllElements(),termin:this.termin.value}));this.loader.setStyles({opacity:0,display:"block",width:d.x,height:d.y});if(Browser.Engine.trident4){this.iframe=(new Element("iframe",{styles:{display:"block",position:"absolute","z-index":50,left:0,top:0,width:d.x,height:d.y,filter:"progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)"}})).inject(this.inner,"before")}this.fireEvent("send",[this]);this.loaderfx=new Fx.Tween(this.loader,e.loaderFx);this.loaderfx.start("opacity",1).chain(function(){Ajax.add({mode:e.ajax.mode,instance:e.ajax.instance,priority:e.ajax.priority,data:f,onSuccess:this.response.bind(this)})}.bind(this))},response:function(a,b){if(!a){console.error("TerminyStep4.response error: %s",b);return}this.inner.set("html",a.result);this.onNewHtml();this.loaderfx.start("opacity",0).chain(function(){if(Browser.Engine.trident4){this.iframe.destroy()}this.loader.setStyle("display","none");this.fireEvent("loaderHide",[this])}.bind(this))}})
