function addMarker(latitude, longitude, description, icon) {
    var marker = new GMarker(new GLatLng(latitude, longitude), icon);
    GEvent.addListener(marker, 'click',
        function() {
            marker.openInfoWindowHtml(description);
        }
    );
    map.addOverlay(marker);
}

function init() {
	if (GBrowserIsCompatible()) {
		map = new GMap2(document.getElementById("map"));
		map.setCenter(new GLatLng(centerLatitude, centerLongitude), startZoom);
		var pointSW = new GLatLng(37.699028,-78.869506);
		var pointNE = new GLatLng(38.384250,-78.110954);
		var groundOverlay = new GGroundOverlay("/map/images/rivanna3.png", new GLatLngBounds(pointSW, pointNE));
		map.addOverlay(groundOverlay);
		//add controls
		//map.addControl(new GLargeMapControl());
		//map.addControl(new GSmallZoomControl());
		map.addControl(new GSmallMapControl());
		map.addControl(new GMapTypeControl());
		//change map type
		// map.setMapType(G_MAP_TYPE);
		// map.setMapType(G_SATELLITE_TYPE);
		// map.setMapType(G_HYBRID_TYPE);
		// add StreamWatch data overlays
		addDatabaseMarkers();
	}
}

function addDatabaseMarkers() {
	var siteID;
	var siteName;
	var siteLongitude;
	var siteLatitude;
	var siteAssessment;
	var siteLocality;
	var siteType;
	var siteIcon = whiteIcon;
	for (var i=0; i<data_view.length; i++)
	{
		sideID = data_view[i].values[0];
		siteName = data_view[i].values[1];
		siteLongitude = data_view[i].values[2];
		siteLatitude = data_view[i].values[3];
		siteAssessment = data_view[i].values[4];
		siteAsci = data_view[i].values[5];
		siteSos = data_view[i].values[6];
		siteLocality = data_view[i].values[7];
		siteType = data_view[i].values[8];
		switch(siteAssessment)
		{
			case 'Very Good':
				siteIcon = greenIcon;
				break;
			case 'Good':
				siteIcon = blueIcon;
				break;
			case 'Fair':
				siteIcon = yellowIcon;
				break;
			case 'Poor':
				siteIcon = redIcon;
				break;
			case 'Poor to Fair':
				siteIcon = orangeIcon;
				break;
			case 'Very Poor':
				siteIcon = blackIcon;
				break;
			case null:
				siteIcon = whiteIcon;
				break;
			default:
				siteIcon = whiteIcon;
		}

		siteInfo = '<div style="margin-right:10px"><strong>' + siteName + '</strong><br />' +
					'Locality: ' + siteLocality + '<br />' +
					'Type: ' + siteType + '<br /><br />' +
					'<strong>Condition: <img src="' + siteIcon.image + '" /> ' + siteAssessment + '<br />' +
					'Average ASCI Score: ' + siteAsci + '<br />' +
					'Average VaSOS Score: ' + siteSos + '</strong></div>';
					
		addMarker(siteLatitude, siteLongitude, siteInfo, siteIcon);
	}
}

window.onload = init;
window.onunload = GUnload;
