var map = null;
var geocoder = null;
var gdir;
var addressMarker;

function load() {
	if (GBrowserIsCompatible()) {
		map = new GMap2(document.getElementById("map_canvas"));
		map.setCenter(new GLatLng(52.507396, 4.692514), 10);
		map.addControl(new GSmallMapControl());

		map.addControl(new GMapTypeControl());
		var baseIcon = new GIcon();
		baseIcon.iconSize = new GSize(30, 42);       
		baseIcon.iconAnchor = new GPoint(8, 39);

		function createMarker(point) {
			var letteredIcon = new GIcon(baseIcon);
			letteredIcon.image = "http://www.skicentrumheemskerk.nl/assets/templates/skicentrum/map_pin.png";

			markerOptions = { icon:letteredIcon };
			var marker = new GMarker(point, markerOptions);

			return marker;
		}

		var latlng = new GLatLng(52.507396, 4.692514);
		map.addOverlay(createMarker(latlng));

		gdir = new GDirections(map, document.getElementById("directions"));
		GEvent.addListener(gdir, "error", handleErrors);

		geocoder = new GClientGeocoder();
	}
}

function setDirections(fromAddress, toAddress, locale) {
	gdir.load("from: " + fromAddress + " to: " + toAddress, { "locale": locale });
}

function handleErrors(){

	if (gdir.getStatus().code == G_GEO_UNKNOWN_ADDRESS)
		alert("Dit adres wordt helaas niet gevonden. Probeer het opnieuw: \n Straatnaam, woonplaats");
	else if (gdir.getStatus().code == G_GEO_SERVER_ERROR)
		alert("Helaas is er een probleem momenteel. Komt u z.s.m. terug. Excuus voor het ongemak.");
	else if (gdir.getStatus().code == G_GEO_MISSING_QUERY)
		alert("Er is een fout in de query. Excuus voor het ongemak.");
	else if (gdir.getStatus().code == G_GEO_BAD_KEY)
		alert("De gegeven sleutel is onebekend.");
	else if (gdir.getStatus().code == G_GEO_BAD_REQUEST)
		alert("Er is een error. Excuus voor het ongemak.");
	else alert("Een fout is voorgekomen. Excuus voor het ongemak");
   
}
