﻿// JScript File


    /*
    
    <meta name="description" content="Il nostro booking, formato da persone qualificate, sarà a vostra disposizione per organizzare al meglio il vostro viaggio ed "accompagnarvi" nel conoscere il nostro sito." />

    */
    
    
    function interceptEnterKeyAndBindTextBoxWithButton(e, nomePulsante)
    {
        // vecchio metodo non supportato da firefox
        // var pulsante = document.all ? document.all[nomePulsante] : document.getElementById(nomePulsante);
        
        var key;

        if(window.event)
            key = window.event.keyCode;     //IE
        else
            key = e.which;     //firefox

        if(key == 13)
        {
            // eseguo il comando che c'è sul pulsante submit
            // ho cambiato l'ultimo argomento, mettendolo a true
            // non mi spiego come i vari pulsanti possano fare il submit valorizzando gli __EVENTTARGET e __EVENTARGUMENT perchè non ho trovato 
            // la funzione che gestisce il submit della form

            ptpPostBack(nomePulsante)

            // vecchio metodo non supportato da firefox
            // pulsante.click();

            return false;
        }
        else
            return true;
    }
    
    
    var timeoutID;
    
    
    function interceptKeyPressTimeOutAndBindTextBoxWithButton(nomePulsante)
    {
        if (timeoutID != null)
            clearTimeout(timeoutID);
            
        timeoutID = setTimeout("ptpPostBack('" + nomePulsante + "');", 1000);     
    }
    
    
    function ptpPostBack(nomePulsante)
    {
        WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(nomePulsante, "", true, "", "", false, true));
    }



var map = null;
var geocoder = null;
    
var arrMarker = null;

function load(centerMap, arrMarkerrr) 
{
    // es. centerMap = "Sovramonte, italia";
    //alert("load google map center on : " + centerMap);
    
    arrMarker = arrMarkerrr;

    if (centerMap == "") return;
     
    if (GBrowserIsCompatible()) 
    {
        if (map == null) {
            map = new GMap2(document.getElementById("map")); //map.setCenter(new GLatLng(37.4419, -122.1419), 13);
            
		    map.addControl(new GSmallMapControl());
		    map.addControl(new GMapTypeControl());
    		
            geocoder = new GClientGeocoder();
        }

        if (geocoder) {
            geocoder.getLatLng(
                centerMap,
                function(point) {
                    if (!point) {
                        //alert(address + " not found");
                    } else {
                        map.setCenter(point, 12);
                        containdirizzi = 0;
                        ciclaMarker();
                    }
                }
            );
        }
    }
}
    

var containdirizzi = 0;


  
function ciclaMarker()
{   

$("#debug").append(containdirizzi + "<br>");
    if(arrMarker[containdirizzi][0] != null)
    {
        geocoder.getLatLng(
            arrMarker[containdirizzi][0],
            function(point1) {
                if (!point1) {
                    if($("#indirizziNonTrovati").text() == "")
                        $("#indirizziNonTrovati").append("<br><b>Non è stato possibile visualizzare sulla mappa alcuni indirizzi</b><br><br>");   
                                     
                    $("#indirizziNonTrovati").append(" - " + arrMarker[containdirizzi][1] + " : " + arrMarker[containdirizzi][0] + "<br>");
                } else {
                    $("#debug").append("indirizzo[" + containdirizzi + "] : trovato<br>");
                    map.addOverlay(createMarker(point1, arrMarker[containdirizzi]));
                }
                
                containdirizzi++;
                if (arrMarker.length > containdirizzi)
                    ciclaMarker();            
            }
        );
    }
    else // è successo .. non ho capito perchè che ha tornato errore perchè arrMarker[containdirizzi][0] era nullo.. in questo modo lo salto e nel caso proseguo.. se è l'ultimo esce
    {
        containdirizzi++;
        if (arrMarker.length > containdirizzi)
            ciclaMarker();   
    }
}
    
    
function createMarker(point, arrDettagliMarker) {
    //arrDettagliMarker[]
    
    var icon = new GIcon(G_DEFAULT_ICON);
    //baseIcon.shadow = "http://www.google.com/mapfiles/shadow50.png";
    //        baseIcon.iconSize = new GSize(20, 34);
    //        baseIcon.shadowSize = new GSize(37, 34);
    //        baseIcon.iconAnchor = new GPoint(9, 34);
    //        baseIcon.infoWindowAnchor = new GPoint(9, 2);
    
    
    //icon.image = '/website/handler/mapMarker.ashx?num=' + (arrDettagliMarker[2]+1);        //-------- LOCALE
    //icon.shadow = '/website/Images/GoogleMapMarker/shadow50.png';               //-------- LOCALE
     
    icon.image = '/handler/mapMarker.ashx?num=' + (arrDettagliMarker[2]+1);                //----------------- ONLINE
    icon.shadow = '/Images/GoogleMapMarker/shadow50.png';                 //----------------- ONLINE
    
    //alert(arrDettagliMarker[2]);
    // Create a lettered icon for this point using our icon class
    //var letter = String.fromCharCode("A".charCodeAt(0) + arrDettagliMarker[2]);
    //var letter = String.fromCharCode("A".charCodeAt(0) + 1);

    //var letteredIcon = new GIcon(baseIcon);
    //letteredIcon.image = "http://www.google.com/mapfiles/marker" + letter + ".png";
      
    //etteredIcon.image = "/handler/mapMarker.ashx?num=" + (arrDettagliMarker[2]+1);
     
    var marker = new GMarker(point, { icon: icon });
    // Set up our GMarkerOptions object
    //markerOptions = { icon:letteredIcon };
      
    //var marker = new GMarker(point, markerOptions);
    //var marker = new GMarker(point);
    GEvent.addListener(
        marker, "click", 
        function() {
            marker.openInfoWindowHtml("<b>" + arrDettagliMarker[1] + "</b>");
        }
    );
    return marker;
}
    







//     function load(centerMap, arrMarkerrr) 
//     {
//     	    if (centerMap == "") return;
//      if (GBrowserIsCompatible()) {
//        var map = new GMap2(document.getElementById("map_canvas"));
//        map.setCenter(new GLatLng(37.4419, -122.1419), 13);
//        map.addControl(new GSmallMapControl());
//        map.addControl(new GMapTypeControl());

//        // Create a base icon for all of our markers that specifies the
//        // shadow, icon dimensions, etc.
//        var baseIcon = new GIcon(G_DEFAULT_ICON);
//        baseIcon.shadow = "http://www.google.com/mapfiles/shadow50.png";
//        baseIcon.iconSize = new GSize(20, 34);
//        baseIcon.shadowSize = new GSize(37, 34);
//        baseIcon.iconAnchor = new GPoint(9, 34);
//        baseIcon.infoWindowAnchor = new GPoint(9, 2);

//        // Creates a marker whose info window displays the letter corresponding
//        // to the given index.
//        function createMarker(point, index) {
//          // Create a lettered icon for this point using our icon class
//          var letter = String.fromCharCode("A".charCodeAt(0) + index);
//          var letteredIcon = new GIcon(baseIcon);
//          letteredIcon.image = "http://www.google.com/mapfiles/marker" + letter + ".png";

//          // Set up our GMarkerOptions object
//          markerOptions = { icon:letteredIcon };
//          var marker = new GMarker(point, markerOptions);

//          GEvent.addListener(marker, "click", function() {
//            marker.openInfoWindowHtml("Marker <b>" + letter + "</b>");
//          });
//          return marker;
//        }

//        // Add 10 markers to the map at random locations
//        var bounds = map.getBounds();
//        var southWest = bounds.getSouthWest();
//        var northEast = bounds.getNorthEast();
//        var lngSpan = northEast.lng() - southWest.lng();
//        var latSpan = northEast.lat() - southWest.lat();
//        for (var i = 0; i < 10; i++) {
//          var latlng = new GLatLng(southWest.lat() + latSpan * Math.random(),
//            southWest.lng() + lngSpan * Math.random());
//          map.addOverlay(createMarker(latlng, i));
//        }
//      }
//    }
    
    
    
function addLoadEvent(func) {
   var oldonload = window.onload;
   if (typeof window.onload != 'function') {
        //se all'OnLoad non è già associata una funzione allora esegui la funzione che ti passo adesso
        window.onload = func;
   } else {
        //se all'OnLoad è già associata una funzione allora ...
         window.onload = function() {
           if (oldonload) {
            // ... prima esegui la funzione che era già associata e poi ...
                         oldonload();
           }
           // ... esegui la funzione che ti passo adesso
           func();
         }
   }
}

    
  
  
function bookmarksite(title, url){
    if (document.all)
    window.external.AddFavorite(url, title);
    else if (window.sidebar)
    window.sidebar.addPanel(title, url, "")
}


function unloadgooglemap() {
    // chimamata sull'unload del body
    GUnload();
}





var GB_ROOT_DIR = "../js/greybox/";


GB_myShow = function(caption, url, /* optional */ height, width, callback_fn) {
    var options = {
        caption: caption,
        height: height || 500,
        width: width || 700,
        fullscreen: false,
        show_loading: false,
        callback_fn: callback_fn
    }
    var win = new GB_Window(options);
    return win.show(url);
}


GB_privacy = function(caption, url, /* optional */ height, width, callback_fn) {
    var options = {
        caption: caption,
        height: height || 380,
        width: width || 700,
        fullscreen: false,
        show_loading: false,
        callback_fn: callback_fn
    }
    var win = new GB_Window(options);
    return win.show(url);
}

$(document).ready(function(){
    //questa script non viene eseguito al termine di un ajaxpostpack
    //devo mettere quindi nel databinding
    
    /*
    $(".boxGenerale div.mostra_stanze").click(function () {
        $(this).find("div.divOpzioni").toggle();
    });
    */
});

