// Check to see if this browser can run the Google API
if (GBrowserIsCompatible()) {

	var gmarkers = [];
	var htmls = [];
	var to_htmls = [];
	var from_htmls = [];
	var i=0;

	// A function to create the marker and set up the event window
	function createMarker(address,point,name,html) {
		var marker = new GMarker(point);

		// The info window version with the "to here" form open
		to_htmls[i] = html + '<br>Directions: <b>To here</b> - <a href="javascript:fromhere(' + i + ')">From here</a>' +
			 '<br>Start address:<form action="http://maps.google.com/maps" method="get" target="_blank">' +
			 '<input type="text" SIZE=40 MAXLENGTH=40 name="saddr" id="saddr" value="" /><br>' +
			 '<INPUT value="Get Directions" TYPE="SUBMIT">' +
			 '<input type="hidden" name="daddr" value="' + address + 
							// "(" + name + ")" + 
			 '"/>';
		// The info window version with the "to here" form open
		from_htmls[i] = html + '<br>Directions: <a href="javascript:tohere(' + i + ')">To here</a> - <b>From here</b>' +
			 '<br>End address:<form action="http://maps.google.com/maps" method="get"" target="_blank">' +
			 '<input type="text" SIZE=40 MAXLENGTH=40 name="daddr" id="daddr" value="" /><br>' +
			 '<INPUT value="Get Directions" TYPE="SUBMIT">' +
			 '<input type="hidden" name="saddr" value="' + address +
							// "(" + name + ")" + 
			 '"/>';
		// The inactive version of the direction info
		html = html + '<br />Directions: <a href="javascript:tohere('+i+')">To here</a> - <a href="javascript:fromhere('+i+')">From here</a>';

		GEvent.addListener(marker, "click", function() {
			marker.openInfoWindowHtml(html);
		});
		gmarkers[i] = marker;
		htmls[i] = html;
		i++;
		return marker;
	}

	// functions that open the directions forms
	function tohere(i) {
		gmarkers[i].openInfoWindowHtml(to_htmls[i]);
	}
	
	function fromhere(i) {
		gmarkers[i].openInfoWindowHtml(from_htmls[i]);
	}
	
	function showAddress(address) {
		if (geocoder) {
			geocoder.getLatLng(
				address,
				function(point) {
					if (!point) {
						alert(address + " not found");
					} else {
						map.setCenter(point, 15);
						var marker = createMarker(address,point,'Harper &amp; Faye Jewelers','<div style="color:#000;"><strong>Harper &amp; Faye Jewelers</strong><br />60 Federal Street<br />Boston, MA 02110')
						map.addOverlay(marker);
					}
				}
			);
		}
	}
	
	var map = new GMap2(document.getElementById("map"));
	map.addControl(new GSmallZoomControl());
	//map.addControl(new GMapTypeControl());
	//map.setCenter(new GLatLng(42.3557, -71.0563), 15);
	geocoder = new GClientGeocoder();
	showAddress('60 Federal Street, Boston, MA 02110');
	
	/*
	// Set up marker with info windows 
	var point = new GLatLng(42.3557, -71.0563);
	//alert(point);
	var marker = createMarker(point,'Harper &amp; Faye Jewelers','<div style="color:#000;"><strong>Harper &amp; Faye Jewelers</strong><br />60 Federal Street<br />Boston, MA 02110')
	map.addOverlay(marker);
	*/

} else {
	alert("Sorry, the Google Maps API is not compatible with this browser");
}