function PointMarker(point, imageUrl, user) {
	this.point = point;
	this.imageUrl = imageUrl;
	this.user = user;
}

function loadMap() {
	var tabber = document.getElementById("theTab");
	var greenlandCenter = new GLatLng(76, -43);
	var greenlandSW = new GLatLng(58, -73);
	var greenlandNE = new GLatLng(85, -9);
	var greenlandBounds = new GLatLngBounds(greenlandSW, greenlandNE);

	tabber.className = 'tabberlive';

	if (GBrowserIsCompatible()) {
		var markers = new Array();
		var text = document.getElementById("coordinates");
		text = text.innerHTML;
		var textPoints = text.split(";");
		var bounds = new GLatLngBounds();
		for (var i = 0; i < textPoints.length; ++i) {
			var point = textPoints[i];
			var coords = point.split(",");
			if (coords.length >= 2) {
				var lat = coords[0];
				var lng = coords[1];
				var point = new GLatLng(lat, lng);
				var user = "";
				if (coords.length >= 4) {
					user = coords[3];
				}
				bounds.extend(point);
				markers.push(new PointMarker(point, coords[2], user));
			}
		}
		
		var map1 = new GMap2(document.getElementById("map1"));
		map1.enableDoubleClickZoom();
		map1.addControl(new GLargeMapControl());
		map1.addControl(new GMapTypeControl());
		map1.addControl(new GScaleControl());
		//if (bounds.intersects(greenlandBounds)) {
		if (greenlandBounds.containsBounds(bounds)) {
			map1.setCenter(greenlandCenter, 3);
		} else {
			map1.setCenter(bounds.getCenter(), Math.min(map1.getBoundsZoomLevel(bounds), 4));
		}

		var map2 = new GMap2(document.getElementById("map2"));
		map2.enableDoubleClickZoom();
		map2.addControl(new GLargeMapControl());
		map2.addControl(new GMapTypeControl());
		map2.addControl(new GScaleControl());
		map2.setCenter(greenlandCenter, 4, G_SATELLITE_MAP);
		map2.setCenter(bounds.getCenter(), Math.min(map2.getBoundsZoomLevel(bounds), 9));

		for (var i = 0; i < markers.length; ++i) {
			var pm = markers[i];
			map1.addOverlay(createMarker(pm.point, pm.imageUrl, i, pm.user, "overview"));
			map2.addOverlay(createMarker(pm.point, pm.imageUrl, i, pm.user, "closeup"));
		}

	}

	tabber.className = 'tabber';

	tabberAutomatic(tabberOptions);
}

function createMarker(point, imageUrl, counter, user, mapType) {
	var marker = new GMarker(point);
	if (imageUrl) {
		var a1 = imageUrl.split("/");
		var a2;
		var imageId = "0";
		if (a1.length >= 3) {
			a2 = a1[2].split("_");
			if (a2.length == 3) {
				imageId = a2[0];
			}
		}
		var html = "";
		if (user != "") {
			html = "<span style='font-size:7pt;'>Photo by " + user + "<br clear='all'>";
		}
		html += "<img src='http://" + imageUrl + "'>";
		var id = "/ajax/markers/" + mapType + "/" + entryId + "/" + imageId;
		GEvent.addListener(marker, "click", function() {
			marker.openInfoWindowHtml(html);
			if (typeof pageTracker == 'object') {
				pageTracker._trackPageview(id);
			}
		});
	}
	return marker;
}

