var mid = '#map';
var lid = "#results_list";
var map;
function GLoad(lat,lon)
{
	map = new GMap2($(mid).get(0));
	map.addMapType(G_PHYSICAL_MAP);
	map.addMapType(G_SATELLITE_3D_MAP);
	map.addControl(new GHierarchicalMapTypeControl());
	map.addControl(new GLargeMapControl());
	map.enableScrollWheelZoom();
	map.setMapType(G_HYBRID_MAP);
	GEvent.addListener(map, 'click',
	function(marker, point)
	{
		if(marker)
		{
			load_photo(marker.getPoint());
		}
		else
		{
			map.closeInfoWindow();
		}
	});
	map.setCenter(new GLatLng(36.39069760048364,139.06041383743286), 2);
	if(map.isLoaded())
	{
		load_location(lat, lon);
	}
}
function load_location(lat, lon)
{
	var icon = new GIcon();
	icon.image = "img/mm_20_red.png";
	icon.shadow = "img/mm_20_shadow.png";
	icon.iconSize = new GSize(12, 20);
	icon.shadowSize = new GSize(22, 20);
	icon.iconAnchor = new GPoint(6, 20);
	icon.infoWindowAnchor = new GPoint(5, 1);
	$.ajax(
	{
		type: 'post',
		url: 'getLocation.json',
		dataType: 'json',
		success: function(request)
		{
			$.each(request, function(key,value)
			{
				var marker = new GMarker(new GLatLng(value.lat, value.lon), icon);
				var html = 
					'<nobr>国名: '+value.country+'</nobr><br />'+
					'<nobr>都市: '+value.location+'</nobr><br />'+
					'<nobr>建造物名: '+value.building+'</nobr><br />'+
					'<nobr>建築家: '+value.architect+'</nobr><br />';
				GEvent.addListener(marker, 'click', function()
				{
					marker.openInfoWindowHtml(html);
				});
				map.addOverlay(marker);
				if(value.lat === lat && value.lon === lon)
				{
					marker.openInfoWindowHtml(html);
					load_photo(marker.getPoint());
				}
			});
		},
		error: function(request)
		{
			alert('座標の検索結果が0件でした');
		},
		timeout: function (request)
		{
			alert('座標の検索結果が0件でした');
		}
	});
}
function load_photo(point)
{
	var zoom = map.getZoom();
	map.setCenter(point, (zoom > 16 ) ? zoom : 16);
	$.ajax(
	{
		type: 'post',
		url: 'getPhotos.json',
		dataType: 'json',
		data: 'lon='+point.x+'&lat='+point.y,
		success: function(request)
		{
			$(lid).empty();
			$.each(request, function(key,value)
			{
				var div = $("<div />").attr("id", "results_list_ph");
				if($.browser.msie)
				{
					div.append($("<span />"));
				}
				div.append(
				$("<P />")
				.append(
				$("<a />")
				.attr("href", value.id+value.ext)
				.attr("title", value.title)
				.attr("rel", value.building)
				.addClass("thickbox")
				.append(
				$("<img />")
				.attr('id', key)
				.attr('src', value.id+"S"+value.ext)
				.attr('alt', value.alt)
				.attr('style', 'display:inline;')
				)));
				$(lid).append(div);
				/*
				$('#'+key).get(0).onload = function()
				{
					this.style.display = "inline";
				}
				*/
			});
			tb_init('a.thickbox');
		},
		error: function(request)
		{
			alert('写真の検索結果が0件でした');
		},
		timeout: function (request)
		{
			alert('写真の検索結果が0件でした');
		}
	});
}

