var map = null;
var geocoder = null;
var googleanalyticsmap = null;
var googleanalyticsgeocoder = null;
var hostinfomap = null;
var hostinfogeocoder = null;

function load() 
{
	if (GBrowserIsCompatible()) 
	{
//	GVisit Map
		map = new GMap2(document.getElementById("map"));
		map.addControl(new GSmallMapControl());
		map.addControl(new GMapTypeControl());
		geocoder = new GClientGeocoder();
		map.setCenter(new GLatLng(HostInfoLat,HostInfoLon), 2);
	}
}

// GVisit Map
function showAddress(point, address, time) 
{
	var marker = new GMarker(point);
	map.addOverlay(marker);
	GEvent.addListener(marker, "click", function() {marker.openInfoWindowHtml("<font face='Arial' size='-1'><b>"+address+"</b><br/>"+time+"</font>")});
}

// HostInfo Bubble
function showAddressHostInfo(point, city, country, ip, hostname) 
{
	var marker = new GMarker(point);
	map.addOverlay(marker);
	GEvent.addListener(marker, "click", function() {marker.openInfoWindowHtml("<font face='Arial' size='-1'><b>This should be you!</b><br>"+ip+"<br>"+hostname+"<br>"+city+"<br>"+country+"</font>")});
	marker.openInfoWindowHtml("<font face='Arial' size='-1'><b>This should be you!</b><br>"+ip+"<br>"+hostname+"<br>"+city+"<br>"+country+"</font>");
}

function setMarkers()
{
//	GVisit Map
if (GVisit.visitors.length > 1) {
	for (var i = 0; i < GVisit.visitors.length - 1; i++) 
	{		
		var name = '';
		var region = '';
		var name_array = GVisit.visitors[i].name.split(' ');
		var region_array = GVisit.visitors[i].region.split(' ');
		for (var j = 0; j < name_array.length; j++) {
			name += name_array[j].substring(0,1) + name_array[j].substring(1).toLowerCase();
			if (j < name_array.length-1) {
				name += " ";
			}
		}
		for (var j = 0; j < region_array.length; j++) {
				if (region_array[j].length > 2) {
					region += region_array[j].substring(0,1) + region_array[j].substring(1).toLowerCase() + " ";
				}
				else {
					region += region_array[j].substring(0,1) + region_array[j].substring(1).toUpperCase() + " ";
				}
		}
		showAddress(new GLatLng(GVisit.visitors[i].lat, GVisit.visitors[i].lon), name +", "+ region, new Date(GVisit.visitors[i].time*1000).toUTCString());
	}
}
// 	HostInfo Bubble
	showAddressHostInfo(new GLatLng(HostInfoLat, HostInfoLon), HostInfoCity, HostInfoCountry, HostInfoIp, HostInfoHostName);
}