var map;
var localSearch = new GlocalSearch();

var icon = new GIcon();
icon.image = "http://www.baxtertodd.co.uk/images/icon.png";
icon.shadow = "http://www.baxtertodd.co.uk/images/shadow.png";
icon.iconSize = new GSize(50, 43);
icon.shadowSize = new GSize(50, 43);
icon.iconAnchor = new GPoint(25, 43);
icon.infoWindowAnchor = new GPoint(9, 2);


function usePointFromPostcode(postcode, 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);
			}else{
				alert("Postcode not found!");
			}
		});	
		
	localSearch.execute(postcode + ", UK");
}

function placeMarkerAtPoint(point)
{
	var marker = new GMarker(point,icon);
	map.addOverlay(marker);
}

function setCenterToPoint(point)
{
	map.setCenter(point, 17);
	var marker = new GMarker(point,icon);
	map.addOverlay(marker);
	var postcode4marker = document.getElementById('postcode').value ;
	var price4marker = document.getElementById('price').value;
	var image4marker = document.getElementById('image').value;
	var area4marker = document.getElementById('area').value;
	var pricefix4marker = document.getElementById('pricefix').value;
  GEvent.addListener(marker, "click", function() {
    marker.openInfoWindowHtml("<img style='float:left;' src='http://www.baxtertodd.co.uk/images/baxter-todd.gif' width='100' /><span style='color: #F90; font-size: 1.2em; float:left; margin-top: 10px; margin-left: 5px; text-decoration: underline;'><strong>Baxtertodd Properties:</strong></span><br/><table style='clear: both;'><tr><td><span style='color: #000; float: left;'>Postcode: <strong>"+postcode4marker+"</strong><br/>Area: <strong>"+area4marker+"</strong><br/>Price: <strong style='color: #F90; font-size: 1.2em;'>£"+price4marker+"</strong> "+pricefix4marker+"</span></td><td><img style='float:right;' src='http://www.baxtertodd.co.uk/"+image4marker+"' width='150' /></td></tr></table>");
  });
  return marker;

}

function showPointLatLng(point)
{
	alert("Latitude: " + point.lat() + "\nLongitude: " + point.lng());
}

function mapLoad() {
	if (GBrowserIsCompatible()) {
		map = new GMap2(document.getElementById("googlemap"));		
		map.addControl(new GLargeMapControl());
		map.addControl(new GMapTypeControl());
		map.setCenter(new GLatLng(54.622978,-2.592773), 13, G_HYBRID_MAP);
	}
}

function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      oldonload();
      func();
    }
  }
}

function addUnLoadEvent(func) {
	var oldonunload = window.onunload;
	if (typeof window.onunload != 'function') {
	  window.onunload = func;
	} else {
	  window.onunload = function() {
	    oldonunload();
	    func();
	  }
	}
}

addLoadEvent(mapLoad);
addUnLoadEvent(GUnload);

