jQuery.validar={};jQuery.validar.isEmpty=function(b){var a=/^\s{1,}$/g;if((b.length==0)||(b==null)||((b.search(a))>-1)){return true}else{return false}};jQuery.validar.isCPF=function(l){var e=l.substring(0,3);var f=l.substring(4,7);var d=l.substring(8,11);var j=l.substring(12,14);var g;var h=(e+f+d+j);var n=h;var k=n.substr(0,9);var b=n.substr(9,2);var a=0;for(g=0;g<9;g++){a+=k.charAt(g)*(10-g)}var m;if(a==0){m="falso"}a=11-(a%11);if(a>9){a=0}if(b.charAt(0)!=a){m="falso"}a*=2;for(g=0;g<9;g++){a+=k.charAt(g)*(11-g)}a=11-(a%11);if(a>9){a=0}if(b.charAt(1)!=a){m="falso"}return !(m=="falso")};jQuery.validar.isCNPJ=function(g){if(!(g=/^\d?(\d{2})\.?(\d{3})\.?(\d{3})\/?(\d{4})\-?(\d{2})/.exec(g))){return false}var d=0,b=0,a=0,f=5,e=6;g.shift();g=g.join("");for(var c=0;c<=12;c++){f=(f<2)?9:f;e=(e<2)?9:e;if(c<=11){d+=g[c]*f}b+=g[c]*e;a+=g[c];f--;e--}d%=11;b%=11;return(a&&g[12]==(d<2?0:11-d)&&g[13]==(b<2?0:11-b))?g:false};jQuery.validar.isEmail=function(b){var a=b.indexOf("@");return !(a<1||b.lastIndexOf(".")-a<2)};jQuery.validar.isData=function(f){var a=/^((0[1-9]|[12]\d)\/(0[1-9]|1[0-2])|30\/(0[13-9]|1[0-2])|31\/(0[13578]|1[02]))\/(19|20)?\d{2}$/;var c=true;if((f)&&(f.match(a))&&(f!="")){var e=f.substring(0,2);var b=f.substring(3,5);var d=f.substring(6,10);if((b==4||b==6||b==9||b==11)&&e>30){c=false}else{if((d%4)!=0&&b==2&&e>28){c=false}else{if((d%4)==0&&b==2&&e>29){c=false}}}}else{c=false}return c};jQuery.validar.isNascimento=function(d,b,c){if(jQuery.validar.isData(d)){var a=d.split("/");return(parseInt(a[2])-parseInt(b))<=c}return false};jQuery.validar.toInt=function(a){return a.replace(/\D/g,"")};jQuery.validar.filtro="[validar=int], [validar=texto], [validar=email], [validar=cpf], [validar=igual], [validar=cnpj], [validar=nascimento], [validar=data], [opcional=email], [opcional=cpf], [opcional=igual], [opcional=cnpj], [opcional=nascimento], [opcional=data]";jQuery.validar.marcar=function(a){a.filter(jQuery.validar.filtro).filter(":visible").each(function(){$(this).after("<em> *</em>")})};jQuery.fn.validar=function(a){var c=$.extend({},jQuery.fn.validar.options,a);var b=this.find("input, select, textarea");if(c.marcar){jQuery.validar.marcar(b)}b.filter("[validar=int]").filter(":visible").each(function(){$(this).keyup(function(){this.value=jQuery.validar.toInt(this.value)})});this.submit(function(){var d=$(this);return d.validar.me.call(d,c)})};jQuery.fn.validar.me=function(d){var b=true;try{b=d.before.call(this)}catch(c){b=false}try{var a=this;this.find("input, select, textarea").filter(jQuery.validar.filtro).each(function(){var i=jQuery(this),j=jQuery.trim(i.val()),f="",g=i.attr("validar"),k=i.attr("opcional");if(typeof jQuery("label[for="+i.attr("id").replace("[]","")+"]")[0]=="object"){f=jQuery.trim(a.find("label[for="+i.attr("id").replace("[]","")+"]").text())}else{f=jQuery.trim(i.attr("label"))}try{if(b){if(g){if(jQuery.validar.isEmpty(j)||i.val()==i.attr("holder")){throw"Por favor, preencha o campo "+f+"."}}if(k||g){g=k||g;if(g=="email"){if(!jQuery.validar.isEmail(j)){throw"Por favor, preencha corretamente o campo "+f+"."}}else{if(g=="cpf"){if(!jQuery.validar.isCPF(j)){throw"Por favor, preencha corretamente o campo "+f+"."}}else{if(g=="cnpj"){if(!jQuery.validar.isCNPJ(j)){throw"Por favor, preencha corretamente o campo "+f+"."}}else{if(g=="igual"){if(j!=jQuery(i.attr("validarIgual")).val()){throw"Por favor, preencha corretamente o campo "+f+"."}}else{if(g=="data"){if(!jQuery.validar.isData(j)){throw"Por favor, preencha corretamente o campo "+f+"."}}else{if(g=="nascimento"){if(!jQuery.validar.isNascimento(j,jQuery.fn.validar.options.anoAtual,jQuery.fn.validar.options.idadeMaxima)){throw"Por favor, preencha corretamente o campo "+f+"."}}}}}}}}i.addClass(jQuery.fn.validar.options.classSucesso)}}catch(h){b=false;i.removeClass(jQuery.fn.validar.options.classSucesso).addClass(jQuery.fn.validar.options.classErro);d.alert(h);setTimeout(function(){var e=document.getElementById("#"+i.attr("id")+"-button");if(e){$(e).focus()}else{i.focus()}},10)}})}catch(c){alert(c);b=false}if(b&&typeof d.after=="function"){try{b=d.after.call(this)}catch(c){alert(c);b=false}}return b};jQuery.fn.validar.options={before:function(){return true},after:function(){return true},alert:function(a){alert(a)},marcar:true,anoAtual:2011,idadeMaxima:130,classSucesso:"validar-sucesso",classErro:"validar-erro"};
