var map;
var spot_marker = new Array();

function load() {
	if (GBrowserIsCompatible()) {
		map = new GMap2(document.getElementById("map"));
		map.addControl(new GMapTypeControl());
		map.addControl(new GLargeMapControl());
		map.setCenter(new GLatLng(f_lati, f_longi), f_mag);
		map.enableContinuousZoom();
		map.enableDoubleClickZoom();

		change0();
	}
	else {
		document.getElementById("check").innerHTML = "Google Mapsは利用できません";
	}
}

function spot(map_no, area_no, name, lati, longi, text) {
	this.map_no = map_no;
	this.area_no = area_no;
	this.name = name;
	this.lati = lati;
	this.longi = longi;
	this.text = text;
	this.flag = false;
	this.point = function() {
		return new GLatLng(this.lati,this.longi);
	}
}

function change0() {
	if(document.getElementById && document.body.removeChild){
		var obj = document.getElementById("select_map");
		var n = obj.childNodes.length;
		for(var i=0; i<n; i++) {
			obj.removeChild(obj.firstChild);
		}
	}
	if(document.getElementById && document.body.appendChild){
		for(var i=0; i<map_name.length; i++) {
			var op_el = document.createElement("option");
			var new_txt = document.createTextNode(map_name[i]);
			if(i==0) {
				op_el.setAttribute("selected", "selected");
			}
			op_el.appendChild(new_txt);
			obj.appendChild(op_el, obj.firstChild);
		}
	}
	change1();
}

function change1() {
	var sel = document.getElementById("select_map");
	var n = sel.selectedIndex;
	if(document.getElementById && document.body.removeChild){
		var obj = document.getElementById("select_area");
		var na = obj.childNodes.length;
		for(var i=0; i<na; i++) {
			obj.removeChild(obj.firstChild);
		}
	}
	if(document.getElementById && document.body.appendChild){
		for(var i=0; i<area_name[n].length; i++) {
			var op_el = document.createElement("option");
			var new_txt = document.createTextNode(area_name[n][i]);
			if(i==0) {
				op_el.setAttribute("selected", "selected");
			}
			op_el.appendChild(new_txt);
			obj.appendChild(op_el, obj.firstChild);
		}
	}
	change2();
}

function change2() {
	var sel0 = document.getElementById("select_map");
	var sel1 = document.getElementById("select_area");
	var n0 = sel0.selectedIndex;
	var n1 = sel1.selectedIndex;
	if(document.getElementById && document.body.removeChild){
		var obj = document.getElementById("select_spot");
		var na = obj.childNodes.length;
		for(var i=0; i<na; i++) {
			obj.removeChild(obj.firstChild);
		}
	}
	if(document.getElementById && document.body.appendChild){
		for(var i=0; i<spot_name.length; i++) {
			var tmp = "";
			if(spot_name[i].map_no==n0 && spot_name[i].area_no==n1) {
				// li element
				var li_el = document.createElement("li");
				// input element
				var input_el = document.createElement("input");
				input_el.setAttribute("type", "checkbox");
				input_el.setAttribute("name", "spot");
				tmp = "spot"+i;
				input_el.setAttribute("id", tmp);
				if(spot_name[i].flag) {
					input_el.setAttribute("checked", "checked");
				}
				tmp = "spotmarker("+i+")";
				input_el.setAttribute("onclick", tmp);
				li_el.appendChild(input_el)
				// label element
				var label_el = document.createElement("label");
				tmp = "spot"+i;
				label_el.setAttribute("for", tmp);
				var new_txt = document.createTextNode(spot_name[i].name);
				label_el.appendChild(new_txt);
				li_el.appendChild(label_el)
				obj.appendChild(li_el, obj.firstChild);
			}
		}
	}

	var ua = navigator.userAgent;
	if (ua.match(/MSIE /)) {
		document.getElementById("select_spot").innerHTML = "";
		for(var i=0; i<spot_name.length; i++) {
			if(spot_name[i].map_no==n0 && spot_name[i].area_no==n1) {
				if(spot_name[i].flag) {
					tmp = " checked=\"checked\"";
				}
				else {
					tmp = "";
				}
				document.getElementById("select_spot").innerHTML += "						<li><input type=\"checkbox\" name=\"spot\" id=\"spot"+i+"\""+tmp+" onclick=\"spotmarker("+i+")\" /><label for=\"spot"+i+"\">"+spot_name[i].name+"</label></li>\n";
			}
		}
	}
}

function spotmarker(spotno) {
	if(!spot_name[spotno].flag) {
		spot_marker[spotno] = new GMarker(spot_name[spotno].point());
		map.addOverlay(spot_marker[spotno]);
		spot_name[spotno].flag = true;

		spot_marker[spotno].openInfoWindowHtml(spot_name[spotno].text);

		GEvent.addListener(spot_marker[spotno], "mouseover", function() {
			spot_marker[spotno].openInfoWindowHtml(spot_name[spotno].text);
		});
		GEvent.addListener(spot_marker[spotno], "click", function() {
			map.panTo(spot_marker[spotno].getPoint());
		});
	}
	else {
		map.removeOverlay(spot_marker[spotno]);
		spot_name[spotno].flag = false;
	}
}
//	Copyright (c) 2008 Web Create CATSMOON, All Rights Reserved.

