var formSender=new Class({Implements:[Options,Events],valid:false,options:{sendingMsg:"VaÅ¡e zprÃ¡va se odesÃlÃ¡...",successMsg:"VaÅ¡e zprÃ¡va byla ÃºspÄ›Å¡nÄ› odeslÃ¡na, co nejdÅ™Ãve VÃ¡s budeme kontaktovat.",failureMsg:"PÅ™i odesÃlÃ¡nÃ VaÅ¡Ã zprÃ¡vy nastala chyba, zkuste to prosÃm jeÅ¡tÄ› jednou.",url:null,OnFailure:Class.empty,OnSuccess:Class.empty},initialize:function(b,a){this.form=$(b);this.setOptions(a);this.submitBtn=this.form.getElement('input[type="submit"]');this.options.OnFailure=(a.OnFailure||this.onFailure).bind(this);this.options.OnSuccess=(a.OnSuccess||this.onSuccess).bind(this);new fValidator(this.form,{onValid:this.onValid.bind(this),onInvalid:this.onInvalid.bind(this),onSubmit:this.onSubmit.bind(this)});this.statusDiv=new Element("div").injectBefore(this.form).hide();this.form.set("send",{url:this.options.url,});this.form.get("send").addEvent("onComplete",function(){this.onComplete(this.form.get("send").isSuccess())}.bind(this))},onSubmit:function(a){if(this.valid){this.statusDiv.hide().setProperty("class","loading").set("html",this.options.sendingMsg).show().fade("in");this.fireEvent("change");this.form.send()}a.preventDefault()},onValid:function(){this.valid=true;this.fireEvent("change")},onInvalid:function(){this.valid=false;this.fireEvent("change")},onComplete:function(a){if(a){this.options.OnSuccess()}else{this.options.OnFailure()}this.fireEvent("change")},onSuccess:function(){this.statusDiv.setProperty("class","success").set("html",this.form.get("send").xhr.responseText||this.options.successMsg);this.form.fade("out").slide("out").chain(function(){this.fireEvent("change")})},onFailure:function(){this.statusDiv.setProperty("class","failure").set("html",this.form.get("send").xhr.responseText||this.options.failureMsg)}});
