// JavaScript Document
if (GBrowserIsCompatible()) {
	var side_bar_html = "";
	var gmarkers = [];
        
	function createMarker(point,name,html) {
    	var marker = new GMarker(point);
       		 GEvent.addListener(marker, "click", function() {
          		marker.openInfoWindowHtml(html);
        });
		
		gmarkers.push(marker);
		side_bar_html += '<a href="javascript:myclick(' + (gmarkers.length-1) + ')">' + name + '<\/a><br>';
        return marker;
      }

function myclick(i) {
        GEvent.trigger(gmarkers[i], "click");
      }
		
var map = new GMap2(document.getElementById("map"));
map.addControl(new GLargeMapControl());
map.addControl(new GMapTypeControl());
map.setCenter(new GLatLng(0,0), 0);

var bounds = new GLatLngBounds();
var request = GXmlHttp.create();
request.open("GET", "locations.xml", true);
      request.onreadystatechange = function() {
        if (request.readyState == 4) {
          var xmlDoc = GXml.parse(request.responseText);
		  var markers = xmlDoc.documentElement.getElementsByTagName("marker");

	for (var i = 0; i < markers.length; i++) {
		var lat = parseFloat(markers[i].getAttribute("lat"));
		var lng = parseFloat(markers[i].getAttribute("lng"));
		var point = new GLatLng(lat,lng);
		var name = markers[i].getAttribute("name");
		var line1 = markers[i].getAttribute("line1");
		var line2 = markers[i].getAttribute("line2");
		var line3 = markers[i].getAttribute("line3");
		var label = markers[i].getAttribute("label");
		var html = '<h5>'+name+'</h5>'+line1+'<br/>'+line2+'<br/>'+line3;
		var marker = createMarker(point,label,html);
		map.addOverlay(marker);
	bounds.extend(point);
          }
 
          document.getElementById("side_bar").innerHTML = side_bar_html;
          

          map.setZoom(map.getBoundsZoomLevel(bounds));
 

          map.setCenter(bounds.getCenter());
 
          
        }
      }
		  request.send(null);
 
    }
