!function(){"use strict";function e(e,t){e=".directorist-dom-data-"+e,t||(t=document);var a=t.querySelector(e);if(!a||!a.dataset.value)return{};var o=directorist&&directorist.script_debugging&&"1"==directorist.script_debugging;try{var n=atob(a.dataset.value);return JSON.parse(n)}catch(e){return o&&console.log(a,e),{}}}var t=jQuery;function a(){if("undefined"!=typeof google&&google.maps&&google.maps.Geocoder&&t("#gmap").length){var a,o,n,i,r,s,l,d=e("map_data"),c=parseFloat(d.default_latitude),p=parseFloat(d.default_longitude),g=parseFloat(d.manual_lat),m=parseFloat(d.manual_lng),u=parseInt(d.map_zoom_level),v='<i class="directorist-icon-mask" aria-hidden="true" style="--directorist-icon: url(\''.concat(directorist.assets_url,"icons/font-awesome/svgs/solid/map-marker-alt.svg')\"></i>"),f=document.createElement("div");f.className="atbd_map_shape",f.innerHTML=v,g=isNaN(g)?c:g,m=isNaN(m)?p:m,r=t("#manual_lat"),s=t("#manual_lng"),l={lat:g,lng:m},i=[],null!==(n=document.getElementById("address"))&&n.addEventListener("focus",w);var h=new google.maps.Geocoder;function _(e){e.addListener("dragend",function(e){var t=e.latLng.lat(),a=e.latLng.lng();r.val(t),s.val(a),k(h,t,a)})}function y(e){if(!e||!e.address_components)return"";var t=e.address_components;return t.length>0&&t[0].long_name&&t[0].long_name.includes("+")&&(t=t.slice(1)),t.map(function(e){return e.long_name}).join(", ")}function k(e,t,a){var o={location:new google.maps.LatLng(t,a)};e.geocode(o,function(e,t){if("OK"===t&&e[0]){var a=y(e[0]);n.value=a}})}function w(){navigator.geolocation&&navigator.geolocation.getCurrentPosition(function(e){var t={lat:e.coords.latitude,lng:e.coords.longitude},a=new google.maps.Circle({center:t,radius:e.coords.accuracy});o.setBounds(a.getBounds())})}function b(){var e={types:["geocode"],componentRestrictions:{country:directorist.restricted_countries}},t=directorist.countryRestriction?e:{types:[]};(o=new google.maps.places.Autocomplete(n,t)).addListener("place_changed",L)}function L(){var e=o.getPlace();r.val(e.geometry.location.lat()),s.val(e.geometry.location.lng()),a.setCenter(e.geometry.location);var t=new google.maps.marker.AdvancedMarkerElement({map:a,position:e.geometry.location,gmpDraggable:!0,content:f,title:d.marker_title});C(),i.push(t),_(t)}function M(){a=new google.maps.Map(document.getElementById("gmap"),{zoom:u,center:l,mapId:"add_listing_map"});var e=new google.maps.marker.AdvancedMarkerElement({map:a,position:l,gmpDraggable:!0,content:f,title:d.marker_title});i.push(e),document.getElementById("generate_admin_map").addEventListener("click",function(e){e.preventDefault(),N(h,a)}),e.addListener("click",function(e){C();var t=e.latLng.lat(),o=e.latLng.lng();r.val(t),s.val(o),k(h,t,o),x(e.latLng,a)}),_(e)}function N(e,t){var a=parseFloat(document.getElementById("manual_lat").value),o=parseFloat(document.getElementById("manual_lng").value),l=new google.maps.LatLng(a,o),c={location:l};e.geocode(c,function(e,c){if("OK"===c){r.val(a),s.val(o),t.setCenter(l);var p=new google.maps.marker.AdvancedMarkerElement({map:t,position:l,gmpDraggable:!0,content:f,title:d.marker_title});C(),i.push(p);var g=y(e[0]);n.value=g,_(p)}else alert(d.geocode_error_msg+c)})}function x(e,t){var a=new google.maps.marker.AdvancedMarkerElement({map:t,position:e,gmpDraggable:!0,content:f,title:d.marker_title});i.push(a),_(a)}function C(){for(var e=0;e<i.length;e++)i[e].setMap(null);i=[]}b(),M(),t("#delete_marker").on("click",function(e){e.preventDefault(),C()})}}t(document).ready(function(){a()}),t(window).on("elementor/frontend/init",function(){setTimeout(function(){t("body").hasClass("elementor-editor-active")&&a()},3e3)}),t("body").on("click",function(e){t("body").hasClass("elementor-editor-active")&&"A"!==e.target.nodeName&&"BUTTON"!==e.target.nodeName&&a()});var o=jQuery;function n(){"undefined"!=typeof google&&google.maps&&google.maps.Marker&&google.maps.OverlayView&&google.maps.marker.AdvancedMarkerElement&&o(".directorist-single-map").length&&document.querySelectorAll(".directorist-single-map").forEach(function(e){var t,a,n,i='<i class="directorist-icon-mask" aria-hidden="true" style="--directorist-icon: url(\''.concat(directorist.assets_url,"icons/font-awesome/svgs/solid/map-marker-alt.svg')\"></i>"),r=document.createElement("div");function s(e){google.maps.Marker.apply(this,arguments),e.map_icon_label&&(this.MarkerLabel=new l({map:this.getMap(),marker:this,text:e.map_icon_label}),this.MarkerLabel.bindTo("position",this,"position"))}function l(e){this.setValues(e),this.div=document.createElement("div"),this.div.className="map-icon-label";var t=this;google.maps.event.addDomListener(this.div,"click",function(e){e.stopPropagation&&e.stopPropagation(),google.maps.event.trigger(t.marker,"click")})}r.className="atbd_map_shape",r.innerHTML=i,s.prototype=Object.create(google.maps.Marker.prototype),s.prototype.constructor=s,s.prototype.setMap=function(e){google.maps.Marker.prototype.setMap.call(this,e),this.MarkerLabel&&this.MarkerLabel.setMap(e)},l.prototype=Object.create(google.maps.OverlayView.prototype),l.prototype.constructor=l,l.prototype.onAdd=function(){var e=this.getPanes();e&&e.overlayImage.appendChild(this.div);var t=this;this.listeners=[google.maps.event.addListener(this,"position_changed",function(){t.draw()}),google.maps.event.addListener(this,"text_changed",function(){t.draw()}),google.maps.event.addListener(this,"zindex_changed",function(){t.draw()})]},l.prototype.onRemove=function(){this.div.parentNode&&this.div.parentNode.removeChild(this.div);for(var e=0;e<this.listeners.length;e++)google.maps.event.removeListener(this.listeners[e])},l.prototype.draw=function(){var e=this.getProjection();if(e){var t=e.fromLatLngToDivPixel(this.get("position"));if(t){var a=this.div;a.innerHTML=this.get("text")||"",a.style.zIndex=this.get("zIndex")||"0",a.style.position="absolute",a.style.display="block",a.style.left=t.x-a.offsetWidth/2+"px",a.style.top=t.y-a.offsetHeight+"px"}}};var d=JSON.parse(e.getAttribute("data-map")),c=parseFloat(d.default_latitude),p=parseFloat(d.default_longitude),g=parseFloat(d.manual_lat),m=parseFloat(d.manual_lng),u=parseInt(d.map_zoom_level),v=d.display_map_info,f=d.info_content;g=isNaN(g)?c:g,m=isNaN(m)?p:m,n={lat:g,lng:m},v&&(a=new google.maps.InfoWindow({content:f,maxWidth:400})),new google.maps.marker.AdvancedMarkerElement({map:t,position:n,content:r}).addListener("click",function(){v?v=!1:(a.close(),v=!0)}),function(){t=new google.maps.Map(e,{zoom:u,center:n,mapId:"single_listing_map"});var o=new google.maps.marker.AdvancedMarkerElement({map:t,position:n,content:r});v&&o.addListener("click",function(){a.getMap()?a.close():a.open(t,o)})}(),o("address").each(function(){var e="<a href='http://maps.google.com/maps?q="+encodeURIComponent(o(this).text())+"' target='_blank'>"+o(this).text()+"</a>";o(this).html(e)})})}o(document).ready(function(){n()}),o(window).on("elementor/frontend/init",function(){setTimeout(function(){o("body").hasClass("elementor-editor-active")&&n()},3e3)}),o("body").on("click",function(e){o("body").hasClass("elementor-editor-active")&&"A"!==e.target.nodeName&&"BUTTON"!==e.target.nodeName&&n()});var i=jQuery;function r(){if("undefined"!=typeof google&&google.maps&&google.maps.Marker&&google.maps.OverlayView&&i("#gmap-widget").length){var e='<i class="directorist-icon-mask" aria-hidden="true" style="--directorist-icon: url(\''.concat(directorist.assets_url,"icons/font-awesome/svgs/solid/map-marker-alt.svg')\"></i>"),t=document.createElement("div");function v(e){google.maps.Marker.apply(this,arguments),e.map_icon_label&&(this.MarkerLabel=new r({map:this.map,marker:this,text:e.map_icon_label}),this.MarkerLabel.bindTo("position",this,"position"))}t.className="atbd_map_shape",t.innerHTML=e,!function(e,t){function a(){}a.prototype=t.prototype,e.superClass_=t.prototype,e.prototype=new a,e.prototype.constructor=e}(v,google.maps.Marker),v.prototype.setMap=function(){google.maps.Marker.prototype.setMap.apply(this,arguments),this.MarkerLabel&&this.MarkerLabel.setMap.apply(this.MarkerLabel,arguments)};var a,o,n,r=function(e){var t=this;this.setValues(e),this.div=document.createElement("div"),this.div.className="map-icon-label",google.maps.event.addListener(this.div,"click",function(e){e.stopPropagation&&e.stopPropagation(),google.maps.event.trigger(t.marker,"click")})};r.prototype=new google.maps.OverlayView,r.prototype.onAdd=function(){this.getPanes().overlayImage.appendChild(this.div);var e=this;this.listeners=[google.maps.event.addListener(this,"position_changed",function(){e.draw()}),google.maps.event.addListener(this,"text_changed",function(){e.draw()}),google.maps.event.addListener(this,"zindex_changed",function(){e.draw()})]},r.prototype.onRemove=function(){this.div.parentNode.removeChild(this.div);for(var e=0,t=this.listeners.length;e<t;++e)google.maps.event.removeListener(this.listeners[e])},r.prototype.draw=function(){var e=this.getProjection().fromLatLngToDivPixel(this.get("position")),t=this.div;this.div.innerHTML=this.get("text").toString(),t.style.zIndex=this.get("zIndex"),t.style.position="absolute",t.style.display="block",t.style.left=e.x-t.offsetWidth/2+"px",t.style.top=e.y-t.offsetHeight+"px"};var s=localized_data_widget.map_container_id?localized_data_widget.map_container_id:"gmap",l=parseFloat(localized_data_widget.default_latitude),d=parseFloat(localized_data_widget.default_longitude),c=parseFloat(localized_data_widget.manual_lat),p=parseFloat(localized_data_widget.manual_lng),g=parseInt(localized_data_widget.map_zoom_level),m=localized_data_widget.display_map_info,u=mapData.info_content;function f(){a=new google.maps.Map(document.getElementById(s),{zoom:g,center:n,mapId:"single_listing_map_widget"});var e=new google.maps.marker.AdvancedMarkerElement({map:a,position:n,content:t});m&&e.addListener("click",function(){o.getMap()?o.close():o.open(a,e)})}c=isNaN(c)?l:c,p=isNaN(p)?d:p,$manual_lat=i("#manual_lat"),$manual_lng=i("#manual_lng"),n={lat:c,lng:p},m&&(o=new google.maps.InfoWindow({content:u,maxWidth:400})),new google.maps.marker.AdvancedMarkerElement({map:a,position:n,content:t}).addListener("click",function(){m?m=!1:(o.close(),m=!0)}),i(document).ready(function(){f(),i("address").each(function(){var e="<a href='http://maps.google.com/maps?q="+encodeURIComponent(i(this).text())+"' target='_blank'>"+i(this).text()+"</a>";i(this).html(e)})})}}i(document).ready(function(){r()}),i(window).on("elementor/frontend/init",function(){setTimeout(function(){i("body").hasClass("elementor-editor-active")&&r()},3e3)}),i("body").on("click",function(e){i("body").hasClass("elementor-editor-active")&&"A"!==e.target.nodeName&&"BUTTON"!==e.target.nodeName&&r()}),function(){function t(){var t=e("atbdp_map");function a(e){google.maps.Marker.apply(this,arguments),e.map_icon_label&&(this.MarkerLabel=new o({map:this.map,marker:this,text:e.map_icon_label}),this.MarkerLabel.bindTo("position",this,"position"))}!function(e,t){function a(){}a.prototype=t.prototype,e.superClass_=t.prototype,e.prototype=new a,e.prototype.constructor=e}(a,google.maps.Marker),a.prototype.setMap=function(){google.maps.Marker.prototype.setMap.apply(this,arguments),this.MarkerLabel&&this.MarkerLabel.setMap.apply(this.MarkerLabel,arguments)};var o=function(e){var t=this;this.setValues(e),this.div=document.createElement("div"),this.div.className="map-icon-label",google.maps.event.addListener(this.div,"click",function(e){e.stopPropagation&&e.stopPropagation(),google.maps.event.trigger(t.marker,"click")})};o.prototype=new google.maps.OverlayView,o.prototype.onAdd=function(){this.getPanes().overlayImage.appendChild(this.div);var e=this;this.listeners=[google.maps.event.addListener(this,"position_changed",function(){e.draw()}),google.maps.event.addListener(this,"text_changed",function(){e.draw()}),google.maps.event.addListener(this,"zindex_changed",function(){e.draw()})]},o.prototype.onRemove=function(){this.div.parentNode.removeChild(this.div);for(var e=0,t=this.listeners.length;e<t;++e)google.maps.event.removeListener(this.listeners[e])},o.prototype.draw=function(){var e=this.getProjection().fromLatLngToDivPixel(this.get("position")),t=this.div;this.div.innerHTML=this.get("text").toString(),t.style.zIndex=this.get("zIndex"),t.style.position="absolute",t.style.display="block",t.style.left="".concat(e.x-t.offsetWidth/2,"px"),t.style.top="".concat(e.y-t.offsetHeight,"px")},function(e){var o=[],n=t.use_def_lat_long;e(".atbdp-map").each(function(){!function(o){o.addClass("atbdp-map-loaded");var i=o.find(".marker"),r={zoom:parseInt(t.zoom),center:new google.maps.LatLng(0,0),mapTypeId:google.maps.MapTypeId.ROADMAP,zoomControl:!0,scrollwheel:!1,gestureHandling:"cooperative",averageCenter:!0,scrollWheelZoom:"center"},s=new google.maps.Map(o[0],r);s.markers=[],s.type=o.data("type");var l=new google.maps.InfoWindow({content:""});i.each(function(){!function(o,n,i){var r=new google.maps.LatLng(o.data("latitude"),o.data("longitude"));if(n.markers.length)for(var s=0;s<n.markers.length;s++){var l=n.markers[s].getPosition();if(r.equals(l)){var d=r.lat()+(Math.random()-.5)/1500,c=r.lng()+(Math.random()-.5)/1500;r=new google.maps.LatLng(d,c)}}var p=JSON.parse(o.data("icon")),g=new a({position:r,map:n,icon:{path:"M0-48c-9.8 0-17.7 7.8-17.7 17.4 0 15.5 17.7 30.6 17.7 30.6s17.7-15.4 17.7-30.6c0-9.6-7.9-17.4-17.7-17.4z",fillColor:"transparent",fillOpacity:1,strokeColor:"",strokeWeight:0},map_icon_label:void 0!==p&&'<div class="atbd_map_shape">'.concat(p,"</div>")});n.markers.push(g),o.html()&&google.maps.event.addListener(g,"click",function(){if("no"===t.disable_info_window){var a=e(o).children();if(a.length){var r=a[0];e(r).toggleClass("map-info-wrapper--show")}i.setContent(o.html()),i.open(n,g)}})}(e(this),s,l)});var d={lat:Number(t.default_latitude)?Number(t.default_latitude):n,lng:Number(t.default_longitude)?Number(t.default_longitude):n};i.length&&(d.lat=Number(n?t.default_latitude:i[0].getAttribute("data-latitude")),d.lng=Number(n?t.default_longitude:i[0].getAttribute("data-longitude"))),function(e,a){e.setCenter(a),e.setZoom(parseInt(t.zoom))}(s,d);var c=new MarkerClusterer(s,[],{imagePath:t.plugin_url+"assets/images/m"});c.setStyles(c.getStyles().map(function(e){return e.textColor="#fff",e})),"markerclusterer"===s.type&&c.addMarkers(s.markers)}(e(this))}),document.querySelectorAll("div").forEach(function(e,t){"atgm_marker"===e.innerText&&(e.innerText=" ",e.innerHTML='<i class="atbd_map_marker_icon">'.concat(o,"</i>"))}),document.querySelectorAll("div").forEach(function(e,t){'m1.png")'===e.style.backgroundImage.split("/").pop()&&e.addEventListener("click",function(){setInterval(function(){document.querySelectorAll("div").forEach(function(e,t){"atgm_marker"===e.innerText&&(e.innerText=" ",e.innerHTML='<i class="atbd_map_marker_icon">'.concat(o,"</i>"))})},100)})}),e(document).ready(function(){e("body").find(".map-info-wrapper").addClass("map-info-wrapper--show")})}(jQuery)}window.addEventListener("load",t),window.addEventListener("directorist-reload-listings-map-archive",t);var a=jQuery;a(window).on("elementor/frontend/init",function(){setTimeout(function(){a("body").hasClass("elementor-editor-active")&&t()},3e3)}),a("body").on("click",function(e){a("body").hasClass("elementor-editor-active")&&"A"!==e.target.nodeName&&"BUTTON"!==e.target.nodeName&&t()})}(),window.directoristLoadGoogleMap=function(){"undefined"!=typeof google&&google.maps&&google.maps.Map&&(n(),a(),r())}}();