Event.observe(window, "load", function(){
  var bounds = new GLatLngBounds();
  if (GBrowserIsCompatible()) {
    var map = new GMap2(document.getElementById("map_canvas"));
    map.addControl(new GLargeMapControl());

    // Alle Objekte durchlaufen und dem Karten-Typ entsprechend
    // die Marker setzen.
    for (var i=0; i < events.length; i++) {
      var evt = events[i];
      if (evt["store_event"]) { evt = evt["store_event"]};
      if (evt["scout_event"]) { evt = evt["scout_event"]};
      
      if (evt.lat && evt.lng) {
        latlng = new GLatLng(evt.lat, evt.lng);
        bounds.extend(latlng); // Sichtbereich der Karte um latlng ausweiten
        map.addOverlay(create_marker(latlng,evt)); // Marker generieren und platzieren
      };
    }
    map.setCenter(bounds.getCenter(),map.getBoundsZoomLevel(bounds)); // Karte auf Sichtbereich einstellen
  } else {
    alert("Sorry, your browser is not compatible with google maps.");
  }

  function create_marker(latlng, obj) {
    var marker = new GMarker(latlng);

    var html = "<p>"+obj.headline+"</p><p>"+obj.street+"<br/>"+obj.zipcode+" "+obj.city+"</p><a href=\"/tee-veranstaltungen/"+obj.id+"\">Details &raquo;</a>";

    GEvent.addListener(marker,"click",function(){
      marker.openInfoWindow(html);
    });
    return marker;
  }
});