// Phuket Resorts

    if (GBrowserIsCompatible()) {
    
      // arrays to hold copies of the markers and html used by the side_bar
      // because the function closure trick doesnt work there
      var gmarkers = [];
      var i = 0;

      var lastlinkid;

	var iconRed = new GIcon(); 
    iconRed.image = 'http://labs.google.com/ridefinder/images/mm_20_red.png';
    iconRed.shadow = 'http://labs.google.com/ridefinder/images/mm_20_shadow.png';
    iconRed.iconSize = new GSize(12, 20);
    iconRed.shadowSize = new GSize(22, 20);
    iconRed.iconAnchor = new GPoint(6, 20);
    iconRed.infoWindowAnchor = new GPoint(5, 1);

      // A function to create the marker and set up the event window
      function createMarker(point, name, webURL, email, phone, city, description) {
        var marker = new GMarker(point, iconRed);
        var linkid = "link"+i;
		if (webURL == "") {
			var html = '<div id="popup"><p><b>' + name + "</b>";
	  	} else {
	  		var html = '<div id="popup"><p><b><a href="' + webURL + '" target="_blank">' + name + '</a></b>';
	  	}
		if (city != "") {
			var html = html + '<br>Location: ' + city;
		}
		var html = html + '</p>';
		var html = html + '<p>' + description + '</p>';
		var html = html + '<p>';
		if (email != "") {
			var html = html + '<a href="mailto:' + email + '">' + "send email" + '</a><br>';
		}
		if (phone != "") {
			var html = html + 'Phone: ' + phone;
		}
		var html = html + "</p><br></div>";
        GEvent.addListener(marker, "click", function() {
          marker.openInfoWindowHtml(html);
        });

        //assign an array number to each marker
		gmarkers[i] = marker;
		i++;
        return marker;
      }

      // This function picks up the click and opens the corresponding info window
      function myclick(i) {
        GEvent.trigger(gmarkers[i], "click");
      }

      // create the map
      var map = new GMap2(document.getElementById("map"));
	  switch (maptype) {
		case 0:
	  		map.setMapType(G_NORMAL_MAP);
			break;
		case 1:
	  		map.setMapType(G_SATELLITE_MAP);
			break;
		case 2:
			map.setMapType(G_HYBRID_MAP);
			break;
	  }
      map.addControl(new GLargeMapControl());
      map.addControl(new GMapTypeControl());
	  
	  
      //map.setCenter(new GLatLng( 43.907787,-79.359741), 8);
      map.setCenter(new GLatLng(lat, lon), zoom);
	  
	  //add the points from the database
        var phpquery = 'phpsqlajax_genxml2.php?category_id=' + cat + '&maxlat=' + maxlat + '&minlat=' + minlat + '&maxlon=' + maxlon + '&minlon=' + minlon;
		
		
		GDownloadUrl(phpquery, function(data) {
          var xml = GXml.parse(data);
          var markers = xml.documentElement.getElementsByTagName("marker");
		  //var bounds = new GLatLngBounds();
          for (var i = 0; i < markers.length; i++) {
            var name = markers[i].getAttribute("name");
			var description = markers[i].getAttribute("description");
            var webURL = markers[i].getAttribute("webURL");
			var email = markers[i].getAttribute("email");
			var phone = markers[i].getAttribute("phone");
			var city = markers[i].getAttribute("city");
            var type = markers[i].getAttribute("type");
            var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
                                    parseFloat(markers[i].getAttribute("lng")));
											
			//bounds.extend(point);
									
            var marker = createMarker(point, name, webURL, email, phone, city, description);
            map.addOverlay(marker);
          }
		  
        }); // end of adding points from the database
      
    }

    else {
      alert("Sorry, the Google Maps API is not compatible with this browser");
    }
