(function(a){a.fn.extend({validate:function(){var b=a(this),c=1;a(".email",b).each(function(){var d=a(this);d.checkEmail(function(){d.noerror2()},function(){d.error2();c=0})});a(".required",b).each(function(){var d=a(this);d.checkRequired(function(){d.noerror2()},function(){d.error2();c=0})});a(".latin",b).each(function(){var d=a(this);d.checkLatin(function(){d.noerror2()},function(){d.error2();c=0})});a(".hiderequired",b).each(function(){var d=a(this);if(d.parent().is(":visible")){d.checkRequired(function(){d.noerror2()},function(){d.error2();c=0})}});a(".length",b).each(function(){var d=a(this);d.checkLength(function(){d.noerror2()},function(){d.error2();c=0})});return c},validateChange:function(d,e,g){var c=a(this);var b=function(){var f=1;a("input.email,.required,.latin,.length,.hiderequired:visible",c).each(function(h,j){if(a(j).hasClass("error")){f=0}});if(f){d()}else{e()}};a("input.email",c).change(function(){var f=a(this);f.checkEmail(function(){if(g){f.noerror()}else{f.noerror2()}},function(){if(g){f.error("Wrong mail address")}else{f.error2()}});b()});a(".required",c).change(function(){var f=a(this);f.checkRequired(function(){if(g){f.noerror()}else{f.noerror2()}},function(){if(g){f.error("Required")}else{f.error2()}});b()});a(".hiderequired",c).change(function(){var f=a(this);if(f.parent().is(":visible")){f.checkRequired(function(){if(g){f.noerror()}else{f.noerror2()}},function(){if(g){f.error("Required")}else{f.error2()}})}b()});a(".latin",c).change(function(){var f=a(this);f.checkEmail(function(){if(g){f.noerror()}else{f.noerror2()}},function(){if(g){f.error("Only latin characters")}else{f.error2()}});b()});a(".length",c).change(function(){var f=a(this);f.checkLength(function(){if(g){f.noerror()}else{f.noerror2()}},function(){if(g){f.error("3 - 10 characters")}else{f.error2()}});b()})},checkEmail:function(b,d){var c=/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9])+$/;if(c.test(a(this).val())){b();return true}else{d();return false}},checkRequired:function(b,c){var d=a(this);if(d.val()&&!(d.attr("val")&&(d.attr("val")==d.val()))){b();return true}else{c();return false}},checkLength:function(c,e){var g=a(this),b=g.attr("id").split("|"),d=g.val().length;if(d>=b[0]&&d<=b[1]){c();return true}else{e();return false}},checkLatin:function(b,d){var e=a(this).val(),c=/^([a-zA-Z0-9_\-])+$/;if((e&&c.test(e))||!e){b();return true}else{d();return false}},error:function(b){a(this).next().text(b);a(this).parent().addClass("error")},noerror:function(){a(this).next().text("");a(this).parent().removeClass("error")},error2:function(b){var c=a(this);c.addClass("error").focus(function(){c.removeClass("error")})},noerror2:function(){a(this).removeClass("error")}})})(jQuery);
