﻿	var map;
var geocoder;
var localSearch = new GlocalSearch();
var side_bar_html = "";
var gmarkers = [];

var icon = new GIcon(G_DEFAULT_ICON);
icon.image = "http://www.google.com/mapfiles/marker.png";
//icon.shadow = "http://www.google.com/mapfiles/shadow50.png";
icon.iconSize = new GSize(20, 34);
//icon.shadowSize = new GSize(37, 34);
//icon.iconAnchor = new GPoint(10, 34);



function initialize() {
 map = new GMap2(document.getElementById("map"));
 //map.setCenter(new GLatLng(34, 0), 1);
 geocoder = new GClientGeocoder();
 geocoder.setCache();
 //The following function call the code that contains the array with 
 //loctions for the Markers created in .NET (frame1.aspx) once we have the array we call
 //the function placeMarkerAtPoint
 callLocation();
 
}

function placeMarkerAtPoint(latlng1,x)
{
  for(var i=0;i<latlng1.length;i++)  
  {
  var marker = new GMarker(latlng1[i]);    
  var markerName = x[0][i];
  var markerAddress = x[1][i];
  var markerImage1= x[2][i];
  var markerFlag= x[3][i];
  var markerCity= x[4][i];
  var markerTelephone = x[5][i];
  var markerEmail = x[6][i];
  var markerWebsite = x[7][i];
  var markerNation = x[8][i];
  var markerID = x[9][i];
  

// GEvent.addListener(marker, "click", function() {
// marker.openInfoWindowHtml(markerDescription);
//});
//window.alert(i);
//  gmarkers[0] = marker;
  
  
var marker = createMarker(latlng1[i],markerName,markerAddress,markerImage1,markerFlag,markerCity,markerTelephone,markerEmail,markerWebsite,markerNation,markerID,i);
  
map.addOverlay(marker);
  

  }  
  parent.frame2.sideBar(side_bar_html);

  // #2a -- calculate center  
  
  var latlngbounds = new GLatLngBounds();  
  for (var z=0; z<latlng1.length; z++)  
    {
   // window.alert("latlnglenght:" + latlng1[z]);
      latlngbounds.extend(latlng1[z]);  
    }  
      
      // #2b -- set center using the calculated values
            if(latlng1.length == 1) 
      {
       map.setCenter(latlngbounds.getCenter(),15);
      }
      else
      {
      map.setCenter(latlngbounds.getCenter(),map.getBoundsZoomLevel(latlngbounds));
      }
       // map.setCenter(latlngbounds.getCenter(),map.getBoundsZoomLevel(latlngbounds));
		map.addControl(new GLargeMapControl3D());
		//map.addControl(new GMapTypeControl());

}

      var gmarkers = [];
      var htmls = [];
      var zzz = 0;
      
      
//// Shadow the function placeMarkerAtPoint


    function placeMarkerAtPointSingle(latlng1)
{
  for(var i=0;i<latlng1.length;i++)  
  {
  var marker = new GMarker(latlng1[i]);    
   

// GEvent.addListener(marker, "click", function() {
// marker.openInfoWindowHtml(markerDescription);
//});
//window.alert(i);
//  gmarkers[0] = marker;
  
  
var marker = createMarkerSingle(latlng1[i]);
  
map.addOverlay(marker);
  

  }  
  //COMMENTED OUT
 // parent.frame2.sideBar(side_bar_html);

  // #2a -- calculate center  
  
  var latlngbounds = new GLatLngBounds();  
  for (var z=0; z<latlng1.length; z++)  
    {
   // window.alert("latlnglenght:" + latlng1[z]);
      latlngbounds.extend(latlng1[z]);  
    }  
      
      // #2b -- set center using the calculated values
      if(latlng1.length == 1) 
      {
       map.setCenter(latlngbounds.getCenter(),15);
      }
      else
      {
      map.setCenter(latlngbounds.getCenter(),map.getBoundsZoomLevel(latlngbounds));
      }
      //map.getBoundsZoomLevel(latlngbounds)
       // map.setCenter(latlngbounds.getCenter(),15);
		map.addControl(new GLargeMapControl3D());
		//map.addControl(new GMapTypeControl());

}

      var gmarkers = [];
      var htmls = [];
      var zzz = 0;  



// Shadow the function createMarker
function createMarkerSingle(point) {
      
//          var letter = String.fromCharCode("A".charCodeAt(0) + i);
//          var letteredIcon = new GIcon(icon);
//          letteredIcon.image = "http://chart.apis.google.com/chart?chst=d_map_pin_letter&chld=" + (1+i) + "|FF3333|000000";
//    
//          // Set up our GMarkerOptions object
//          markerOptions = { icon:letteredIcon };

      //// NUMBERS
       //var marker = new GMarker(point, markerOptions);
      ////NO NUMBERS
var marker = new GMarker(point,icon);
      
      
        GEvent.addListener(marker, "click", function() {
          marker.openInfoWindowHtml(markerName);
        });

 
        //// Switch icon on marker mouseover and mouseout
        GEvent.addListener(marker, "mouseover", function() {
        marker.setImage("images/icons/markerover.png");
        //setCenterToPoint(point);
          // marker.openInfoWindowHtml(markerDescription + ' ' + markerAddress );
        });

        //// Switch icon on marker mouseover and mouseout
        GEvent.addListener(marker, "Switchicon", function() {
        marker.setImage("images/icons/markerover.png");
        setCenterToPoint(point);
          // marker.openInfoWindowHtml(markerDescription + ' ' + markerAddress );
        });
        
               //// Switch icon on marker mouseover and mouseout
        GEvent.addListener(marker, "mouseout", function() {
        marker.setImage("http://www.google.com/mapfiles/marker.png");
          // marker.openInfoWindowHtml(markerDescription + ' ' + markerAddress );
        });
                 
       // gmarkers[i] = marker;

//side_bar_html +='<div id="PlaceContainer' + i + '" name="PlaceContainer' + i + '" class="PlaceContainer" onmouseover="parent.frame2.changebg(this); parent.frame1.Switchicon(' + i + ');" onmouseout="parent.frame2.changebg(this);parent.frame1.mymouseout(' + i + ');">'
//    side_bar_html +='<div class="PlacePhoto">'
//        side_bar_html +='<a href="locale.aspx?id=' + markerID + '" target="_top" alt="' + markerName + '">'
//            side_bar_html +='<img src="Images/places/thumbs/Place' + markerID + "/" + markerImage1 + '" border="0" title="'+ markerName +'">'
//        side_bar_html +='</a>'
//    side_bar_html +='</div>'
//    side_bar_html +='<div class="PlaceDescription">'
//    side_bar_html +='<table>'
//    side_bar_html +='<tr><td class="PlaceDescriptionTD">Nome:</td><td><a href="locale.aspx?id=' + markerID + '" target="_top" class="PlaceTitle" title="' + markerName + '">'+ markerName +'</a></td></tr>'
//    side_bar_html +='<tr><td class="PlaceDescriptionTD">Città:</td><td>'+ markerCity +'&nbsp;&nbsp;<img src="Images/Flags/' + markerFlag + '.gif" title="' + markerNation + '"></td></tr>'
//    side_bar_html +='<tr><td class="PlaceDescriptionTD">Indirizzo:</td><td>'+ markerAddress +'</td></tr>'
//    if (markerTelephone != '')
//    {
//    side_bar_html +='<tr><td class="PlaceDescriptionTD">Telefono:</td><td>'+ markerTelephone +'</td></tr>'
//    }
//    side_bar_html +='<tr><td colspan="2"></td></tr>' 
//    side_bar_html +='<tr><td colspan="2"><a href="locale.aspx?id=' + markerID + '" target="_top"><img src="Images/Icons/ButtonDettagli.png" border="0" title="Dettagli ' + markerName + '"></a></td></tr>'
////    if (markerEmail != '')
////    {
////    side_bar_html +='<tr><td colspan="2"></td></tr>' 
////    side_bar_html +='<tr><td colspan="2"><a href="locale.aspx?id=' + markerID + '" target="_top"><img src="Images/Icons/ButtonEmail.png" border="0" title="Invia email"></a></td></tr>'
////    }
////    if (markerWebsite != '')
////    {
////    side_bar_html +='<tr><td colspan="2"></td></tr>'
////    side_bar_html +='<tr><td colspan="2"><a href="linkusandoframes.aspx?site=http://'+ markerWebsite +'" target="_blank"><img src="Images/Icons/ButtonSite.png" border="0" title="Vai al sito internet"></a></td></tr>'
////    }
//    side_bar_html +='</table>'
//        side_bar_html +='</div>'
//    side_bar_html +='<div class="Clear"></div>'
//side_bar_html +='</div>'



        //zzz++;
        return marker;
      }


      
// A function to create the marker and set up the event window
function createMarker(point,markerName,markerAddress,markerImage1,markerFlag,markerCity,markerTelephone,markerEmail,markerWebsite,markerNation,markerID,i) {
      
//          var letter = String.fromCharCode("A".charCodeAt(0) + i);
//          var letteredIcon = new GIcon(icon);
//          letteredIcon.image = "http://chart.apis.google.com/chart?chst=d_map_pin_letter&chld=" + (1+i) + "|FF3333|000000";
//    
//          // Set up our GMarkerOptions object
//          markerOptions = { icon:letteredIcon };

      //// NUMBERS
       //var marker = new GMarker(point, markerOptions);
      ////NO NUMBERS
var marker = new GMarker(point,icon);
      
      
      
        GEvent.addListener(marker, "click", function() {
          marker.openInfoWindowHtml(markerName);
        });
 
 
 
 
 
 
 
 
        //// Switch icon on marker mouseover and mouseout
        GEvent.addListener(marker, "mouseover", function() {
        marker.setImage("images/icons/markerover.png");
        //setCenterToPoint(point);
          // marker.openInfoWindowHtml(markerDescription + ' ' + markerAddress );
        });
        
        
         
        //// Switch icon on marker mouseover and mouseout
        GEvent.addListener(marker, "Switchicon", function() {
        marker.setImage("images/icons/markerover.png");
        setCenterToPoint(point);
          // marker.openInfoWindowHtml(markerDescription + ' ' + markerAddress );
        });
        
        
        
               //// Switch icon on marker mouseover and mouseout
        GEvent.addListener(marker, "mouseout", function() {
        marker.setImage("http://www.google.com/mapfiles/marker.png");
          // marker.openInfoWindowHtml(markerDescription + ' ' + markerAddress );
        });
        
        
        
                
        gmarkers[i] = marker;

side_bar_html +='<div id="PlaceContainer' + i + '" name="PlaceContainer' + i + '" class="PlaceContainer" onmouseover="parent.frame2.changebg(this); parent.frame1.Switchicon(' + i + ');" onmouseout="parent.frame2.changebg(this);parent.frame1.mymouseout(' + i + ');">'
    side_bar_html +='<div class="PlacePhoto">'
        side_bar_html +='<a href="locale.aspx?id=' + markerID + '" target="_top" alt="' + markerName + '">'
            side_bar_html +='<img src="Images/places/thumbs/Place' + markerID + "/" + markerImage1 + '" border="0" title="'+ markerName +'">'
        side_bar_html +='</a>'
    side_bar_html +='</div>'
    side_bar_html +='<div class="PlaceDescription">'
    side_bar_html +='<table>'
    side_bar_html +='<tr><td class="PlaceDescriptionTD">Nome:</td><td><a href="locale.aspx?id=' + markerID + '" target="_top" class="PlaceTitle" title="' + markerName + '">'+ markerName +'</a></td></tr>'
    side_bar_html +='<tr><td class="PlaceDescriptionTD">Città:</td><td>'+ markerCity +'&nbsp;&nbsp;<img src="Images/Flags/' + markerFlag + '.gif" title="' + markerNation + '"></td></tr>'
    side_bar_html +='<tr><td class="PlaceDescriptionTD">Indirizzo:</td><td>'+ markerAddress +'</td></tr>'
    if (markerTelephone != '')
    {
    side_bar_html +='<tr><td class="PlaceDescriptionTD">Telefono:</td><td>'+ markerTelephone +'</td></tr>'
    }
    side_bar_html +='<tr><td colspan="2"></td></tr>' 
    side_bar_html +='<tr><td colspan="2"><a href="locale.aspx?id=' + markerID + '" target="_top"><img src="Images/Icons/ButtonDettagli.png" border="0" title="Dettagli ' + markerName + '"></a></td></tr>'
//    if (markerEmail != '')
//    {
//    side_bar_html +='<tr><td colspan="2"></td></tr>' 
//    side_bar_html +='<tr><td colspan="2"><a href="locale.aspx?id=' + markerID + '" target="_top"><img src="Images/Icons/ButtonEmail.png" border="0" title="Invia email"></a></td></tr>'
//    }
//    if (markerWebsite != '')
//    {
//    side_bar_html +='<tr><td colspan="2"></td></tr>'
//    side_bar_html +='<tr><td colspan="2"><a href="linkusandoframes.aspx?site=http://'+ markerWebsite +'" target="_blank"><img src="Images/Icons/ButtonSite.png" border="0" title="Vai al sito internet"></a></td></tr>'
//    }
    side_bar_html +='</table>'
        side_bar_html +='</div>'
    side_bar_html +='<div class="Clear"></div>'
side_bar_html +='</div>'



        //zzz++;
        return marker;
      }


function addUnLoadEvent(func) {
	var oldonunload = window.onunload;
	if (typeof window.onunload != 'function') {
	  window.onunload = func;
	} else {
	  window.onunload = function() {
	    oldonunload();
	    func();
	  }
	}
}

//addLoadEvent(mapLoad);
addUnLoadEvent(GUnload);

      // This function picks up the click and opens the corresponding info window
function mymouseover(i) 
{
GEvent.trigger(gmarkers[i], "mouseover");
}

function mymouseout(i) 
{
GEvent.trigger(gmarkers[i], "mouseout");
}

function Switchicon(i) 
{
GEvent.trigger(gmarkers[i], "Switchicon");
}


function setCenterToPoint(point)
{
//window.alert(point);
	map.setCenter(point);
}


