if (GBrowserIsCompatible())
{
  var map;
  var sem= [];
  var odsud= [];
  var gdir;
  var body= [];
  var htmls= [];
  var j=0;
  var side_bar="";

  function mapa(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("map"));
    map.addControl(new GLargeMapControl());
    map.setCenter(new GLatLng(center_lat, center_lng), zoom);
    map.addControl(new GLargeMapControl());

    kml("http://extranet.kr-vysocina.cz/vyvoj/mapa/okresy.kmz");
    //bod(49.455395, 15.591565,'Testovací html<b>jo</b>','Test','');
    navigace();
    if (xml !="") nacti_xml(xml);
  }

  function bod(lat,lng, html, nazev, iko)
  {
    var bod = new GLatLng(lat, lng);
    var opt = new Object();
    if (iko== null) iko="zeleny.gif";
   if (iko != "")
    {
        opt.title = nazev;
        opt.icon= new GIcon(G_DEFAULT_ICON, "img/"+iko);
        opt.icon.iconSize = new GSize(14,10);
        opt.icon.iconAnchor = new GPoint(7,5);
        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 class="mapa_detail">'+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++;

      map.addOverlay(marker);
  }

 //kliknutí na odkaz
  function click_mapa(i)
  {
    body[i].openInfoWindowHtml(htmls[i]);
  }

  function kml(url)
  {
        var geoXml = new GGeoXml(url);
        map.addOverlay(geoXml);
  }

//navigace
  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 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);
      });
  }

  //načtení xml
function nacti_xml(url)
{
  side_bar="";
  j=0;
  GDownloadUrl(url, function(data, responseCode) {
   var xml = GXml.parse(data);
   var obsah = xml.documentElement.getElementsByTagName("element");
   for (var i = 0; i < obsah.length; i++)
   {
            var lat = parseFloat(obsah[i].getAttribute("lat"));
            var lng = parseFloat(obsah[i].getAttribute("lng"));
            var html= obsah[i].getAttribute("html");
            var nazev= obsah[i].getAttribute("nazev");
            var iko= obsah[i].getAttribute("iko");
            //var html= GXml.value(obsah[i].getElementByTagName("html")[0]);
            bod(lat,lng, html, nazev, iko);
   }
  });
}

function zmen_xml(url)
{
    map.clearOverlays();
    sem= [];
    odsud= [];
    body= [];
    htmls= [];
    side_bar="";

    kml("http://extranet.kr-vysocina.cz/vyvoj/mapa/okresy.kmz");
    nacti_xml(url);
}

}
else document.write('Váš prohlížeč nepodporuje Google API');

