
if (GBrowserIsCompatible()) {
	function iconChange(icontype){
		var icon = new GIcon();
		//icon.image = "gimg/"+icontype+".png";
		icon.image = "gimg/fukusuke.png";
		icon.iconSize = new GSize(24, 30);
		icon.iconAnchor = new GPoint(12, 28);
		icon.infoWindowAnchor = new GPoint(12, 18);
		icon.infoShadowAnchor = new GPoint(12, 18);
	//	icon.shadow = "img/glogoshadow.png";
	//	icon.printShadow = "img/glogoshadow.gif";
	//	icon.shadowSize = new GSize(21, 21);
		return icon;
	}
	function createMarker(point, text) {
		var marker = new GMarker(point, icon);
		var html = text ;
		GEvent.addListener(marker, "click", function() {
			marker.openInfoWindowHtml(html);
		});
		return marker;
	}
}

// マップの初期設定 
var map = new GMap2(document.getElementById("map"));
var icon = new GIcon();
map.addControl(new GLargeMapControl());
map.addControl(new GMapTypeControl());
map.addControl(new GOverviewMapControl(new GSize(100,100)));
map.setCenter(new GLatLng(36, 136), 6);
map.enableDoubleClickZoom();
map.enableContinuousZoom();
//map.enableScrollWheelZoom()


// XML読み込み
var request = GXmlHttp.create();
request.open("GET", "xml/marker.xml", true);
request.onreadystatechange = function() {
	if (request.readyState == 4) {
		var xmlDoc = request.responseXML;
		var markers = xmlDoc.documentElement.getElementsByTagName("marker");
		for (var i = 0; i < markers.length; i++) {
			icon = iconChange(markers[i].getAttribute("icontype"));
			var point = new GPoint(parseFloat(markers[i].getAttribute("lon")),parseFloat(markers[i].getAttribute("lat")));
			var gll = new GLatLng(parseFloat(markers[i].getAttribute("lat")), parseFloat(markers[i].getAttribute("lon")));
			var markertitle = (markers[i].getElementsByTagName("markertitle")[0].firstChild.nodeValue);
			var pointcomment = (markers[i].getElementsByTagName("comment")[0].firstChild.nodeValue);
			//var markerid = markers[i].getAttribute("markerid");
			var markerid = markers[i].getAttribute("markerid");
			var markeridhtml = '';
			//if(markerid){
				//markeridhtml = '<div class="markerhtml">'+document.getElementById(markerid).innerHTML+'</div>';
			//}else{
				markeridhtml = '<p>'+markertitle+'</p>'+pointcomment;
			//}
			markeridhtml = markeridhtml + '<p align="center"><a href="#" onClick="map.zoomIn();return false;">地図拡大</a>｜<a href="#" onClick="map.closeInfoWindow();return false;">閉じる</a></p>';
			var marker = createMarker(gll, markeridhtml);
			map.addOverlay(marker);
			addMarkerLink(markerid, gll, markeridhtml);
		}
	}
}
request.send(null);

function addMarkerLink(markerid, gll, html){
	var i;
	if (!document.getElementById) {
		return;
	}
	if(!document.getElementById('gmapFrom')){
		return;
	}
	var cnodes = document.getElementById('gmapFrom').getElementsByTagName('a');
	if(!cnodes){
		return;
	}
	for(i = 0; i < cnodes.length; i++){
		if(cnodes[i].className == 'markerLink'+markerid){
			cnodes[i].onclick = function(){mapOpeninfoCenter(gll, 12, html);}
		}
	}
}

//窓を閉じ、そこに移動して、該当する窓を開く
function mapOpeninfoCenter (gll,zoom,html){//そこに移動
	map.closeInfoWindow();
	if( zoom > 0){//負の数が与えられた場合は、同じズームレベルで、スムーズに移動するように努力する
		map.setCenter(gll, zoom);
	}else{//正の数の場合は、そのズームレベルとする
		map.panTo(gll);
	}
	map.openInfoWindowHtml(gll, html);
}