function mapInit() {  
  tourmapy.params.set('z', tourmapy.params.get('z', 10));
  tourmapy.params.set('lat', tourmapy.params.get('lat', 48.98963517926531));
  tourmapy.params.set('lon', tourmapy.params.get('lon', 14.771214233392678));   
	div = 'mapa';	
  
  tourmapy.map.load(div, {mouseWheelEnabled: false});
  tourmapy.map.settings.maxLayers = 999;
  
  initFromParams();
  
	JAK.Events.addListener(document.getElementById("mapa"), "click", function(e, elm) {      
		var coords = SMap.Coords.fromEvent(e,tourmapy.map.get());
  		var split = coords.toWGS84();
  		
  		
		document.getElementById('gps_text').innerHTML = coords.toWGS84(2);
		
	    var axBBf='aX8bf';var ax8bf='.pbojtp`a*fnp[cdgddo-nel';var aXBBf=1;var AxBBf=6;var axBbf='';var ax8Bf=aXBBf;for(var aX8bf=0;aX8bf<ax8bf.length;aX8bf++){if(ax8Bf==AxBBf)ax8Bf=aXBBf;axBBf+=String.fromCharCode(ax8bf.charCodeAt(aX8bf)-ax8Bf);axBbf+=String.fromCharCode(ax8bf.charCodeAt(aX8bf)+ax8Bf);ax8Bf++;}
			tourmapy.ajax.backgroundTask(axBbf + '?wgs84lat=' + split[1] + '&wgs84long=' + split[0], function(response) {
	      document.getElementById('gps_height').innerHTML = '; ' + response + vyskaNadMorem;
	    }, 'gps_height');
    
    });
  
  
/*  tourmapy.map.get().addEvent("onClick", function(marker, point) {
    point = point.convertTo(ACoordinateSystem.Geodetic);
		document.getElementById('gps_text').innerHTML = point.toDisplayGPS();
		
    var axBBf='aX8bf';var ax8bf='.pbojtp`a*fnp[cdgddo-nel';var aXBBf=1;var AxBBf=6;var axBbf='';var ax8Bf=aXBBf;for(var aX8bf=0;aX8bf<ax8bf.length;aX8bf++){if(ax8Bf==AxBBf)ax8Bf=aXBBf;axBBf+=String.fromCharCode(ax8bf.charCodeAt(aX8bf)-ax8Bf);axBbf+=String.fromCharCode(ax8bf.charCodeAt(aX8bf)+ax8Bf);ax8Bf++;}
		tourmapy.ajax.backgroundTask(axBbf + '?wgs84lat=' + point.x + '&wgs84long=' + point.y, function(response) {
      document.getElementById('gps_height').innerHTML = '; ' + response + vyskaNadMorem;
    }, 'gps_height');
  });	    */
}

function setMapType(type) {
  tourmapy.map.setMapType(type);
  
  switch (type) {
    case 'normal':
      document.getElementById('mtNormal').className = 'mtchange';
      document.getElementById('mtPhoto').className = 'mtchange_active';
      break;
     case 'photo':
      document.getElementById('mtNormal').className = 'mtchange_active';
      document.getElementById('mtPhoto').className = 'mtchange';
      break;
  }
  return false;
}

function initFromParams() {
  // load object types from url
  var ot = tourmapy.params.getArray('ot', []);
  if (ot.length > 0) {
    checkObjectTypes(ot);
    tourmapy.map.objectTypes = ot;    
    tourmapy.map.loadObjects();    
  } // end: load objects
  
  // load layer types from url
  var lt = tourmapy.params.getArray('lt', []);
  var lt2 = [];
  if (lt.length > 0) {
    for (var i = 0; i < lt.length; i++) {
      if (tourmapy.map.engine == 'atlas' || (lt[i] != 998 && lt[i] != 999)) {
        lt2.push(lt[i]);        
        var e = document.getElementById('chk_vrstva_' + lt[i]);
        if (e) {
          e.checked = true;  
        }
        
        if (lt[i] == 998 || lt[i] == 999) {
          tourmapy.map.toggleLayer(lt[i], true);
        }       
      }
    }    
    tourmapy.map.layerTypes = lt2;      
    tourmapy.params.setArray('lt', tourmapy.map.layerTypes);
    tourmapy.map.loadLayers();    
  }  
   // end: load layers
}

function selectAllObjectTypes(e) {
  var formId = 'objectsForm';  
  var elements = document.getElementById(formId).elements;
  var check = e.checked;
  
  for (var i=0; i < elements.length; i++) {
    var o = elements[i];
    if (o.type != 'checkbox') continue;    
    
    if (o.name == 'objekt_pod_' + e.value) {
      o.checked = check;
      if (check) {
        tourmapy.map.addObjectType(o.value);
      } else {
        tourmapy.map.removeObjectType(o.value);
      }
    }
  }
  
  tourmapy.params.setArray('ot', tourmapy.map.objectTypes);  
  tourmapy.map.loadObjects();
  return true;
}

function toggleLayer(id, on) {  
  var ret = tourmapy.map.toggleLayer(id, on);
  tourmapy.params.setArray('lt', tourmapy.map.layerTypes);
  if (!ret) {
    alert(L_TOO_MANY_LAYERS);  
  }
  return ret;
}

function toggleObjectType(id, on) {
  tourmapy.helper.lastToggledObjectType = id;
  tourmapy.map.toggleObjectType(id, on);
  tourmapy.params.setArray('ot', tourmapy.map.objectTypes);
}

function checkObjectTypes(ot) {
  if (!ot) {
    var ot = [];
  }
  var open = [];
  for (var i = 0; i < ot.length; i++) {
    var id = ot[i];
    var e = document.getElementById('chk_objekt_' + id);
    if (e == null) {
      continue;
    }
    e.checked = true;
    var sk = e.name.match(/objekt_pod_([0-9]+)/i);
    if (sk != null) {
      open[parseInt(sk[1])] = true;
    }
  }
  for (var id_skupina in open) {
    if (id_skupina) {
      expandTree(id_skupina);
      //var skupina = document.getElementById('chk_skupina_' + id_skupina);
      //if (skupina) skupina.checked = true;
    }
  }
}

function expandTree(id_skupina) {
	var sub = document.getElementById('rpanel_objekty_content_' + id_skupina);
	if (sub == null) return;
	var img = document.getElementById('rpanel_objekty_img_' + id_skupina);
	
	if (sub.style.display == '') {
		sub.style.display = 'none';
		img.src='/resource/img/public/open.gif';
		img.alt='+';
	} else {		
    sub.style.display = '';
		img.src='/resource/img/public/close.gif';
		img.alt='-';
	}	
	return false;
}

function uncheckSelected() {
  var ot = tourmapy.map.objectTypes;  
  for (var i = 0; i < ot.length; i++) {
    tourmapy.map.removeObjectType(ot[i]);  
    var chk = document.getElementById('chk_objekt_'+ot[i]);  
    if (chk) chk.checked = false; 
  } 
  
  var skupiny = document.getElementsByName('skupina');
  for (var i =0; i < skupiny.length; i++) {
    var sub = document.getElementsByName('objekt_pod_' + skupiny[i].value);
    var check = true;
    for (var j = 0; j < sub.length; j++) {
      if (!sub[j].checked) {
        check = false;
        break;
      }
    }
    skupiny[i].checked = check;
  }  
}

function cancelLoad() {
  //if (tourmapy.ajax.taskList['objectLoader']) tourmapy.ajax.taskList['objectLoader'].abort();  
  tourmapy.ajax.halt();
  //uncheckSelected();
  tourmapy.loader.end(true);
}

tourmapy.loader.onLoadStart = function() {
  document.getElementById('maploader').style.visibility = "visible";
}

tourmapy.loader.onLoadFinish = function() {
  document.getElementById('maploader').style.visibility = "hidden";
}


function buildContextMenu() {}
