var imgpath 	= "/images/googlemaps/";
var icons 		= new Object();

var bounds 		= new GLatLngBounds();
var gmap;
var gmarkers	= [];
var points 		= [];
var polygon		= null;
var gmarkerdata	= [];
var i = 0;

var defaultzoom		= 6;
var defaultlatt		= 49.7245;
var defaultlong		= 9.8438;
/********************************* INITIALIZE MAP ***********************************/
function init_gmap() {
	if (GBrowserIsCompatible()) {
		gmap = new GMap2(document.getElementById("etw2gmap"));
		gmap.disableDoubleClickZoom();
		gmap.addControl(new GSmallZoomControl());
		//gmap.setCenter(new GLatLng(defaultlatt,defaultlong), defaultzoom);
		gmap.setCenter(new GLatLng(0,0),0);
		GEvent.addListener(gmap, "move", function() {
		});
		gmap.resetMap = function(lat,lng,z) {
			gmap.setCenter(new GLatLng(lat,lng),z);
			xmlHandler(z);
		}
		drawMakers();
		drawShape(points,"red",2,1,"",0);
	}
}
/******************************** CUSTOM MARKER ICONS ********************************/
icons.smallmarker = new GIcon();
icons.smallmarker.image = imgpath + "gmmarker_50.png";
icons.smallmarker.iconSize = new GSize(25,26);
icons.smallmarker.iconAnchor = new GPoint(12,24);
icons.smallmarker.infoWindowAnchor = new GPoint(12,1);

icons.tinymarker = new GIcon();
icons.tinymarker.image = imgpath + "gmmarker_25.png";
icons.tinymarker.iconSize = new GSize(13,13);
icons.tinymarker.iconAnchor = new GPoint(6,12);
icons.tinymarker.infoWindowAnchor = new GPoint(6,1);
/****************************  MapsData Helper Functions  ****************************/
function addPolygonPoint(point) {
	if ( point )
		points.push(point);
}
function addDataItem(point,label,icon) {
	var item = new Object({point:point,label:label,icon:icon});
	gmarkerdata.push(item);
}
/**************************** GoogleMaps Helper Functions ****************************/
function createMarker(point,label,icon) {
	var marker = new GMarker(point, {icon:icon,title:label});
	gmarkers[i] = marker;
	i++;
	return marker;
}
function clearAllMarkers() {
	gmap.clearOverlays();
}
function drawMakers() {
	for ( j = 0; j < gmarkerdata.length; j++ ) {
		var marker = createMarker(gmarkerdata[j].point,gmarkerdata[j].label,gmarkerdata[j].icon);
		bounds.extend(gmarkerdata[j].point);
		gmap.addOverlay(marker);
	}
	gmap.setZoom(gmap.getBoundsZoomLevel(bounds));
	gmap.setCenter(bounds.getCenter());
}
function drawShape(pts,c,w,o,f,fo) {
	if (polygon) {
      gmap.removeOverlay(polygon);
    }
    polygon = new GPolygon(pts,c,w,o,f,fo);
    gmap.addOverlay(polygon);
}
