var file;
var map;
var nowArea;
var viewpoint = "";
window.onload = function (){
map = new GMap2(document.getElementById("map"));
//map.setMapType(G_SATELLITE_MAP);

//お城ボタン
	var option={position: new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(80, 5)),width   : "50px",height  : "20px"};
	var castleBtn=new GMapKitButton("お城",function(){'click',changeView('castle',area,pref);}, option);
//グルメボタン
	var option={position: new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(130, 5)),width   : "50px",height  : "20px"};
	var grumeBtn=new GMapKitButton("グルメ",function(){'click',changeView('grume',area,pref);}, option);
//宿泊ボタン
	var option={position: new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(180, 5)),width   : "50px",height  : "20px"};
	var stayBtn=new GMapKitButton("宿泊",function(){'click',changeView('stay',area,pref);}, option);
//歴史ボタン
	var option={position: new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(230, 5)),width   : "50px",height  : "20px"};
	var histBtn=new GMapKitButton("歴史",function(){'click',changeView('history',area,pref);}, option);

//Gmap稼働チェック
    if (GBrowserIsCompatible()) {
		map.addControl(new GLargeMapControl3D());
		map.addControl(new GMapTypeControl());

 		map.addControl(castleBtn);
 		map.addControl(grumeBtn);
 		map.addControl(stayBtn);
 		map.addControl(histBtn);
		mapset();
	}
}


//=============================================================================================
//=============================================================================================
function changeView(viewpoint,area,pref){

	function createMarker(point, label, html) {
		var icon = new GIcon();
		if(viewpoint == "castle" || viewpoint == "index"){
		    icon.image = "/castle/images/icon_shiro.png";
		}
		else if(viewpoint == "grume"){
			 icon.image = "/castle/images/icon_gourmet.png";
		}
		else if(viewpoint == "stay"){
			 icon.image = "/castle/images/icon_hotel.png";
		}
		else if(viewpoint == "history"){
			 icon.image = "/castle/images/icon_history.png";
		}
		icon.iconSize = new GSize(22, 35);
		icon.shadowSize = new GSize(22, 35);
		icon.iconAnchor = new GPoint(10, 35); // 画像の中央をアンカーに
		icon.infoWindowAnchor = new GPoint(0,0);
		icon.infoShadowAnchor = new GPoint(0,0);
      var marker = new GMarker(point, {icon: icon, title: label});
//      var marker = new GMarker(point);
		
      GEvent.addListener(marker, "click", function() {
        marker.openInfoWindowHtml(html);
      });
      return marker;
   }
	map.clearOverlays();
//	alert("viewP:"+viewpoint+"  area:"+area);
		if(viewpoint == "castle" || viewpoint == "")
		{
			file = "/castle/data/castle.xml";
		}
		else if(viewpoint == "grume")
		{
			file = "/castle/data/eat_stay.xml";
		}
		else if(viewpoint == "stay")
		{
			file = "/castle/data/facilities.xml";
		}
		else if(viewpoint == "history")
		{
			file = "/castle/data/history.xml";
		}
		else
		{
			return false;
		}
    GDownloadUrl(file, function(data, responseCode) { // XMLファイルの名称・場所
    if(responseCode == 200) {
      var xml = GXml.parse(data);
      var markers = xml.documentElement.getElementsByTagName("marker");


		for (var i = 0; i < markers.length; i++) {
        var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),parseFloat(markers[i].getAttribute("lng")));
        var label = markers[i].getAttribute("label");
        var category = markers[i].getAttribute("category");
        var loc = markers[i].getAttribute("loc");
        var place = markers[i].getAttribute("pref");
        var url = markers[i].getAttribute("url");
if(pref){
	if(pref == place){
		  var html = "\<p class='sizeM'\>"+markers[i].getAttribute("label")+"\</p>";
				html += "\<p class='sizeS'\>"+markers[i].getAttribute("html");
				html += "\</p>";
				if(markers[i].getAttribute("photo")){
					var image = new Image();
					image.src = "/castle/images/"+markers[i].getAttribute("photo");
					var imgWidth = image.width;
					var imgHeight = image.height;
		//			alert("No["+i+"]"+imgWidth+" : "+imgHeight);
					html += "\<p>\<img src='/castle/images/"+markers[i].getAttribute("photo")+"' width='"+imgWidth+"' height='"+imgHeight+"' />\</p>";
					if(navigator.userAgent.indexOf("MSIE") != -1){
						html += "\<br />";
					}
				}
		  var marker = createMarker(point, label, html );
		  
        map.addOverlay(marker);
	}
}else{
	if(area == loc){
		if(url){
		  var html = "\<p class='sizeM'>\<a href='"+url+"'>"+markers[i].getAttribute("label")+"\</a>\</p>";
		}else{
		  var html = "\<p class='sizeM'\>"+markers[i].getAttribute("label")+"\</p>";
		}
				html += "\<p class='sizeS'\>"+markers[i].getAttribute("html")+"\</p>";
				if(markers[i].getAttribute("photo")){
					var image = new Image();
					image.src = "/castle/images/"+markers[i].getAttribute("photo");
					var imgWidth = image.width;
					var imgHeight = image.height;
		//			alert("No["+i+"]"+imgWidth+" : "+imgHeight);
					html += "\<p>\<img src='/castle/images/"+markers[i].getAttribute("photo")+"' width='"+imgWidth+"' height='"+imgHeight+"' />\</p>";
					if(navigator.userAgent.indexOf("MSIE") != -1){
						html += "\<br />";
					}
				}
//				html = html.replace("/</","&lt;");
//				html = html.replace("/>/","&gt;");
		  var marker = createMarker(point, label, html );
		  
        map.addOverlay(marker);
	}
}
      }
    } else if(responseCode == -1) {
       alert("タイムアウトしました。後ほど再試行してください。");
    } else { 
       alert("エラーです。XMLファイルを確認してください。");
    }
    });
//]]>
}

window.onunload=GUnload;

