',L.DomEvent.disableClickPropagation(a),t}});(new LogoMAPY).addTo(map);const LogoDPMD=L.Control.extend({options:{position:"bottomright"},onAdd:function(e){const t=L.DomUtil.create("div"),a=L.DomUtil.create("a","",t);return a.setAttribute("href","https://www.dpmdas.cz/"),a.setAttribute("target","_blank"),a.innerHTML='
',L.DomEvent.disableClickPropagation(a),t}});(new LogoDPMD).addTo(map),departureBoard||defaultCenter||latitude||longitude||"https:"!=location.protocol||L.control.locate({strings:{title:"Moje poloha podle GPS"},position:"topleft"}).addTo(map);var gpx=null,mc=[],busstops=[],buspositions=[],legends=[],datahash=null,currentUpdateInterval=0,pauseAutoRefresh=!1,progressbarDiv=document.getElementById("progressbar");progressbarDiv.className="progress-bar";var legendsDiv=document.getElementById("legends");legendsDiv.className="legends";var lastHideStops=null,lastDontHideRoute=null,lastActiveLayer=null;function loadSettings(){if(!departureBoard&&(lastHideStops=localStorage.getItem("hideStops"),lastDontHideRoute=localStorage.getItem("dontHideRoute"),lastActiveLayer=localStorage.getItem("activeLayer"),lastHideStops&&(hideStops="true"==lastHideStops),lastDontHideRoute&&(dontHideRoute="true"==lastDontHideRoute),lastActiveLayer))for(var e=0;e0?map.getSize().x/1+"px":map.getSize().x/2e3*currentUpdateInterval+"px"}function destroyGPXLayer(){gpx&&(gpx.clearLayers(),map.removeLayer(gpx),gpx=null)}function createGPXLayer(e){if(destroyGPXLayer(),!pauseAutoRefresh)for(var t=0;t=0;a--)t[a]&&null!=t[a].getAttribute("src")&&-1!=t[a].getAttribute("src").indexOf(e)&&t[a].parentNode.removeChild(t[a])}function refreshMarkers(){var e=datahash,t=document.getElementsByTagName("head")[0],a=document.createElement("script");return a.id=Date.now(),a.src="https://tabla.dpmdas.cz/data/TrafficState.js",removeMarkersFile(a.src),t.appendChild(a),loadMarkers(),e!==datahash&&(mc=[],!0)}function setLegends(){legendsDiv.innerHTML="";var e=legendsDiv.offsetHeight;legends.reverse().forEach((function(t){e-=32;var a=document.createElement("div");a.className="legend-div",a.style.top=e+"px",legendsDiv.appendChild(a);var o=document.createElement("img");o.src=imagesUrl+"drop-"+t.color+".png?v="+t.version,o.style.filter="hue-rotate("+t.hue+"deg) brightness("+t.brightness+")",a.appendChild(o);var r=document.createElement("div");r.className="legend-caption",r.innerHTML=" "+t.text+" ",a.appendChild(r);var s=document.createElement("div");s.className="legend-text",s.innerHTML=t.mark,a.appendChild(s)}))}function setBusStops(){busstopsLayer.clearLayers(),busstops.forEach((function(e){if(!stops||0==stops.length||stops.find((t=>t==e.stopid1))||stops.find((t=>t==e.stopid2))){var t=new L.Icon({iconUrl:imagesUrl+"busstop.png?v="+e.version,iconAnchor:[11,11],popupAnchor:[0,-11]});L.marker(fromWGS84(e.coords),{icon:t,title:e.hint}).addTo(busstopsLayer).bindPopup(e.header+"
"+e.body,{minWidth:240,maxWidth:240,maxHeight:360}).off("").setZIndexOffset(2e3),departureBoard&&stops&&0!=stops.length&&mc.push(fromWGS84(e.coords))}}))}function setBusPositions(e){buspositionsLayer.clearLayers(),buspositions.forEach((function(t){if((!vehicles||0==vehicles.length||vehicles.find((e=>e==t.vehicle)))&&(!lines||0==lines.length||lines.find((e=>e==t.line)))){var a=new L.divIcon({html:'
'+(t.arrow?'
':"")+''+t.line+"",className:"my-div-icon",iconAnchor:[11,31],popupAnchor:[0,-31]});L.marker(fromWGS84(t.coords),{icon:a,title:t.hint}).addTo(buspositionsLayer).bindPopup(t.header+"
"+t.body,{minWidth:240,maxWidth:240,maxHeight:480}).off("").setZIndexOffset(4e3).on("mouseover",(function(e){createGPXLayer(t.id)})).on("mouseout",(function(e){dontHideRoute||destroyGPXLayer()})),e&&mc.push(fromWGS84(t.coords))}}))}function setLocation(e){if(locationLayer.clearLayers(),latitude&&longitude){latLon=fromWGS84(latitude+", "+longitude),2==latLon.length&&(latitude=latLon[0],longitude=latLon[1]);var t=new L.Icon({iconUrl:imagesUrl+"location.png?v=1",iconAnchor:[11,31]});L.marker([latitude,longitude],{icon:t,title:"Vaše aktuální poloha podle GPS"}).addTo(locationLayer).setZIndexOffset(50),e&&mc.push([latitude,longitude]);for(let e=1;e<3;e++)L.circle([latitude,longitude],{color:"red",weight:2,opacity:.5,radius:5*e/60*5*1e3,dashArray:"5",fill:!1,interactive:!1}).addTo(locationLayer),L.imageOverlay(encodeURI('data:image/svg+xml,"),[[latitude-.0024-.00376*(e-1),longitude-.002],[latitude-.0046-.00376*(e-1),longitude+.002]],{interactive:!1}).addTo(locationLayer)}}function setMapCenterAndZoom(){2==!enableZoomEvent&&(lastEnableZoomEvent=enableZoomEvent,enableZoomEvent=0),defaultCenter&&(mc=fromWGS84(defaultCenter)),0==mc.length&&(mc.push(fromWGS84("50.7922897N, 14.2354897E")),mc.push(fromWGS84("50.7630692N, 14.1591500E")));var e=L.polygon(mc),t=defaultCenter?fromWGS84(defaultCenter):e.getBounds().getCenter(),a=defaultZoom||map.getZoom();disableAutoZoom?departureBoard||(!a||a<=0?map.fitBounds(mc):map.setView(t,a)):defaultZoom&&a&&a>0?map.setView(t,a):!departureBoard||!a||a<=0?map.fitBounds(mc):map.setView(t,a),map.setMaxBounds([fromWGS84("50.95N, 14.40E"),fromWGS84("50.65N, 14.00E")]),2==!enableZoomEvent&&(enableZoomEvent=lastEnableZoomEvent)}if(map.on("focus",(function(e){dontHideRoute||destroyGPXLayer()})),map.on("click",(function(e){destroyGPXLayer()})),map.on("popupopen",(function(e){pauseAutoRefresh=!0})),map.on("popupclose",(function(e){pauseAutoRefresh=!1,dontHideRoute||destroyGPXLayer()})),map.on("baselayerchange",(function(e){activeBasicLayer=e.name,saveSettings()})),map.on("zoom",(function(e){1==enableZoomEvent&&(disableAutoZoom=!0)})),map.on("overlayadd",(function(e){setOverlayChange(e,!0)})),map.on("overlayremove",(function(e){setOverlayChange(e,!1)})),buspositionsLayer.addTo(map),locationLayer.addTo(map),dontHideRoute&&1==dontHideRoute&&routeLayer.addTo(map),hideStops&&0!=hideStops||busstopsLayer.addTo(map),refreshMarkers(),setLegends(),setBusStops(),setBusPositions(!0),setLocation(!0),enableZoomEvent=1,setMapCenterAndZoom(),enablesaveSettings=!0,setOverlayChange(routeLayer,dontHideRoute),saveSettings(),autoRefreshTimerStep>0){var autoRefresh=setInterval(timerAutorefresh,autoRefreshTimerStep);function timerAutorefresh(){pauseAutoRefresh||(currentUpdateInterval+=autoRefreshTimerStep,updateProgressBar(),currentUpdateInterval>=2e3&&(refreshMarkers()&&(setBusStops(),setBusPositions(departureBoard||autoFollow||autoAdjust),setLocation(departureBoard||autoFollow||autoAdjust)),currentUpdateInterval=0,updateProgressBar(),(departureBoard||autoFollow||autoAdjust)&&setMapCenterAndZoom()))}}