var map;
var localSearch = new GlocalSearch();

function usePointFromPostcode(postcode, name, address, image, callbackFunction) {
	localSearch.setSearchCompleteCallback(null, 
		function() {
			if (localSearch.results[0]){		
				var resultLat = localSearch.results[0].lat;
				var resultLng = localSearch.results[0].lng;
				var point = new GLatLng(resultLat,resultLng);
				callbackFunction(point, name, address, image);
			}
		});	
		
	localSearch.execute(postcode + ", UK");
}

function mapPoint(point, name, address, image){
	map.setCenter(point, 13);
	
	var marker = new GMarker(point);
	GEvent.addListener(marker, "click", function() {
		marker.openInfoWindowHtml('<div><table><tr><td><img src="'+image+'"></td><td><b>'+name+'</b><br/>'+address+'</td></tr></table></div>');
	});
	map.addOverlay(marker);
}

function mapLoad(postcode, name, address, image) {
	if (GBrowserIsCompatible()) {
		map = new GMap2(document.getElementById("map"));
		map.addControl(new GLargeMapControl());
		map.addControl(new GMapTypeControl());
		map.setCenter(new GLatLng(54.622978,-2.592773), 5)
		
		if(postcode != ''){
			usePointFromPostcode(postcode, name, address, image, mapPoint);
		}
	}
}
