$(document).ready(function() {
    $(".daily-inspiration form").hide();
    $(".daily-inspiration a").show().click(function() {
        $(".daily-inspiration form input[name=email]").val("");
        $(this).fadeOut("fast");
        $(".daily-inspiration form").fadeIn("fast");
        return false;
    });
    $(".daily-inspiration form").validate({
        rules: {
            email: { email: true }
        },
        onfocusout: false,
        onkeyup: false,
        showErrors: function(errorMap, errorList) {
            if (errorList.length == 0) return;
            else {
                $(".daily-inspiration fieldset.sign-up").fadeOut("fast", function() {
                    $(".daily-inspiration fieldset.error-email").fadeIn("fast");
                    $(".daily-inspiration input.submit").unbind().val("Ok").click(function() {
                        $(".daily-inspiration fieldset.error-email").fadeOut("fast", function() {
                            $(".daily-inspiration form input.submit").val("Send");
                            $(".daily-inspiration fieldset.sign-up").fadeIn("fast", function() {
                                $(".daily-inspiration form input[name=email]").focus();
                                $(".daily-inspiration form input.submit").unbind();
                            });
                        });
                        return false;
                    });
                });
            }
	},
        submitHandler: function(form) {
            if ($(".daily-inspiration form input[name=email]").val().trim() == "") return false;
            $(form).ajaxSubmit({
                type: 'GET',
                url: '/daily-inspiration/process',
                error: function(XMLHttpRequest, textStatus, errorThrown) {
                  $(".daily-inspiration fieldset.sign-up").fadeOut("fast", function() {
                    $(".daily-inspiration fieldset.error p").text("An error occurred while submitting your request.").parent("fieldset").fadeIn("fast");
                    $(".daily-inspiration input.submit").val("Ok").unbind().click(function() {
                        $(".daily-inspiration fieldset.error").fadeOut("fast", function() {
                            $(".daily-inspiration input.submit").val("Send");
                            $(".daily-inspiration fieldset.sign-up").fadeIn("fast");
                        });
                        $(this).unbind();
                        return false;
                    });
                  });
                },
                success: function(data, textStatus) {
                    $(".daily-inspiration fieldset.sign-up").fadeOut("fast", function() {
                        $(".daily-inspiration input.submit").val("Ok").unbind().click(function() {
                            $(".daily-inspiration form").fadeOut("fast", function() {
                                $(".daily-inspiration a").fadeIn("fast", function() {
                                    $(".daily-inspiration input.submit").val("Send").unbind();
                                    $(".daily-inspiration fieldset.sign-up").show();
                                    $(".daily-inspiration fieldset.success").hide();
                                });
                            });
                        return false;
                        });
                        if ($("#opAdd:checked").length > 0) {
                            $(".daily-inspiration fieldset.success p").html("Thank you. You have been subscribed.");
                            _gaq.push(['_trackPageview', '/activities/daily-inspiration/subscription-confirmation.html']);
                        }
                        else if ($("#opRemove:checked").length > 0) $(".daily-inspiration fieldset.success p").html("Thank you. You have been unsubscribed.");
                        $(".daily-inspiration fieldset.success").fadeIn("fast");
                        $(this).unbind();
                        return false;
                    });
                },
                dataType: 'text'
            });
            return false;
        }
    });
});

