$(document).ready(function() {
    init_contact_form();
});

function init_contact_form(){
    $('#contact_form').submit(function(){

        var submit_button = $('#contact_form input[type="submit"]')
        submit_button.attr("disabled","disabled");
        submit_button.val("Odesílá se...");

        if(check_required_fields()==true){
            
            // Ověření v pořádku
            $.ajax({
            type: "POST",
            url: baseUrl + "ajax/send_email",
            data:
            "name="+$('#contact_form input[name="name"]').val()
            +"&"+
            "email="+$('#contact_form input[name="email"]').val()
            +"&"+
            "phone="+$('#contact_form input[name="phone"]').val()
            +"&"+
            "sex="+$('#contact_form input[name="sex"]').val()
            +"&"+
            "message="+$('#contact_form textarea[name="message"]').val(),

            success: function (result) {
                        
                        if(result==1){
                                $('#contact_form .error_message').text("Zpráva byla odeslána, děkujeme.");
                                $('#contact_form input, #contact_form textarea').attr("disabled","disabled");
                                submit_button.val("Odesláno!");
                         }
                         else{
                                $('#contact_form .error_message').html('<span class="red">Někde nastal problém, vyplňte správně požadovaná pole a zkuste to znovu.</span>');
                                submit_button.attr("disabled","");
                                submit_button.val("Odeslat");
                        }
                    },
                    error: function(){
                        alert("Při odesílání emailu nastala chyba ze strany serveru, kontaktuje, prosím, správce webu.");
                        submit_button.attr("disabled","");
                    }
            });
        }else{
                submit_button.attr("disabled","");
                submit_button.val("Odeslat");
        }
        return false;
    });

    $('#contact_form input[type="text"], textarea').focus(function(){
        $(this).css("background-color","");
    });

    $('#contact_form input[name="email"]').focus(function(){
         $('#contact_form .email_not_valid_message').text("");
    });
}
function check_required_fields(){

    //Ověření vyplnění všech požadovaných polí

    var error_not_filled = false;

    $('#contact_form .required').each(function(){
        if(!jQuery.trim($(this).val())){
            if($(this).attr("name") != "sex"){
                $(this).css("background-color","#FF9BA0");
                error_not_filled = true;
            }
        }
    });

    if(error_not_filled){
        $('#contact_form .error_message').html('<span class="red">Vyplňte, prosím, všechna požadovaná pole (vyznačená červeně).</span>');

        return false;
    }
    else {
        $('#contact_form .error_message').text("");
    }


    // Ověření emailu

    var filled_email = jQuery.trim($('#contact_form input[name="email"]').val());
    var email_pattern  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;

    if (!filled_email.match(email_pattern)) {
        $('#contact_form .email_not_valid_message').text("Zadejte správnou emailovou adresu.");

        return false;
    }
    
    return true;
}
