    var iconWhite = new GIcon(); 
    iconWhite.image = 'core/modules/google_maps/templates/img/gmap-icon-white.png';
    iconWhite.shadow = 'core/modules/google_maps/templates/img/gmap-icon-shadow.png';
    iconWhite.iconSize = new GSize(36, 34);
    iconWhite.shadowSize = new GSize(36, 34);
    iconWhite.iconAnchor = new GPoint(12, 20);
    iconWhite.infoWindowAnchor = new GPoint(12, 20);

    var iconOrange = new GIcon(); 
    iconOrange.image = 'core/modules/google_maps/templates/img/gmap-icon-orange.png';
    iconOrange.shadow = 'core/modules/google_maps/templates/img/gmap-icon-shadow.png';
    iconOrange.iconSize = new GSize(36, 34);
    iconOrange.shadowSize = new GSize(36, 34);
    iconOrange.iconAnchor = new GPoint(11, 32);
    iconOrange.infoWindowAnchor = new GPoint(11, 32);

    var customIcons = [];
    customIcons["white_marker"] = iconWhite;
    customIcons["orange_marker"] = iconOrange;

    function GMload(user_long, user_lat, user_zoom) {
      if (GBrowserIsCompatible()) {
        var map = new GMap2(document.getElementById("map"));
        map.addControl(new GLargeMapControl3D());
        map.addControl(new GMapTypeControl());
		map.addMapType(G_PHYSICAL_MAP);
        map.setCenter(new GLatLng(user_long, user_lat), user_zoom);

        GDownloadUrl("google_maps/?action=generate-gm-xml", 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 type = markers[i].getAttribute("type");
            var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
                                    parseFloat(markers[i].getAttribute("lng")));
            var marker = createMarker(point, name, address, type);
            map.addOverlay(marker);
          }
        });
      }
    }

    function createMarker(point, name, address, type) {
      var marker = new GMarker(point, customIcons[type]);
      var html = "<b>" + name + "</b> <br/>" + address;
      GEvent.addListener(marker, 'click', function() {
        marker.openInfoWindowHtml(html);
      });
      return marker;
    }
