var genauigkeit = new Array();
genauigkeit[0] = "sehr ungenau";
genauigkeit[1] = "ungenau";
genauigkeit[2] = "in dieser Region";
genauigkeit[3] = "in dieser Region";
genauigkeit[4] = "in dieser Stadt";
genauigkeit[5] = "in diesem PLZ-Bereich";
genauigkeit[6] = "in dieser Strasse";
genauigkeit[7] = "in dieser Strasse";
genauigkeit[8] = "genau";
genauigkeit[9] = "genau";
genauigkeit[10] = "stimmt";


var icon;

var singleMap = 1;

function loadKoordinaten() {
	genau  = accuracy;

	icon = new GIcon();
	icon.image = "/img/icon.png";
	icon.shadow = "/img/icon_schatten.png";
	icon.iconSize = new GSize(37, 39);
	icon.shadowSize = new GSize(37, 39);
	icon.iconAnchor = new GPoint(0, 40);
	icon.infoWindowAnchor = new GPoint(15, 5); 

	loadMap(lat,lng);
}


function loadAdresse(adresse) {
      geocoder = new GClientGeocoder();
	geocoder.getLocations(adresse, addAddressToMap);

}
function addAddressToMap(response) {
      if (!response || response.Status.code != 200) {
		alert(response.Status.code + " Adresse nicht gefunden ");
      } else {
	place = response.Placemark[0];
      lat = place.Point.coordinates[1];
      lng = place.Point.coordinates[0];
      genau  = place.AddressDetails.Accuracy;
	loadMap(lat,lng);

      }
}



function loadMap(xlat,xlng) {
	lat = xlat;
	lng = xlng;
      map = new GMap2(document.getElementById("map"));
      map.addControl(new GLargeMapControl());
      map.addControl(new GOverviewMapControl());
	map.addControl(new GMapTypeControl());
	
	
	
	// Zentrum auf Berlin setzen
	// map.setCenter(new GLatLng(52.478598, 13.51181), 5);
	// alte Punkte entfernen?
	map.clearOverlays();
	map.setCenter(new GLatLng(lat, lng), 12);
	map.savePosition();
	new GKeyboardHandler(map);
	GEvent.addListener(map,'moveend',makeMove);
	setPoint(lat, lng);
}



function setPoint(lat,lng) {
	anzeige = beschreibung;
	point = new GLatLng(lat, lng);
	marker = new GMarker(point, icon);
	map.addOverlay(marker);
	marker.openInfoWindowHtml(anzeige);
	GEvent.addListener(marker, "click", function() {
		marker.openInfoWindowHtml(anzeige);
	});

}


function Mzurueck(){
	map.returnToSavedPosition(); 

}

function Zuebersicht(){
	map.setZoom(6); 

}
function Zgross(){
	map.setCenter(new GLatLng(lat, lng), 15);
}

////////////////////////////////////

var moveX = 0;
var moveY = 0;
var moving = false;

// adjust scale to change the continious pan speed
var scale = 10;

function makeMove() {
	if (!moving) return;
	//GLog.write("pan "+moveX+","+moveY);
	map.panBy(new GSize(moveX*scale,moveY*scale));
}

function mouseOutHandler() {
	moving = false;
	//GLog.write("moving = False");
	map.panBy(new GSize(0,0));
}

function mouseOverHandler(x,y) {
	moveX = x;
	moveY = y;
	moving = true;
	//GLog.write("moving = True "+x+","+y);
	makeMove();
}
////////////////////////////////////



