var centerLatitude = 51.16342;
var centerLongitude = 10.44740;
var startZoom = 6;
var map;

var founderIcon = new GIcon();
founderIcon.image = "ggfounder.png";
founderIcon.iconSize = new GSize(32, 32);
founderIcon.shadowSize = new GSize(36, 32);
founderIcon.iconAnchor = new GPoint(9 ,34);
founderIcon.infoWindowAnchor = new GPoint(9, 2);

var ggIcon = new GIcon();
ggIcon.image = "gg.png";
ggIcon.iconSize = new GSize(32, 32);
ggIcon.shadowSize = new GSize(36, 32);
ggIcon.iconAnchor = new GPoint(9 ,34);
ggIcon.infoWindowAnchor = new GPoint(9, 2);

var standardIcon = new GIcon(G_DEFAULT_ICON);
standardIcon.iconSize = new GSize(20, 34);
standardIcon.shadowSize = new GSize(37, 34);
standardIcon.iconAnchor = new GPoint(9, 34);
standardIcon.infoWindowAnchor = new GPoint(9, 2);

function addMarker(latitude, longitude, description, type) {
 var type;
 switch (type) {
  case 'founder' :
   var markerIcon = new GIcon(founderIcon);
   break;
  case 'tot' :
   var markerIcon = new GIcon(totIcon);
   break;
  case 'gg' :
   var markerIcon = new GIcon(ggIcon);
   break;
  case false :
   var markerIcon = new GIcon(standardIcon);
   break;
 }
 var markeroptions = {
  icon : markerIcon
 };

 var marker = new GMarker(new GLatLng(latitude, longitude), markeroptions);

 GEvent.addListener(marker, 'click', function() {
  marker.openInfoWindowHtml(description);
 });

 map.addOverlay(marker);
}

function init() {
 if (GBrowserIsCompatible()) {
  map = new GMap2(document.getElementById("map"));
  map.addMapType(G_PHYSICAL_MAP);
  map.addControl(new GLargeMapControl());
  map.addControl(new GMenuMapTypeControl());
  map.setCenter(new GLatLng(centerLatitude, centerLongitude), startZoom);

  for (id in markers) {
   if (markers[id].type) {
    var type = markers[id].type;
   } else {
    var type = false;
   }
   addMarker(markers[id].latitude, markers[id].longitude,
     markers[id].name, type);
  }
 }
}

window.onload = init;
window.onunload = GUnload;