$(document).ready( function() { 
    numberOfRiders();
    $("#expand").slideUp("fast");
});
// DOM & Setup
$.ajaxSetup({ url: 'http://iheartbikelanes.com/iheartbikelanes.php', type: 'post'});
var MINIMUM_NUMBER_OF_RIDERS = "1";
var number = 0;  
$("#counter").hover( function() {
    $("#expand").slideDown("fast");
}, function() {
    var isActive = false;
    $("#expand input:text").each( function() {
        if ( $(this).val() !== $(this).attr("defaultValue") ) {
            isActive = true;
        }
    });
    if (isActive === false) {
        $("#expand").slideUp("fast");    
    }
});
$("input:text").click( function() {
    if ( $(this).val() === $(this).attr("defaultValue") ) {
        $(this).val("");
    }        
}).blur( function() {
    if ( $(this).val() == "" ) {
        $(this).val($(this).attr("defaultValue"));
    }         
});
$("form").append("<input type='hidden' name='ajax' value='yes' />");

// AJAX
$("#counter form").bind("submit", function(e) {
    e.preventDefault();
    var query = $(this).serialize(); 
    $.ajax({ data: query, 
         success: function(text) {
            $("#message").text(text);
            numberOfRiders();
            return true; 
        }, error: function(text) {
            $("#message").text("didn't work; try again!");
    }});        
});
$("#newsletter form").bind("submit", function(e) {
    e.preventDefault();
    var query = $(this).serialize(); 
    $.ajax({ data: query, 
         success: function(text) {
            $("#message").text(text);
            return true;    
        }, error: function(text) {
            $("#message").html("didn't work; <a href='mailto:us@iheartbikelanes.com'>email us</a>!");
            return false;
    }});    
});
function numberOfRiders() {
    var query  = "&mode=numberOfRiders";
    $.ajax({ data: query, 
         success: function(text) {
            if (text != "failure") {
                oldNumber = number; 
                $("#count .replace").text(text);
                number = text;
                if ( number > oldNumber ) {
                    $("#expand").slideUp();
                    return true;     
                } else {
                    return false;
                }    
            } else {
                $("#count .replace").text(MINIMUM_NUMBER_OF_RIDERS);     
            }  
        }, error: function(text) {
            $("#count .replace").text(MINIMUM_NUMBER_OF_RIDERS); 
    }});   
}
