$(document).ready(mapInit);


/**
 * 地图初始化
 */
function mapInit() {
  //坐标和说明
  if(!window.positions){
    window.positions = {
      'center':[31.20736,121.464951],
      'marks':[
        [31.20736,121.464951,  '星之健身卢湾店','星之健身卢湾店']
      ]
    }
  };

  //为所有的标注创建一个“基准”图标，并指定它的阴影、尺寸、锚点等
  window.baseIcon = new GIcon();
  baseIcon.shadow = "http://ditu.google.com/mapfiles/shadow50.png";
  baseIcon.iconSize = new GSize(20, 34);
  baseIcon.shadowSize = new GSize(37, 34);
  baseIcon.iconAnchor = new GPoint(9, 34);
  baseIcon.infoWindowAnchor = new GPoint(9, 2);
  baseIcon.infoShadowAnchor = new GPoint(18, 25);

  //初始化
  $("body").unload( function() { GUnload(); } );
  load();
}


/**
 * 地图加载
 */
function load() {
  if (! GBrowserIsCompatible() ) return;

  var map = new GMap2(document.getElementById("googlemap"));
  map.setCenter(new GLatLng(positions.center[0], positions.center[1]), 16);

  //添加控件
  //map.addControl(new GLargeMapControl());     //平移和缩放控件
  map.addControl(new GSmallMapControl ());     //小号型平移/缩放控件
  //map.addControl(new GScaleControl());        //比例尺
  //map.addControl(new GOverviewMapControl());  //缩略图


  //添加标注
  for(var i=0; i<positions.marks.length; i++){
    var point = new GLatLng(positions.marks[i][0],positions.marks[i][1]);
    map.addOverlay(createMarker(point, i));
  }
}


/**
 * 在给定的点上创建带编号的标注
 */
function createMarker(point, index) {
  // 利用我们的图标类，为这个标注创建一个带字母的图标
  var letter = String.fromCharCode("A".charCodeAt(0) + index);
  var icon = new GIcon(baseIcon);
  icon.image = "http://ditu.google.com/mapfiles/marker" + letter + ".png";
  var marker = new GMarker(point, icon);
  GEvent.addListener(marker, "click", function() {
    //marker.openInfoWindowHtml("标注 <b>" + letter + "</b><br />"+(positions.marks[index][2] || ''));
    marker.openInfoWindowHtml("<b>"+(positions.marks[index][2] || '')+"</b><br />"+(positions.marks[index][3] || ''));
  });
  return marker;
}
