var map;
     
function init(){
	map = new OpenLayers.Map('map',
		{ maxExtent: new OpenLayers.Bounds(-20037508.34,-20037508.34,20037508.34,20037508.34),
          numZoomLevels: 19,
          maxResolution: 156543.0399,
          units: 'm',
          projection: new OpenLayers.Projection("EPSG:900913"),
          displayProjection: new OpenLayers.Projection("EPSG:4326")
        });
     
        var layerMapnik = new OpenLayers.Layer.OSM.Mapnik("Mapnik (updated weekly)"); 
		var layerTilesAtHome = new OpenLayers.Layer.OSM.Osmarender("Osmarender");
		var layerCycleMap = new OpenLayers.Layer.OSM.CycleMap("CycleMap");

        map.addLayers([layerMapnik,layerTilesAtHome,layerCycleMap]);
     
        var pois = new OpenLayers.Layer.Text( "interessante Orte",
			{ location:"./karte/poi.txt",
              projection: map.displayProjection
            });
     
        map.addControl(new OpenLayers.Control.LayerSwitcher());
		map.addControl(new OpenLayers.Control.MousePosition());
		
     
		lat = 51.33629;
		lon = 6.83251;
		zoom = 14;
		mark = false;
		
		checkForPermalink();
		
        var lonLat = new OpenLayers.LonLat(lon, lat).transform(map.displayProjection,  map.projection);
		map.setCenter (lonLat, zoom);
		
		if (mark == true) {
			sprungziel = new OpenLayers.Layer.Markers("Ziel");
			map.addLayer(sprungziel);
			size = new OpenLayers.Size(32,32);
			offset = new OpenLayers.Pixel(-(size.w/2), -(size.h/2));
			icon = new OpenLayers.Icon('./karte/ziel.png',size,offset);
			marker = new OpenLayers.Marker(lonLat,icon);
			sprungziel.addMarker(marker);
		} else {
			map.addControl(new OpenLayers.Control.Permalink('link'));
			map.addLayer(pois);
		}

}

function goto(lat, lon, zoom) {
	var lonLat = new OpenLayers.LonLat(lon, lat).transform(new OpenLayers.Projection("EPSG:4326"), new OpenLayers.Projection("EPSG:900913"));
	map.setCenter (lonLat, zoom);
}

