﻿

//==================== Build a marker icon =========================
    var baseIcon = new GIcon();
    baseIcon.image = "http://www.google.com/intl/zh-TW_ALL/mapfiles/ms/icons/blue.png";
    baseIcon.shadow = "http://www.google.com/intl/zh-TW_ALL/mapfiles/ms/icons/msmarker.shadow.png";
	baseIcon.iconSize = new GSize(32, 32);
	baseIcon.shadowSize = new GSize(59, 32);
	baseIcon.iconAnchor = new GPoint(9, 34);
	baseIcon.infoWindowAnchor = new GPoint(9, 2);
	baseIcon.infoShadowAnchor = new GPoint(18, 25);
//==================================================================

	
//===================== Add a normal marker ========================
    function createMarker(point, map, msg) {
      var icon = new GIcon(baseIcon);
      var marker = new GMarker(point, icon);
      // Open an info window when click
      GEvent.addListener(marker, "click", function() {
		map.panTo(point);
        marker.openInfoWindowHtml(msg);
      });
      return marker;
    }
//==================================================================


//================== Add a draggable marker ========================
    function dragMarker(point, map) {
        var icon = new GIcon(baseIcon);
		var marker = new GMarker(point, {draggable: true});
		// Close all info windows when begin drag
		GEvent.addListener(marker, "dragstart", function() {
		  map.closeInfoWindow();
		  });
		// Update XY into textfield
		GEvent.addListener(marker, "drag", function() {
			var pos_xy = marker.getPoint();
			markerXY(pos_xy);
		  });
        return marker;
	}
//==================================================================


//================= Get XY and put into textfield ==================
	function markerXY(value_xy) {
		var pos_full = value_xy.toString();
		var pos_middle = pos_full.indexOf(",");
		var pos_end = pos_full.indexOf(")");
		document.getElementById("position_x").value = pos_full.substring(1, pos_middle);
		document.getElementById("position_y").value = pos_full.substring(pos_middle+2, pos_end);
	}
//==================================================================


//=============== Get Zoom level put into textfield ================
	function getZoom(map) {
      GEvent.addListener(map, "move", function() {
		var zoom = map.getZoom();
		document.getElementById("zoom_level").innerHTML = '['+zoom.toString()+']';
      });
      return marker;
	}
//==================================================================

