var map = null;
var geocoder = null;
var SatMode=false;
var TypeCtr;
var SmallCtr;
function e(id){
		return document.getElementById(id);
}
function load(home, zoom) {
  if (GBrowserIsCompatible()) {
    map = new GMap2(document.getElementById("map"));
    map.setCenter(home, zoom);
    map.savePosition();
    SmallCtr=new GSmallMapControl();
    map.addControl(SmallCtr);
    TypeCtr=new GMapTypeControl();
    geocoder = new GClientGeocoder();
    GEvent.addListener(map, "click", function(marker, point) {
		  if (marker) {
		    map.removeOverlay(marker);
		  }
	});
  }
}
function goV(dove, base, zoom) {
  if (geocoder) {
    geocoder.getLatLng(
      dove + base,
      function(point) {
        if (!point) {
          alert(dove + " non trovato");
        } else {
          map.setCenter(point, zoom);
          var marker = new GMarker(point, {title: dove});
          map.addOverlay(marker);
        }
      }
    );
  }
}
function cmdSat(){
	if (SatMode){
		map.setMapType(G_NORMAL_MAP);
		map.removeControl(TypeCtr);
	}else{
		map.setMapType(G_SATELLITE_MAP);
		map.addControl(TypeCtr);
	}
	SatMode=!SatMode;
}
function goHome(){
	map.returnToSavedPosition();
}
function goTop() {
	var marker = new GMarker(map.getCenter());
	map.addOverlay(marker);
	map.setZoom(5);
	map.panTo(new GLatLng(42.55, 12.30));
}
function round6(x){
    	return Math.round(x*1000000)/1000000;
}
function getUrl(){
	var ubase="http://www.comuni-italiani.it/mappa/?";
	var mt=map.getCurrentMapType();
	var pmt;
	if (mt==G_SATELLITE_MAP){
		pmt="&t=k";
	}else if (mt==G_HYBRID_MAP){
		pmt="&t=h";
	}else{
		pmt="";
	}
	return ubase + "ll=" + round6(map.getCenter().lat()) + "," + round6(map.getCenter().lng()) + "&z=" + map.getZoom() + pmt;
}
function goBig(){
	window.open(getUrl(), "_top");
}
function goC(lat, lng, zoom){
	map.setZoom(zoom);
	map.panTo(new GLatLng(lat, lng));
	return false;
}
