var marker;
var map;
var CRNTER=new GLatLng(36.701226, 137.21319);
var prefecture ="富山県";
var URL="http://toyama.apamap.net";

function load(retsql) {
	if(document.getElementById("map")){
		if (GBrowserIsCompatible()) {
			// mapオブジェクトを生成する
			map = new GMap2(document.getElementById("map"));
			// geocoderオブジェクトを生成する
			geocoder = new GClientGeocoder();
			// controlを追加する
			map.addControl(new GLargeMapControl());
			// ベースアイコン設定
			var baseicon=new GIcon();
			baseicon.image=URL+"/img/m.png";
			baseicon.shadow=URL+"/img/shadow.png";
			baseicon.shadowSize=new GSize(37,34);
			baseicon.iconSize=new GSize(20,34);
			baseicon.iconAnchor=new GPoint(10,34);
			baseicon.infoWindowAnchor = new GPoint(10,2);


				if(document.getElementById("mode").value==0){//モード 管理:0 標準:1 検索:2 物件詳細モード:3
					baseicon.image=URL+"/img/m.png";
					baseicon.shadow=URL+"/img/shadow.png";
					//管理モード
					var get_point =new GLatLng(36.701226, 137.21319);
					if (document.getElementById("move_flg").value=="true"){
						marker = new GMarker(get_point,{icon:baseicon,draggable:true}); 
					}else{
						marker = new GMarker(get_point,{icon:baseicon,draggable:false}); 
					}
					var get_point=new GLatLng(document.getElementById("map_lat").value,document.getElementById("map_lng").value);
					// マーカーをドラッグしたときの情報を取得
					GEvent.addListener(marker,"dragend",function(){
						if(document.getElementById("map_lat")!=null){
							var slatlng=marker.getPoint();
							document.getElementById("map_lat").value=slatlng.lat();
							document.getElementById("map_lng").value=slatlng.lng();
						}
					});
					map.setCenter(get_point, 10);
					marker.setPoint(get_point);
					map.addOverlay(marker);
				}else if(document.getElementById("mode").value==1){//標準(トップページ)
					var get_point =new GLatLng(36.701226, 137.21319);
					map.setCenter(get_point, 10);
					roop(retsql);
				}else if(document.getElementById("mode").value==2){//検索モード
						var get_point =new GLatLng(36.701226, 137.21319);
						map.setCenter(get_point, 10);
						//DBから位置情報を取得しマーカーを追加
						roop(retsql);
				}else if(document.getElementById("mode").value==3){//物件詳細モード
					baseicon.image=URL+"/img/m.png";
					baseicon.shadow=URL+"/img/shadow.png";
					var get_point=new GLatLng(document.getElementById("map_lat").value,document.getElementById("map_lng").value);
					marker = new GMarker(get_point,{icon:baseicon,draggable:false}); 
					map.setCenter(get_point, 16);
					marker.setPoint(get_point);
					map.addOverlay(marker);
				}
	
		}
	}
}

function roop(retsql){
	var gb;
	var first = 1;
	var str_link = URL+"/bukkens/";

	for (var i=0; i<retsql.data.length;i++) {
		var point = new GLatLng(retsql.data[i].map_lat, retsql.data[i].map_lng);
		var str_title = retsql.data[i].name ;
		//画像パス
		if(retsql.data[i].thumbnail!=""){
			var photo_path="photo/"+retsql.data[i].user_id+"/"+retsql.data[i].thumbnail+" height='76' align='left' class='thum'>";
		}else{
			var photo_path="no_image_thum02.gif"+" height='76' align='left' class='thum'>";
		}
		//情報ウィンドウ
		var htmlstr="<div id='info'>"
		//+"<img src="+URL+'/img/icon_com.gif'+ ' alt="icon" class="icon-com" />'
		+"<div class='icon-com'><a href='"+str_link+"detail/"+retsql.data[i].user_id+"/"+retsql.data[i].id+"'>"
		+retsql.data[i].name+"</a></div>"
		+"<img src="+URL+"/img/"+photo_path
		+"<p>間取り："+madori(retsql.data[i].madori)+"</p>"
		+"<p>賃料："+figout(retsql.data[i].price)+"円</p><div>"
		;
		//マーカー追加
		marker=_marker(point,i,htmlstr,str_title);
		
		if(retsql.data[i].map_lat!=0){
			map.addOverlay(marker);
			//自動縮尺
			if(first){
			  gb = new GLatLngBounds(marker.getPoint(), marker.getPoint());
			  first = 0;
			}else{
			  var point = marker.getPoint();
			  gb.extend(point);
			}
		}
	}
	map.setCenter(gb.getCenter(),map.getBoundsZoomLevel(gb));
}

function madori(num){
	if (num==1) {return "1R";}
	if (num==2) {return "1K・1DK・1LDK";}
	if (num==3) {return "2K・2DK・2LDK";}
	if (num==4) {return "3K・3DK・3LDK";}
	if (num==5) {return "4K・4DK・4LDK";}
	if (num==6) {return "5K・5DK・5LDK";}
}

//マーカーをクリックしたら、情報ウィンドウを表示させる
function _marker(point,i,htmlstr,str_title){
	//アイコン設定
	icon=new GIcon();
	icon.image=URL+"/img/m"+(i+1)+".png";
	icon.shadow=URL+"/img/shadow.png";
	icon.shadowSize=new GSize(37,34);
	icon.iconSize=new GSize(20,34);
	icon.iconAnchor=new GPoint(10,34);
	icon.infoWindowAnchor = new GPoint(15,7);

	var marker = new GMarker(point,{icon:icon,title:str_title});
	GEvent.addListener(marker, "click", function() {
		old_center=map.getCenter();
		old_zoom=map.getZoom()
		map.setCenter(point, 17);
		marker.openInfoWindowHtml(htmlstr);
	});
	GEvent.addListener(marker, "infowindowclose", function() {
		map.setCenter(old_center);
		map.setZoom(old_zoom);
	});
	return marker;
}

function showAddress() { 
	var city=document.getElementById("BukkenArea").value;
	var town=document.getElementById("address").value;
	var address=prefecture+city+town;
	geocoder = new GClientGeocoder();
	geocoder.getLatLng( 
		address, 
		function(point) { 
			if (!point) { 
				alert(address + " が見つかりませんでした。"); 
			} else { 
			map.setCenter(point, 18); 
			marker.setPoint(point);
			document.getElementById("map_lat").value=point.lat();
			document.getElementById("map_lng").value=point.lng();
			} 
		}); 
} 

//カンマ区切りを返す
function figout(n){
var l,m='';
n=''+n;
while((l=n.length)>3) {
m=","+n.substr(l-3,3)+m;
n=n.substr(0,l-3);
}
n=''+n+m;
return n;
}
