$().ready(function(){
  if($("#formEventos").size())
   $("#formEventos").validate({

      errorPlacement: function(error, element) {
        var fieldIndex = $('*:input').index(element);
        error.attr('rel',fieldIndex);
        if(!$("span[rel="+fieldIndex+"]").size())
          element.parent().append("<span class=\"msg\" rel=\""+fieldIndex+"\">"+error.html()+"</span>");
        element.addClass("invalid");
      },

      success:function(label){
        $('*:input:eq('+label.attr('rel')+')').removeClass('invalid');
        $("span[rel="+label.attr('rel')+"]").remove();
      },

      rules: {
        evento_nome_contato: "required",
        evento_email: {
          required: true,
          email: true
        },
        evento_nome: "required",
        evento_descricao: "required",
        evento_quando: "required",
        evento_endereco_logradoro: "required",
        evento_endereco_numero: "required",
        evento_endereco_complemento: "required",
        evento_endereco_cidade: "required",
        evento_endereco_estado: "required",
        evento_endereco_cep: "required",
        evento_telefone: "required",
        evento_site: {required: false, url: true }
      },

      messages: {
        evento_nome_contato: "Digite seu nome",
        evento_email: {
          required: "Digite o e-mail",
          email: "E-mail inválido"
        },
        evento_nome: "Digite o nome do evento",
        evento_descricao: "Digite a descrição do evento",
        evento_quando: "Digite quando será o evento",
        evento_endereco_logradoro: "Digite o endereço",
        evento_endereco_numero: "Digite o número",
        evento_endereco_complemento: "Digite o complemento",
        evento_endereco_cidade: "Digite a cidade",
        evento_endereco_estado: "Selecione o estado",
        evento_endereco_cep: "Digite o CEP",
        evento_telefone: "Digite o telefone",
        evento_site: {url: "Digite uma url válida, exemplo: http://www.google.com.br" }
      }
    });

  if($("#formContato, #formEnvioFotoOuVideo, #formSugestoes, #formNewsletter").size())

    $("#formContato, #formEnvioFotoOuVideo, #formSugestoes, #formNewsletter").validate({

      errorPlacement: function(error, element) {
        var fieldIndex = $('*:input').index(element);
        error.attr('rel',fieldIndex);
        if(!$("span[rel="+fieldIndex+"]").size())
          if($(element).attr('id')=='fFoto' || $(element).attr('id')=='fVideo')
            $('input[name=enviar_video]').parent().append("<span class=\"msg\" rel=\""+fieldIndex+"\">"+error.html()+"</span>");
          else
            element.parent().append("<span class=\"msg\" rel=\""+fieldIndex+"\">"+error.html()+"</span>");
          element.addClass("invalid");
      },
  
      success:function(label){
        $('*:input:eq('+label.attr('rel')+')').removeClass('invalid');
        $("span[rel="+label.attr('rel')+"]").remove();
      },
  
      rules: {
        nome: "required",
        email: { 
          required: true,
          email: true
        },
        nome_pet: "required",
        tipo: "required",
        especie: "required",
        titulo: "required",
        mensagem: "required"
      },
  
      messages: {
        nome: "Digite seu nome",
        email: "Digite seu e-mail",
        nome_pet: "Digite o nome do pet",
        foto: "Escolha a foto ou cole o endereço do youtube",
        video: "Escolha a foto ou cole o endereço do youtube",
        tipo: "Selecione o tipo",
        especie: "Selecione uma raça / espécie",
        titulo: "Digite o titulo",
        mensagem: "Digite sua mensagem"
      }
  
    });

  if($("#formDicasDeProfissionais").size())

    $("#formDicasDeProfissionais").validate({

      errorPlacement: function(error, element) {
        var fieldIndex = $('*:input').index(element);
        error.attr('rel',fieldIndex);
        if(!$("span[rel="+fieldIndex+"]").size())
          element.parent().append("<span class=\"msg\" rel=\""+fieldIndex+"\">"+error.html()+"</span>");
        element.addClass("invalid");
      },
  
      success:function(label){
        $('*:input:eq('+label.attr('rel')+')').removeClass('invalid');
        $("span[rel="+label.attr('rel')+"]").remove();
      },
  
      rules: {
        nome: "required",
        email: { 
          required: true,
          email: true
        },
        profissao: "required",
        texto_artigo: "required",
        assinatura_perfil: "required"
      },
  
      messages: {
        nome: "Digite seu nome",
        email: { 
          required: "Digite seu e-mail",
          email: "E-mail inválido"
        },
        profissao: "Digite sua profissão",
        texto_artigo: "Digite seu Texto / Artigo",
        assinatura_perfil: "Digite sua Assinatura"
      }
  
    });

  if($("#formReporteDeErro").size())

    $("#formReporteDeErro").validate({

      errorPlacement: function(error, element) {
        var fieldIndex = $('*:input').index(element);
        error.attr('rel',fieldIndex);
        if(!$("span[rel="+fieldIndex+"]").size())
          element.parent().append("<span class=\"msg\" rel=\""+fieldIndex+"\">"+error.html()+"</span>");
        element.addClass("invalid");
      },
  
      success:function(label){
        $('*:input:eq('+label.attr('rel')+')').removeClass('invalid');
        $("span[rel="+label.attr('rel')+"]").remove();
      },
  
      rules: {
        nome: "required",
        email: { 
          required: true,
          email: true
        },
        erro_encontrado: "required"
      },
  
      messages: {
        nome: "Digite seu nome",
        email: { 
          required: "Digite seu e-mail",
          email: "E-mail inválido"
        },
        erro_encontrado: "Digite sua profissão"
      }
        
    });
    
  if($("#formComentarios").size())

 	  $("#formComentarios").validate({

      errorPlacement: function(error, element) {
        var fieldIndex = $('*:input').index(element);
        error.attr('rel',fieldIndex);
        if(!$("span[rel="+fieldIndex+"]").size())
          element.parent().append("<span class=\"msg WPeqX\" rel=\""+fieldIndex+"\">"+error.html()+"<\/span>");
        element.addClass("invalid");
		  },
      
      success:function(label){
        $("span[rel="+label.attr('rel')+"]").remove();
				$('*:input').eq(label.attr('rel')).removeClass('invalid');
			},
			
      rules: {
			 author: "required",
			 email: "required",
			 comment: "required"
			},
			
      messages: {
        author: "Digite seu nome",
			  email: "Digite seu e-mail",
				comment: "Digite sua mensagem"
      }
    
    });
});

/*extra pack*/
  $.validator.addMethod(
  "preventDefault",
  function(value, element){
    if(element.defaultValue!=value)
        return true;
    else
        return false;
  },
  "Valor Inválido"
);