{"version":3,"sources":["Feature/ContactLocator/code/ui/scripts/ContactLocator/ContactLocator.js"],"names":["selectedType","markers","startLat","startLng","map","google","maps","Map","document","getElementById","center","lat","lng","zoom","styles","featureType","stylers","visibility","ContactLocator","markerClusterer","constants","container","card","btnSubmit","inputPosition","$","viewRadio","btnGeoPosition","$businessAreaRadios","businessAreaId","contactLocatorCard","concat","googleMapsDirectionsUrl","index","selectedItem","businessAreasDefaultOptionId","clearMarkers","updateMapMarkersByBusinessArea","length","i","selectedIndex","contact","totalBusinessAreas","some","b","id","addMarker","handleBusinessAreaChange","e","placeLatLng","target","place","geometry","location","remove","populateListView","onFormSubmit","on","LatLng","icon","Size","Point","scaledSize","marker","Marker","title","name","push","zoomToFitXNumberOfMarkers","findClosestN","latLng","_ContactLocator$marke","closest","undefined","getTotalMarkers","distance","spherical","computeDistanceBetween","position","sort","sortByDist","splice","numberOfMarkers","a","closestContacts","bounds","LatLngBounds","fitBounds","setCenter","zoomIntoView","contained","newbounds","contains","setZoom","getZoom","getFormattedAddressHtml","address","parts","street","postalPart","postal","zip","city","stateOrProvince","getPostalPart","country","join","$listContainer","getCenter","$template","html","$anchor","listLazyLoad","LazyLoad","empty","officeTemplate","Handlebars","$el","addClass","compile","officeTemplateSource","find","prop","children","hide","populateAgentLabel","each","c","officeHtml","salesHidden","populateVirtualLocationLabel","office","showsPeople","append","sales","populatePersons","supportHidden","$tab","attr","support","$tabSupport","has","first","tab","setMapMarkers","data","isVirtualLocation","contacts","geoCoordinates","iconUrl","addListener","url","populateLocationCardHeadingImage","removeClass","event","populateName","populateOfficeDetails","$tabSales","preventDefault","$fullscreenDiv","dataLayer","this","appendTo","MarkerClusterer","category","action","label","ajax","imagePath","maxZoom","gridSize","dataSourceItemId","languageCode","RequestVerificationToken","done","contextItemId","setBusinessAreasOptions","csrfToken","headers","geoLocationSet","businessAreas","locations","tryToSetLocationByGeoLocation","getCurrentPageCountryCode","status","ba","radioHtml","radios","defaultItem","agentContent","radioTemplate","businessAreaRadio","change","$destination","agentLabel","template","show","selectedBusinessArea","directionsUrl","onModalClose","templateSource","val","collection","getSelectedBusinessAreas","handleLocationError","browserHasGeolocation","console","warn","person","infoWindow","currentLatLng","onZoomChange","input","addEventListenerWrapper","listener","orig_listener","pos","suggestion_selected","simulated_downarrow","Event","autocomplete","which","geolocation","navigator","getCurrentPosition","coords","latitude","longitude","addEventListener","attachEvent","handlePlaceChanged","type","formatted_address","keyCode","apply","getJSON","s","places","Autocomplete","bbox","w","zoomLvl","submit","fitBoundsToCountry","countryCode","ctxlanguage","toUpperCase","getBoundingBox","n","registerHelper","formatted","SafeString","init","registerHandlebarsHelpers","initMap","split","onCardClick","object","click","trigger","markerLatLng"],"mappings":"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","file":"../../../scripts/ContactLocator/ContactLocator-2e5d163dda.js","sourcesContent":["var markers = [],\r\n startLat = 0.155826,\r\n startLng = -26.487289,\r\n selectedType,\r\n map = new google.maps.Map(document.getElementById('ContactLocator-mapInner'), {\r\n center: { lat: startLat, lng: startLng },\r\n zoom: 2,\r\n styles: [\r\n {\r\n \"featureType\": \"poi.attraction\",\r\n \"stylers\": [{ \"visibility\": \"off\" }]\r\n },\r\n {\r\n \"featureType\": \"poi.business\",\r\n \"stylers\": [{ \"visibility\": \"off\" }]\r\n },\r\n {\r\n \"featureType\": \"poi.government\",\r\n \"stylers\": [{ \"visibility\": \"off\" }]\r\n },\r\n {\r\n \"featureType\": \"poi.medical\",\r\n \"stylers\": [{ \"visibility\": \"off\" }]\r\n },\r\n {\r\n \"featureType\": \"poi.park\",\r\n \"stylers\": [{ \"visibility\": \"off\" }]\r\n },\r\n {\r\n \"featureType\": \"poi.place_of_worship\",\r\n \"stylers\": [{ \"visibility\": \"off\" }]\r\n },\r\n {\r\n \"featureType\": \"poi.school\",\r\n \"stylers\": [{ \"visibility\": \"off\" }]\r\n },\r\n {\r\n \"featureType\": \"poi.sports_complex\",\r\n \"stylers\": [{ \"visibility\": \"off\" }]\r\n }\r\n ]\r\n });\r\n\r\nvar ContactLocator = {\r\n\r\n markerClusterer: null,\r\n\r\n constants: {\r\n container: \"#ContactLocator-container\",\r\n card: \"#ContactLocator-formCard\",\r\n btnSubmit: \"#ContactLocator-submit\",\r\n inputPosition: \"#ContactLocator-autoCompleteInput\",\r\n btnGeoPosition: \"#ContactLocator-getLocationButton\",\r\n $listContainer: $(\"#ContactLocator-list\"),\r\n businessAreaRadio: \".ContactLocator-businessArearadio\",\r\n $businessAreaRadios: $('#businessAreaRadios'),\r\n viewRadio: \".ContactLocator-viewRadio\",\r\n contactLocatorCard: '.ContactLocator-card',\r\n googleMapsDirectionsUrl: \"https://www.google.com/maps/dir/?api=1&destination=\",\r\n businessAreasDefaultOptionId:\"allBusinessAreasContactLocator\"\r\n },\r\n\r\n updateMapMarkersByBusinessArea: function (businessAreaId) {\r\n \r\n let selectedItem = $(`.ContactLocator-businessArearadio[value=\"${businessAreaId}\"]`);\r\n const selectedIndex = $(`.ContactLocator-businessArearadio`).index(selectedItem);\r\n ContactLocator.markerClusterer.clearMarkers();\r\n\r\n for (var i = 0; i < markers.length; i++) {\r\n let isVisible = false;\r\n let totalBusinessAreas = markers[i].contact.totalBusinessAreas;\r\n\r\n if (selectedIndex > 0) {\r\n isVisible = totalBusinessAreas.some(b => b.id === businessAreaId);\r\n }\r\n else {\r\n isVisible = true;\r\n }\r\n\r\n if (isVisible) {\r\n ContactLocator.markerClusterer.addMarker(markers[i]);\r\n }\r\n }\r\n },\r\n\r\n handleBusinessAreaChange: (e) => {\r\n let id = e.target.value;\r\n ContactLocator.updateMapMarkersByBusinessArea(id);\r\n\r\n let placeLatLng = null;\r\n\r\n if (typeof place !== 'undefined') {\r\n placeLatLng = new google.maps.LatLng(place.geometry.location.lat(), place.geometry.location.lng());\r\n }\r\n\r\n if (!$('#ContactLocator-mapOverlay')) {\r\n ContactLocator.zoomToFitXNumberOfMarkers(placeLatLng);\r\n }\r\n else {\r\n $('#ContactLocator-mapOverlay').remove();\r\n }\r\n \r\n ContactLocator.populateListView();\r\n \r\n },\r\n\r\n onFormSubmit: function () {\r\n var frmCard = $(ContactLocator.constants.card);\r\n frmCard.on(\"submit\", function () {\r\n\r\n if (typeof place !== 'undefined') {\r\n if (typeof place.geometry !== 'undefined') {\r\n let placeLatLng = new google.maps.LatLng(place.geometry.location.lat(), place.geometry.location.lng());\r\n\r\n // Icon for search hit\r\n var icon = {\r\n size: new google.maps.Size(20, 28),\r\n anchor: new google.maps.Point(10, 28),\r\n scaledSize: new google.maps.Size(20, 28)\r\n };\r\n var marker = new google.maps.Marker({\r\n position: placeLatLng,\r\n icon: icon,\r\n title: place.name,\r\n map\r\n });\r\n\r\n markers.push(marker);\r\n // end icon for search hit\r\n\r\n ContactLocator.zoomToFitXNumberOfMarkers(placeLatLng);\r\n ContactLocator.populateListView();\r\n }\r\n }\r\n return false;\r\n });\r\n\r\n },\r\n findClosestN: function (latLng) {\r\n let closest = [];\r\n let numberOfMarkers = 5;\r\n let markers = ContactLocator?.markerClusterer?.getMarkers();\r\n\r\n if (markers !== undefined) {\r\n for (let i = 0; i < ContactLocator.markerClusterer.getTotalMarkers(); i++) {\r\n let marker = markers[i];\r\n marker.distance = google.maps.geometry.spherical.computeDistanceBetween(latLng, marker.position);\r\n closest.push(marker);\r\n }\r\n }\r\n\r\n closest.sort(ContactLocator.sortByDist);\r\n let result = closest.splice(0, numberOfMarkers);\r\n\r\n return result;\r\n },\r\n\r\n sortByDist: function (a, b) {\r\n return a.distance - b.distance;\r\n },\r\n\r\n /*\r\n * Center map on searched location and if necessary zoom map -1 to include closest markers. \r\n */\r\n zoomToFitXNumberOfMarkers: function (placeLatLng) {\r\n\r\n let latLng = map.getCenter();\r\n\r\n if (placeLatLng) {\r\n latLng = placeLatLng;\r\n }\r\n\r\n var closestContacts = ContactLocator.findClosestN(latLng);\r\n var bounds = new google.maps.LatLngBounds();\r\n\r\n for (var i = 0; i < closestContacts.length; i++) {\r\n bounds.extend(closestContacts[i].position);\r\n }\r\n map.fitBounds(bounds);\r\n\r\n if (placeLatLng) {\r\n map.setCenter(placeLatLng);\r\n }\r\n\r\n\r\n function zoomIntoView() {\r\n let contained = true;\r\n let newbounds = map.getBounds();\r\n for (i = 0; i < closestContacts.length; i++) {\r\n if (!newbounds.contains(closestContacts[i].position)) {\r\n contained = false;\r\n }\r\n }\r\n\r\n if (!contained) {\r\n map.setZoom(map.getZoom() - 1); // zoom out if closest markers isn't shown in calculated bounds after map is centered.\r\n zoomIntoView();\r\n }\r\n }\r\n zoomIntoView();\r\n },\r\n\r\n getFormattedAddressHtml(address) {\r\n\r\n let parts = [];\r\n\r\n function getPostalPart(address) {\r\n let postal = \"\";\r\n if (address.zip) {\r\n postal += address.zip + \" \";\r\n }\r\n if (address.city) {\r\n postal += address.city;\r\n }\r\n if (address.stateOrProvince) {\r\n postal += postal.length > 0 ? \"
\" : \"\";\r\n postal += address.stateOrProvince;\r\n }\r\n\r\n return postal;\r\n }\r\n\r\n if (address.street) {\r\n parts.push(address.street);\r\n }\r\n\r\n let postalPart = getPostalPart(address);\r\n\r\n if (postalPart) {\r\n parts.push(postalPart);\r\n }\r\n\r\n if (address.country) {\r\n parts.push(address.country);\r\n }\r\n\r\n return parts.join('
');\r\n },\r\n\r\n populateListView() {\r\n var $listContainer = ContactLocator.constants.$listContainer,\r\n closestContacts = ContactLocator.findClosestN(map.getCenter()),\r\n $template = $(\"#listView-template\").html(),\r\n $anchor = $('