//<script type="text/javascript">
//<![CDATA[

var map;
var geocoder;

function load() {
  if (GBrowserIsCompatible()) {
	map = new GMap2(document.getElementById("map"));

	map.addControl(new GSmallMapControl());		// pan/zoom the map
	map.addControl(new GMapTypeControl());		// switch between Map and Satellite modes
	map.addControl(new GOverviewMapControl());	// small map, right bottom corner

	map.setCenter(new GLatLng(47.368594,11.582715), 6, G_SATELLITE_MAP); // other settings: G_NORMAL_MAP; G_HYBRID_MAP - once selected can't change it anymore
	geocoder = new GClientGeocoder();
  }
}

// addAddressToMap() is called when the geocoder returns an
// answer.  It adds a marker to the map with an open info window
// showing the nicely formatted version of the address and the country code.
function addAddressToMap(response) {
  map.clearOverlays();
  if (!response || response.Status.code != 200) {
	alert("Sorry, we were unable to geocode that address");
  } else {
	place = response.Placemark[0];
	point = new GLatLng(place.Point.coordinates[1],
						place.Point.coordinates[0]);
	map.setCenter(new GLatLng(place.Point.coordinates[1],
							  place.Point.coordinates[0]));
	marker = new GMarker(point);
	map.addOverlay(marker);
	marker.openInfoWindowHtml(place.address + '<br>' +
	  '<b>Country code:</b> ' + place.AddressDetails.Country.CountryNameCode);

  } 
  window.setTimeout(function() {
		map.setZoom(16);
  }, 3000); // after marker is set, wait and then zoom into map from 6 to 16
}
// findLocation() is used to enter the sample addresses into the form.
function findLocation(address) {
  document.forms['gmap'].q.value = address;
  showLocation();
}
// showLocation() is called when you click on the Search button
// in the form.  It geocodes the address entered into the form
// and adds a marker to the map at that location.
function showLocation() {
  var address = document.forms['gmap'].q.value; // forms value must match with the void()
  geocoder.getLocations(address, addAddressToMap);
}


//]]>
//</script>
