function onLoadGooglemap(widget)
{
	var map = widget.gmap;
	
	map.setMapType(G_PHYSICAL_MAP);
	map.addMapType(G_PHYSICAL_MAP);
	map.setUIToDefault();
}

var firstMarker = '';
var map = '';

function pointKeyPress(e, inp, noAdr, locale, lang)
{
	if ((e.keyCode && e.keyCode==13) || 
		(e.which && e.which==13))
	{
		createPoint(inp, noAdr, locale, lang);
	}
	return true;
}

function onLoadLocationMap(widget)
{
	map = widget.gmap;
	map.setUIToDefault();
	var marker = widget.item.markers[0];
	firstMarker = marker.gmarker;

	GEvent.addListener(map, "infowindowopen", function()
	{
		var infoWindow = map.getInfoWindow();
		var tmppoint = map.fromLatLngToContainerPixel(infoWindow.getPoint());
		tmppoint.y -= 90;
		map.panTo(map.fromContainerPixelToLatLng(tmppoint));
	});

	if (firstMarker)
	{
		map.setCenter(marker.gmarker.getLatLng(), 10);

		var infoWindow = document.createElement("div");
		marker.titleNode = document.createElement("span");
		marker.titleNode.style.fontWeight = "bold"; 
		marker.titleNode.appendChild(document.createTextNode(marker.title));
		infoWindow.appendChild(marker.titleNode);
		
		marker.contentNode = document.createElement("div");
		marker.contentNode.style.marginTop = "10px";
		marker.contentNode.innerHTML = marker.content;
		infoWindow.appendChild(marker.contentNode);

		map.openInfoWindow(map.getCenter(), infoWindow);
	}
}

var marker = '';
var directions = 'init';
function createPoint(inp, noAdr, locale, lang)
{
	map.removeOverlay(marker);
	
	var x = document.getElementById(inp).value;
	var str = x.replace(/ /g,"+");
	var geocoder = new GClientGeocoder();

	geocoder.getLatLng(str, function(point) {
		if (!point)
			{ window.alert(noAdr); }
		else
		{
			firstMarker.hide();
			
		    var icon = new GIcon();
		    icon.image = "images/layout/marker.png";
		    icon.iconSize = new GSize(20, 40);
		    icon.iconAnchor = new GPoint(10, 40);
		    icon.infoWindowAnchor = new GPoint(10, 40);
			
			marker = new GMarker(point,
			{
				title: x,
				icon: icon,
				clickable: false,
				draggable: false,
				hide: true
			});
			map.addOverlay(marker);

			directionsPanel = document.getElementById("routeDiv");
			if (directions == 'init')
				directions = new GDirections(map, directionsPanel);
			
			var firstLocation = new GLatLng();
			firstLocation = firstMarker.getLatLng();
				
  			directions.load("from: "+point.lat()+","+point.lng()+" to: "+firstLocation.lat()+","+firstLocation.lng(),
  				{
					"locale": locale
				}
			);
			document.getElementById('printP').href = "http://maps.google.com/maps?f=d&hl=" + lang + "&geocode=" + 
													"&saddr=" + str +
													"&daddr=Stationsweg+65+Venray&ie=UTF8&z=13&pw=2";
			if (document.getElementById("shopDiv") != null)
				document.getElementById("shopDiv").style.display = "none";
			
			if (document.getElementById('closeRoute') != null)
				document.getElementById('closeRoute').style.display = "block";
			
			document.getElementById('printP').style.display = "block";
			document.getElementById("routeDiv").style.display = "block";
		}
	});
}

function closeRoute()
{
	firstMarker.show();
	directions.clear();
	directions = 'init';
	map.setCenter(marker.getPoint(), 10);
	
	document.getElementById("shopDiv").style.display = "block";
	document.getElementById('printP').style.display = "none";
	document.getElementById('closeRoute').style.display = "none";
	document.getElementById("routeDiv").style.display = "none";
	return false;
}
