{"version":3,"file":"livlina-karta.min.js","sources":["livlina-karta.js"],"sourcesContent":["'use strict';\r\n\r\n(function() {\r\n\r\n let map;\r\n let markers = [];\r\n let showAllMarkers = true;\r\n let latestZoomFactor;\r\n\r\n kartor.hamtaSvgRaknare();\r\n\r\n $(document).on('click', '#navbar-toggler-karta.collapsed', function () {\r\n const kartaLaddad = document.getElementById('karta-laddad').value === 'true';\r\n\r\n const kartaSkaVisas = document.getElementById('karta-livlina');\r\n\r\n if (!kartaLaddad && kartaSkaVisas) {\r\n\r\n kartor.initieraKarta(initMap);\r\n\r\n function initMap() {\r\n if (navigator.geolocation) {\r\n navigator.geolocation.getCurrentPosition(skapaKartaMedPosition, function () { skapaKartaMedPosition(null) });\r\n } else {\r\n skapaKartaMedPosition(null);\r\n }\r\n\r\n document.getElementById('karta-laddad').value = 'true';\r\n }\r\n }\r\n });\r\n\r\n function skapaKartaMedPosition(position) {\r\n\r\n const karta = document.getElementById('karta-livlina');\r\n\r\n const sthlmLat = 59.327261677951526;\r\n const sthlmLong = 18.071652409999714;\r\n\r\n const gbgLat = 57.70502252808424;\r\n const gbgLong = 11.965437821304402;\r\n\r\n let lat = sthlmLat;\r\n let long = sthlmLong;\r\n let zoom = 12;\r\n \r\n if (position == null) {\r\n console.log('No position from geocoding...');\r\n }\r\n else if (position.coords.latitude > 58 &&\r\n position.coords.latitude < 60 &&\r\n position.coords.longitude > 17 &&\r\n position.coords.longitude < 19) {\r\n lat = sthlmLat;\r\n long = sthlmLong;\r\n showAllMarkers = false;\r\n }\r\n else if (position.coords.latitude > 56 &&\r\n position.coords.latitude < 58 &&\r\n position.coords.longitude > 11 &&\r\n position.coords.longitude < 13) {\r\n lat = gbgLat;\r\n long = gbgLong;\r\n showAllMarkers = false;\r\n }\r\n\r\n map = kartor.skapaKarta(karta, lat, long, zoom, null, true);\r\n\r\n markeraPlatser();\r\n latestZoomFactor = map.getZoom();\r\n google.maps.event.addListener(map, 'zoom_changed', function () {\r\n \r\n const mapZoom = map.getZoom();\r\n if (mapZoom > latestZoomFactor && latestZoomFactor <= kartor.zoomLevelForAttVisaAntal && mapZoom > kartor.zoomLevelForAttVisaAntal) {\r\n removeMarkers();\r\n markeraPlatser();\r\n }\r\n else if (mapZoom < latestZoomFactor && latestZoomFactor > kartor.zoomLevelForAttVisaAntal && mapZoom <= kartor.zoomLevelForAttVisaAntal) {\r\n removeMarkers();\r\n markeraPlatser();\r\n\r\n }\r\n\r\n latestZoomFactor = map.getZoom();\r\n });\r\n }\r\n\r\n function markeraPlatser(fitBounds) {\r\n const markerInfo = document.createElement('marker-info');\r\n\r\n var url = document.getElementById('url-livlina-karta').value;\r\n\r\n fetch(url)\r\n .then(response => response.text())\r\n .then(result => {\r\n markerInfo.innerHTML = result;\r\n\r\n const slideshows = markerInfo.querySelectorAll('.sidhuvud-slideshow');\r\n af.initSlideshow(slideshows);\r\n\r\n if (document.getElementById('karta-fastigheter').classList.contains('active')) {\r\n let fastigheter = markerInfo.querySelectorAll('.card-fastighet');\r\n\r\n for (var i = 0; i < fastigheter.length; i++) {\r\n markeraPlatsOchSkapaPopup(fastigheter[i].dataset.latitud,\r\n fastigheter[i].dataset.longitud,\r\n kartor.ikonFastighetPrimar,\r\n fastigheter[i]);\r\n }\r\n }\r\n\r\n if (document.getElementById('karta-lediga-lokaler').classList.contains('active')) {\r\n let lokaler = markerInfo.querySelectorAll('.card-lokal');\r\n\r\n markers = kartor.markeraLokaler(map, lokaler, markers, false, kartor.ikonLokalPrimar);\r\n }\r\n\r\n if (document.getElementById('karta-projekt').classList.contains('active')) {\r\n let projektlista = markerInfo.querySelectorAll('.card-projekt');\r\n\r\n for (var i = 0; i < projektlista.length; i++) {\r\n markeraPlats(projektlista[i].dataset.latitud,\r\n projektlista[i].dataset.longitud,\r\n kartor.ikonProjektPrimar,\r\n projektlista[i]);\r\n }\r\n }\r\n\r\n if (fitBounds && showAllMarkers) {\r\n var bounds = new google.maps.LatLngBounds();\r\n for (var i = 0; i < markers.length; i++) {\r\n bounds.extend(markers[i].getPosition());\r\n }\r\n\r\n map.fitBounds(bounds);\r\n }\r\n });\r\n }\r\n function markeraPlatsOchSkapaPopup(latitud, longitud, ikon, htmlobjekt) {\r\n\r\n const popup = kartor.skapaPopupHtmlFranObjekt(htmlobjekt);\r\n\r\n markeraPlats(latitud, longitud, ikon, popup);\r\n }\r\n\r\n function markeraPlats(latitud, longitud, ikon, htmlPopup) {\r\n\r\n if (latitud !== '' && longitud !== '') {\r\n let marker = kartor.marker(latitud, longitud, map, ikon);\r\n\r\n kartor.hanteraPopup(map, marker, htmlPopup);\r\n\r\n markers.push(marker);\r\n }\r\n }\r\n\r\n $(document).on('click',\r\n '.kartval',\r\n function () {\r\n $(this).toggleClass('active');\r\n removeMarkers();\r\n markeraPlatser();\r\n });\r\n\r\n function removeMarkers() {\r\n for (var i = 0; i < markers.length; i++) {\r\n markers[i].setMap(null);\r\n }\r\n markers = [];\r\n }\r\n\r\n const innehallFastighetssida = document.getElementById('innehall');\r\n let isFastighetSida = false;\r\n \r\n if (innehallFastighetssida && innehallFastighetssida.classList.contains('fastighet-sida')) {\r\n isFastighetSida = true;\r\n \r\n }\r\n if (!isFastighetSida) {\r\n hanteraAfterMedgivande();\r\n }\r\n\r\n function hanteraAfterMedgivande() {\r\n var openTagetAfterReload = sessionStorage.getItem('opentargetafterreload');\r\n if (openTagetAfterReload) {\r\n const targetElement = document.querySelector(openTagetAfterReload);\r\n targetElement.click();\r\n sessionStorage.removeItem('opentargetafterreload');\r\n }\r\n }\r\n})();\r\n\r\n\r\n\r\n"],"names":["let","map","markers","showAllMarkers","latestZoomFactor","skapaKartaMedPosition","position","karta","document","getElementById","sthlmLat","sthlmLong","lat","long","console","log","coords","latitude","longitude","kartor","skapaKarta","markeraPlatser","getZoom","google","maps","event","addListener","mapZoom","zoomLevelForAttVisaAntal","removeMarkers","fitBounds","markerInfo","createElement","url","value","fetch","then","response","text","result","innerHTML","slideshows","querySelectorAll","af","initSlideshow","classList","contains","fastigheter","i","length","htmlobjekt","ikon","longitud","latitud","markeraPlatsOchSkapaPopup","dataset","ikonFastighetPrimar","popup","skapaPopupHtmlFranObjekt","markeraPlats","lokaler","markeraLokaler","ikonLokalPrimar","projektlista","ikonProjektPrimar","bounds","LatLngBounds","extend","getPosition","htmlPopup","marker","hanteraPopup","push","setMap","hamtaSvgRaknare","$","on","kartaLaddad","kartaSkaVisas","initieraKarta","navigator","geolocation","getCurrentPosition","this","toggleClass","innehallFastighetssida","isFastighetSida","openTagetAfterReload","sessionStorage","getItem","querySelector","click","removeItem"],"mappings":"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"}