function initTourList(myUrl) { 
	Event.observe(window, 'load', function() { updateTourList(myUrl); } );
}

function updateTourList(myUrl) { 
	new Ajax.Updater('tourlist', myUrl + '?tx_hngpstouren_pi1[action]=updateTourList', { parameters:  $('tourForm').serialize(), evalScripts: true});
	new Ajax.Updater('tourlist', 'http://hamburg.adfc.de/'+myUrl + '?tx_hngpstouren_pi1[action]=updateTourList', { parameters:  $('tourForm').serialize(), evalScripts: true });

}

 
		var map;
		var geoXmls = new Array();
		var bounds;
		
		var todo = 18;

function createTourMarker(lat, lng, html, geoXml, detailLink) {
	var latlng = new GLatLng(lat, lng);
	var marker = new GMarker(latlng);
	GEvent.addListener(marker, "mouseover", function() {
		marker.openInfoWindowHtml(html);
		geoXml.show();
    }); 
    GEvent.addListener(marker, "mouseout", function() {
		marker.closeInfoWindow();
		geoXml.hide();
    }); 
    GEvent.addListener(marker, "click", function() {
		document.location = detailLink;
    });     
    
	return marker;
}



		
function addTour(lat, lng, geoXmlUrl, html, detailLink) {
	var geoXml = addGGeoXml(geoXmlUrl);
	
	var marker = createTourMarker(lat, lng, html, geoXml, detailLink);
	map.addOverlay(marker);
	
	return marker;
}
	
function addGGeoXml(myUrl) {
	geoXml = new GGeoXml(myUrl);
	geoXmls.push(geoXml);
	
	return geoXml
}

    
function addGeoXmlOverlays() {
	var loaded = true;
	geoXmls.each( function(item) {
		if (!item.hasLoaded()) {
			loaded = false;
		}
	});
	if (loaded) {
		geoXmls.each( function(item) {
			map.addOverlay(item);
			var b = item.getDefaultBounds();
			if (b != null) {
				bounds.extend(b.getSouthWest());
				bounds.extend(b.getNorthEast());  
			}
			
		});
		map.setCenter(bounds.getCenter());
		map.setZoom(Math.max(0,map.getBoundsZoomLevel(bounds)-1));
		
		window.setTimeout(hideAllGeoXmls, 1000);
		
	} else {
		window.setTimeout(addGeoXmlOverlays, 100);
	}
	

}
    
    function showGeoXml(geoXml) {
    		map.closeInfoWindow();
    		geoXmls.each( function(item) {
    			item.hide();
    		});
    		geoXml.show();
    }
    
    function hideAllGeoXmls() {
		//map.closeInfoWindow();
		geoXmls.each( function(item) {
			item.hide();
   		});
    }    
    

    
    
    function initialize() {
      if (GBrowserIsCompatible()) {
        map = new GMap2($("gpsTourenMap"));
        map.setCenter(new GLatLng(53.557686,9.990463), 8); 
        map.setMapType(G_PHYSICAL_MAP);
        map.addControl(new GLargeMapControl());
        bounds = new GLatLngBounds();
      }
    }
    
    Event.observe(window, 'load', initialize);
    
    




