
    var map;
    var geocoder;
	
//******* INIZIO ZOOM BUTTONS *********************// 
// A TextualZoomControl is a GControl that displays textual "Zoom In"
// and "Zoom Out" buttons (as opposed to the iconic buttons used in
// Google Maps).
	function TextualZoomControl() {
    }
    TextualZoomControl.prototype = new GControl();

    // Creates a one DIV for each of the buttons and places them in a container
    // DIV which is returned as our control element. We add the control to
    // to the map container and return the element for the map class to
    // position properly.
    TextualZoomControl.prototype.initialize = function(map) {
      var container = document.createElement("div");

      var zoomInDiv = document.createElement("div");
      this.setButtonStyle_(zoomInDiv);
      container.appendChild(zoomInDiv);
      zoomInDiv.appendChild(document.createTextNode("Zoom In"));
      GEvent.addDomListener(zoomInDiv, "click", function() {
        map.zoomIn();
      });

      var zoomOutDiv = document.createElement("div");
      this.setButtonStyle_(zoomOutDiv);
      container.appendChild(zoomOutDiv);
      zoomOutDiv.appendChild(document.createTextNode("Zoom Out"));
      GEvent.addDomListener(zoomOutDiv, "click", function() {
        map.zoomOut();
      });

      map.getContainer().appendChild(container);
      return container;
    }

    // By default, the control will appear in the top left corner of the
    // map with 7 pixels of padding.
TextualZoomControl.prototype.getDefaultPosition = function() {
      return new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(7, 7));
    }

    // Sets the proper CSS for the given button element.
TextualZoomControl.prototype.setButtonStyle_ = function(button) {
      button.style.textDecoration = "underline";
      button.style.color = "#0000cc";
      button.style.backgroundColor = "white";
      button.style.font = "small Arial";
      button.style.border = "1px solid black";
      button.style.padding = "2px";
      button.style.marginBottom = "3px";
      button.style.textAlign = "center";
      button.style.width = "6em";
      button.style.cursor = "pointer";
    }
//******* FINE ZOOM BUTTONS *********************//  

function load() {
      map = new GMap2(document.getElementById("map"));
      // Aggiunge i bottoni controllo proprietary
      // map.addControl(new TextualZoomControl());
      // Aggiunge i bottoni controllo standard
      map.addControl(new GSmallMapControl());
      //map.addControl(new GMapTypeControl());
      // parte da Piazza Vanvitelli
      map.setCenter(new GLatLng( 41.075022, 14.33211 ), 11);
      geocoder = new GClientGeocoder();     
    }
	
	function load_2(x,y,testo) {
      map = new GMap2(document.getElementById("map"));
      // Aggiunge i bottoni controllo proprietary
      // map.addControl(new TextualZoomControl());
      // Aggiunge i bottoni controllo standard
      map.addControl(new GSmallMapControl());
      //map.addControl(new GMapTypeControl());
      // parte da Piazza Vanvitelli
	  var center = new GLatLng(x, y);
      map.setCenter(center, 15);
      geocoder = new GClientGeocoder();
	  var marker = new GMarker(center);  
      map.addOverlay(marker);
	  marker.openInfoWindowHtml(testo);
    }

    // addAddressToMap() is called when the geocoder returns an
    // answer.  It adds a marker to the map with an open info window
    // showing the nicely formatted version of the address and the country code.
function addAddressToMap(response) {
      map.clearOverlays();
      if (!response || response.Status.code != 200) {
        alert("Sorry, we were unable to geocode that address");
      } else {
        place = response.Placemark[0];
       //DEBUG
       //alert(place.Point.coordinates[1]  + ', ' + place.Point.coordinates[0]);
        point = new GLatLng(place.Point.coordinates[1],
                            place.Point.coordinates[0]);
        marker = new GMarker(point);
        map.addOverlay(marker);
        marker.openInfoWindowHtml(place.address);
      }
    }
	
    // showLocation() is called when you click on the Search button
    // in the form.  It geocodes the address entered into the form
    // and adds a marker to the map at that location.
function showLocation() {
      var address = document.forms[0].q.value;
      geocoder.getLocations(address, addAddressToMap);
}

// findLocation() is used to enter the sample addresses into the form.
function findLocation(address) {
      document.forms[0].q.value = address;
      showLocation();
}


