var map = null; var localSearch = new GlocalSearch(); var geocoder = new GClientGeocoder(); var icon = new GIcon(); icon.image = "http://www.yosushi.com/images/static/marker.png"; icon.shadow = "http://www.yosushi.com/images/static/shadow-marker.png"; icon.iconSize = new GSize(35.0, 46.0); icon.shadowSize = new GSize(59.0, 46.0); icon.iconAnchor = new GPoint(17.0, 23.0); icon.infoWindowAnchor = new GPoint(17.0, 23.0); function nonUKCountries(address,latitude,longitude) { if (GBrowserIsCompatible() && latitude != '' && longitude != '') { map = new GMap2(document.getElementById('map')); map.addControl(new GLargeMapControl()); map.addControl(new GMapTypeControl()); map.setCenter(new GLatLng(latitude,longitude), 17); var point = new GLatLng(latitude,longitude); var marker = new GMarker(point,icon); map.addOverlay(marker); var restaurant = new GMarker(new GLatLng(latitude,longitude),icon); GEvent.addListener(restaurant, "click", function() { restaurant.openInfoWindowHtml('
'+address+'<\/div>'); }); map.addOverlay(restaurant); // var WINDOW_HTML = '
'+address+'<\/div>'; // marker.openInfoWindowHtml(WINDOW_HTML); } } function usePointFromPostcode(address, postcode, callbackFunction, mapNo) { if (GBrowserIsCompatible()) { map = new GMap2(document.getElementById('map')); map.addControl(new GLargeMapControl()); map.addControl(new GMapTypeControl()); //addLoadEvent(mapLoad); //addUnLoadEvent(GUnload); 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,address,mapNo); } else{ alert(address+" not found!"); } }); localSearch.execute(postcode + ", UK"); } } // Callback function function setCenterToPoint(point,address,mapNo) { map.setCenter(point, 17); placeMarkerAtPoint(point,address); //document.getElementById('result_'+mapNo).innerHTML = ''; } function placeMarkerAtPoint(point,address) { var marker = new GMarker(point,icon); map.addOverlay(marker); var WINDOW_HTML = '
'+address+'<\/div>'; marker.openInfoWindowHtml(WINDOW_HTML); } function printMap(address) { //var address = document.getElementById('address').value; window.open('http://maps.google.co.uk/maps?f=q&hl=en&&ie=UTF8&z=16&iwloc=addr&om=1&pw=2&q='+address+''); } function calcDistance(your_address, callbackFunction) { localSearch.setSearchCompleteCallback(null, function() { if (localSearch.results[0]) { var resultLat = localSearch.results[0].lat; var resultLng = localSearch.results[0].lng; var your_address_point = new GLatLng(resultLat,resultLng); callbackFunction(your_address_point); }else{ alert("Address not found!"); } }); localSearch.execute(your_address + ", UK"); } // Callback function function showDistance(your_address_point) { var marker = new GMarker(point); var marker2 = new GMarker(your_address_point); var distance = marker.getPoint().distanceFrom(marker2.getPoint())/1000; distance = distance * 0.621371192; if (distance.toFixed) { distance = distance.toFixed(1); } //document.getElementById('result').innerHTML = 'Distance is: '+distance+' miles'; } function mapLoad() { 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); } } 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(); } } }