/*
$(function(){

	$('#form_contato').submit(function(){
		var result = true;
		var reqs = $('.form_required');
		
         reqs.each(function(){
				var valor = $(this);
			
				  
				alert(valor.val);
				
			for(var i=0;i<12;i++){
                            if((valor.localeCompare(valores[i]))){
                             //   alert('O campo '+ valores[i] +' não preenchido');
                                result = false;
                            }
                        }
		});
               if(!result)
                    return result;
	}).bind("submit",function(){
            if(isEmail($("#email").val())==false) {
		   // alert('E-mail inválido');
                    return false;
               }
        }).bind("submit",function(){
            var op = $("input[name='pessoa']:checked").val();
                if(op=="Física"){
                     if(!isCPF($("#cnpj_cpf").val())){
                        //   alert("O campo CNPJ/CPF deve ser preenchido corretamento.");
                           return false;
                     }
                }else{
                    if(!isCNPJ($("#cnpj_cpf").val())){
                       //     alert("O campo CNPJ/CPF deve ser preenchido corretamento.");
                            return false;
                        }
                }
        });
});
*/

$(function() {
	$('.form_monitored').submit(function() {
		var result = true;
		var reqs = $('.form_required');

		reqs.each(function() {
			var r = $(this);
			var msg;
			if(!r.val()) {
				result = result && false;
				msg = 'Campo obrigatório não preenchido';
			} 
			
			else if(r.attr('name') == "nome" &&  r.val()=="Nome") {
				result = result && false;
				msg = 'Campo Obrigatório';
			}
			else if(r.attr('name') == "estado_civil" &&  r.val()=="Estado Civil") {
				result = result && false;
				msg = 'Campo Obrigatório';
			}
			else if(r.attr('name') == "rg" &&  r.val()=="R.G./Inscrição Estadual") {
				result = result && false;
				msg = 'Campo Obrigatório';
			}
			else if(r.attr('name') == "cnpj_cpf" &&  r.val()=="CNPJ/CPF") {
				result = result && false;
				msg = 'Campo Obrigatório';
			}
			else if(r.attr('name') == "tele1" &&  r.val()=="Telefone 1") {
				result = result && false;
				msg = 'Campo Obrigatório';
			}
			else if(r.attr('name') == "email" &&  r.val()=="E-mail" ) {
				result = result && false;
				msg = 'Campo Obrigatório';
			}
			else if(r.attr('name') == "logradouro" &&  r.val()=="Logradouro") {
				result = result && false;
				msg = 'Campo Obrigatório';
			}
			else if(r.attr('name') == "numero" &&  r.val()=="Número") {
				result = result && false;
				msg = 'Campo Obrigatório';
			}
			else if(r.attr('name') == "bairro" &&  r.val()=="Bairro") {
				result = result && false;
				msg = 'Campo Obrigatório';
			}
			else if(r.attr('name') == "cep" &&  r.val()=="Cep") {
				result = result && false;
				msg = 'Campo Obrigatório';
			}
			else if(r.attr('name') == "cidade" &&  r.val()=="Cidade") {
				result = result && false;
				msg = 'Campo Obrigatório';
			}
			else if(r.hasClass('form_email') && (!isEmail(r.val()))) {
				result = result && false;
				msg = 'E-mail inválido';
			}
			else result = result && true;
			if(!result) {
				r.addClass('form_error');
				r.css({'border-style': 'solid', 'border-color': 'red'});
				$('.' + r.attr('name')).html(msg); 
				r.keypress(function() 
				{ 
					if(r.val()) 
					{ 
						r.removeClass('form_error'); r.css({'border-style': '', 'border-color': ''}); 
						$('.' + r.attr('name')).empty(); 
						
					}
				});
			}
		});
		if(!result || $('.form_error').length) return false;
	});
	
	$('.form_required').blur(function() {
		var result = true;
		var r = $(this);
		var msg;

		if(!r.val()) {
			result = result && false;
			msg = 'Campo obrigatório não preenchido';
		} else if(r.hasClass('form_cpf') && !isCPF(r.val())) {
			result = result && false;
			msg = 'CPF inválido';
		} else if(r.hasClass('form_email') && !isEmail(r.val())) {
			result = result && false;
			msg = 'E-mail inválido';
		} else if(r.hasClass('form_login') && !isLogin(r.val())) {
			result = result && false;
			msg = 'Login Inválido. Digite apenas letras, números, underline (_) e hífen (-)';
		} else result = result && true;
		if(!result) {
			r.addClass('form_error');
			r.css({'border-style': 'solid', 'border-color': 'red'});
			$('.' + (r.attr('name') == 'telefone_ddd' ? 'telefone_tel' : r.attr('name'))).html(msg);
			r.keypress(function() { if(r.val()) { r.removeClass('form_error'); r.css({'border-style': '', 'border-color': ''}); $('.' + (r.attr('name') == 'telefone_ddd' ? 'telefone_tel' : r.attr('name'))).empty(); }});
		} else {
			r.removeClass('form_error');
		}
	});
});

function isCPF(a){a=a.replace('.', '').replace('.', '').replace('-', '');if(a.length!=11||a=="00000000000"||a=="11111111111"||a=="22222222222"||a=="33333333333"||a=="44444444444"||a=="55555555555"||a=="66666666666"||a=="77777777777"||a=="88888888888"||a=="99999999999")return false;soma=0;for(i=0;i<9;i++)soma+=parseInt(a.charAt(i))*(10-i);resto=11-(soma%11);if(resto==10||resto==11)resto=0;if(resto!=parseInt(a.charAt(9)))return false;soma=0;for(i=0;i<10;i++)soma+=parseInt(a.charAt(i))*(11-i);resto=11-(soma%11);if(resto==10||resto==11)resto=0;if(resto!=parseInt(a.charAt(10)))return false;return true}
function isEmail(a){f=/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;return f.test(a);}
function isCNPJ(campo){
      //Declaração as variáveis
      var numeros, digitos, soma, i, resultado, pos, tamanho, digitos_iguais, cnpj;
      cnpj = campo.value;
      //Verificando se o campo é nulo
      if (cnpj.length == 0) {
           return false;
      }

    //Filtrar o campo para verificar se está com máscara
    var filtro = /\d{2,3}.\d{3}.\d{3}\/\d{4}-\d{2}/;
    if(!filtro.test(cnpj)){
        return false;
    }
     //Ultilização expressão regular para retirar o que não for número
      cnpj = cnpj.replace(/\D+/g, '');
      digitos_iguais = 1;

      for (i = 0; i < cnpj.length - 1; i++)
            if (cnpj.charAt(i) != cnpj.charAt(i + 1)){
                digitos_iguais = 0;
                 break;
            }
           if (!digitos_iguais){
               tamanho = cnpj.length - 2
               numeros = cnpj.substring(0,tamanho);
               digitos = cnpj.substring(tamanho);
               soma = 0;
               pos = tamanho - 7;
               for (i = tamanho; i >= 1; i--){
                   soma += numeros.charAt(tamanho - i) * pos--;
                     if (pos < 2)
                            pos = 9;
                  }
            resultado = soma % 11 < 2 ? 0 : 11 - soma % 11;
            if (resultado != digitos.charAt(0)){
                  return false;
                  }
            tamanho = tamanho + 1;
            numeros = cnpj.substring(0,tamanho);
            soma = 0;
            pos = tamanho - 7;
            for (i = tamanho; i >= 1; i--)
                 {
                  soma += numeros.charAt(tamanho - i) * pos--;
                  if (pos < 2)
                        pos = 9;
                  }

            resultado = soma % 11 < 2 ? 0 : 11 - soma % 11;
            if (resultado != digitos.charAt(1)){
                  return false;
                  }
            return true;
            }
      else
            return false;
      }



