/*
		function loadGmaps() {
		  if (GBrowserIsCompatible()) {
			var map = new GMap2(document.getElementById("map"));
			map.setCenter(new GLatLng(41.87194, 12.56738), 6);
		  }
		}
*/
    //<![CDATA[
    var map;
    var geocoder;
    var directionsPanel;
    var directions;
    var iconBlue;
    
    function getRoadMap() {
      //map = new GMap2(document.getElementById("map_canvas"));
      directionsPanel = document.getElementById("route");
      directionsPanel.innerHTML = "";
      directions = new GDirections(map, directionsPanel);
      var from = document.getElementById("txtRicerca").value;
      var to = document.getElementById("to").innerHTML + ', ' + document.getElementById("comune").innerHTML;
      
      directions.load("from: " + from + " to: " + to);
    }

    function inizializza()
    {
        iconBlue = new GIcon();     
        iconBlue.image = 'i/icone/santa-hat-icon-24.gif';    
		iconBlue.shadow = 'i/icone/santa-hat-mm_25_shadow.png';    
//      iconBlue.iconSize = new GSize(36, 36);    
        iconBlue.iconSize = new GSize(17, 24);
        iconBlue.shadowSize = new GSize(25, 28);    
        iconBlue.iconAnchor = new GPoint(6, 20);    
        iconBlue.infoWindowAnchor = new GPoint(5, 1);
    }
    
    function loadGmaps() {
      if (GBrowserIsCompatible()) {
        inizializza();
        /*
        var options = {
            zoomControl : GSmapSearchControl.ZOOM_CONTROL_ENABLE_ALL,
            title : "Googleplex",
            url : "http://www.google.com/corporate/index.html"
            ,idleMapZoom : GSmapSearchControl.ACTIVE_MAP_ZOOM
            ,activeMapZoom : GSmapSearchControl.ACTIVE_MAP_ZOOM
            }

        map = new GSmapSearchControl(
            document.getElementById("map"),
            "Italia",
            options
            );


        geocoder = new GClientGeocoder();
        */
        map = new GMap2(document.getElementById('map'));
        //map.addControl(window.MyLocalSearchControl=new google.maps.LocalSearch());
//      map.addControl(new GSmallMapControl()); // + / -
		map.addControl(new GLargeMapControl()); // slider

		map.addControl(new GMapTypeControl()); // tipo vista

        map.setCenter(new GLatLng(41.87194, 12.56738), 6);
        /*        
        var options = {
            searchFormHint : "Example Searches: Hotels in New York City"
            };
        map.addControl(new google.maps.LocalSearch(options));
        */
        
        var options = {
             searchFormHint : "Esempio : Via Manzoni 1, Milano", 
             resultList : document.getElementById("results")
             };

          // bind a search control to the map, suppress result list
        map.addControl(new google.maps.LocalSearch(options), new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(0,-40)));


        directionsPanel = document.getElementById("route");
        directionsPanel.innerHTML = "";
                
        GDownloadUrl("phpsqlajax_genxml2.php", function(data) {
          var xml = GXml.parse(data);
          var markers = xml.documentElement.getElementsByTagName("marker");
          for (var i = 0; i < markers.length; i++) {
            var idcont = markers[i].getAttribute("idcont");
            var name = markers[i].getAttribute("name");
            var address = markers[i].getAttribute("address");
            var type = markers[i].getAttribute("type");
            var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
                                    parseFloat(markers[i].getAttribute("lng")));
			var fotoxx  = markers[i].getAttribute("fotoxx");
            var marker = createMarker(point, name, address, type, idcont, fotoxx);
            map.addOverlay(marker);
          }
        });
        
    
      }
    }

    function ImpostaMappa()
    {
        map.setCenter(new GLatLng(41.87194, 12.56738), 6);     
    }
    
    function searchLocationsNear() {
     var searchUrl = 'phpsqlajax_genxml2.php';
     GDownloadUrl(searchUrl, function(data) {
       var xml = GXml.parse(data);
       var markers = xml.documentElement.getElementsByTagName('marker');
       map.clearOverlays();
       /*
       var sidebar = document.getElementById('sidebar');
       sidebar.innerHTML = '';
       if (markers.length == 0) {
         sidebar.innerHTML = 'No results found.';
         map.setCenter(new GLatLng(40, -100), 4);
         return;
       }
       */
       for (var i = 0; i < markers.length; i++) {
       
         var bounds = new GLatLngBounds();

         var name = markers[0].getAttribute('name');
         var address = markers[0].getAttribute('address');
         var distance = parseFloat(markers[0].getAttribute('distance'));
         var point = new GLatLng(parseFloat(markers[0].getAttribute('lat')),
                                 parseFloat(markers[0].getAttribute('lng')));
         
         var marker = createMarker(point, name, address);
         map.addOverlay(marker);
         //var sidebarEntry = createSidebarEntry(marker, name, address, distance);
         
         //sidebar.appendChild(sidebarEntry);
         bounds.extend(point);
       }
       
       //map.setCenter(bounds.getCenter(), map.getBoundsZoomLevel(bounds));
       
     });
   }

    function ApriRicerca()
    {
        var divRicerca = document.getElementById("divRicerca");
        divRicerca.style.visibility = "visible";
        
    }
    function createMarker(point, name, address, type,  idcont, fotoxx) {
      var marker = new GMarker(point, iconBlue);
      
      var fumettoHeader = '<table id="baloonContents">';
      
      var WINDOW_HTML = '<tr><td><div class="td_testo"><p><a href="javascript:ApriRicerca()">Come arrivare al banchetto &raquo;</a></p></div></div></td></tr>';
      var GalleryHtml = '';
	  
	  if (fotoxx != "") {
	  	GalleryHtml = '<tr><td><div class="td_testo"><p><a href="index.php?p=fotogallery-2008&id_banchetto=' + idcont + '">Visualizza Fotogallery del banchetto</a></p></div></div></td></tr>';
	  	GalleryHtml = GalleryHtml + '<tr><td><div class="td_testo"><img width = 70 height = 52 src="i/fotogallery/t/' + fotoxx + '" /></div></div></td></tr>';
	  }
	  var formHtml = "<tr><td><div id='divRicerca' style='visibility:hidden;'><p id='esempio'>Esempio: via Manzoni 1 Milano</p><input onfocus='this.value=\"\"' id='txtRicerca' type='text' value='Inserisci qui il tuo indirizzo' /><p id='calcola'><a href=javascript:getRoadMap()>Calcola il tuo percorso &raquo;</a></p></div></td></tr>";
      
      var i = address.lastIndexOf(",");
      
      var indirizzo = "";
      var comune = "";
      
      if (i != -1)
      {
        indirizzo = address.substr(0, i);
        comune    = address.substr(i+2, address.length - i );
      }
      else
      {
        comune = address;
      }
      
      var indirizzoHtml = '<tr><td><p><label id="to">' + indirizzo + '</label></p></td></tr>';
      var comuneHtml = '<tr><td><p><label id="comune">' + comune + '</label></p></td></tr>';
      var pressoHtml="";
      if (name != '')
      {
        pressoHtml = '<tr><td><p id="presso">Presso: ' + name + '</p></td></tr>';
      }
      
      indirizzoHtml = indirizzoHtml + comuneHtml + pressoHtml + GalleryHtml;// + WINDOW_HTML + formHtml;
      
      var fumettoFooter = '</table>';
      var html =  fumettoHeader + indirizzoHtml + fumettoFooter;
      
      GEvent.addListener(marker, 'click', function() {
        marker.openInfoWindowHtml(html);
      });
      return marker;
    }


    //]]>
	              
		//	loadstuff
		
		var oldonload=window.onload;
		if(typeof(oldonload)=='function')
			window.onload=function(){
				loadGmaps();
			};
			else
			window.onload=function(){
				loadGmaps();
			};
