// Flicker-free auto-hide:
document.write('<style type="text/css">#quiz fieldset{display:none}</style>');

$(document).ready(function(){

    if (!$("#quiz").hasClass('results')) {

        // Initialize: 
        //$("#quiz fieldset").hide();
        $("#quiz fieldset#page_1").fadeIn(200);
        $("#quiz .buttons").prepend('<input type="button" id="prev" value="Previous" /><input type="button" id="next" value="Next" />');
        updateButtons();

        // Next Button Behavior:
        $("#quiz #next").bind("click", function() {
            var current = $("#quiz fieldset:visible");
            if ($(current).next("fieldset").length > 0) {
                $(current).fadeOut(200, function() { goToTop(); });
                $(current).next("fieldset").fadeIn(400, function() { updateButtons(); });
            }
        });
    
        // Prev Button Behavior:
        $("#quiz #prev").bind("click", function() {
            var current = $("#quiz fieldset:visible");
            if ($(current).prev("fieldset").length > 0) {
                $(current).fadeOut(200, function() { goToTop(); });
                $(current).prev("fieldset").fadeIn(400, function() { updateButtons(); });
            }
        });
    
        // Tabs Behavior:
        $("#quiz ul#pages a").bind("click", function() {
            $("#quiz fieldset").fadeOut(200);
            $("#quiz fieldset" + $(this).attr("href")).fadeIn(400, function() { updateButtons(); });
            return false;
        });
    
        // Submit Behavior:
        $("#quiz #submit").bind("click", function() {
            return(confirm("Are you ready to submit your answers?"));
        });

    } else {
        
        $("#quiz #pages a").bind("click", function() {
            return false;
        });
    }

});


/* ============================================================================
   HELPERS: */

function updateButtons() {

    if ($("#quiz fieldset:visible").next("fieldset").length > 0) {
        $("#quiz #next").removeAttr("disabled");
        $("#quiz #next").show();
        $("#quiz #submit").hide();
    } else {
        $("#quiz #next").attr("disabled", "disabled");
        $("#quiz #next").hide();
        $("#quiz #submit").show();
    }

    if ($("#quiz fieldset:visible").prev("fieldset").length > 0) {
        $("#quiz #prev").removeAttr("disabled");
    } else {
        $("#quiz #prev").attr("disabled", "disabled");
    }

    $("#quiz ul#pages a").removeClass("current");
    $("#quiz ul#pages li#linkto_" + $("#quiz fieldset:visible").attr("id") + " a").addClass("current");

}

function goToTop() {
    window.scrollTo(0, $("#quiz ul#pages").offset().top - 20);
}