/**
 * mascara_telefone
 *
 * Formata o telefone
 *
 * @param  event
 * @param  object
 * @return boolean
 */
function mascara_telefone(event, objeto) {

    var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;

    if (keyCode >= 48 && keyCode <= 57) {
        with(objeto) {
            if (value.length == 0)
                value = value + "(";
            else if (value.length == 3)
                value = value + ")";
            else if (value.length == 8)
                value = value + "-";
        }
    } else if((keyCode == 8) || (keyCode == 13) || (keyCode == 9)){
        return true;
    } else {
        keyCode=0;
        return false;
    }
}

/**
 * envia_formulario
 *
 * Envia o formulário
 *
 * @param  object
 * @return boolean
 */
function envia_formulario(objForm){

    //Seta as propriedades ajax do "preload"
    $("*").ajaxStart(function(){
        $(this).css("cursor", "wait");
    });
    $("*").ajaxStop(function(){
        $(this).css("cursor", "auto");
    });

    //Envia o formulário via ajax
    $.post(objForm.action, $(objForm).serialize(),
        function(htmlReturn) {
            //Verifica se o retorno foi ok
            if (htmlReturn == "ok") {
                alert("E-mail enviado com sucesso!\nAgradecemos o contato.");
                $(":input:not(:submit)", objForm).val("");
            }
            else
                alert("Ocorreu um erro ao enviar o formulário: "+htmlReturn);
        });

    return false;

}
$(document).ready(function(){
	$("#contato").validate({
	    submitHandler: function(form) {
            envia_formulario(form);
        },
		messages: {
				nome: {
					required: "O campo Nome é obrigatório."
				},
				email: {
					required: "O campo E-mail é obrigatório.",
					email: "E-mail inválido."
				},
				mensagem : {
					required: "O campo Mensagem é obrigatório."
				}
		}
	});
});