var FabulousForm=Class.create({initialize:function(a,b,c){this.url=b;this.form=$(a);this.parameters=this.form.serialize(true);this.name=null;this.submit_button=$(this.form.getInputs("submit")[0]);this.submit_button.init_value=this.submit_button.value;this.complete_func=c},setName:function(a){this.name=a},handleResponse:function(d,b){if(!b||!Object.inspect(b)){this.throwError("json incorrect")}var a=b.params.is_valid;this.setName(b.params.name);var c=b.params;var e=b.errors;if(a){this.handleSuccess(c)}else{this.handleError(c,e)}},handleSuccess:function(params){this.form.enable();this.templateCleaner();this.submit_button.value=this.submit_button.init_value;eval(this.complete_func)},handleError:function(b,c){this.templateCleaner();form_name=this.name;c.each(function(d){var e="";var e=d.field_id;if($(e)){$(e).addClassName("fabulous_field_error");new Insertion.Bottom($(e).up("form").down(".errors"),"<p> "+d.error+" </p>")}});this.submit_button.value=this.submit_button.init_value;this.form.enable();var a=b.name+"_"+c[0].field;$(a).focus();Modalbox.resizeToContent()},throwError:function(a){alert(a)},getFieldName:function(a){alert(a);return this.name+"_"+a},templateCleaner:function(){var b=$$(".fabulous_field_error");b.each(function(c){c.removeClassName("fabulous_field_error")});var a=$$("div.errors");a.each(function(c){c.update()})}});function fabulous_submit(){alert("feu!")}function fabulous_process(a,d,e){var c=new FabulousForm(a,d,e);c.form.disable();c.submit_button.value="Wysyłam dane...";var b=new Ajax.Request(c.url,{method:"post",parameters:c.parameters,onComplete:function(g,f){c.handleResponse(g,f)},onFailure:function(){ajax_form_error("Une erreure est survenue, Veuillez raffraichir la page")}})};