﻿function map_area(act, gc, uc, pc, count, tc, mc, ov, sc) {
	var url = 'include/getviewarea.xml.php';
	var pars = 'gc=' + gc + '&uc=' + uc;
	var myAjax = new Ajax.Request(
		url, 
		{
			method: 'get', 
			parameters: pars, 
			onComplete: function(httpObj){
				var XML = httpObj.responseXML;
				var argTag = XML.getElementsByTagName("area");
				var val  = argTag[0].getAttribute("lon") + ",";
					val += argTag[0].getAttribute("lat") + ",";
					val += argTag[0].getAttribute("zoom") + ",";
					val += argTag[0].getAttribute("type");
					map_view(act, gc, uc, pc, count, val, tc, mc, ov, sc);
			}
		});
}

/* map grobal */
var map;
function map_view(act, gc, uc, pc, count, area, tc, mc, ov, sc) {
	map = new GMap2(document.getElementById("map"));

	/* map control */
	if (tc == "true") {
		map.addControl(new GMapTypeControl());
	}
	if (mc == "large") {
		map.addControl(new GLargeMapControl());
	}else if(mc == "small"){
		map.addControl(new GSmallMapControl());
	}else if(mc == "smallz"){
		map.addControl(new GSmallZoomControl());
	}
	if (ov == "true") {
		map.addControl(new GOverviewMapControl());
	}
	if (sc == "true") {
		map.addControl(new GScaleControl());
	}

	/* area config */
	var areaArray = area.split(',');
	map.setCenter(new GLatLng(areaArray[1], areaArray[0]), eval(areaArray[2]));
	map.setMapType(eval(areaArray[3]));

	/* group map */
	var request = GXmlHttp.create();
	request.open("GET", "include/getmarker.xml.php?gc="+gc+"&uc="+uc, 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++) {
				if (markers[i].getAttribute("lon") != "") {
					var point = new GPoint(markers[i].getAttribute("lon"), markers[i].getAttribute("lat"));
					var myicon = new GIcon();
					myicon.shadow = "images/icon_point_shadow.png";
					myicon.iconSize = new GSize(44,38);
					myicon.shadowSize = new GSize(44, 38);
					//myicon.iconAnchor = new GPoint(10,38);
					myicon.iconAnchor = new GPoint(10,38);
					myicon.infoWindowAnchor = new GPoint(10,10);
					myicon.image = "images/icon_point_"+markers[i].getAttribute("no")+".png";
					myicon.transparent = "images/icon_point_"+markers[i].getAttribute("no")+".png";
					var msg = "<div id=\"info_win_title\"><span class=\"info_win_title_white\">読み込み中です。</span></div>";
						msg += "<div id=\"info_win_photo\">";
						msg += "<a href=\"#\" onClick=\"photoLarge('open', '"+markers[i].getAttribute("photoserver")+"', '"+markers[i].getAttribute("photoid")+"', '"+markers[i].getAttribute("photosecret")+"'); return false; \">";
						msg += "<img src=\"http://static.flickr.com/"+markers[i].getAttribute("photoserver")+"/"+markers[i].getAttribute("photoid")+"_"+markers[i].getAttribute("photosecret")+"_t.jpg\" />";
						msg += "</a></div>";
						msg += "<div id=\"info_win_disp\"></div>";
					var marker = new markeropenInfoWindow(point, myicon, msg, markers[i].getAttribute("photoid"));
					map.addOverlay(marker);
				}
			}
		}
	}
	request.send(null);
}
function markeropenInfoWindow(point, myicon, msg, pid) {
	var marker = new GMarker(point, myicon);
	GEvent.addListener(marker, 'click', function() {
		marker.openInfoWindowHtml(msg);
		infoGet02(pid);
	});
	return marker;
}
function infoGet02(pid) {
	var url = 'include/flickr.photos.getInfo_02.php';
	var pars = 'photo_id=' + pid;
	var myAjax = new Ajax.Request(
		url, 
		{
			method: 'post', 
			parameters: pars, 
			onComplete: function(httpObj){
				var remsg = (httpObj.responseText);
				var msgArray = remsg.split('%!%%!%%!%');
				$("info_win_title").innerHTML = msgArray[0];
				$("info_win_disp").innerHTML = msgArray[1];
			}
		});
}
//Map Center
function map_center(lon, lat){
	map.panTo(new GLatLng(lat, lon));
}

//Photo zoom
function photoLarge(id, photoserver, photoid, photosecret) {
	if(id == "close") {
		$("base").style.display = "none";
		$("photoZoom").style.display = "none";
	}else if(id == "open") {
		$("base").style.display = "block";
		$("base").style.filter = "alpha(opacity=80)";
		$("base").style.opacity = 0.8;
		$("base").style.mozOpacity = 0.8;
		$("base").style["height".camelize()] = line1.offsetHeight + "px";
		$("photoZoom").style.display = "block";
		$("photoZoom_medium").innerHTML = "<a href=\"#\" onClick=\"photoLarge('close', '', '', ''); return false;\" title=\"閉じる\"><p><img src=\"http://static.flickr.com/"+photoserver+"/"+photoid+"_"+photosecret+".jpg\" /></p><p><img src=\"images/btn_close.gif\" /></p></a>";
	}
}
