$(function() {
    $('form[name=cad]').bind('submit', function() {
        var formulario = document.cad;
        if (validaForm(formulario)) {
            var parameters = $(this.elements).serialize();
            $.ajax({
                type: "post",
                data: parameters,
                url: "/cad_fast.php",
                success: function(retorno) {
                    formEnvia(retorno);
                },
                error: function() {
                    alert('Ocorreu um problema e não foi possível enviar os dados!\n\nTente novamente mais tarde!');
                }
            });
        }
        return false;
    });
});

function validaForm(formData) {
    var nome = formData.nome.value;
    var fone_ddd = formData.fone_ddd.value;
    var fone = formData.fone.value;
    var email = formData.email.value;
    var pais = formData.pais.value;
    var estado = formData.estado.value;
    var erro = "";
    if (nome == "" || nome == "Nome:" || nome == "Name:" || nome == "Nombre:" || nome == " ") {
        alert("Você deve preencher o campo nome.");
        document.cad.nome.focus();
        erro = "erro";
        return false;
    }
    if (fone_ddd == "" || fone_ddd == " " || fone_ddd == "DDD" || fone_ddd == "ddd") {
        alert("Você deve preencher o DDD do telefone residencial.");
        document.cad.fone_ddd.focus();
        erro = "erro";
        return false;
    }
    if (fone == "" || fone == "Telefone Residencial:" || fone == "Residential Numbers:" || fone == "Residential Number:" || fone == " ") {
        alert("Você deve preencher o campo telefone residencial.");
        document.cad.fone.focus();
        erro = "erro";
        return false;
    }
    if (email == "" || email == "Email:" || email == "E-mail:" || email == "E-Mail:" || email == " ") {
        alert("Você deve preencher o campo e-mail.");
        document.cad.email.focus();
        erro = "erro";
        return false;
    }
    if (pais == "" || pais == "Selecione o País:") {
        alert("Você deve selecionar o país.");
        document.cad.pais.focus();
        erro = "erro";
        return false;
    }
    if (estado == "" || estado == "Selecione o Estado:") {
        alert("Você deve selecionar o estado.");
        document.cad.estado.focus();
        erro = "erro";
        return false;
    }
    if (erro == "") {
        return true;
    } else {
        return false;
    }
}

function formEnvia(msg) {
    switch (msg) {
    case "reCAPTCHA":
        alert("O código de autenticação foi digitado incorretamente!\nTente novamente!");
        $("#aviso").hide();
        $("#form_cadastro").show();
        break;
    case "true":
        alert("Mensagem enviada com sucesso!\nLogo entraremos em contato.");
        document.cad.reset();
        $("#aviso").hide();
        $("#form_cadastro").show();
        break;
    case "false":
        alert("Problemas ao enviar sua mensagem!\nPor favor, tente novamente.");
        $("#aviso").hide();
        $("#form_cadastro").show();
        break;
    default:
        alert(msg);
        $("#aviso").hide();
        $("#form_cadastro").show();
        break;
    }
}
