jQuery(function($) {
    if ($(".frm-validate").length) {
        $("input[type!=submit], textarea").focus(function() {
            $(this).addClass("active");
        });
        $("input[type!=submit], textarea").blur(function() {
            if ($(this).hasClass("req-alert") && $(this).val())
                $(this).removeClass("req-alert");
            $(this).removeClass("active");
        });
        
        // prevent spam bots
        $('.frm-validate').append('<input type="hidden" name="hmn" value="true" />');
        
        // form sumbission
        $('.frm-validate').submit(function() {
            var valid = validate(this);
            if (valid) {
                $.ajax({
                    type: "post",
                    data: $(this).serialize()+'&submit=Enviar',
                    url: $(this).attr('action'),
                    complete: showResponse
                });
            }
            return false;
        });
        
        // append alert box
        $('body').append('<div id="alert">El mensaje ha sido enviado.</div>');
        $("#alert").click(function() {$(this).hide()});
    }
    
    function validate(form) {
        var valid = true;
        $('input.req, textarea.req, select.req', form).each(function(i, el) {
            if($(el).val() == '') {
                $(el).addClass("req-alert");
                valid = false;
            }
        })
        return valid;
    }
    function showResponse() {
        $("#alert").fadeIn();
        setTimeout(function() {
            $('#alert').fadeOut();
        },3500)
    } 
})
