var LAN_Maps = {
    _initialized:  false,
    baseIcon:  null,
    initialize:  function() {
        LAN_Maps._initialized = true;
    }
}
LAN_Maps.load = function () {
    if (GBrowserIsCompatible()) {
        var map = new GMap2(document.getElementById("map"));
        map.setCenter(new GLatLng(37.4419, -122.1419), 13);

        map.addControl(new GSmallMapControl());
        var baseIcon = new GIcon(G_DEFAULT_ICON);
        baseIcon.shadow = "http://www.google.com/mapfiles/shadow50.png";
        baseIcon.iconSize = new GSize(20, 34);
        baseIcon.shadowSize = new GSize(37, 34);
        baseIcon.iconAnchor = new GPoint(9, 34);
        baseIcon.infoWindowAnchor = new GPoint(9, 2);
        LAN_Maps.baseIcon = baseIcon;
        LAN_Maps.setMarkers(map);
    }
}

LAN_Maps.createMarker = function(point,index)
{
    var letter = String.fromCharCode("A".charCodeAt(0) + index);
    var letteredIcon = new GIcon(LAN_Maps.baseIcon);
    letteredIcon.image = "http://www.google.com/mapfiles/marker" + letter + ".png";

    markerOptions = { icon:letteredIcon };
    var marker = new GMarker(point, markerOptions);
    GEvent.addListener(marker, "click", function() 
    {
        marker.openInfoWindowHtml("Marker <b>" + letter + "</b>");
    });
    return marker;
}

LAN_Maps.setMarkers = function(map)
{
    var bounds = map.getBounds();
    var southWest = bounds.getSouthWest();
    var northEast = bounds.getNorthEast();
    var lngSpan = northEast.lng() - southWest.lng();
    var latSpan = northEast.lat() - southWest.lat();
    for (var i = 0; i < 10; i++) {
        var latlng = new GLatLng(southWest.lat() + latSpan * Math.random(),
        southWest.lng() + lngSpan * Math.random());
        map.addOverlay(LAN_Maps.createMarker(latlng, i));
    }
}
LAN_Maps.initialize();
