$(document).ready(function() {

    $('#sampleFormSubmitLink').click(function() {
        $('#sampleForm').submit();
        $(this).disableButton();
        $(this).addClass('faded');
    });

    $('#sampleForm').find('input').each(function() {
        $(this).bind('blur', function() {
            $('#sampleForm').find('.button').enableButton();
            $('#sampleForm').find('.button').removeClass('faded');
        });
    });

    var validator = $("#sampleForm").validate({
        rules: {
            firstName: "required",
            lastName: "required",
            company: "required",
            phone: {
                required : {
                    depends : function() {
                        return ($('#phone').val() == '' && $('#email').val() == '');
                    }
                },
                phone : true
            },
            address: "required",
            city: "required",
            state: {
                required: true,
                usStateCode: true
            },
            zipcode: {
                required: true,
                zip: true
            },
            email: {
                required : {
                    depends : function() {
                        return ($('#phone').val() != '' && $('#email').val() != '');
                    }
                },
                email: true
            }
        },

        errorClass: "missing",

        // Customizes where the error messages are put.
        // With an empty function, error messages are not displayed.
        errorPlacement: function() {}
    });

});

