
if (GBrowserIsCompatible()) 
{
  var map;
  var sem= [];
  var odsud= [];
  var gdir;
  var body= [];
  var htmls= [];
  var j=0; 
  var side_bar="";
 
   function zobrazBod(bod, html, nazev, iko)
   {
    // objekt obsahující vlastnosti značky
    var opt = new Object();
    opt.title = nazev;
    if (iko!='')
    {
        opt.icon= new GIcon(G_DEFAULT_ICON,"mapa/img/"+iko);
        opt.icon.iconSize = new GSize(20, 20);
        opt.icon.shadowSize = new GSize(0, 0);
    }
    var marker = new GMarker(bod, opt);
    body[j]= marker;

    sem[j] = html + '<br>Naviguj: <b>sem</b> - <a href="javascript:odsud_f('+ j +')">odsud</a>' +
           '<form action="javascript:naviguj()">Výchozí adresa: ' +
           '<input type="text" SIZE=20 MAXLENGTH=40 name="od" id="od" value="" /><br>' +
           '<INPUT value="Najdi trasu" TYPE="SUBMIT">' +
           '<input type="hidden" id="do" value="'+name+"@"+ bod.lat() + ',' + bod.lng() + 
           '"/>';
        // The info window version with the "to here" form open
    odsud[j] = html + '<br>Naviguj: <a href="javascript:sem_f('+ j +')">sem</a> - <b>odsud</b>' +
           '<form action="javascript:naviguj()">Cílová adresa: ' +
           '<input type="text" SIZE=20 MAXLENGTH=40 name="do" id="do" value="" /><br>' +
           '<INPUT value="Najdi trasu" TYPE="SUBMIT">' +
           '<input type="hidden" id="od" value="'+name+"@"+ bod.lat() + ',' + bod.lng() +
           '"/>';
        // The inactive version of the direction info
        html = html + '<br>Navigace: <a href="javascript:sem_f('+ j +')">sem</a> - <a href="javascript:odsud_f('+ j +')">odsud</a><br><br>';
        html = '<div id="okno">'+html+'</div>';

    // obsloužení kliknutí na značku
    GEvent.addListener(marker, "click", function() {
       marker.openInfoWindowHtml(html); 
    });  
     htmls[j]= html;
           
     side_bar+= "<a href='javascript:click_mapa("+j+")'>"+nazev+"</a><br>";
     j++;

    return marker;
  }

  function sem_f(j)
  {
    body[j].openInfoWindowHtml(sem[j]);
  }
  
  function odsud_f(j)
  {
    body[j].openInfoWindowHtml(odsud[j]);
  }
 
  function naviguj() {
        var n_od = document.getElementById("od").value
        var n_do = document.getElementById("do").value
        gdir.load("from: "+n_od+" to: "+n_do);
      }

  function zobraz_mapu(center_lat, center_lng, zoom, xml)
  {
     if (center_lat=="") center_lat=49.455395;
     if (center_lng=="") center_lng=15.591565;
     if (zoom=="") zoom=9;
     
      map = new GMap2(document.getElementById("mapa"));
      map.addControl(new GLargeMapControl());
     // map.addControl(new GOverviewMapControl());
      map.setCenter(new GLatLng(center_lat, center_lng), zoom);
  //navigace
  gdir=new GDirections(map, document.getElementById("navigace"));
  //chyby
      var chyby=[];
      chyby[G_GEO_SUCCESS]            = "Success";
      chyby[G_GEO_MISSING_ADDRESS]    = "Chybějící adresa, adresa buď chybí nebo nemá hodnotu.";
      chyby[G_GEO_UNKNOWN_ADDRESS]    = "Neznámá adresa.";      
      chyby[G_GEO_UNAVAILABLE_ADDRESS]= "Neplatná adresa.";
      chyby[G_GEO_BAD_KEY]            = "Chybný API klíč";
      chyby[G_GEO_TOO_MANY_QUERIES]   = "Příliš mnoho dotazů. Denní limit byl překročen";
      chyby[G_GEO_SERVER_ERROR]       = "Chyba serveru.";
      chyby[G_GEO_BAD_REQUEST]        = "Chybně zadaná data, nebyl rzpoznán požadovaný směr";
      chyby[G_GEO_MISSING_QUERY]      = "Nebyl vložen žádný cíl.";
      chyby[G_GEO_UNKNOWN_DIRECTIONS] = "Nelze vypočítat cestu mezi těmito body.";

      // === catch Directions errors ===
      GEvent.addListener(gdir, "error", function() {
        var kod = gdir.getStatus().code;
        var chyba="Code "+kod;
        if (chyby[kod]) {
          chyba = chyby[kod]
        } 

        alert("Chyba: "+chyba);
      });

    nacti_xml(xml);
  }

 
   function zobraz_mapu1(center_lat, center_lng, zoom, xml)
  {
     if (center_lat=="") center_lat=49.455395; 
     if (center_lng=="") center_lng=15.591565;
     if (zoom=="") zoom=9;
     
      map = new GMap2(document.getElementById("mapa"));
     // map.addControl(new GLargeMapControl());
     // map.addControl(new GOverviewMapControl());
      map.setCenter(new GLatLng(center_lat, center_lng), zoom);
  //navigace
  gdir=new GDirections(map, document.getElementById("navigace"));
  //chyby
      var chyby=[];
      chyby[G_GEO_SUCCESS]            = "Success";
      chyby[G_GEO_MISSING_ADDRESS]    = "Chybějící adresa, adresa buď chybí nebo nemá hodnotu.";
      chyby[G_GEO_UNKNOWN_ADDRESS]    = "Neznámá adresa.";      
      chyby[G_GEO_UNAVAILABLE_ADDRESS]= "Neplatná adresa.";
      chyby[G_GEO_BAD_KEY]            = "Chybný API klíč";
      chyby[G_GEO_TOO_MANY_QUERIES]   = "Příliš mnoho dotazů. Denní limit byl překročen";
      chyby[G_GEO_SERVER_ERROR]       = "Chyba serveru.";
      chyby[G_GEO_BAD_REQUEST]        = "Chybně zadaná data, nebyl rzpoznán požadovaný směr";
      chyby[G_GEO_MISSING_QUERY]      = "Nebyl vložen žádný cíl.";
      chyby[G_GEO_UNKNOWN_DIRECTIONS] = "Nelze vypočítat cestu mezi těmito body.";

      // === catch Directions errors ===
      GEvent.addListener(gdir, "error", function() {
        var kod = gdir.getStatus().code;
        var chyba="Code "+kod;
        if (chyby[kod]) {
          chyba = chyby[kod]
        } 

        alert("Chyba: "+chyba);
      });
  
    nacti_xml(xml);
  }

 
 //kliknutí na odkaz 
  function click_mapa(i)
  {
    body[i].openInfoWindowHtml(htmls[i]);
  }
  
  //načtení xml
  function nacti_xml(cesta)
  {
   side_bar="";
   j=0;
     cesta="mapa/data.php?"+cesta;
     var request = GXmlHttp.create();
      request.open("GET", cesta, true);
      request.onreadystatechange = function() {
        if (request.readyState == 4) {
          var xmlDoc = GXml.parse(request.responseText);
          // obtain the array of markers and loop through it
          var obsah = xmlDoc.documentElement.getElementsByTagName("element");
          // map.getInfoWindow().hide();            
          // map.clearOverlays();  

          for (var i = 0; i < obsah.length; i++) {
            // obtain the attribues of each marker
            var lat = parseFloat(obsah[i].getAttribute("lat"));
            var lng = parseFloat(obsah[i].getAttribute("lng"));
            var bod = new GLatLng(lat,lng);            
            //var nazev = obsah[i].getAttribute("nazev");
            //var url = obsah[i].getAttribute("url");
            var html= obsah[i].getAttribute("html");
            var nazev= obsah[i].getAttribute("nazev");
            var iko= obsah[i].getAttribute("iko");
            // create the marker
            //popis= "<span class='iwstyle'><h4>"+nazev+"</h4>"+popis+"<br><a href='"+url+"'>Odkaz na stránky</a></span>"
            var marker = zobrazBod(bod,html,nazev,iko);
            map.addOverlay(marker);
          }
          // put the assembled side_bar_html contents into the side_bar div
         // document.getElementById("side_bar").innerHTML = side_bar;
        }
      }
      request.send(null);

  
  }

}
else document.write('Váš prohlížeč nepodporuje Google API');
 //google.setOnLoadCallback(zobraz_mapu); 



