var map;
function load(){
	var copyright = new GCopyright(1, new GLatLngBounds(new GLatLng(-160, -160), new GLatLng(160, 160)), 0, "地下鉄路線図");
	var copyrightCollection = new GCopyrightCollection("tfl.uk:");
	copyrightCollection.addCopyright(copyright);
	var myLayer = [new GTileLayer(copyrightCollection,2,4)];
	myLayer[0].getTileUrl = function(tile, zoom){
		var filename = "http://homepage2.nifty.com/travelplatz/london/"+zoom+"/t"+tile.x+"_"+tile.y+".jpg";
		return filename;
	}
	myLayer[0].getOpacity = function(){ return 1;};
	var album = new GMapType(myLayer, G_NORMAL_MAP.getProjection(),"アルバム");

	map = new GMap2(document.getElementById("map"));
	map.addMapType(album);
	map.setCenter(new GLatLng(-17.034377017779263, -33.75), 2);
	map.setMapType(album);
	map.addControl(new GLargeMapControl());
}


function loadMap(url){
	i=1;
	var request = GXmlHttp.create();
	request.open("GET", url, true);
	request.onreadystatechange = function(){
		if(request.readyState==4){
			var xml = request.responseXML;
			var place = xml.documentElement.getElementsByTagName("items");
			end = place.length;
resultText="";
for(var i=0; i<place.length; i++){
	var lat = parseFloat(place[i].getElementsByTagName("lat")[0].firstChild.nodeValue);
	var lng = parseFloat(place[i].getElementsByTagName("lon")[0].firstChild.nodeValue);
	var name = place[i].getElementsByTagName("name")[0].firstChild.nodeValue;
	var html = "<div style='width:200px'><b style='color: green; font-size: small; font-weight: 400; font-style: normal;'>" + name + "駅</b><br /><br/><a href=javascript:map.zoomIn()>zoomIn</a> | <a href=javascript:map.zoomOut()>zoomOut</a></div>";
	var marker = createMarker(name, lat, lng, html);
				map.addOverlay(marker);
}
	document.getElementById("map_right").innerHTML = resultText;
		}
	}
request.send('');
}

var map;
var resultText="";
var markers = new Array();
var htmls = new Array();
var i = 1;
var end = 99;
function createMarker(name, lat, lng, html) {
	var title = name;
	var point = new GLatLng(lat, lng);
	var myIcon;
	myIcon = new GIcon();
	myIcon.image = "http://www.travelplatz.com/js/icony/icony"+ i + ".png";
	myIcon.iconSize = new GSize(20, 34);
	myIcon.shadow = "http://www.travelplatz.com/js/shadow50.png";
	myIcon.shadowSize = new GSize(37, 34);
	myIcon.iconAnchor = new GLatLng(34, 10);
	myIcon.infoWindowAnchor = new GPoint(5, 5);
	var marker = new GMarker(point,{"icon":myIcon, "clickable":true, "title":title});
	GEvent.addListener(marker, "click", function(){marker.openInfoWindowHtml(html);});
		map.removeOverlay(marker);
		map.addOverlay(marker);
		markers[i] = marker;
		htmls[i] = html;
		resultText =  resultText + "<a href=javascript:changePlace("+i+")>"+i+"&nbsp;"+title +"</a><br />";
		i++;
		if(i >end){i=1}
		return marker;
}
function changePlace(i) {
   markers[i].openInfoWindowHtml(htmls[i]);
}
function bakerloo(){loadMap('./tube/bakerloo.xml'); map.clearOverlays();}
function central(){loadMap('./tube/central.xml'); map.clearOverlays();}
function circle(){loadMap('./tube/circle.xml'); map.clearOverlays();}
function district(){loadMap('./tube/district.xml'); map.clearOverlays();}
function hammersmith(){loadMap('./tube/hammersmith.xml'); map.clearOverlays();}
function jubilee(){loadMap('./tube/jubilee.xml'); map.clearOverlays();}
function metropolitan(){loadMap('./tube/metropolitan.xml'); map.clearOverlays();}
function northern(){loadMap('./tube/northern.xml'); map.clearOverlays();}
function piccadilly(){loadMap('./tube/piccadilly.xml'); map.clearOverlays();}
function victoria(){loadMap('./tube/victoria.xml'); map.clearOverlays();}
function waterloo(){loadMap('./tube/waterloo.xml'); map.clearOverlays();}

onload = load;
onunload = GUnload;