$(document).ready(function() {
    var mapDomId = 'mapCanvas';    // Div that holds the JavaScript Google Map
    if ($('#' + mapDomId).length > 0) {
        setupMapCanvas(mapDomId);
        loadMap(mapDomId);
    }
});


// Set CSS display here so there's not a gaping hole on the page if the
// user doesn't have JavaScript enabled
function setupMapCanvas(mapDomId) {
    $('#' + mapDomId).css({
        display: 'block'
    });
}

function loadMap(mapDomId) {
    // point is a global object we created in a <script> tag. It has information
    // passed in by the Rails controller.
    var myLatlng = new google.maps.LatLng(point.lat, point.lng);
    var myOptions = {
        zoom: 10,
        center: myLatlng,
        mapTypeControl: false,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    };

    var map = new google.maps.Map(document.getElementById(mapDomId), myOptions);
    
    var marker = new google.maps.Marker({
        position: myLatlng, 
        map: map, 
        title: point.info
    });
}

// CSRF protection. See http://groups.google.com/group/rubyonrails-security/browse_thread/thread/2d95a3cc23e03665
$(document).ajaxSend(function(e, xhr, options) {
  var token = $("meta[name='csrf-token']").attr("content");
  xhr.setRequestHeader("X-CSRF-Token", token);
});
