/*
   var xmlDoc;
   var itinerariXMLHTTPRequest = null;
 
   function loadPorti()
   function loadItinerariXML(nomeFile)
   function itinerariRequest(idCheck, nomeFileItinerariXML)
   function removeItinerariLayer()   
   function loadItinerariAjaxXMLRequest(nomeFile)   
   function loadItinerariAjaxXML()   
   function loadItinerariTag()   
   function attivaItinerario(idItinerario)   
*/
   var xmlDoc;
   var portiXMLHTTPRequest = null;
   var portiVisualizzati = false;
   var portiLiveVisualizzati = false;   
   
   function portiRequest(idCheck, nomeFilePortiXML)
   {
    myCheck  = getObject(idCheck);
    if (myCheck.checked==true)    
    {
     rit = loadPortiAjaxXMLRequest(nomeFilePortiXML);     
     controllaDimensioni(null);
    }
    else
    {
     Layer();
    }
   }

   function Layer()
   {

   pl1 = layers.get('portiLayer1');
     if (pl1 != undefined)
    	 map.DeleteShapeLayer(pl1.shapes);
    pl1 = layers.get('portiLayer1');
     if (pl1 != undefined)
    	 map.DeleteShapeLayer(pl1.shapes);
    	 
   	 pl2 = layers.get('portiLayer2');
     if (pl2 != undefined)
   	  map.DeleteShapeLayer(pl2.shapes);
     
     pl3 = layers.get('portiLayer3');
   	 if (pl3 != undefined)
    	 map.DeleteShapeLayer(pl3.shapes);
    
     rimuoviMapLayer('portiLayer');
    	 
   }   

   function loadPortiAjaxXMLRequest(nomeFile)
   {
    portiXMLHTTPRequest = makeRequest(nomeFile, 'xml');
    if (portiXMLHTTPRequest.readyState != 4)
     portiXMLHTTPRequest.onreadystatechange = loadPortiAjaxXML;   
    else 
     loadPortiAjaxXML();
   }
      
   function loadPortiAjaxXML()
   {
   if (portiXMLHTTPRequest.readyState == 4)
   {
     //codice per IE
     Layer();
     if (window.ActiveXObject)
     {
      xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
      xmlDoc.loadXML(portiXMLHTTPRequest.responseText);
      loadPortiTag();
     }
     //codice per Mozilla, Firefox, Opera, etc.
     else 
     {
      var parser=new DOMParser();
      xmlDoc=parser.parseFromString(portiXMLHTTPRequest.responseText,"text/xml");
      loadPortiTag();
     }
    }
    return false;
   }
   
   function loadPortiTag()
   {
     //Gestione dei tre layer fissi del itinerari
     portiLayer1 = new SkipperLayer();
     portiLayer1.maxZoom=17;
     portiLayer1.minZoom=8;
     portiLayer2 = new SkipperLayer();
     portiLayer2.maxZoom=17;
     portiLayer2.minZoom=7;
     portiLayer3 = new SkipperLayer();
     portiLayer3.maxZoom=17;
     portiLayer3.minZoom=5;
     
     dimensione = (xmlDoc.getElementsByTagName("porti")[0].getElementsByTagName("porto").length);
     
     
     for(cn=0; cn<dimensione; cn++)
     {
      titolo      = (xmlDoc.getElementsByTagName("porti")[0].getElementsByTagName("porto")[cn].getElementsByTagName("nome_porto")[0].text);
      latitude    = (xmlDoc.getElementsByTagName("porti")[0].getElementsByTagName("porto")[cn].getElementsByTagName("latitude")[0].text);
      longitude   = (xmlDoc.getElementsByTagName("porti")[0].getElementsByTagName("porto")[cn].getElementsByTagName("longitude")[0].text);
      priorityId  = (xmlDoc.getElementsByTagName("porti")[0].getElementsByTagName("porto")[cn].getElementsByTagName("priority_id")[0].text);      
      URLImmagine = (xmlDoc.getElementsByTagName("porti")[0].getElementsByTagName("porto")[cn].getElementsByTagName("URL_porto")[0].text);

      descrizione =(xmlDoc.getElementsByTagName("porti")[0].getElementsByTagName("porto")[cn].getElementsByTagName("descrizione")[0].text)+'<br/>';
      descrizione += '<a href="/portolano.do?method=show&idPorto=' + (xmlDoc.getElementsByTagName("porti")[0].getElementsByTagName("porto")[cn].getElementsByTagName("id_porto")[0].text) + '">';
      descrizione += message_resource['linkSchedaPorto']+'</a>';

	  var myPin = AddPushPinShape(latitude, longitude, URLImmagine, titolo, descrizione);

	  if (priorityId == "1")
	  {
 	   portiLayer1.shapes.AddShape(myPin);
 	  }
 	  else if (priorityId == "2")
 	  {
   	   portiLayer2.shapes.AddShape(myPin);
 	  }
 	  else if (priorityId == "3")
 	  {
   	   portiLayer3.shapes.AddShape(myPin);
 	  }
   	   else
    	   alert('PriorityId non definito');
	 }
	 map.AddShapeLayer(portiLayer1.shapes);
	 map.AddShapeLayer(portiLayer2.shapes);
	 map.AddShapeLayer(portiLayer3.shapes);	 
	 portiLayer1.shapes.Show(); 
 	 portiLayer2.shapes.Show(); 
 	 portiLayer3.shapes.Show(); 
	
	
	 //Aggiunta/aggiornamento layer itinerari
	 aggiungiLayer('portiLayer1', portiLayer1);
	 aggiungiLayer('portiLayer2', portiLayer2);
	 aggiungiLayer('portiLayer3', portiLayer3);	 	 
     
     controllaDimensioni();
   }


function loadPortiLive()
{
   removeAllCheckedExcept('porti');
   try{
   if (portiLiveVisualizzati==true)
   {
    removePortiLiveLayer();    
   } 
   else
   { 
    addLoadingPushPin('portiAggregatiLoading');
    registerPortiLayer(true);
    removeLoadingPushPin('portiAggregatiLoading');
    controllaDimensioni();
    portiLiveVisualizzati=true;
   } 
 }catch(e){
  alert("loading porti live:" + e.message);}
}

 function loadPortiXMLRequest(nomeFile)
   {
    /*rectMap = map.GetMapView();
    alert(rectMap.TopLeftLatLong);
    alert(rectMap.BottomRightLatLong);    */
    //alert("qui 1");
    skipperLayerNew = getMapLayer('portiLayer');
    if (skipperLayerNew != null)
    {
        addLoadingPushPin('portiLoading');
	    skipperLayerNew.Hide();
	    portiAggregatiXMLHTTPRequest = makeRequest(nomeFile, 'xml');
	
	    if (portiAggregatiXMLHTTPRequest.readyState != 4)
	     portiAggregatiXMLHTTPRequest.onreadystatechange = loadPortiXMLNEW;   
	    else 
	     loadPortiXMLNEW();
	 }    
   }
   
   var xmlDocPorti=null;
   
  function loadPortiXMLNEW()
  {
 
  
    if ((portiAggregatiXMLHTTPRequest.readyState == 4) && ((portiVisualizzati==true)||(portiLiveVisualizzati==true)))
    {
     portitdband = getObject('porti_td_band'); 
     //codice per IE
     if (window.ActiveXObject)
     {
       xmlDocPorti=new ActiveXObject("Microsoft.XMLDOM");
       xmlDocPorti.loadXML(portiAggregatiXMLHTTPRequest.responseText);
       rit = loadXMLPushPinTag('portiLayer', xmlDocPorti);
     }
     //codice per Mozilla, Firefox, Opera, etc.
     else 
     {
      var parser=new DOMParser();
      xmlDocPorti=parser.parseFromString(portiAggregatiXMLHTTPRequest.responseText,"text/xml");
      rit = loadXMLPushPinTag('portiLayer', xmlDocPorti);
     }
    
       removeLoadingPushPin('portiLoading');   	   

     myLayer = getMapLayer('portiLayer');
     map.AddShapeLayer(myLayer);
    }
    
    
   return false; 
  }

   function registerPortiLayer(live)
   {

     if (live==null)
      live=false;
    
     url_base="";
    
     addLoadingPushPin('registrazionePorti');
    
     portiLayer = new VEShapeLayer();

   /*  portiLayer1 = new SkipperLayer();
     portiLayer1.maxZoom=7;
     portiLayer1.minZoom=5;
     portiLayer1.loaded=false;
     url_base = "transf.do?method=transformPortiAggregatiXMLNEW&livello=1";
     if (live==true)
      url_base += "&live=1";     
     portiLayer1.loadfunction="loadPortiXMLRequest('"+url_base+"', 'portiLayer');";

     portiLayer2 = new SkipperLayer();
     portiLayer2.maxZoom=8;
     portiLayer2.minZoom=8;
     portiLayer2.loaded=false;
     url_base = "transf.do?method=transformPortiAggregatiXMLNEW&livello=2";     
     if (live==true)
      url_base += "&live=1";
     portiLayer2.loadfunction="loadPortiXMLRequest('"+url_base+"', 'portiLayer');";

     portiLayer3 = new SkipperLayer();
     portiLayer3.maxZoom=9;
     portiLayer3.minZoom=9;
     portiLayer3.loaded=false;
     if (live==true)
      url_base += "&live=1";     
     url_base = "transf.do?method=transformPortiAggregatiXMLNEW&livello=3";
     portiLayer3.loadfunction="loadPortiXMLRequest('"+url_base+"', 'portiLayer');";*/

     portiLayer4 = new SkipperLayer();
     portiLayer4.maxZoom=30;
     portiLayer4.minZoom=1;
     portiLayer4.loaded=false;
     url_base = "/transf.do?method=transformPortiAggregatiXMLNEW&livello=4";     
     if (live==true)
     {      
      url_base += "&live=1";    
     }
     portiLayer4.loadfunction="loadPortiXMLRequest('"+url_base+"', 'portiLayer4');";


     aggiungiMapLayer('portiLayer', portiLayer);     

    /* aggiungiLayer('portiLayer1', portiLayer1);
     aggiungiLayer('portiLayer2', portiLayer2);
     aggiungiLayer('portiLayer3', portiLayer3);*/
     aggiungiLayer('portiLayer4', portiLayer4);    

     removeLoadingPushPin('registrazionePorti');          
   }
   
