    var map = null;
    var geocoder = null;
    var position = null;

    function load()
    {
      return load('map');
    }

    function load(map_id, map_show)
    {
      if (GBrowserIsCompatible()) {
        map_object = document.getElementById(map_id);

        if (typeof(map_show) == 'boolean')
        {
          map_object.style.display = 'block';
        }

        map = new GMap2(map_object);

        geocoder = new GClientGeocoder();

        var lat = document.getElementById('lat');
	var lng = document.getElementById('lng');
	
	if (lat && lng && (lat.value.length > 0) && (lng.value.length > 0)) {
	  var center = new GLatLng(lat.value, lng.value);
	}
	else {
          var center = new GLatLng(50.926383,11.585212);
	}

        // set current map view
        map.setCenter(center, 13);  // position und zoom

        // add controls to map
        //map.addControl(new GLargeMapControl());
        map.addControl(new GSmallMapControl());
        //map.addControl(new GMapTypeControl());
        //map.addControl(new GScaleControl(300));

/*
        //overview
        var ovSize = new GSize(150, 100)
        var ovMap = new GOverviewMapControl(ovSize);
        map.addControl(ovMap);
        var mini = ovMap.getOverviewMap();
        ovMap.hide();
*/

        // hide controls when mouseout, show on mouseover
        map.hideControls();
        GEvent.addListener(map, "mouseover", function(){
          map.showControls();
        });
        GEvent.addListener(map, "mouseout", function(){
          map.hideControls(); 
        });

        // tiny marker icons
        var hot = "http://labs.google.com/ridefinder/images/mm_20_red.png";
        var cold = "http://labs.google.com/ridefinder/images/mm_20_blue.png";
        hotIcon = new GIcon();
        hotIcon.image = hot;
        hotIcon.shadow = "http://labs.google.com/ridefinder/images/mm_20_shadow.png";
        hotIcon.iconSize = new GSize(12, 20);
        hotIcon.shadowSize = new GSize(22, 20);
        hotIcon.iconAnchor = new GPoint(6, 20);
        hotIcon.infoWindowAnchor = new GPoint(5, 1);
											

        position = new GMarker(center, {title:"Ihre aktuelle Position", draggable:false, icon:hotIcon});
        map.addOverlay(position);
        GEvent.addListener(position, "dragstart", function() {
          map.closeInfoWindow();
        });
/*
        GEvent.addListener(position, "dragend", function() {
          showPositionInfo2("");
        });
*/
      }
    }

