
window.onload =  function() {
  var imgObj = document.images;
  for (i=0; i<imgObj.length; i++) {
    if ( imgObj[i].id.match(/img_map\d+/) ){
      var gmap = GoogleMap(document.getElementById(imgObj[i].id));
    }
  }
}

function GoogleMap(IMG_MAP){
	//GoogleMapsの代替画像の情報が渡ってきた場合
  if (IMG_MAP) {
		var MapData = IMG_MAP.name.replace(/<wbr>/g,'');
    var arrayName = MapData.split(',');

		var map_id    = arrayName[0];   //地図を埋めるdivのidを取得
		var CenterLat = arrayName[1];   //地図の中央の緯度を取得
		var CenterLng = arrayName[2];   //地図の中央の経度を取得
		var Zoom      = arrayName[3];   //地図のズームレベルを取得
		var Type      = arrayName[4];   //地図のタイプを取得
		var Size      = arrayName[5];   //地図のサイズを取得
		if (arrayName[6]) var Address   = arrayName[6];   //住所を取得
		if (arrayName[7]) var MarkLat   = arrayName[7];   //マーカーのを緯度を取得
		if (arrayName[8]) var MarkLng   = arrayName[8];   //マーカーのを経度を取得

  	//GoogleMapsの使用が可能である場合
	  if (GBrowserIsCompatible()) {

      //代替画像を非表示にする
  		IMG_MAP.style.width = Size;
  		IMG_MAP.style.height = "1px";
//  		IMG_MAP.style.display = 'none';
      //GoogleMapsを埋めるdivタグを取得
  		var MAP = document.getElementById(map_id);


      //divタグの大きさを設定
  		MAP.style.width = Size;
  		MAP.style.height = Size;
      
      //GoogleMapsの地図タイプが｢両方｣であった場合、
      //地図の下部分のGoogleについての情報の文字が地図から
      //はみ出てしまうので表示しないようにする
  		MAP.style.overflow = "hidden";
      
      //GoogleMapsを埋める
  		var map = new GMap2(MAP);
  		map.addControl(new GMapTypeControl(true));
  		map.addControl(new GSmallMapControl());
  		var Center = new GLatLng(CenterLat,CenterLng);
      //GoogleMapsの表示する中心の緯度・経度を設定
  		map.setCenter(Center);
      //GoogleMapsのズームレベルを設定
  		map.setZoom( parseInt(Zoom) );
      //GoogleMapsの地図タイプを設定

	var maptypes;

	if( Type == 'G_MAP_TYPE' )
	{
		maptype = map.getMapTypes()[0];
	} else if( Type == 'G_SATELLITE_TYPE' ) {
		maptype = map.getMapTypes()[1];
	} else {
		maptype = map.getMapTypes()[2];
	}

	map.setMapType( maptypes );

      //マーカーを設定
      //マーカーの緯度・経度の値が渡ってきた場合
      if ( MarkLat != 'undefined' && MarkLng != 'undefined' ){

        //マーカーを設定
    		var Mark = new GLatLng(MarkLat,MarkLng);
    		var marker = new GMarker(Mark);
    		map.addOverlay(marker);

        //情報ウィンドウに住所を表示するよう設定
        var addHtml = '住所：<div style="color:#0000ff; font-weight: bold; font-size: 12px;">' + Address + '</div>';
        marker.openInfoWindowHtml(addHtml);

        //情報ウィンドウ表示すると、画面に収まるよう表示位置が移動してしまうので、表示後に元の表示位置へ移動する
        GEvent.addListener(map, "infowindowopen", function(){map.panTo(Center);} );
      }
    }else{
      alert('Google Maps API Key が正しくありません。');
    }
	}
}
