var map;
var markers=[];
var number=0;
var count=0;
var infoWindow;
var stopClick = false;

function anim() {
if(count < markers.length) {
	map.panTo(markers[count].marker.getPosition());
	infoWindow.setContent(markers[count].content);
	infoWindow.open(map, markers[count].marker);
	var delay = 4200;
	count++;
	route = setTimeout("anim()", delay);
	}
else {
	clearTimeout(route);
	count = 0;
	route = null;
	}
}

function haltAnim() {
if(route) {
	clearTimeout(route);
	stopClick = true;
	}
}

function carryOn() {
if(stopClick == true) anim();
stopClick = false;
}

function initialize() {
var myLatlng = new google.maps.LatLng(45.07, 7.67);
var myOptions = {
	zoom: 5,
	center: myLatlng,
	mapTypeId: google.maps.MapTypeId.SATELLITE
	}
map = new google.maps.Map(document.getElementById("map"), myOptions);   
infoWindow = new google.maps.InfoWindow();
google.maps.event.addListenerOnce(map, 'tilesloaded', addMarkers);

	function addMarkers () {
	jQuery.get("/comuni/lavori.xml", {}, function(data) {
	jQuery(data).find("Placemark").each(function(d) {
	var Placemark = jQuery(this);
	var name = Placemark.find("name").text();
	var description = Placemark.find('description').text();
	var styleUrl = Placemark.find('styleUrl').text();
	var Point = Placemark.find("Point");
	var coordinates = Point.find('coordinates').text();
	var coord = coordinates.split(',');
	var latlng = new google.maps.LatLng(parseFloat(coord[1]),parseFloat(coord[0]));
	                                    
		function createMarker (map, position, number, title, description, styleUrl) {
		var marker = new google.maps.Marker({position: position, map: map, number:number, name:name, description:description});
		var html = name + '<br>' + description;
		google.maps.event.addListener(marker, 'click', function() {
			infoWindow.setContent(html);
			infoWindow.open(map, marker);
			});
		return {marker:marker,content:html};
	    }
		markers.push(createMarker(map, latlng, number, name, description, styleUrl));	
		number = number+1;
		});
    });
route =setTimeout("anim()", 3600);
}

}

google.setOnLoadCallback(initialize);
