var flickrid;
var map;
var point;
var panorama;   
var panoClient;

function initialize() {
	if(google.maps.BrowserIsCompatible()) {
		map = new google.maps.Map2(document.getElementById("map"));
		map.setMapType(G_SATELLITE_MAP);
		map.addControl(new google.maps.LargeMapControl());
		//map.enableScrollWheelZoom();

		$.getJSON("/scripts/ajax/flickrgeo.php?flickrid="+this.flickrid, function(data) {
			point = new google.maps.LatLng(parseFloat(data.location.latitude), parseFloat(data.location.longitude));
			map.setCenter(point, parseInt(data.location.accuracy));
			map.addOverlay(new google.maps.Marker(point));
			
			panoClient = new GStreetviewClient();
			panoramaOptions = { latlng:point };
			panorama = new GStreetviewPanorama(document.getElementById("pano"), panoramaOptions);
			panoClient.getNearestPanorama(point, showPanoData);
		});
	}
}

function showPanoData(panoData) {
	// 200 = success
	// 500 = server not responding
	// 600 = no panorama data found
	if (panoData.code != 200) {
		$("#pano").css("display","none");
		$("#map").css("width","954px");
		map.checkResize();
		map.setCenter(point);
	} else {
		panorama.setLocationAndPOV(panoData.location.latlng);
	}
}

function initMap(flickrid){
	this.flickrid = flickrid;
	
	google.load("maps", "2");
	google.setOnLoadCallback(initialize);
}