
	//var dd1 = new YAHOO.util.DD("mashup-area", "myGroup");
	//var dd2 = new YAHOO.util.DD("keyword-area", "myGroup");
	//var dd3 = new YAHOO.util.DD("list-area", "myGroup");
	
	function createMarker(point,icon) {
		var marker = new GMarker(point,icon);
		return marker;
	}
	
	function createInfoWindow(marker,html) {
		GEvent.addListener(marker, "click", function() {
			marker.openInfoWindowHtml(html);
		});
	}
	
	function createIcon(imgFile,imgShadowFile,imgW,imgH,imgShadowW,imgShadowH,iconAncX,iconAncY,infoWinAncX,infoWinAncY) {
		var icon = new GIcon();
		icon.image = imgFile;
		icon.shadow = imgShadowFile;
		icon.iconSize = new GSize(imgW, imgH);
		icon.shadowSize = new GSize(imgShadowW, imgShadowH);
		icon.iconAnchor = new GPoint(iconAncX, iconAncY);
		icon.infoWindowAnchor = new GPoint(infoWinAncX, infoWinAncY);
		return icon;
	}
	
	// ----------------------------------------------------------------------------------------------------------------------------------
	
	// 初期化
	function init() {
		document.getElementById('advance-control-area').style.display = "none";
		document.getElementById('day').value = "";
		document.getElementById('hour').value = "";
		
		readMap();
	};
	
	// 検索条件初期化
	function srcClear() {
		srckey("");
	}
	
	// 詳細検索領域の表示／非表示切り替え
	function toggleadvance() {
		if(adv_disp == "0"){
			document.getElementById('advance-control-area').style.display = "block";
			adv_disp = "1";
		}else{
			document.getElementById('advance-control-area').style.display = "none";
			document.getElementById('day').value = "";
			document.getElementById('hour').value = "";
			adv_disp = "0";
			readMap();
		}
	}
	
	// 検索キーフィールドに値挿入
	function srckey(keyword) {
		document.getElementById("key").value = keyword;
		document.getElementById('candidate-area').style.display = "none";
		readMap();
		return 1;
	};

	function loadSrcCandidate_P() {
		loadSrcCandidate('p');
	}

	function loadSrcCandidate_U() {
		loadSrcCandidate('u');
	}
	
	// 検索条件候補を構成
	function loadSrcCandidate(cloudtype) {
	
		document.getElementById('candidate-area').style.display = "block";
		
		var url="./xml_key.php?";
		url= url + "code=" +document.getElementById("code").value + "&";
		url= url + "mode="+cloudtype;

		var myname = document.getElementById("code").value;
		var swlink = '<a href="#" onclick="loadSrcCandidate_U();">参照履歴</a> | <a href="#" onclick="loadSrcCandidate_P();">登録履歴</a><hr />';
		if(cloudtype == 'p'){
			document.getElementById("candidate-area").innerHTML = swlink + myname + "がよく登録するキーワード [<a href='#' onclick='srcClear();'>x</a>]<br /><br />";
		}
		if(cloudtype == 'u'){
			document.getElementById("candidate-area").innerHTML = swlink + myname + "がよく参照するキーワード [<a href='#' onclick='srcClear();'>x</a>]<br /><br />";
		}
		
		
		GDownloadUrl(url, function(data, responseCode) {
			var xml = GXml.parse(data);
			var keywords = xml.documentElement.getElementsByTagName("keyword");
			
			for (var i = 0; i < keywords.length; i++) {
				var myList = "";
				var key_str= String(keywords[i].getAttribute("str"));
				var key_num= String(keywords[i].getAttribute("num"));

				myList = document.getElementById("candidate-area").innerHTML;
				var myKey = "'" + key_str + "'";
				var myLine = '・<a href="#" onclick="srckey('+myKey+');" class="kwd">'+key_str+'</a><span class="key-num">('+key_num+')</a>';
					
				document.getElementById("candidate-area").innerHTML = myList + myLine + "<br />";
			}
		});
	}

	
	
	// マップ内容更新
		function readMap() {
			
			// 検索候補非表示
			document.getElementById('candidate-area').style.display = "none";
			
			// 中心点取得
			var center = map.getCenter();
			
			// 画面表示初期化
			document.getElementById("mashup-hotp-area").innerHTML = "<img src='./img/loading.gif'> loading...";
			document.getElementById("list-area").innerHTML = "<img src='./img/loading.gif'> loading...";
			document.getElementById("keyword-area").innerHTML = "<img src='./img/loading.gif'> loading...";
			map.clearOverlays();
						
			// --------------------------------------------------------------------------
			// 矩形範囲枠の描画
			var lat_rng = (document.getElementById("rng").value)/1.1;
			var lon_rng = (document.getElementById("rng").value)/0.91;

			var points = [];
			points[0] = new GLatLng((center.y -lat_rng),(center.x - lon_rng));
			points[1] = new GLatLng((center.y +lat_rng),(center.x - lon_rng));
			points[2] = new GLatLng((center.y +lat_rng),(center.x + lon_rng));
			points[3] = new GLatLng((center.y -lat_rng),(center.x + lon_rng));
			points[4] = new GLatLng((center.y -lat_rng),(center.x - lon_rng));
			var polyline = new GPolyline(points,"#ff0000",4, 0.5);
			map.addOverlay(polyline);
			
			var points = [];
			points[0] = new GLatLng((center.y -lat_rng/10),center.x);
			points[1] = new GLatLng((center.y +lat_rng/10),center.x);
			var polyline_v = new GPolyline(points,"#ff0000",4, 0.5);
			map.addOverlay(polyline_v);
			
			var points = [];
			points[0] = new GLatLng(center.y,(center.x - lon_rng/10));
			points[1] = new GLatLng(center.y,(center.x + lon_rng/10));
			var polyline_h = new GPolyline(points,"#ff0000",4, 0.5);
			map.addOverlay(polyline_h);
			

			
			// --------------------------------------------------------------------------
			// URL構成
			var url_q = "";
			url_q= url_q + "lat=" +String(center.y) + "&";
			url_q= url_q + "lon=" +String(center.x)+ "&";
			url_q= url_q + "rng=" +document.getElementById("rng").value + "&";
			url_q= url_q + "time=" +document.getElementById("time").value + "&";
			url_q= url_q + "term=" +document.getElementById("term").value + "&";
			url_q= url_q + "rel=" +document.getElementById("rel").value + "&";
			url_q= url_q + "key=" +document.getElementById("key").value + "&";
			url_q= url_q + "code=" +document.getElementById("code").value + "&";
			url_q= url_q + "mode=" +document.getElementById("mode").value + "&";
			url_q= url_q + "day=" +document.getElementById("day").value + "&";
			url_q= url_q + "hour=" +document.getElementById("hour").value + "";
			
			// rss URL の更新
			var url_rss = "./rss.php?" + url_q ;
			document.getElementById("rssurl").href = url_rss;
			document.getElementById("rsslink").href = url_rss;
			
			// --------------------------------------------------------------------------
			// マップ処理
			var url="./xml_map.php?" + url_q ;
			
			GDownloadUrl(url, function(data, responseCode) {
				var xml = GXml.parse(data);
				var markers = xml.documentElement.getElementsByTagName("mail");
				
				document.getElementById("list-area").innerHTML = "該当件数" + markers.length + "件<br />";
				
				var disp_max_num = 100;
				if(markers.length < 100){
					disp_max_num = markers.length;
				}
				
				for (var i = 0; i < markers.length; i++) {
					// XMLパース
					//var lat = parseFloat(markers[i].getAttribute("lat"));
					//var lon = parseFloat(markers[i].getAttribute("lon"));
					var lat = String(markers[i].getAttribute("lat"));
					var lon = String(markers[i].getAttribute("lon"));
					var m_id = String(markers[i].getAttribute("m_id"));
					var subject = String(markers[i].getAttribute("subject"));
					var body = String(markers[i].getAttribute("body"));
					var date = String(markers[i].getAttribute("date"));
					var time = String(markers[i].getAttribute("time"));
					var code = String(markers[i].getAttribute("code"));
					var file = String(markers[i].getAttribute("file"));
					var rel = String(markers[i].getAttribute("rel"));
					
					// リスト構成
					var myList = document.getElementById("list-area").innerHTML;
					var myLine = "<span class='maildate'>"+date+" "+time+"</span>:";
					myLine = myLine+" <a href='dtl.php?code="+document.getElementById("code").value+"&m_id="+m_id+"'>";
					myLine = myLine+subject+"</a><span class='mailcode'>("+code+")"+"</span><br />";
					document.getElementById("list-area").innerHTML = myList + myLine;
				}
				
				for (var i = 0; i < disp_max_num; i++) {

					// XMLパース
					//var lat = parseFloat(markers[i].getAttribute("lat"));
					//var lon = parseFloat(markers[i].getAttribute("lon"));
					var lat = String(markers[i].getAttribute("lat"));
					var lon = String(markers[i].getAttribute("lon"));
					var m_id = String(markers[i].getAttribute("m_id"));
					var subject = String(markers[i].getAttribute("subject"));
					var body = String(markers[i].getAttribute("body"));
					var date = String(markers[i].getAttribute("date"));
					var time = String(markers[i].getAttribute("time"));
					var code = String(markers[i].getAttribute("code"));
					var file = String(markers[i].getAttribute("file"));
					var rel = String(markers[i].getAttribute("rel"));
					
					// マーカー構成
					var point = new GLatLng(lat,lon);
					var mymaker = "marker"+i;
					var mymessage = subject+"<br /><p class='mailbody'>"+body+"</p><img src='../../his2006/"+code+"/images/"+file+"' />";
					
					// 人の関係に応じてマーカアイコンを変更
					if(String(rel) == "0"){
						mymaker= new GMarker(point, {draggable: true,title: subject});
					}else if(String(rel) == "1"){
						mymaker = new GMarker(point,icn_lv1);
					}else{
						mymaker = new GMarker(point,icn_lv);
					}
					
					createInfoWindow(mymaker,mymessage);
					map.addOverlay(mymaker);
				}
			});
			// --------------------------------------------------------------------------
			// ホットペッパ処理
			
			
			var myurl="./xml_get_hp.php?";
			myurl = myurl + "Latitude="+String(center.y);
			myurl = myurl + "&Longitude="+String(center.x);
			myurl = myurl + "&Longitude="+String(center.x);
			
			var myrng = document.getElementById("rng").value;
			var rng = "1";
			
			if(myrng == 0.003){ rng = 1};
			if(myrng == 0.005){ rng = 2};
			if(myrng == 0.01){ rng = 3};
			if(myrng == 0.02){ rng = 4};
			if(myrng == 0.03){ rng = 5};
			
			myurl = myurl + "&Range="+rng;
			
			GDownloadUrl(myurl, function(data, responseCode) {
				var xml = GXml.parse(data);
				var num = xml.documentElement.getElementsByTagName("NumberOfResults")[0].firstChild.nodeValue;
				var shops = xml.documentElement.getElementsByTagName("ShopName");
				// alert(shops.length);
				var shoplist = "<small>該当件数 "+num+" 件 | 100件まで表示</small><ul>";
				

				
				
				for (var i = 0; i < shops.length; i++){
				
					var shop = xml.documentElement.getElementsByTagName("ShopName")[i].firstChild.nodeValue;
					var url = xml.documentElement.getElementsByTagName("ShopUrl")[i].firstChild.nodeValue;
					var access = xml.documentElement.getElementsByTagName("Access")[i].firstChild.nodeValue;
					var image = xml.documentElement.getElementsByTagName("MbSmallImg")[i].firstChild.nodeValue;
					var lat = xml.documentElement.getElementsByTagName("Latitude")[i].firstChild.nodeValue;
					var lon = xml.documentElement.getElementsByTagName("Longitude")[i].firstChild.nodeValue;
					
					// リスト構成
					shoplist = shoplist + "<li><a href='"+url+"' target='_blank'>"+shop+"</a><br /><img src='"+image+"' /><br /><span>写真提供：ホットペッパー.jp</span></li>";
				
					// マーカー構成
					var point = new GLatLng(lat,lon);
					var mymaker = "hp_marker"+i;
					var mymessage = "<a href='"+url+"' target='_blank'>"+shop+"</a><br /><img src='"+image+"' /><br />" + access;

					mymaker= new GMarker(point, {draggable: true,title: shop});
					createInfoWindow(mymaker,mymessage);
					map.addOverlay(mymaker);
				}
				
				shoplist = shoplist + "</ul>";
				document.getElementById("mashup-hotp-area").innerHTML = shoplist;
			});
			
			// --------------------------------------------------------------------------
			// キーワード処理
			var url="./xml_key.php?" + url_q ;

			GDownloadUrl(url, function(data, responseCode) {
				var xml = GXml.parse(data);
				var keywords = xml.documentElement.getElementsByTagName("keyword");
				
				var mymode = document.getElementById("mode").value;
				document.getElementById("keyword-area").innerHTML = "この領域でよく使われるキーワード<br />";
				
				for (var i = 0; i < keywords.length; i++) {

					var myList = "";
					var key_str= String(keywords[i].getAttribute("str"));
					var key_num= String(keywords[i].getAttribute("num"));

					myList = document.getElementById("keyword-area").innerHTML;
					var myKey = "'" + key_str + "'";
					var myLine = '<a href="#" onclick="srckey('+myKey+');" class="kwd">'+key_str+'</a><span class="key-num">('+key_num+')</a>';
					document.getElementById("keyword-area").innerHTML = myList + myLine + ",";
				}
			});

		};
		
		
