var icon = new GIcon();
icon.image = "http://www.google.com/mapfiles/marker.png";
icon.shadow = "http://www.google.com/mapfiles/shadow50.png";
icon.iconSize = new GSize(20, 34);
icon.shadowSize = new GSize(37, 34);
icon.iconAnchor = new GPoint(10, 34);

function findPostcode(postcode) {
    if (GBrowserIsCompatible()) {
        var localSearch = new GlocalSearch();
        localSearch.setSearchCompleteCallback(null, 
            function() {
                if (localSearch.results[0]) {
                    var map = displayMap();

                    var point = new GLatLng(localSearch.results[0].lat, localSearch.results[0].lng);
                    map.setCenter(point, 17);
                    map.addOverlay(new GMarker(point,icon));
                }
            });

        localSearch.execute(postcode + ", UK");
    }
}

function addEvent(obj, evType, fn, useCapture){
	if (obj.addEventListener){
		obj.addEventListener(evType, fn, useCapture);
		return true;
	} else if (obj.attachEvent){
		var r = obj.attachEvent("on"+evType, fn);
		return r;
	} else {
		alert("Handler could not be attached");
	}
}

function displayMap() {
    map = new GMap2(document.getElementById("mapbox"));
    map.addControl(new GLargeMapControl());
    map.addControl(new GMapTypeControl());
    map.setCenter(new GLatLng(54.622978,-2.592773), 5, G_NORMAL_MAP);
    addEvent(window, "unload", GUnload);
    return map;
}

