//マーカーを生成するクロージャ
function createMarker( point , contents ) {
	
  	var marker = new GMarker( point );
	var html = contents;
	
	GEvent.addListener( marker , 'click' , function() {
		marker.openInfoWindowHtml( html );
	});
	
	return marker;
	
}

//地図表示の移動
function map_move( search ){
	
	var marker;
	
	if ( arguments[1] != "" ) {
		part = 1;
		arg1 = "?U=" + search;
	} else {
		part = 0;
		arg1 = "?S=" + search;
	}
	
	var request = GXmlHttp.create();
	var url = "/shop/shop_info.php" + arg1;
	var contents = "";
	request.open( "GET" , url , true );
	request.onreadystatechange = function() {
		
		if ( request.readyState == 4 ) {
//alert( request.responseText );
			
			var xmlDoc = GXml.parse( request.responseText );
			var lat = xmlDoc.getElementsByTagName( "lat" );
			var lng = xmlDoc.getElementsByTagName( "lng" );
			var name = xmlDoc.getElementsByTagName( "name" );
			var address = xmlDoc.getElementsByTagName( "address" );
			var tel = xmlDoc.getElementsByTagName( "tel" );
			var url = xmlDoc.getElementsByTagName( "url" );
			var gazo = xmlDoc.getElementsByTagName( "gazo" );
			
			var lat_txt = "";
			var lng_txt = "";
			var name_txt = "";
			var address_txt = "";
			var tel_txt = "";
			var url_txt = "";
			var gazo_txt = "";
			
			for ( var i=0 ; i < lat.length ; i++ ) {
				
				lat_txt = parseFloat( lat[i].firstChild.nodeValue );
				lng_txt = parseFloat( lng[i].firstChild.nodeValue );
				name_txt = name[i].firstChild.nodeValue;
				address_txt = address[i].firstChild.nodeValue;
				tel_txt = tel[i].firstChild.nodeValue;
				url_txt = url[i].firstChild.nodeValue;
				gazo_txt = gazo[i].firstChild.nodeValue;
				
				contents = "<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" width=\"370\">";
				contents += "<tr>";
				contents += "<td width=\"110\" align=\"center\" valign=\"top\">";
				if ( gazo_txt == "NOTHING" ) {
					//contents += "<br>画像なし";
					contents += "<a href=\"" + url_txt + "\" target=\"_blank\"><img src=\"/images/preparation.gif\" border=\"0\"></a>";
				} else {
					contents += "<a href=\"" + url_txt + "\" target=\"_blank\"><img src=\"" + gazo_txt + "\" border=\"0\"></a>";
				}
				contents += "</td>";
				contents += "<td align=\"left\" valign=\"top\">";
				contents += "<font size=\"3\"><b>" + name_txt + "</b></font><br>";
				contents += address_txt + "<br>";
				contents += tel_txt + "<br>";
				contents += "<a href=\"" + url_txt + "\" target=\"_blank\">店舗トップページ</a>";
				contents += "</td>";
				contents += "</tr>";
				contents += "</table>";
				
				if ( part == 0 ) {
//alert( contents );
	        		var point = new GLatLng( lat_txt , lng_txt );
					
	        		marker = createMarker( point , contents );
	        		map.addOverlay( marker );
					
				}
				
			}
			
			if ( part == 1 ) {
				var point = new GLatLng( lat_txt , lng_txt );
				map.panTo( point );
//				map.openInfoWindowHtml( point , contents , new GSize( 4,-2 ) );
				map.openInfoWindowHtml( point , contents );
			} else {
				
			}
			
		}
		
	}
	request.send( null );
	
}

