﻿// jQuery Form Validators v0.3.5
// License: http://validator.codeplex.com/license
var validate;(function(d){validate=function(g){var f=true;d("*[validate="+g+"]").each(function(h,j){if(b(j)){d(j).highlight();if(f){d(j).find(":input").andSelf().focus()}f=false}else{d(j).unhighlight()}});return f};function e(){if(!b(this)){d(this).unhighlight()}else{d(this).highlight()}}function b(i){var f=d(i);var h=f.find("input:radio, input:checkbox").size();if(f.attr("disabled")||h>0&&h==f.find("input:radio:disabled, input:checkbox:disabled").size()){return""}if((f.val()==""||f.val()==null)&&f.find("input:radio:checked, input:checkbox:checked").size()==0){return f.attr("require")?"require":""}if(f.attr("regular")&&f.attr("validExpress")&&!new RegExp(f.attr("validExpress"),"m").test(f.val())){return"regular"}if(f.attr("regular")&&f.attr("invalidExpress")&&new RegExp(f.attr("invalidExpress"),"m").test(f.val())){return"regular"}if(f.attr("compare")&&d("#"+f.attr("compareTo")).val()!=f.val()){return"compare"}if(f.attr("custom")&&!new Function(f.attr("customFn")).call(i)){return"custom"}if(f.attr("invalid")&&f.val()==f.attr("invalidVal")){return"invalid"}if(validators!=undefined){for(var g in validators){if(f.attr(g)&&!validators[g].call(i)){return g}}}}function c(){var f=d(this);var h=f.offset().top+f.height()+4;var g=f.offset().left+Math.max(f.width()-260,0);f.parents().each(function(){if(d(this).css("position")!="static"&&(!d.browser.mozilla||d(this).css("display")!="table")){var i=d(this).offset();h-=i.top;g-=i.left;return false}});f.parent().children(".alertbox").remove();f.parent().append("<div class='alertbox' style='top:"+h+"px; left:"+g+"px;'><div>"+f.attr(b(this))+"</div></div>")}function a(){d(this).parent().children(".alertbox").remove()}d.fn.highlight=function(){this.addClass("highlight").focus(c).blur(a).change(e);return this};d.fn.unhighlight=function(){this.removeClass("highlight").unbind("focus",c).unbind("blur",a).parent().children(".alertbox").remove();return this}})(jQuery);var validators={email:function(){return new RegExp("[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?.)+[a-zA-z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?","m").test(this.value)}};
