var map;
var markersArray = [];
var infowindow = new google.maps.InfoWindow();

function addMarker(location, title, marker_data) {
	marker = new google.maps.Marker({
		position: location,
		title: title,
		map: map
	});
	markersArray.push(marker);
	var nrOfMarkers = markersArray.length-1;
	google.maps.event.addListener(marker, 'click', function() {
		attachInfoWindow(nrOfMarkers, marker_data);
	});
}

function attachInfoWindow(index, data) {
	infowindow.setContent(data);
	infowindow.open(map, markersArray[index]);
}

function ShowInfoWindow(oPositionZoom) {
  if (markersArray) {
	for (i in markersArray) {
	  var oPosition = markersArray[i].getPosition();
	  if(oPositionZoom.lat()==oPosition.lat() && oPositionZoom.lng()==oPosition.lng()) google.maps.event.trigger(markersArray[i], 'click');
	}
  }
}

function clearOverlays() {
  if (markersArray) {
	for (i in markersArray) {
	  markersArray[i].setMap(null);
	}
  }
}

function showOverlays() {
  if (markersArray) {
	for (i in markersArray) {
	  markersArray[i].setMap(map);
	}
  }
}

function deleteOverlays() {
  if (markersArray) {
	for (i in markersArray) {
	  markersArray[i].setMap(null);
	}
	markersArray.length = 0;
  }
}

function centerMarker(iLat, iLng) {
	map.setCenter(new google.maps.LatLng(iLat, iLng));
	map.setZoom(16);
	ShowInfoWindow(new google.maps.LatLng(iLat, iLng));
}
