function feedback_form_show() {
  $("#feedback-link").hide();
  $("#feedback-form").show('slow');
}

function feedback_form_hide(speed) {
  $("#feedback-form").hide(speed);
  $("#feedback-link").show();
}

$(document).ready(function() {
    // Make flash messages fade out after a few seconds
    pause_fadeout($("#message"));

    // Hide the feedback from initially
    feedback_form_hide();

    // Show/hide the feedback box
    $("#feedback-link a").click(function() {
        feedback_form_show();
        return false;
      });
    
    $("#feedback-form a").click(function() {
        feedback_form_hide('slow');
        return false;
      });

    $("#feedback-form form").submit(function() {
        var feedback = $("#feedback-form textarea").val();

        $.ajax({
          url: '/feedback/ajax/',
          type: 'POST',
          data: {feedback: feedback},
          dataType: 'json',
          beforeSend: function()
          {
            $("#feedback-form input[type=submit]").attr("disabled", 1);
            $("#feedback-form .cancel").hide();
          },
          success: function(data)
          {
            // Clear and collapse form
            $("#feedback-form textarea").val('');
            feedback_form_hide('slow');
            
            // Display success message
            $("#feedback-success").show();
            pause_fadeout($("#feedback-success"));
          },
          complete: function()
          {
            // Return UI to normal
            $("#feedback-form input[type=submit]").attr("disabled", 0);
            $("#feedback-form .cancel").show();
          }
          });


        return false;
      });

  });
