// requires jquery.form plug-in

jQuery(document).ready(function() {
	
    // select representantes por local
    $("#ver_representante_estado").change(function() {
        $.get("/representantes/local/" + $(this).val(), function(data) {
            $('.representantes_ajax_result').html(data);
        });
    });

    // inscrever em newsletter
    $('#newsletter_form').submit(function() {
        var email = $("#news_email").val();
        var nome = $("#news_nome").val();
        if (nome == "" || email == "" || nome == "NOME" || email == "E-MAIL" || !checkMail(email)) {
            alert("Dados devem ser preenchidos corretamente.");
        } else {
            $.get("/newsletter/add",
                { nome: nome, email: email },
                function(data) {
                    alert(data);
                    $("#news_nome").val("NOME");
                    $("#news_email").val("E-MAIL");
                });
        }
        return false;
    });

    // Enviar Currículo
    $('#curriculo_form').ajaxForm({
        beforeSubmit: function() {
            if (($('#trabalhe_mensagem').val() == "") || ($('#trabalhe_mensagem').val() == "Digite aqui uma breve apresentação e suas expectativas em relação ao cargo pretendido.")) {
                alert("Preencha a apresentação corretamente.");
                // fazer verificaçao de arquivo no client-side? (ends-with .doc, .dox, .pdf, .odf)
                return false;
            } else {
                $('#curriculo_form>fieldset>input').attr("disabled", true);
                $('#curriculo_form>fieldset>textarea').attr("disabled", true);
                $('#trabalhe_submit').val("ENVIANDO...");
            }
        },
        success: function(e) {
            $('#trabalhe_submit').val("ENVIAR");
            if (e == "200") {
                $('#trabalhe_upload').val("");
                alert("Currículo enviado. Obrigado!");
            } else if (e == "400") {
                alert("Erro no envio, tente mais tarde.");
            } else if (e == "403") {
                alert("Tipo de arquivo não aceito."); // TODO: negar por size?
            }
            $('#curriculo_form>fieldset>input').attr("disabled", false);
            $('#curriculo_form>fieldset>textarea').attr("disabled", false);
            $(".swap_target").slideUp()
        }
    });

    // fale conosco - enviar mensagem
    $('#mensagem_form').submit(function() {
        var input_label = $("#mensagem_form>input").val();
        var nome = $("#fale_com_nome").val();
        var email = $("#fale_com_email").val();
        var assunto = $("#fale_com_assunto").val();
        var mensagem = $("#fale_com_mensagem").val();
        if (nome == "" || email == "" || assunto == "" || mensagem == "" || nome == "NOME" || email == "E-MAIL" || assunto == "ASSUNTO" || mensagem == "MENSAGEM" || !checkMail(email)) {
            alert("Dados devem ser preenchidos corretamente.");
        } else {
            $("#mensagem_form>input").val("ENVIANDO...");
            $("#mensagem_form>input").attr("disabled", true);
            $.get("/mensagem/enviar",
                { nome: nome, email: email, assunto: assunto, mensagem: mensagem  },
                function(data) {
                    alert(data);
                    $("#mensagem_form>input").attr("disabled", false);
                    $("#fale_com_nome").val("NOME");
                    $("#fale_com_email").val("E-MAIL");
                    $("#fale_com_assunto").val("ASSUNTO");
                    $("#fale_com_mensagem").val("MENSAGEM");
                    $("#mensagem_form>input").val(input_label);
                });
        }
        return false;
    });

    // cadastro de representante
    $('#representante_form').submit(function() {
        var input_label = $("#representante_form>input").val();
        var nome = $("#cadastro_representante_nome").val();
        var email = $("#cadastro_representante_email").val();
        var telefone = $("#cadastro_representante_telefone").val();
        var mensagem = $("#cadastro_representante_mensagem").val();
        if (nome == "" || email == "" || mensagem == "" || telefone == "" || nome == "NOME" || telefone == "TELEFONE" || email == "E-MAIL" || mensagem == "MENSAGEM" || !checkMail(email)) {
            alert("Dados devem ser preenchidos corretamente.");
        } else {
            $("#representante_form>input").val("ENVIANDO...");
            $("#representante_form>input").attr("disabled", true);
            $.get("/representante/solicitar",
                { nome: nome, email: email, telefone: telefone, mensagem: mensagem },
                function(data) {
                    alert(data);
                    $("#cadastro_representante_nome").val("NOME");
                    $("#cadastro_representante_email").val("E-MAIL");
                    $("#cadastro_representante_telefone").val("TELEFONE");
                    $("#cadastro_representante_mensagem").text("MENSAGEM");
                    accordion_select($("#representante_form").parent().parent(), jQuery('html'), true);
                    $("#representante_form>input").val(input_label);
                    $("#representante_form>input").attr("disabled", false);
                });
        }
        return false;
    });

    // cadastro de franqueado
    $('#franqueado_form').submit(function() {
        var input_label = $("#franqueado_form>input").val();
        var nome = $("#cadastro_franqueado_nome").val();
        var email = $("#cadastro_franqueado_email").val();
        var telefone = $("#cadastro_franqueado_telefone").val();
        var mensagem = $("#cadastro_franqueado_mensagem").val();
        if (nome == "" || email == "" || mensagem == "" || telefone == "" || nome == "NOME" || telefone == "TELEFONE" || email == "E-MAIL" || mensagem == "MENSAGEM" || !checkMail(email)) {
            alert("Dados devem ser preenchidos corretamente.");
        } else {
            $("#franqueado_form>input").val("ENVIANDO...");
            $("#franqueado_form>input").attr("disabled", true);
            $.get("/franqueado/solicitar",
                { nome: nome, email: email, telefone: telefone, mensagem: mensagem  },
                function(data) {
                    alert(data);
                    $("#cadastro_franqueado_nome").val("NOME");
                    $("#cadastro_franqueado_email").val("E-MAIL");
                    $("#cadastro_franqueado_telefone").val("TELEFONE");
                    $("#cadastro_franqueado_mensagem").val("MENSAGEM");
                    accordion_select($("#franqueado_form").parent().parent(), jQuery('html'), true);
                    $("#franqueado_form>input").val(input_label);
                    $("#franqueado_form>input").attr("disabled", false);
                });
        }
        return false;
    });

});

function checkMail(mail) {
    var er = new RegExp(/^[A-Za-z0-9_\-\.]+@[A-Za-z0-9_\-\.]{2,}\.[A-Za-z0-9]{2,}(\.[A-Za-z0-9])?/);
    if (typeof(mail) == "string") {
        if (er.test(mail)) {
            return true;
        }
    } else if (typeof(mail) == "object") {
        if (er.test(mail.value)) {
            return true;
        }
    } else {
        return false;
    }
}
