!function(a){"use strict";function b(a){switch(a){case"listings":return i;case"agent":return g;case"agency":return h}}function c(b,c){"listings"===c&&(a(Estatik.settings.hfm_toggle_sidebar_selector).toggleClass("es-hidden","half_map"===b),a(document).trigger("listings_toggle_sidebar",{layout:b,entity_type:c}))}var d=new DOMParser,e={initSearch:function(){a(document).find("[data-search-form-selector]").each(function(){var c,d=a(a(this).data("search-form-selector")).not(".js-es-event-added"),e=a(this);d.length&&d.each(function(){a(this).addClass("js-es-search--ajax").addClass("js-es-event-added");var d=a(this).find("form");d.on("change","input:not([type=text]):not([type=search]),select",function(){var b=a(this),c=new f(e.find(".js-es-entities").data("hash"));"checkbox"===b.attr("type")&&c.delete(b.attr("name")),d.submit()}),d.on("focusout","input[type=text], input[type=number]",function(){d.submit()}),d.on("submit",function(){var g=e.find(".js-es-entities__wrap_inner"),h=d.serializeArray(),i=g.closest(".js-es-entities-wrap").find(".js-es-entities"),j=new f(i.data("hash"));if(j.clearQueryArguments(),h.length){var k={};h.forEach(function(a){a.value?(-1!==a.name.indexOf("[]")&&(k[a.name]=k[a.name]?k[a.name]:0,a.name=a.name.replace("[]","["+k[a.name]+++"]")),j.setValue(a.name,a.value)):j.delete(a.name)}),j.delete("prop_id"),j.setValue("page_num",1),j.setValue("paged-"+j.getValue("loop_uid"),1),j.setHistoryQuery()}i.data("hash",j.getHash()),c&&c.abort(),g.find(".js-es-entities").addClass("es-entities--loading");var l=i.data("entity"),m=b(l);return c=a.post(Estatik.settings.ajaxurl,{action:"get_"+l,hash:j.getHash(),reload_map:1},function(a){a=a||{},"success"===a.status&&m.append(a,g)},"json"),!1})})})},append:function(c,d,e){if("success"===c.status){e="undefined"===e||e;var f=0;e&&d.length&&d.offset()&&(f=d.offset().top-(+Estatik.settings.listings_offset_corrector||0));var g=d.replaceWith(c.message),h=g.find(".js-es-entities"),i=h.data("entity");if(i){b(i).init(g.closest(".js-es-entities-wrap"))}return e&&d.length&&a([document.documentElement,document.body]).animate({scrollTop:f||0},500),d.find(".js-es-entities").removeClass("es-entities--loading"),a(window).trigger("resize"),g}}},f=function(a,b){b=b||!1;var c=this;return this.hash=a,this.attributes=new URLSearchParams(decodeURIComponent(escape(window.atob(this.hash)))),b||(this.tempEntitiesHash=new f(a,!0)),this.shortcode_attributes=["layout","posts_per_page","disable_navbar","show_sort","show_total","show_categories","show_page_title","show_layouts","limit","page_num","loop_uid","page_title","fields","collapsed_fields","main_fields","ignore_search","search_form_selector","enable_search","search_type","view_all_link_name","wishlist_confirm","view_all_page_id","disable_pagination","_ajax_mode","_ignore_coordinates","reload_map","hfm_full_width","ajax_response_mode","fields_delimiter","action","hash","prop_id","enable_ajax","setup_postdata_post_id","strict_address","map_show","es_location","authors"],f.prototype.clearQueryArguments=function(){var a=this,b=this.tempEntitiesHash,c=Estatik.search.fields;this.tempEntitiesHash.getAttributes().forEach(function(d,e){b.shortcode_attributes.includes(e)||c.includes(e)||a.delete(e)})},f.prototype.getValue=function(a){return c.attributes.get(a)},f.prototype.getAllValues=function(a){return c.attributes.getAll(a)},f.prototype.setValue=function(a,b){return c.attributes.set(a,b),c.hash=btoa(c.attributes.toString()),c},f.prototype.delete=function(a){return c.attributes.delete(a),c.hash=btoa(c.attributes.toString()),c},f.prototype.getHash=function(){return c.hash},f.prototype.getAttributes=function(){return this.attributes},f.prototype.toString=function(){return this.getHash()},f.prototype.setHistoryQuery=function(){var a=this.getAttributes(),b=this.tempEntitiesHash;b.getAttributes().forEach(function(c,d){b.shortcode_attributes.forEach(function(b,c){d.includes(b)&&"layout"!=d&&a.delete(d)})});var c=decodeURIComponent(window.location.pathname+"?"+a.toString());window.history.replaceState({},"",c)},this};window.EstatikEntitiesHash=f;var g={init:function(){EstatikResponsinator.init("agents")},getLayoutEntityType:function(){return"entities"},getLayoutClass:function(a){return["","--md","--lg","--sm","--xs"].forEach(function(b){if(a.hasClass("es-entities"+b))return"es-entities"+b}),a.hasClass("es-entities--grid")?"es-entities--grid":"es-entities--list"},append:function(a,b,c){"success"===a.status&&e.append(a,b,c)}},h=g,i={halfMapInstances:[],init:function(){setTimeout(function(){i.initCarousel()},10)},getLayoutEntityType:function(){return"listings"},append:function(a,b,c){if("success"===a.status&&(e.append(a,b,c),+a.reload_map&&a.loop_uid)){var d=i.halfMapInstances[a.loop_uid];d&&(a.coordinates?d.setMarkers(a.coordinates):d.deleteMarkers())}},getLayoutClass:function(a){for(var b=1;b<10;b++){if(a.hasClass("es-listings--grid-"+b))return"es-listings--grid-"+b;if(a.hasClass("es-listings--grid-"+b))return"es-listings--grid-"+b}return"es-listings--list"},initCarousel:function(b,c){c=c||a(document),a(".js-es-slick.slick-initialized",c).slick("unslick"),a(".js-es-slick",c).each(function(){var c=a(this).data("slick")||{},d=c.slidesToShow||1,e=c.vertical||!1,f=!1;if(void 0!==c.infinite&&(c.infinite=Boolean(c.infinite)),c.rtl=Estatik.settings.is_rtl,e)a(this).hasClass("slick-initialized")||(f=a(this));else if(!a(this).hasClass("slick-initialized")){var g=a(this).width(),h=parseInt(g/230)||1;f=a(this),c.slidesToShow=d<=h?d:h}f&&(f.on("init",function(){f.removeClass("slick-hidden")}).slick(c),f.find(".js-es-slick").length&&f.on("beforeChange",function(c,d,e,g){a(d.$list).find(".js-es-slick:not(.slick-initialized)").length&&i.initCarousel(b,f)}))})}};window.EstatikProperties=i;var j=function(b){this.$wrapper=b,this.mapInstance=null,this.markers=[],this.clusters=[],this.load_first_time=!0,this.ignoreLoadListingsByBounds=!0;var c=this;j.prototype.init=function(){var b=this;if(this.setFullWidth(),"undefined"==typeof google)return!1;this.$map=a(".js-es-map",b.$wrapper),this.map=b.$map[0];var c={draggable:!0,zoom:16,mapId:b.map.id};Estatik.settings.map_zoom&&(c.zoom=+Estatik.settings.map_zoom);var d=+Estatik.settings.is_cluster_enabled,e=Estatik.settings.map_marker_type,f=!d||"price"===e;!Estatik.settings.can_zoom&&f&&(Estatik.settings.map_zoom_min&&(c.minZoom=+Estatik.settings.map_zoom_min),Estatik.settings.map_zoom_max&&(c.maxZoom=+Estatik.settings.map_zoom_max)),this.mapInstance=new google.maps.Map(b.map,c),this.setMarkers(b.$map.data("listings")),this.mapInstance.addListener("click",function(){b.close_popups(),a(".es-price-marker--active").removeClass("es-price-marker--active")}),a(window).on("resize",function(){b.setFullWidth()}),b.mapInstance.addListener("zoom_changed",function(){if(b.load_first_time||b.ignoreZoomHandler)return b.load_first_time=!1,!1;b.close_popups(),a(".es-price-marker--active").removeClass("es-price-marker--active"),b.loadListingsFromVisibleBounds()}),b.mapInstance.addListener("dragend",function(){b.loadListingsFromVisibleBounds()})},j.prototype.setFullWidth=function(){if(this.$wrapper.hasClass("es-properties--hfm")&&this.$wrapper.hasClass("es-properties--hfm--full-width")){this.$wrapper.css("margin-left",0);var a=this.$wrapper[0].getBoundingClientRect(),b=a.left;this.$wrapper.css("margin-left",-b+"px")}},j.prototype.loadListingsFromVisibleBounds=function(){var b=this;if(b.ignoreLoadListingsByBounds)return!1;if("undefined"==typeof google)return!1;var c=[],d=b.mapInstance.getBounds();if(b.markers.length){for(var e in b.markers){var g=b.markers[e].position;void 0!==d&&d.contains(g)&&c.push(b.markers[e].post_id)}c.length||c.push(-1);var h=new f(b.$wrapper.find(".js-es-listings").data("hash"));h.setValue("prop_id",c.join(",")),h.setValue("page_num",1),h.setValue("paged-"+h.getValue("loop_uid"),1),void 0!==b.xhr&&b.xhr.abort(),b.$wrapper.find(".js-es-listings").addClass("es-listings--loading"),b.xhr=a.post(Estatik.settings.ajaxurl,{reload_map:0,hash:h.getHash(),action:"get_listings"},function(a){console.log(b.$wrapper),i.append(a,b.$wrapper.find(".js-es-entities__wrap_inner"),!1)},"json")}},a(this.$wrapper).on("mouseenter",".js-es-listing",function(){var b=a(this).data("post-id"),e=c.findMarkerByPostID(b);if(a(".es-price-marker--active").removeClass("es-price-marker--active"),a(".es-price-marker--"+b).addClass("es-price-marker--active"),e&&"price"!==Estatik.settings.map_marker_type){var f=e.marker_svg;if(f){f=f.replaceAll("data-color",'style="fill: '+Estatik.settings.main_color+'"');var g=d.parseFromString(f,"image/svg+xml").documentElement;e.content=g}}}),a(this.$wrapper).on("mouseleave",".js-es-listing",function(){var b=a(this).data("post-id"),e=c.findMarkerByPostID(b);if(a(".es-price-marker--active").removeClass("es-price-marker--active"),e){var f=e.marker_svg;if(f){f=f.replaceAll("data-color",'style="fill: '+e.marker_color+'"');var g=d.parseFromString(f,"image/svg+xml").documentElement;e.content=g}}}),j.prototype.deleteMarkers=function(){if("undefined"==typeof google)return!1;if(this.clusters.length)for(var a in this.clusters)this.clusters.hasOwnProperty(a)&&this.clusters[a].clearMarkers();if(this.markers.length)for(var b in this.markers)this.markers.hasOwnProperty(b)&&this.markers[b].setMap(null);c.markers=null,c.markers=[]},j.prototype.findMarkerByPostID=function(a){return this.markers.find(function(b){return b.post_id===a})},j.prototype.setMarkers=function(a){var b=this;if("undefined"==typeof google)return!1;b.ignoreLoadListingsByBounds=!0;var c,e=new google.maps.LatLngBounds;if(b.$map.data("listings",a),b.deleteMarkers(),a){var f=1===a.length;for(var g in a){var h=new google.maps.LatLng(parseFloat(a[g].lat),parseFloat(a[g].lng));if(e.extend(h),a[g].position=h,c={position:h,map:b.mapInstance,zIndex:99},"price"===Estatik.settings.map_marker_type){if(a[g].price){var i=new EsGoogleMapPriceMarker(a[g],b.propertyPopup(h,a[g]));i.setMap(b.mapInstance),f&&i.getMap().panToWithOffset(h,0,120),i.post_id=a[g].post_id,b.markers.push(i)}}else{c={position:h,map:b.mapInstance,zIndex:99};var k=null,l=null;void 0!==a[g].marker?(k=Estatik.settings.map_marker_icons[a[g].marker],l=a[g].marker_color):(k=Estatik.settings.map_marker_icons[Estatik.settings.map_marker_icon],l=Estatik.settings.map_marker_color);var m=k.replaceAll("data-color",'style="fill: '+l+'"'),n=d.parseFromString(m,"image/svg+xml").documentElement;c.content=n,c=new google.maps.marker.AdvancedMarkerElement(c),c.marker_svg=k,c.marker_color=l,c.post_id=a[g].post_id,google.maps.event.addListener(c,"gmp-click",b.propertyPopup(h,a[g])),b.findMarkerByPostID(c.post_id)||b.markers.push(c)}}if(void 0!==Estatik.settings.default_lat_lng){var o=Estatik.settings.default_lat_lng;b.mapInstance.setCenter({lat:+o[0],lng:+o[1]}),Estatik.settings.map_zoom&&b.mapInstance.setZoom(+Estatik.settings.map_zoom)}else void 0!==e&&(1===Object.keys(a).length?Object.keys(a).forEach(function(c){b.mapInstance.setCenter({lat:+a[c].lat,lng:+a[c].lng}),b.mapInstance.setZoom(+Estatik.settings.map_zoom)}):(b.mapInstance.fitBounds(e),b.mapInstance.panToBounds(e)));if(b.markers&&Estatik.settings.is_cluster_enabled&&"price"!==Estatik.settings.map_marker_type){var p=[{textColor:"white"}];"cluster3"===Estatik.settings.map_cluster_icon&&(p[0].textColor=Estatik.settings.map_cluster_color),+Estatik.settings.is_cluster_enabled&&"price"!==Estatik.settings.map_marker_type&&b.clusters.push(new markerClusterer.MarkerClusterer({map:b.mapInstance,markers:b.markers,maxZoom:12,renderer:{render:function(a){return new google.maps.marker.AdvancedMarkerElement({map:b.mapInstance,position:a.position,content:j.getClusterIcon({number:a.count,textColor:p[0].textColor,textSize:10})})}}}))}}b.ignoreLoadListingsByBounds=!1},j.prototype.propertyPopup=function(b,d){return function(){var b={post_id:d.post_id,action:"es_get_property_item"};void 0!==c.xhr&&c.xhr.abort(),c.close_popups(),c.xhr=a.post(Estatik.settings.ajaxurl,b,function(b){if(b=b||{},d.content=b.content,d.position=new google.maps.LatLng(d.lat,d.lng),"success"===b.status){var e=new EsGoogleMapPopup(d);c.mapInstance.setCenter(d.position),e.setMap(c.mapInstance),e.getMap().panToWithOffset(d.position,0,120),setTimeout(function(){i.initCarousel(a(c.mapInstance.getDiv()))},100)}},"json")}},j.prototype.close_popups=function(){var a=this.mapInstance.getDiv().querySelector(".es-map-popup");a&&a.remove()},j.getClusterIcon=function(a){var b=a.color||Estatik.settings.map_cluster_color,c=Estatik.settings.map_cluster_icons[Estatik.settings.map_cluster_icon];return c=c.replaceAll("data-color",'style="fill:'+b+'"').replaceAll("data-hide",'style="fill:#ffffff"').replaceAll("{text}",'<text x="50%" y="50%" font-size="'+a.textSize+'px" dominant-baseline="middle" text-anchor="middle" fill="'+a.textColor+'">'+a.number+"</text>"),d.parseFromString(c,"image/svg+xml").documentElement}};window.EstatikHalfMap=j,a(function(){i.init(),e.initSearch(),a(".js-es-properties__map.es-properties__map--visible").each(function(){var b=a(this).closest(".js-es-properties"),d=new j(b),e=b.find(".js-es-listings"),g=new f(e.data("hash"));i.halfMapInstances[g.getValue("loop_uid")]=d,d&&(d.init(),c("half_map","listings"))}),a(document).on("click",".js-es-entities-filter-item",function(c){var d=a(this),e=d.data("query");if(e&&Object.keys(e).length){var g=d.closest(".js-es-entities-wrap").find(".js-es-entities"),h=d.closest(".js-es-entities-wrap").find(".js-es-entities__wrap_inner"),i=g.data("entity"),j=b(i),k=new f(g.data("hash"));Object.entries(e).forEach(function(a){k.setValue(a[0],a[1])}),k.setHistoryQuery();var l={action:"get_"+i,hash:k.getHash(),reload_map:1};a.post(Estatik.settings.ajaxurl,l,function(a){j.append(a,h)},"json")}return c.preventDefault(),!1}),a(document).on("click",".js-es-change-layout",function(){if(!a(this).hasClass("es-btn--active")){var d=a(this).data("layout"),e=a(this).closest(".js-es-control--layouts"),g=a(this).closest(".js-es-entities-wrap"),h=g.find(".js-es-entities"),k=h.data("entity"),l=b(k),m=l.getLayoutClass(h);g.removeClass("es-properties--hfm");var n=new f(h.data("hash")),o=n.getValue("loop_uid");n.setValue("layout",d),n.setHistoryQuery(),e.find(".js-es-change-layout").removeClass("es-btn--active"),a(this).addClass("es-btn--active");var p=d;if("half_map"===d){g.find(".js-es-properties__map").addClass("es-properties__map--visible"),g.addClass("es-properties--hfm");var q=new j(g);i.halfMapInstances[o]=q,q&&q.init(),d=Estatik.settings.grid_layout}else{var r=g.find(".js-es-properties__map");r.length&&(r.removeClass("es-properties__map--visible"),g.css({"margin-left":"-15px"}))}Estatik.settings.hfm_toggle_sidebar&&Estatik.settings.hfm_toggle_sidebar_selector&&c(p,k);var s=l.getLayoutEntityType();h.removeClass(m).addClass("es-"+s+"--"+d).data("layout","es-"+s+"--"+d),h.data("hash",n.getHash()),l.init(),a(window).trigger("resize")}return!1}),a(document).on("click",".js-es-pagination a.page-numbers",function(){var c=a(this).closest(".es-pagination");if(!c.find(".page-numbers--preload").length){var d=c.closest(".es-properties--hfm").length,e=a(this).data("page-number"),g=a(this).closest(".js-es-entities__wrap_inner"),h=g.find(".js-es-entities");h.addClass("es-entities--loading");var i=new f(h.data("hash")),j=h.data("entity"),k=b(j),l={reload_map:d,action:"get_"+j,hash:i.setValue("page_num",e).getHash()},m=i.getValue("loop_uid"),n=g.find(".js-es-sort").val();i.setValue("paged-"+m,e),n&&(i.setValue("sort-"+m,n),i.setValue("sort",n)),i.setHistoryQuery(),a(this).addClass("page-numbers--preload"),c.addClass("es-pagination--disabled"),a.post(Estatik.settings.ajaxurl,l,function(a){k.append(a,g,!0)},"json")}return!1}),a(document).on("change",".js-es-currencies",function(){var b=a(this),c={currency:b.val(),action:"es_set_currency",_ajax_nonce:Estatik.nonce.set_currency};a.post(Estatik.settings.ajaxurl,c,function(){a(".js-es-sort").trigger("change")})}),a(document).on("change",".js-es-sort",function(){var c=a(this),d=c.closest(".js-es-entities__wrap_inner");if(d.length&&(c.prop("disabled","disabled"),d.length)){c.prop("disabled","disabled");var e=d.find(".js-es-entities");e.addClass("es-entities--loading");var g=new f(e.data("hash")),h=g.getValue("loop_uid"),i=c.val();i&&(g.setValue("sort-"+h,i),g.setValue("sort",i)),g.setValue("page_num",1),g.setValue("paged-"+h,1),g.setHistoryQuery();var j=e.data("entity"),k=b(j),l={action:"get_"+j,hash:g.getHash(),reload_map:1};a.post(Estatik.settings.ajaxurl,l,function(a){k.append(a,d)},"json").always(function(){c.removeProp("disabled").removeAttr("disabled")})}}),a(document).on("click",".js-es-remove-filters",function(){a(this).addClass("es-btn--preload").attr("disabled","disabled").prop("disabled","disabled");var b=a(this).closest(".js-es-entities-wrap");return 0===b.length&&(b=a(this).closest(".es-search-nav--dropdowns")),b.find(".js-es-address").val(""),b.find(".js-es-search-nav__item").find('input[type!="reset"][type!="button"][type!="submit"],select').each(function(){var b=a(this),c=a(this).prop("type");if("radio"===c||"checkbox"===c){b.removeProp("checked").removeAttr("checked");var d=a(this).closest(".js-search-field-container").find('input[value=""]');d.length&&d.prop("checked","checked")}else a(this).hasClass("select2-hidden-accessible")?"select-one"===c?a(this).val("").trigger("change"):a(this).val([]).trigger("change"):a(this).val("")}),b.find(".js-es-search form").trigger("submit"),!1}),a(document).on("click",".js-es-listings-categories-ajax:not(.es-disable)",function(){var c=a(this),d=c.data("term");c.closest(".js-es-properties__categories").find(".es-active").removeClass("es-active"),c.addClass("es-disable").addClass("es-active");var e=a(this).closest(".js-es-entities__wrap_inner"),g=e.find(".js-es-entities");g.addClass("es-entities--loading");var h=new f(g.data("hash")),i=g.data("entity"),j=b(i);h.setValue("page_num",1),d?h.setValue("es_category",[d]):h.delete("es_category");var k={reload_map:0,action:"get_"+i,hash:h.getHash()};return h.setValue("paged-"+h.getValue("loop_uid"),1),h.setHistoryQuery(),a.post(Estatik.settings.ajaxurl,k,function(a){j.append(a,e)},"json").fail(function(){c.removeClass("es-disable").removeClass("es-active")}),!1})})}(jQuery);