
    var icon = new GIcon(); 
    icon.image = 'http://www.flatmaterooms.co.uk/images/gmaps-marker-logo.png';
    icon.shadow = 'http://labs.google.com/ridefinder/images/mm_20_shadow.png';
    icon.iconSize = new GSize(50, 63);
    icon.shadowSize = new GSize(22, 20);
    icon.iconAnchor = new GPoint(24, 54);
    icon.infoWindowAnchor = new GPoint(22, 54);
    var customIcon = [];
    customIcon = icon;
    var map = null;
    var geocoder = null;
    
    function initialize() {
	if (GBrowserIsCompatible()) {
	    map = new GMap2(document.getElementById("map"));
	    map.setCenter(new GLatLng(53.4815,-2.6633), 6);
	    map.addControl(new GLargeMapControl());
	    map.addControl(new GMapTypeControl());
	    geocoder = new GClientGeocoder();
	    GDownloadUrl("map-markers.php", function(data) {
		var xml = GXml.parse(data);
		var markers = xml.documentElement.getElementsByTagName("marker");
		for (var i = 0; i < markers.length; i++) {
		    var name = markers[i].getAttribute("name");
		    var address = markers[i].getAttribute("address");
		    var room = markers[i].getAttribute("room");
		    var img = markers[i].getAttribute("img");
		    var description = markers[i].getAttribute("description");
		    var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
		    parseFloat(markers[i].getAttribute("lng")));
		    var marker = createMarker(point, name, address, room, img, description);
		    map.addOverlay(marker);
		}
	    });
	}
    }
    
    function createMarker(point, name, address, room, img, description) {
	var marker = new GMarker(point, customIcon);
	var tabs_array = [ new GInfoWindowTab("Info", "<div style='width:220px;'><b>" + address + "</b> <br/>" + name + "<br/>"+description+"<a href='/ad/" + room + "'><br />View more information &raquo;</a></div>"),
	new GInfoWindowTab("Photos", "<img src="+img+" height='75' >") ];
	GEvent.addListener(marker, 'click', function() {
	    marker.openInfoWindowTabsHtml(tabs_array);
	});
	return marker;
    }
    
    function showAddress(address) {
	address = address+",UK";
	if (geocoder) {
	    geocoder.getLatLng(address, function(point) {
		if (!point) {
		    alert(address + " not found");
		}
		else {
		    map.setCenter(point, 13);
		}
	    });
	}
    }