Plugin Directory

Changeset 3372791


Ignore:
Timestamp:
10/04/2025 10:37:55 AM (3 months ago)
Author:
wssoffice21
Message:

Updated 3.1.6

Location:
ymc-smart-filter/trunk
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • ymc-smart-filter/trunk/readme.txt

    r3371084 r3372791  
    22Plugin Name: Filter & Grids
    33Contributors: YMC, Roman
    4 Version: 3.1.5
     4Version: 3.1.6
    55Donate link: https://github.com/YMC-22/Filter-Grids
    66Tags: filter, grid, ajax, search, sort, masonry, wordpress
     
    7777== Changelog ==
    7878
     79= 3.1.6 =
     80Fixed translations of components for VPML.
    7981= 3.1.5 =
    8082Fixed a bug updated terms.
  • ymc-smart-filter/trunk/ymc-smart-filters.php

    r3371084 r3372791  
    55 * Plugin Name:       Filter & Grids
    66 * Description:       A powerful and flexible plugin to filter and display posts, custom post types, and other content in responsive grid layouts.
    7  * Version:           3.1.5
     7 * Version:           3.1.6
    88 * Author:            YMC
    99 * Author URI:        https://github.com/YMC-22/Filter-Grids/
  • ymc-smart-filter/trunk/ymc2/YMC_Filter_Grids.php

    r3371084 r3372791  
    2727     * @var string
    2828     */
    29     public string $version = '3.1.5';
     29    public string $version = '3.1.6';
    3030
    3131
  • ymc-smart-filter/trunk/ymc2/assets/js/frontend/main.min.js

    r3370583 r3372791  
    33            <img src="${m}" alt="preloader"${f}>
    44        </div>
    5         <div class="overlay"></div>`;(y=t.querySelector(`.${s}`))==null||y.insertAdjacentHTML(l,h)}function G(t){var e,s;(e=t.querySelector(".preloader"))==null||e.remove(),(s=t.querySelector(".overlay"))==null||s.remove()}var K=q(()=>{$()});function ce(t){let e={root:null,rootMargin:"0px",threshold:.8};return new IntersectionObserver((s,o)=>{s.forEach(r=>{if(r.isIntersecting){let n=B(t),u=++n.paged;L(t,{paged:u}),S(t,"append"),o.unobserve(r.target)}})},e)}var ie=q(()=>{D();N()});function Y(t){return Array.isArray(t)?t.map(e=>Y(e)):t!==null&&typeof t=="object"?Object.keys(t).reduce((e,s)=>{let o=Ce(s);return e[o]=Y(t[s]),e},{}):Fe(t)}function Ce(t){return t.replace(/_([a-z])/g,(e,s)=>s.toUpperCase())}function Fe(t){if(typeof t=="string"){let e=t.toLowerCase();if(e==="true")return!0;if(e==="false")return!1;if(!isNaN(t)&&t.trim()!=="")return Number(t)}return t}var le=q(()=>{});function W(t,e,s){let o=Y(s),{general:r,pagination:n,navigation:u,scrollbar:l,useCustomSettings:p}=o,{autoHeight:d,autoplay:a,autoplayDelay:c,loop:i,centeredSlides:m,slidesPerView:f,spaceBetween:h,mousewheel:y,speed:v,effect:b}=r,_=document.querySelector(`.js-swiper-${t}-${e}`);_&&(u.visible&&_.querySelectorAll(".post-layout_carousel").forEach(w=>{w.classList.add("has-navigation-arrows")}),_.closest(".js-ajax-content").classList.add("posts-carousel"),!p&&new Swiper(_,{grabCursor:!0,spaceBetween:h,centeredSlides:m,autoHeight:d,autoplay:a?{delay:c}:!1,loop:i,slidesPerView:f,mousewheel:y?{invert:!0}:!1,speed:v,effect:b,fadeEffect:b==="fade"?{crossFade:!0}:"",creativeEffect:b==="creative"?{prev:{shadow:!0,translate:[0,0,-400]},next:{translate:["100%",0,0]}}:"",pagination:n.visible?{el:".swiper-pagination",clickable:!0,dynamicBullets:n.dynamicBullets,type:n.type}:!1,navigation:u.visible?{nextEl:".swiper-button-next",prevEl:".swiper-button-prev"}:{enabled:!1},scrollbar:{el:".swiper-scrollbar",draggable:!0,enabled:l.visible}}))}var de=q(()=>{le()});async function S(t,e="replace"){var a;let s=JSON.parse(t.dataset.params),o=new FormData;o.append("action","get_filtered_posts"),o.append("nonce_code",_ymc_fg_object.getPosts_nonce),o.append("params",JSON.stringify(s)),o.append("filter_id",s.filter_id);let r=t.querySelector(".js-ajax-content");g.doAction("ymc/grid/before_update",t),g.doAction("ymc/grid/before_update_"+s.filter_id,t),g.doAction("ymc/grid/before_update_"+s.filter_id+"_"+s.counter,t);let n=s.preloader_settings.icon+".svg",u=s.preloader_settings.filter_preloader,l=s.preloader_settings.custom_filters_css,p=s.filter_id;n=g.applyFilters("ymc/grid/preloader",n),n=g.applyFilters("ymc/grid/preloader_"+s.filter_id,n),e==="append"?z(t,"append","js-ajax-content",n,l,u,p):z(t,"replace","js-ajax-content",n,l,u,p);let d;try{if(d=await fetch(H,{method:"POST",body:o}),!d.ok){console.error(`HTTP error: ${d.status}`);return}let c=await d.json();if(!c.success){console.warn("No renderedHTML in response");return}(a=t.querySelector(".pagination"))==null||a.remove();let{rendered_posts:i,rendered_pagination:m,pagination_type:f,found_posts:h,paged:y,max_num_pages:v,posts_count:b,requires_swiper:_,scroll_filter_bar:w,results_text:j,filtered_posts_label:M}=c.data;if(h>0){r.classList.remove("posts-no-found");let x=t.querySelector(".filter-content .js-total-results-found");switch(x||(x=document.createElement("div"),x.className="total-results-found js-total-results-found",r.parentNode.insertBefore(x,r)),s.search!==void 0?x.innerHTML=j?`<span class="number-posts">${h}</span> ${j}`:"":M!=="none"?x.innerHTML=`${M} <span class="number-posts">${h}</span>`:x.innerHTML="",f){case"numeric":if(r.innerHTML=i,m&&(r.insertAdjacentHTML("afterend",m),re(t)),w==="yes"){t.querySelector(".filter-layout").scrollIntoView({behavior:"smooth",block:"start",inline:"start"});let A=t.getBoundingClientRect().top+window.scrollY-30;window.scrollTo({top:A,behavior:"smooth"})}break;case"loadmore":e==="append"?r.insertAdjacentHTML("beforeend",i):r.innerHTML=i,m&&v>y&&(r.insertAdjacentHTML("afterend",m),ae(t));break;case"infinite":e==="append"?r.insertAdjacentHTML("beforeend",i):r.innerHTML=i,v>y&&ce(t).observe(r.querySelector(".post-card:last-child"));break;default:r.innerHTML=i;break}if(_)if(typeof Swiper=="undefined"){let k=document.createElement("link");k.rel="stylesheet",k.href=_ymc_fg_object.path+"assets/css/lib/swiper.min.css",document.head.appendChild(k);let A=document.createElement("script");A.src=_ymc_fg_object.path+"assets/js/lib/swiper.min.js",A.onload=()=>{W(s.filter_id,s.counter,s.carousel_settings)},document.body.appendChild(A)}else W(s.filter_id,s.counter,s.carousel_settings)}else{r.classList.add("posts-no-found"),r.innerHTML=i;let x=t.querySelector(".filter-content .js-total-results-found");x&&(x.innerHTML="")}g.doAction("ymc/grid/after_update",c.data,t),g.doAction("ymc/grid/after_update_"+s.filter_id,c.data,t),g.doAction("ymc/grid/after_update_"+s.filter_id+"_"+s.counter,c.data,t)}catch(c){console.error("Error occurred:",c)}finally{G(t),g.doAction("ymc/grid/after_complete",d.status,t),g.doAction("ymc/grid/after_complete_"+s.filter_id,d.status,t),g.doAction("ymc/grid/after_complete_"+s.filter_id+"_"+s.counter,d.status,t)}}var N=q(()=>{$();U();oe();ne();K();ie();de()});function T(t){var s;let e=t.querySelector(".js-search-field");if(e){let o=t.querySelector(".js-autocomplete-results");(s=t.querySelector(".js-clear-button"))==null||s.classList.remove("is-visible"),o.classList.remove("is-visible"),o.innerHTML="",e.dataset.postTitle="",e.value=""}}var O=q(()=>{});function F(t){if(!t)return null;let e=t.closest(".ymc-extra-filter");if(e){let s=e.dataset.extraFilterId;if(s){let o=document.querySelector(`.ymc-filter-${s}`);if(o)return o}}return t.closest(".js-ymc-container")}var J=q(()=>{});function I(t){let e=new Set,s=t.dataset.filterId,o=Array.from(t.querySelectorAll("[data-filter-type]")),r=Array.from(document.querySelectorAll(`[data-extra-filter-id="${s}"] [data-filter-type]`)),n=[...o,...r],u=new Map;for(let d of n){let a=d.querySelector("[data-all-terms]");if(!a)continue;let c;try{let i=JSON.parse(a.dataset.allTerms);c=JSON.stringify([...new Set(i)].sort((m,f)=>m-f))}catch(i){console.warn("Parsing error data-all-terms:",i);continue}if(u.has(c)){let i=u.get(c),m=d.closest("[data-extra-filter-id]"),f=i.closest("[data-extra-filter-id]");m&&!f&&u.set(c,d)}else u.set(c,d)}let l={dropdown:d=>Array.from(d.querySelectorAll('input[type="checkbox"]:not(.js-dropdown-all-checkbox)')).filter(a=>a.checked).map(a=>Number(a.dataset.value)),default:d=>Array.from(d.querySelectorAll(".filter-button.is-active:not(.js-filter-button-all)")).map(a=>Number(a.dataset.termid)),dependent:d=>{let a=(d.dataset.sequence||"").split(",").map(f=>f.trim()),c={};a.forEach(f=>{let h=d.querySelector(`[data-taxonomy="${f}"]`);if(!h)return;let y=Array.from(h.querySelectorAll(".js-dependent-checkbox:checked")).map(v=>Number(v.value));c[f]=y});let i=[],m=!0;for(let f=0;f<a.length;f++){let h=a[f],y=c[h]||[];m&&y.length>0?i.push(...y):m=!1}if(i.length===0){let f=d.querySelector(`[data-taxonomy="${a[0]}"]`);if(f)try{let h=JSON.parse(f.dataset.allTerms||"[]");i.push(...h.map(Number))}catch(h){console.warn("Parse root data-all-terms error",h)}}return i},range:d=>{let a="";return d.querySelectorAll(".js-tag-values").forEach(c=>{a+=c.dataset.selectedTags+","}),a=a.split(","),a=a.filter(c=>c!==""),a.map(c=>Number(c))},_default:()=>[]};for(let d of u.values()){let c=(l[d.dataset.filterType]||l._default)(d);if(c.length>0)c.forEach(i=>e.add(i));else if(!d.querySelector('.filter-button.is-active:not(.js-filter-button-all), input[type="checkbox"]:checked:not(.js-dropdown-all-checkbox)')){let m=d.querySelector("[data-all-terms]");if(m)try{JSON.parse(m.dataset.allTerms).map(Number).forEach(f=>{e.add(f)})}catch(f){console.warn("Parsing error data-all-terms",f)}}}return Array.from(e)}var V=q(()=>{});var pe={};R(pe,{initDependentFilter:()=>Pe});function Pe(){document.querySelectorAll('[data-filter-type="dependent"]').forEach(e=>{e.addEventListener("change",Ie),e.addEventListener("click",Me);let s=e.querySelector(".js-apply-button");s&&s.addEventListener("click",async function(o){o.preventDefault();let r=F(e);T(r),E(r,"search"),L(r,{terms:I(r),paged:1}),await S(r)})}),document.addEventListener("click",e=>{e.target.closest(".js-dependent")||document.querySelectorAll(".js-dependent.is-open").forEach(s=>s.classList.remove("is-open"))})}function Me(t){let e=t.target.closest(".js-dependent"),s=t.target.closest(".js-dropdown-close-btn");e&&e.classList.toggle("is-open"),s&&e.classList.remove("is-open")}async function Ie(t){if(!t.target.classList.contains("js-dependent-checkbox"))return;let e=t.target.closest(".js-dependent"),s=e.dataset.taxonomy,o=e.dataset.mode,r=e.closest(".filter-dependent").dataset.updateMode,n=e.closest(".filter-dependent"),u=n.className.match(/filter-(\d+)/)[1],l=F(e),p=e.querySelector(".js-dropdown-label"),d=`Select ${e.dataset.taxonomyLabel||s}`;if(o==="single")if(e.querySelectorAll(".js-dependent-checkbox").forEach(i=>{i!==t.target&&(i.checked=!1)}),t.target.checked){let i=t.target.closest(".ymc-dependent__checkbox").querySelector(".term-name").textContent;p.textContent=i}else{let i=`Select ${e.dataset.taxonomyLabel||s}`;p.textContent=i}if(o==="multiple"){let i=e.querySelectorAll(".js-dependent-checkbox:checked");if(i.length===0)p.textContent=d;else if(i.length===1){let m=i[0].closest(".ymc-dependent__checkbox").querySelector(".term-name").textContent;p.textContent=m}else p.textContent=`${i.length} selected`}let a=[...e.querySelectorAll(".js-dependent-checkbox:checked")].map(i=>i.value);r==="auto"&&(T(l),E(l,"search"),L(l,{terms:I(l),paged:1}),await S(l));let c={action:"load_dependent_terms",nonce_code:_ymc_fg_object.loadDependentTerms_nonce,payload:JSON.stringify({filter_id:u,taxonomy:s,selected:a})};try{let i=await fetch(H,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams(c).toString()});if(i.ok){let m=await i.json();if(m.success&&m.data.html){let f=n.querySelector(".filter-dependent-inner"),h=(n.dataset.sequence||"").split(","),y=h.indexOf(m.data.taxonomy),v=n.dataset.displayAllLevels==="true";h.slice(y+1).forEach(w=>{let j=f.querySelector(`[data-taxonomy="${w}"]`);if(j)if(v){let M=j.querySelector(".ymc-dependent__list");M&&(M.innerHTML='<li class="ymc-dependent__placeholder">No terms available</li>'),j.classList.add("is-disabled"),j.classList.remove("is-open");let x=j.querySelector(".js-dropdown-label"),k=`Select ${j.dataset.taxonomyLabel||w}`;x&&(x.textContent=k)}else j.remove()});let b=f.querySelector(`[data-taxonomy="${m.data.taxonomy}"]`);if(b)b.outerHTML=m.data.html;else{let w=f.querySelector(".js-apply-button");w?w.insertAdjacentHTML("beforebegin",m.data.html):f.insertAdjacentHTML("beforeend",m.data.html)}let _=f.querySelector(`[data-taxonomy="${m.data.taxonomy}"]`);_&&(_.querySelectorAll(".ymc-dependent__item").length>0?_.classList.remove("is-disabled"):_.classList.add("is-disabled"))}}}catch(i){console.error(i)}}var Q=q(()=>{$();N();D();O();J();V()});var P,Z=q(()=>{P=new Set});var ue={};R(ue,{initDefaultFilter:()=>Ne});function Ne(){document.querySelectorAll('.js-ymc-container [data-filter-type="default"]').forEach(e=>{let s=e.querySelectorAll(".filter-button:not(.js-filter-button-all)"),o=e.querySelectorAll(".filter-button.js-filter-button-all");s.forEach(r=>{r.addEventListener("click",He)}),o.forEach(r=>{r.addEventListener("click",De)})})}async function He(){let t=this,e=F(t),s=t.closest(".filter"),o=s.querySelectorAll(".filter-button:not(.js-filter-button-all)"),r=s.dataset.selectionMode==="multiple";r?t.classList.toggle("is-active"):(s.querySelectorAll("button.is-active").forEach(l=>l.classList.remove("is-active")),t.classList.add("is-active")),o.forEach(l=>{let p=Number(l.dataset.termid);l.classList.contains("is-active")?P.add(p):P.delete(p)});let n=s.querySelectorAll(".filter-button.is-active:not(.js-filter-button-all)");if(r&&n.length===0){let l=s.querySelector(".js-filter-button-all");if(l){let p=JSON.parse(l.dataset.allTerms).map(Number);o.forEach(d=>{let a=Number(d.dataset.termid);p.includes(a)&&(P.add(a),d.classList.remove("is-active"))})}}let u=s.querySelector(".js-filter-button-all");u&&(s.querySelectorAll(".filter-button.is-active:not(.js-filter-button-all)").length>0?u.classList.remove("is-active"):u.classList.add("is-active")),s.classList.toggle("js-has-selection",s.querySelectorAll("button.is-active:not(.js-filter-button-all)").length>0),T(e),E(e,"search"),L(e,{terms:I(e),paged:1}),await S(e)}async function De(){let t=this,e=F(t),s=t.closest(".filter-buttons"),o=JSON.parse(t.dataset.allTerms).map(Number);s.querySelectorAll(".filter-button:not(.js-filter-button-all)").forEach(n=>{let u=Number(n.dataset.termid);P.delete(u)}),o.forEach(n=>P.add(n)),s.querySelectorAll("button.is-active").forEach(n=>n.classList.remove("is-active")),t.closest(".filter").classList.remove("js-has-selection"),t.classList.add("is-active"),T(e),E(e,"search"),L(e,{terms:I(e),paged:1}),await S(e)}var me=q(()=>{N();D();O();Z();V();J()});var fe={};R(fe,{initDropdownFilter:()=>$e});function $e(){let t=document.querySelectorAll('[data-filter-type="dropdown"]'),e=new Map,s=new Map;t.forEach(u=>{let l=u,p=u.querySelectorAll(".js-dropdown"),d=u.getAttribute("data-selection-mode")||"single";e.has(l)||e.set(l,[]),p.forEach(c=>{let i=c.querySelector(".js-dropdown-selected"),m=c.querySelector(".js-dropdown-label"),f=c.querySelectorAll(".js-dropdown-item"),h=c.querySelector(".dropdown-close-btn");if(!s.has(l)){let y=Array.from(u.querySelectorAll('input[type="checkbox"]')).map(v=>Number(v.getAttribute("data-value")));s.set(l,y)}if(h&&h.addEventListener("click",y=>{y.stopPropagation(),c.classList.remove("open")}),d==="multiple"){let y=c.querySelector(".ymc-dropdown__list"),v=c.querySelector(".js-dropdown-all"),b;if(!v){v=document.createElement("li"),v.className="ymc-dropdown__item js-dropdown-item js-dropdown-all",v.innerHTML=`
     5        <div class="overlay"></div>`;(y=t.querySelector(`.${s}`))==null||y.insertAdjacentHTML(l,h)}function G(t){var e,s;(e=t.querySelector(".preloader"))==null||e.remove(),(s=t.querySelector(".overlay"))==null||s.remove()}var K=q(()=>{$()});function ce(t){let e={root:null,rootMargin:"0px",threshold:.8};return new IntersectionObserver((s,o)=>{s.forEach(r=>{if(r.isIntersecting){let n=B(t),u=++n.paged;L(t,{paged:u}),S(t,"append"),o.unobserve(r.target)}})},e)}var ie=q(()=>{D();N()});function Y(t){return Array.isArray(t)?t.map(e=>Y(e)):t!==null&&typeof t=="object"?Object.keys(t).reduce((e,s)=>{let o=Ce(s);return e[o]=Y(t[s]),e},{}):Fe(t)}function Ce(t){return t.replace(/_([a-z])/g,(e,s)=>s.toUpperCase())}function Fe(t){if(typeof t=="string"){let e=t.toLowerCase();if(e==="true")return!0;if(e==="false")return!1;if(!isNaN(t)&&t.trim()!=="")return Number(t)}return t}var le=q(()=>{});function W(t,e,s){let o=Y(s),{general:r,pagination:n,navigation:u,scrollbar:l,useCustomSettings:p}=o,{autoHeight:d,autoplay:a,autoplayDelay:c,loop:i,centeredSlides:m,slidesPerView:f,spaceBetween:h,mousewheel:y,speed:v,effect:b}=r,_=document.querySelector(`.js-swiper-${t}-${e}`);_&&(u.visible&&_.querySelectorAll(".post-layout_carousel").forEach(j=>{j.classList.add("has-navigation-arrows")}),_.closest(".js-ajax-content").classList.add("posts-carousel"),!p&&new Swiper(_,{grabCursor:!0,spaceBetween:h,centeredSlides:m,autoHeight:d,autoplay:a?{delay:c}:!1,loop:i,slidesPerView:f,mousewheel:y?{invert:!0}:!1,speed:v,effect:b,fadeEffect:b==="fade"?{crossFade:!0}:"",creativeEffect:b==="creative"?{prev:{shadow:!0,translate:[0,0,-400]},next:{translate:["100%",0,0]}}:"",pagination:n.visible?{el:".swiper-pagination",clickable:!0,dynamicBullets:n.dynamicBullets,type:n.type}:!1,navigation:u.visible?{nextEl:".swiper-button-next",prevEl:".swiper-button-prev"}:{enabled:!1},scrollbar:{el:".swiper-scrollbar",draggable:!0,enabled:l.visible}}))}var de=q(()=>{le()});async function S(t,e="replace"){var a;let s=JSON.parse(t.dataset.params),o=new FormData;o.append("action","get_filtered_posts"),o.append("nonce_code",_ymc_fg_object.getPosts_nonce),o.append("params",JSON.stringify(s)),o.append("filter_id",s.filter_id);let r=t.querySelector(".js-ajax-content");g.doAction("ymc/grid/before_update",t),g.doAction("ymc/grid/before_update_"+s.filter_id,t),g.doAction("ymc/grid/before_update_"+s.filter_id+"_"+s.counter,t);let n=s.preloader_settings.icon+".svg",u=s.preloader_settings.filter_preloader,l=s.preloader_settings.custom_filters_css,p=s.filter_id;n=g.applyFilters("ymc/grid/preloader",n),n=g.applyFilters("ymc/grid/preloader_"+s.filter_id,n),e==="append"?z(t,"append","js-ajax-content",n,l,u,p):z(t,"replace","js-ajax-content",n,l,u,p);let d;try{if(d=await fetch(H,{method:"POST",body:o}),!d.ok){console.error(`HTTP error: ${d.status}`);return}let c=await d.json();if(!c.success){console.warn("No renderedHTML in response");return}(a=t.querySelector(".pagination"))==null||a.remove();let{rendered_posts:i,rendered_pagination:m,pagination_type:f,found_posts:h,paged:y,max_num_pages:v,posts_count:b,requires_swiper:_,scroll_filter_bar:j,results_text:w,filtered_posts_label:M}=c.data;if(h>0){r.classList.remove("posts-no-found");let x=t.querySelector(".filter-content .js-total-results-found");switch(x||(x=document.createElement("div"),x.className="total-results-found js-total-results-found",r.parentNode.insertBefore(x,r)),s.search!==void 0?x.innerHTML=w?`<span class="number-posts">${h}</span> ${w}`:"":M!=="none"?x.innerHTML=`${M} <span class="number-posts">${h}</span>`:x.innerHTML="",f){case"numeric":if(r.innerHTML=i,m&&(r.insertAdjacentHTML("afterend",m),re(t)),j==="yes"){t.querySelector(".filter-layout").scrollIntoView({behavior:"smooth",block:"start",inline:"start"});let A=t.getBoundingClientRect().top+window.scrollY-30;window.scrollTo({top:A,behavior:"smooth"})}break;case"loadmore":e==="append"?r.insertAdjacentHTML("beforeend",i):r.innerHTML=i,m&&v>y&&(r.insertAdjacentHTML("afterend",m),ae(t));break;case"infinite":e==="append"?r.insertAdjacentHTML("beforeend",i):r.innerHTML=i,v>y&&ce(t).observe(r.querySelector(".post-card:last-child"));break;default:r.innerHTML=i;break}if(_)if(typeof Swiper=="undefined"){let k=document.createElement("link");k.rel="stylesheet",k.href=_ymc_fg_object.path+"assets/css/lib/swiper.min.css",document.head.appendChild(k);let A=document.createElement("script");A.src=_ymc_fg_object.path+"assets/js/lib/swiper.min.js",A.onload=()=>{W(s.filter_id,s.counter,s.carousel_settings)},document.body.appendChild(A)}else W(s.filter_id,s.counter,s.carousel_settings)}else{r.classList.add("posts-no-found"),r.innerHTML=i;let x=t.querySelector(".filter-content .js-total-results-found");x&&(x.innerHTML="")}g.doAction("ymc/grid/after_update",c.data,t),g.doAction("ymc/grid/after_update_"+s.filter_id,c.data,t),g.doAction("ymc/grid/after_update_"+s.filter_id+"_"+s.counter,c.data,t)}catch(c){console.error("Error occurred:",c)}finally{G(t),g.doAction("ymc/grid/after_complete",d.status,t),g.doAction("ymc/grid/after_complete_"+s.filter_id,d.status,t),g.doAction("ymc/grid/after_complete_"+s.filter_id+"_"+s.counter,d.status,t)}}var N=q(()=>{$();U();oe();ne();K();ie();de()});function T(t){var s;let e=t.querySelector(".js-search-field");if(e){let o=t.querySelector(".js-autocomplete-results");(s=t.querySelector(".js-clear-button"))==null||s.classList.remove("is-visible"),o.classList.remove("is-visible"),o.innerHTML="",e.dataset.postTitle="",e.value=""}}var O=q(()=>{});function F(t){if(!t)return null;let e=t.closest(".ymc-extra-filter");if(e){let s=e.dataset.extraFilterId;if(s){let o=document.querySelector(`.ymc-filter-${s}`);if(o)return o}}return t.closest(".js-ymc-container")}var J=q(()=>{});function I(t){let e=new Set,s=t.dataset.filterId,o=Array.from(t.querySelectorAll("[data-filter-type]")),r=Array.from(document.querySelectorAll(`[data-extra-filter-id="${s}"] [data-filter-type]`)),n=[...o,...r],u=new Map;for(let d of n){let a=d.querySelector("[data-all-terms]");if(!a)continue;let c;try{let i=JSON.parse(a.dataset.allTerms);c=JSON.stringify([...new Set(i)].sort((m,f)=>m-f))}catch(i){console.warn("Parsing error data-all-terms:",i);continue}if(u.has(c)){let i=u.get(c),m=d.closest("[data-extra-filter-id]"),f=i.closest("[data-extra-filter-id]");m&&!f&&u.set(c,d)}else u.set(c,d)}let l={dropdown:d=>Array.from(d.querySelectorAll('input[type="checkbox"]:not(.js-dropdown-all-checkbox)')).filter(a=>a.checked).map(a=>Number(a.dataset.value)),default:d=>Array.from(d.querySelectorAll(".filter-button.is-active:not(.js-filter-button-all)")).map(a=>Number(a.dataset.termid)),dependent:d=>{let a=(d.dataset.sequence||"").split(",").map(f=>f.trim()),c={};a.forEach(f=>{let h=d.querySelector(`[data-taxonomy="${f}"]`);if(!h)return;let y=Array.from(h.querySelectorAll(".js-dependent-checkbox:checked")).map(v=>Number(v.value));c[f]=y});let i=[],m=!0;for(let f=0;f<a.length;f++){let h=a[f],y=c[h]||[];m&&y.length>0?i.push(...y):m=!1}if(i.length===0){let f=d.querySelector(`[data-taxonomy="${a[0]}"]`);if(f)try{let h=JSON.parse(f.dataset.allTerms||"[]");i.push(...h.map(Number))}catch(h){console.warn("Parse root data-all-terms error",h)}}return i},range:d=>{let a="";return d.querySelectorAll(".js-tag-values").forEach(c=>{a+=c.dataset.selectedTags+","}),a=a.split(","),a=a.filter(c=>c!==""),a.map(c=>Number(c))},_default:()=>[]};for(let d of u.values()){let c=(l[d.dataset.filterType]||l._default)(d);if(c.length>0)c.forEach(i=>e.add(i));else if(!d.querySelector('.filter-button.is-active:not(.js-filter-button-all), input[type="checkbox"]:checked:not(.js-dropdown-all-checkbox)')){let m=d.querySelector("[data-all-terms]");if(m)try{JSON.parse(m.dataset.allTerms).map(Number).forEach(f=>{e.add(f)})}catch(f){console.warn("Parsing error data-all-terms",f)}}}return Array.from(e)}var V=q(()=>{});var pe={};R(pe,{initDependentFilter:()=>Pe});function Pe(){document.querySelectorAll('[data-filter-type="dependent"]').forEach(e=>{e.addEventListener("change",Ie),e.addEventListener("click",Me);let s=e.querySelector(".js-apply-button");s&&s.addEventListener("click",async function(o){o.preventDefault();let r=F(e);T(r),E(r,"search"),L(r,{terms:I(r),paged:1}),await S(r)})}),document.addEventListener("click",e=>{e.target.closest(".js-dependent")||document.querySelectorAll(".js-dependent.is-open").forEach(s=>s.classList.remove("is-open"))})}function Me(t){let e=t.target.closest(".js-dependent"),s=t.target.closest(".js-dropdown-close-btn");e&&e.classList.toggle("is-open"),s&&e.classList.remove("is-open")}async function Ie(t){if(!t.target.classList.contains("js-dependent-checkbox"))return;let e=t.target.closest(".js-dependent"),s=e.dataset.taxonomy,o=e.dataset.mode,r=e.closest(".filter-dependent").dataset.updateMode,n=e.closest(".filter-dependent"),u=n.className.match(/filter-(\d+)/)[1],l=F(e),p=e.querySelector(".js-dropdown-label"),d=`Select ${e.dataset.taxonomyLabel||s}`;if(o==="single")if(e.querySelectorAll(".js-dependent-checkbox").forEach(i=>{i!==t.target&&(i.checked=!1)}),t.target.checked){let i=t.target.closest(".ymc-dependent__checkbox").querySelector(".term-name").textContent;p.textContent=i}else{let i=`Select ${e.dataset.taxonomyLabel||s}`;p.textContent=i}if(o==="multiple"){let i=e.querySelectorAll(".js-dependent-checkbox:checked");if(i.length===0)p.textContent=d;else if(i.length===1){let m=i[0].closest(".ymc-dependent__checkbox").querySelector(".term-name").textContent;p.textContent=m}else p.textContent=`${i.length} selected`}let a=[...e.querySelectorAll(".js-dependent-checkbox:checked")].map(i=>i.value);r==="auto"&&(T(l),E(l,"search"),L(l,{terms:I(l),paged:1}),await S(l));let c={action:"load_dependent_terms",nonce_code:_ymc_fg_object.loadDependentTerms_nonce,payload:JSON.stringify({filter_id:u,taxonomy:s,selected:a})};try{let i=await fetch(H,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams(c).toString()});if(i.ok){let m=await i.json();if(m.success&&m.data.html){let f=n.querySelector(".filter-dependent-inner"),h=(n.dataset.sequence||"").split(","),y=h.indexOf(m.data.taxonomy),v=n.dataset.displayAllLevels==="true";h.slice(y+1).forEach(j=>{let w=f.querySelector(`[data-taxonomy="${j}"]`);if(w)if(v){let M=w.querySelector(".ymc-dependent__list");M&&(M.innerHTML='<li class="ymc-dependent__placeholder">No terms available</li>'),w.classList.add("is-disabled"),w.classList.remove("is-open");let x=w.querySelector(".js-dropdown-label"),k=`Select ${w.dataset.taxonomyLabel||j}`;x&&(x.textContent=k)}else w.remove()});let b=f.querySelector(`[data-taxonomy="${m.data.taxonomy}"]`);if(b)b.outerHTML=m.data.html;else{let j=f.querySelector(".js-apply-button");j?j.insertAdjacentHTML("beforebegin",m.data.html):f.insertAdjacentHTML("beforeend",m.data.html)}let _=f.querySelector(`[data-taxonomy="${m.data.taxonomy}"]`);_&&(_.querySelectorAll(".ymc-dependent__item").length>0?_.classList.remove("is-disabled"):_.classList.add("is-disabled"))}}}catch(i){console.error(i)}}var Q=q(()=>{$();N();D();O();J();V()});var P,Z=q(()=>{P=new Set});var ue={};R(ue,{initDefaultFilter:()=>Ne});function Ne(){document.querySelectorAll('.js-ymc-container [data-filter-type="default"]').forEach(e=>{let s=e.querySelectorAll(".filter-button:not(.js-filter-button-all)"),o=e.querySelectorAll(".filter-button.js-filter-button-all");s.forEach(r=>{r.addEventListener("click",He)}),o.forEach(r=>{r.addEventListener("click",De)})})}async function He(){let t=this,e=F(t),s=t.closest(".filter"),o=s.querySelectorAll(".filter-button:not(.js-filter-button-all)"),r=s.dataset.selectionMode==="multiple";r?t.classList.toggle("is-active"):(s.querySelectorAll("button.is-active").forEach(l=>l.classList.remove("is-active")),t.classList.add("is-active")),o.forEach(l=>{let p=Number(l.dataset.termid);l.classList.contains("is-active")?P.add(p):P.delete(p)});let n=s.querySelectorAll(".filter-button.is-active:not(.js-filter-button-all)");if(r&&n.length===0){let l=s.querySelector(".js-filter-button-all");if(l){let p=JSON.parse(l.dataset.allTerms).map(Number);o.forEach(d=>{let a=Number(d.dataset.termid);p.includes(a)&&(P.add(a),d.classList.remove("is-active"))})}}let u=s.querySelector(".js-filter-button-all");u&&(s.querySelectorAll(".filter-button.is-active:not(.js-filter-button-all)").length>0?u.classList.remove("is-active"):u.classList.add("is-active")),s.classList.toggle("js-has-selection",s.querySelectorAll("button.is-active:not(.js-filter-button-all)").length>0),T(e),E(e,"search"),L(e,{terms:I(e),paged:1}),await S(e)}async function De(){let t=this,e=F(t),s=t.closest(".filter-buttons"),o=JSON.parse(t.dataset.allTerms).map(Number);s.querySelectorAll(".filter-button:not(.js-filter-button-all)").forEach(n=>{let u=Number(n.dataset.termid);P.delete(u)}),o.forEach(n=>P.add(n)),s.querySelectorAll("button.is-active").forEach(n=>n.classList.remove("is-active")),t.closest(".filter").classList.remove("js-has-selection"),t.classList.add("is-active"),T(e),E(e,"search"),L(e,{terms:I(e),paged:1}),await S(e)}var me=q(()=>{N();D();O();Z();V();J()});var fe={};R(fe,{initDropdownFilter:()=>$e});function $e(){let t=document.querySelectorAll('[data-filter-type="dropdown"]'),e=new Map,s=new Map;t.forEach(u=>{let l=u,p=u.querySelectorAll(".js-dropdown"),d=u.getAttribute("data-selection-mode")||"single";e.has(l)||e.set(l,[]),p.forEach(c=>{let i=c.querySelector(".js-dropdown-selected"),m=c.querySelector(".js-dropdown-label"),f=c.querySelectorAll(".js-dropdown-item"),h=c.querySelector(".dropdown-close-btn");if(!s.has(l)){let y=Array.from(u.querySelectorAll('input[type="checkbox"]')).map(v=>Number(v.getAttribute("data-value")));s.set(l,y)}if(h&&h.addEventListener("click",y=>{y.stopPropagation(),c.classList.remove("open")}),d==="multiple"){let y=c.querySelector(".ymc-dropdown__list"),v=c.querySelector(".js-dropdown-all"),b;if(!v){v=document.createElement("li"),v.className="ymc-dropdown__item js-dropdown-item js-dropdown-all";let j=_ymc_fg_object.all_dropdown_label;v.innerHTML=`
    66                    <label class="ymc-dropdown__checkbox">
    77                        <input type="checkbox" class="js-dropdown-all-checkbox" />
    88                        <span class="checkmark"></span>
    9                         <span class="ymc-dropdown__checkbox">All</span>
    10                     </label>`;let w=y.querySelector(".ymc-dropdown__close");w?w.insertAdjacentElement("afterend",v):y.insertBefore(v,y.firstChild)}b=v.querySelector(".js-dropdown-all-checkbox");let _=b.cloneNode(!0);b.parentNode.replaceChild(_,b),b=_,b.addEventListener("change",async w=>{w.stopPropagation();let j=F(b),M=e.get(l),x=s.get(l)||[],k=b.checked;M.length=0,c.querySelectorAll('input[type="checkbox"]:not(.js-dropdown-all-checkbox)').forEach(A=>{A.checked=!1;let C=A.closest(".js-dropdown-item");C&&C.classList.remove("is-selected")}),k?x.forEach(A=>{let C=c.querySelector(`input[data-value="${A}"]`);if(C){C.checked=!0;let te=C.closest(".js-dropdown-item");te.classList.add("is-selected");let qe=te.textContent.trim();M.push({value:A.toString(),text:qe,dropdown:c}),P.add(A)}}):x.forEach(A=>P.delete(A)),r(l,M),T(j),E(j,"search"),L(j,{terms:I(j),paged:1}),await S(j)})}i.addEventListener("click",y=>{y.stopPropagation(),n(c),c.classList.toggle("open")}),f.forEach(y=>{let v=y.querySelector('input[type="checkbox"]');v.addEventListener("change",async b=>{b.stopPropagation();let _=F(v),w=v.getAttribute("data-value"),j=Number(w),M=y.querySelector(".term-name").textContent.trim(),x=e.get(l);if(d==="multiple"){if(y.classList.toggle("is-selected",v.checked),v.checked)x.some(k=>k.value===w)||(x.push({value:w,text:M,dropdown:c}),P.add(j));else{let k=x.findIndex(C=>C.value===w);k!==-1&&x.splice(k,1),P.delete(j);let A=c.querySelector(".js-dropdown-all-checkbox");A&&(A.checked=!1)}r(l,x),T(_),E(_,"search"),L(_,{terms:I(_),paged:1}),await S(_)}else{let k=v.checked;f.forEach(C=>{C.classList.remove("is-selected"),C.querySelector('input[type="checkbox"]').checked=!1});let A=x.findIndex(C=>C.dropdown===c);if(A!==-1){let C=x[A].value;P.delete(Number(C)),x.splice(A,1)}k?(v.checked=!0,y.classList.add("is-selected"),m.textContent=M,x.push({value:w,text:M,dropdown:c}),P.add(j)):m.textContent=c.getAttribute("data-label")||"Select option",r(l,x),T(_),E(_,"search"),L(_,{terms:I(_),paged:1}),await S(_)}})})});let a=o(l);a.dataset.listenerAdded||(a.addEventListener("click",async c=>{if(c.target.classList.contains("tag__remove")){let i=c.target.getAttribute("data-value"),m=Number(i),f=e.get(l),h=f.findIndex(y=>y.value===i);if(h!==-1){let{dropdown:y}=f[h];f.splice(h,1);let v=y.querySelector(`input[data-value="${i}"]`);v&&(v.checked=!1,v.closest(".js-dropdown-item").classList.remove("is-selected")),P.delete(m),r(l,f);let b=F(y);T(b),E(b,"search"),L(b,{terms:I(b),paged:1}),await S(b)}}}),a.dataset.listenerAdded="true")});function o(u){let l=u.querySelector(".js-dropdown-selected-tags");return l||(l=document.createElement("div"),l.className="filter-dropdown-selected-tags js-dropdown-selected-tags",u.appendChild(l)),l}function r(u,l){if((u.getAttribute("data-selection-mode")||"single")!=="multiple")return;let a=o(u);a.innerHTML="",l.forEach(({value:c,text:i})=>{let m=document.createElement("div");m.className="tag",m.dataset.value=c,m.innerHTML=`${i} <span class="tag__remove" data-value="${c}">\xD7</span>`,a.appendChild(m)})}function n(u){document.querySelectorAll(".ymc-dropdown.open").forEach(l=>{l!==u&&l.classList.remove("open")})}document.addEventListener("click",u=>{u.target.closest(".ymc-dropdown")||document.querySelectorAll(".ymc-dropdown.open").forEach(l=>l.classList.remove("open"))})}var ye=q(()=>{N();D();O();Z();V();J()});var ge={};R(ge,{initRangeSliderFilter:()=>Be});function Be(){document.querySelectorAll('[data-filter-type="range"]').forEach(e=>{let s=e.querySelector("[data-tags]").dataset.tags,o=e.querySelector("[data-selected-tags]");if(s&&o){s=JSON.parse(s);let r=e.querySelector(".slider-1"),n=e.querySelector(".slider-2"),u=e.querySelector(".range1"),l=e.querySelector(".range2"),p=[],d=e.querySelector(".slider-track"),a=Object.keys(s).length,c=Object.entries(s),i=0;c.sort((f,h)=>!isNaN(Number(f[1]))&&!isNaN(Number(h[1]))?f[1]-h[1]:f[1].localeCompare(h[1]));for(let[f,h]of c)p.push([f,h]);r.setAttribute("max",a-1),n.setAttribute("max",a-1),n.setAttribute("value",a-1),u.textContent=p[0][1],l.textContent=p[a-1][1];let m=r.max;r.addEventListener("input",function(f){parseInt(n.value)-parseInt(r.value)<=i&&(r.value=parseInt(n.value)-i),r.style.zIndex=10,n.style.zIndex=0,u.textContent=p[r.value][1];let h=Number(r.value),y=Number(n.value);o.dataset.selectedTags=he(h,y,p),ee(r,n,m,d)}),n.addEventListener("input",function(f){parseInt(n.value)-parseInt(r.value)<=i&&(n.value=parseInt(r.value)+i),r.style.zIndex=0,n.style.zIndex=10,l.textContent=p[n.value][1];let h=Number(r.value),y=Number(n.value);o.dataset.selectedTags=he(h,y,p),ee(r,n,m,d)}),ee(r,n,m,d)}e.querySelector(".apply-button button").addEventListener("click",async function(r){let n=F(e);T(n),E(n,"search"),L(n,{terms:I(n),paged:1}),await S(n)})})}function ee(t,e,s,o){let r=t.value/s*100,n=e.value/s*100;o.style.background=`linear-gradient(to right, #1F1F1F ${r}% , #1F1F1F ${r}% , #1F1F1F ${n}%, #1F1F1F ${n}%)`}function he(t,e,s){let o="";for(let r=t;r<=e;r++)o+=s[r][0]+",";return o.replace(/,\s*$/,"")}var ve=q(()=>{N();D();O();V();J()});var be={};R(be,{initDatePickerFilter:()=>Oe});function Oe(){document.querySelectorAll(".date-picker-wrapper").forEach(e=>{let s=e.querySelector(".js-dropdown-selected"),o=e.querySelector(".date-picker__dropdown"),r=e.querySelector(".js-date-range"),n=e.querySelectorAll(".js-dropdown-item"),u=e.querySelector(".js-dropdown-close"),l=e.querySelector(".js-btn-cancel"),p=e.querySelector(".js-btn-apply");s.addEventListener("click",()=>{o.classList.toggle("is-open"),s.classList.toggle("is-open")}),n.forEach(d=>{d.addEventListener("change",async a=>{var f,h;let c=F(a.target),i=d.querySelector("input"),m=i.dataset.value;n.forEach(y=>y.classList.remove("is-selected")),d.classList.add("is-selected"),s.textContent=i.value,m==="other_time"?(r.classList.add("is-open"),(f=o.classList)==null||f.remove("is-open")):(h=r.classList)==null||h.remove("is-open"),T(c),E(c,"search"),L(c,{date_filter:{type:m},paged:1}),m!=="other_time"&&await S(c)})}),l&&l.addEventListener("click",d=>{var c;d.stopPropagation(),(c=r.classList)==null||c.remove("is-open"),o.querySelector(".js-dropdown-item").classList.add("is-selected");let a=o.querySelector('input[data-value="all_time"]');a&&(a.checked=!0,s.textContent=a.value,a.dispatchEvent(new Event("change",{bubbles:!0})))}),u&&u.addEventListener("click",d=>{d.stopPropagation(),o.classList.remove("is-open"),s.classList.remove("is-open")}),p&&p.addEventListener("click",async d=>{d.stopPropagation();let a=F(d.target),c=parseInt(e.querySelector('.js-date-range input[name="date_from"]').dataset.timestamp),i=parseInt(e.querySelector('.js-date-range input[name="date_to"]').dataset.timestamp),m=e.querySelector(".notification");i>=c?(m.classList.add("is-hidden"),T(a),E(a,"search"),L(a,{date_filter:{type:"other_time",from:c,to:i},paged:1}),await S(a)):m.classList.remove("is-hidden")}),document.addEventListener("click",d=>{e.contains(d.target)||(o.classList.remove("is-open"),s.classList.remove("is-open"))}),jQuery(".datepicker").datepicker({dateFormat:"M dd, yy",showAnim:"slideDown",monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],onSelect:function(d,a){let c=new Date(d).getTime()/1e3,i=a.input[0];i.dataset.timestamp=c}})})}var Se=q(()=>{J();O();D();N()});Q();async function _e(t){let e=document.querySelectorAll(".js-ymc-container [data-filter-type]"),s=new Set;e.forEach(o=>{let r=o.dataset.filterType;s.add(r)});for(let o of s)switch(o){case"default":let{initDefaultFilter:r}=await Promise.resolve().then(()=>(me(),ue));r();break;case"dropdown":let{initDropdownFilter:n}=await Promise.resolve().then(()=>(ye(),fe));n();break;case"range":let{initRangeSliderFilter:u}=await Promise.resolve().then(()=>(ve(),ge));u();break;case"date_picker":let{initDatePickerFilter:l}=await Promise.resolve().then(()=>(Se(),be));l();break;case"dependent":let{initDependentFilter:p}=await Promise.resolve().then(()=>(Q(),pe));p();break;default:console.warn(`Unknown filter type: ${o}`)}}N();U();function X(t){if(t&&t.dataset.gridStyle==="masonry"){let e=t.dataset.filterId;g.addAction(`ymc/grid/after_update_${e}`,function(s,o){let r=o.querySelector(".js-ajax-content"),n=s.posts_count;r.classList.add("posts-grid--masonry"),Je(r,e,n)})}}function Je(t,e,s){let o=!1,r=s||4,n=20,u=4,l=!1,p=!0,d=!1,a=!1;o=g.applyFilters("ymc/grid/masonry/staticContent",o),o=g.applyFilters("ymc/grid/masonry/staticContent_"+e,o),n=g.applyFilters("ymc/grid/masonry/gutter",n),n=g.applyFilters("ymc/grid/masonry/gutter_"+e,n),u=g.applyFilters("ymc/grid/masonry/maxColumns",u),u=g.applyFilters("ymc/grid/masonry/maxColumns_"+e,u),l=g.applyFilters("ymc/grid/masonry/useMin",l),l=g.applyFilters("ymc/grid/masonry/useMin_"+e,l),p=g.applyFilters("ymc/grid/masonry/useTransform",p),p=g.applyFilters("ymc/grid/masonry/useTransform_"+e,p),d=g.applyFilters("ymc/grid/masonry/animate",d),d=g.applyFilters("ymc/grid/masonry/animate_"+e,d),a=g.applyFilters("ymc/grid/masonry/center",a),a=g.applyFilters("ymc/grid/masonry/center_"+e,a);let c=new MagicGrid({container:t,static:o,items:r,gutter:n,maxColumns:u,useMin:l,useTransform:p,animate:d,center:a});c.onReady(()=>{g.doAction("ymc/grid/masonry/magicGrid_ready",t),g.doAction("ymc/grid/masonry/magicGrid_ready_"+e,t)}),c.onPositionComplete(()=>{g.doAction("ymc/grid/masonry/magicGrid_position_complete",t),g.doAction("ymc/grid/masonry/magicGrid_position_complete_"+e,t)}),c.listen(),c.positionItems()}U();async function Le(){document.querySelectorAll(".js-ymc-container").forEach(e=>{g.doAction("ymc/grid/cancel_fetch",e),e.dataset.loadingEnabled==="true"&&(S(e),X(e))})}$();U();K();function xe(){g.addAction("ymc/grid/after_update",function(t,e){document.querySelectorAll(".ymc-filter-grids .js-ymc-popup-trigger").forEach(s=>{s.addEventListener("click",Re)})})}async function Re(t){t.preventDefault();let e=document.querySelector("body"),s=this.closest(".js-ymc-container"),o=JSON.parse(s.dataset.params),r=this.closest(".post-card"),n=this.getAttribute("data-grid-id"),u=this.getAttribute("data-post-id"),l=this.getAttribute("data-counter"),p=document.querySelector(`#ymc-popup-${n}`),d=p.querySelector(".js-ymc-popup-wrapper"),a=p.querySelector(".js-ymc-btn-popup-close"),c=p.querySelector(".js-ymc-popup-body"),i=o.preloader_settings.icon+".svg",m=o.preloader_settings.filter_preloader,f=o.preloader_settings.custom_filters_css,h=o.filter_id;if(!p)return;e.style.overflow="hidden",a.addEventListener("click",function(b){p.classList.remove("is-open"),e.style.overflow="auto"}),p.addEventListener("click",function(b){b.target===p&&(p.classList.remove("is-open"),e.style.overflow="auto")});let y=new FormData;y.append("action","get_post_to_popup"),y.append("nonce_code",_ymc_fg_object.getPostToPopup_nonce),y.append("post_id",u),y.append("grid_id",n),y.append("counter",l),c.innerHTML="",i=g.applyFilters("ymc/grid/preloader",i),i=g.applyFilters("ymc/grid/preloader_"+o.filter_id,i),z(r,"replace","js-grid-item",i,f,m,h),g.doAction("ymc/popup/before_open",p),g.doAction("ymc/popup/before_open_"+o.filter_id,p);let v;try{if(v=await fetch(H,{method:"POST",body:y}),!v.ok){console.error(`HTTP error: ${v.status}`);return}let b=await v.json();if(!b.success){console.warn("No renderedHTML in response");return}let{body:_}=b.data;c.innerHTML=_,p.classList.add("is-open"),g.doAction("ymc/popup/after_open",p,_),g.doAction("ymc/popup/after_open_"+o.filter_id,p,_)}catch(b){console.error("Error occurred:",b)}finally{G(r)}}$();D();N();function we(){let t=document.querySelectorAll(".js-ymc-container .js-search-field"),e=document.querySelectorAll(".js-ymc-container .js-search-button"),s=document.querySelectorAll(".js-ymc-container .js-clear-button");t&&t.forEach(o=>{o.addEventListener("keydown",We),o.addEventListener("input",Ue(ze,400))}),e&&e.forEach(o=>{o.addEventListener("click",Ge)}),s&&s.forEach(o=>{o.addEventListener("click",Ye)}),document.addEventListener("click",Ke)}function Ue(t,e){let s;return function(...o){let r=this;clearTimeout(s),s=setTimeout(()=>t.apply(r,o),e)}}async function ze(t){let e=this.value,s=this.closest(".js-ymc-container"),o=this.closest(".ymc-extra-search"),r=s.querySelector(".js-autocomplete-results"),n=s.querySelector(".js-clear-button"),u=this.dataset.gridId,l=this.dataset.stateAutocomplete,p=this.dataset.searchMode,d=[];if(n.classList.add("is-visible"),l==="no")return;let a=e.trim().replace(/[^\p{L}\p{N}\s\-]/gu,"");if(a.length<3){r.classList.remove("is-visible"),r.innerHTML="",n.classList.remove("is-visible");return}if(p==="filtered")if(o){let i=o.dataset.extraFilterId;d=B(document.querySelector(`.ymc-filter-${i}`)).terms}else d=B(s).terms;let c=new FormData;c.append("action","get_autocomplete_suggestions"),c.append("nonce_code",_ymc_fg_object.getAutocompletePosts_nonce),c.append("keyword",a),c.append("grid_id",u),c.append("terms",JSON.stringify(d));try{let i=await fetch(H,{method:"POST",body:c});if(!i.ok){console.error(`HTTP error: ${i.status}`);return}let m=await i.json();if(!m.success){console.warn("No renderedHTML in response");return}let{results:f}=m.data;if(f.length===0){r.classList.remove("is-visible"),r.innerHTML="";return}r.innerHTML=f.map(h=>`<div class="clue-item js-clue-item" data-post-title="${h.title}" data-post-id="${h.id}">
     9                        <span class="ymc-dropdown__checkbox">${j}</span>
     10                    </label>`;let w=y.querySelector(".ymc-dropdown__close");w?w.insertAdjacentElement("afterend",v):y.insertBefore(v,y.firstChild)}b=v.querySelector(".js-dropdown-all-checkbox");let _=b.cloneNode(!0);b.parentNode.replaceChild(_,b),b=_,b.addEventListener("change",async j=>{j.stopPropagation();let w=F(b),M=e.get(l),x=s.get(l)||[],k=b.checked;M.length=0,c.querySelectorAll('input[type="checkbox"]:not(.js-dropdown-all-checkbox)').forEach(A=>{A.checked=!1;let C=A.closest(".js-dropdown-item");C&&C.classList.remove("is-selected")}),k?x.forEach(A=>{let C=c.querySelector(`input[data-value="${A}"]`);if(C){C.checked=!0;let te=C.closest(".js-dropdown-item");te.classList.add("is-selected");let qe=te.textContent.trim();M.push({value:A.toString(),text:qe,dropdown:c}),P.add(A)}}):x.forEach(A=>P.delete(A)),r(l,M),T(w),E(w,"search"),L(w,{terms:I(w),paged:1}),await S(w)})}i.addEventListener("click",y=>{y.stopPropagation(),n(c),c.classList.toggle("open")}),f.forEach(y=>{let v=y.querySelector('input[type="checkbox"]');v.addEventListener("change",async b=>{b.stopPropagation();let _=F(v),j=v.getAttribute("data-value"),w=Number(j),M=y.querySelector(".term-name").textContent.trim(),x=e.get(l);if(d==="multiple"){if(y.classList.toggle("is-selected",v.checked),v.checked)x.some(k=>k.value===j)||(x.push({value:j,text:M,dropdown:c}),P.add(w));else{let k=x.findIndex(C=>C.value===j);k!==-1&&x.splice(k,1),P.delete(w);let A=c.querySelector(".js-dropdown-all-checkbox");A&&(A.checked=!1)}r(l,x),T(_),E(_,"search"),L(_,{terms:I(_),paged:1}),await S(_)}else{let k=v.checked;f.forEach(C=>{C.classList.remove("is-selected"),C.querySelector('input[type="checkbox"]').checked=!1});let A=x.findIndex(C=>C.dropdown===c);if(A!==-1){let C=x[A].value;P.delete(Number(C)),x.splice(A,1)}k?(v.checked=!0,y.classList.add("is-selected"),m.textContent=M,x.push({value:j,text:M,dropdown:c}),P.add(w)):m.textContent=c.getAttribute("data-label")||"Select option",r(l,x),T(_),E(_,"search"),L(_,{terms:I(_),paged:1}),await S(_)}})})});let a=o(l);a.dataset.listenerAdded||(a.addEventListener("click",async c=>{if(c.target.classList.contains("tag__remove")){let i=c.target.getAttribute("data-value"),m=Number(i),f=e.get(l),h=f.findIndex(y=>y.value===i);if(h!==-1){let{dropdown:y}=f[h];f.splice(h,1);let v=y.querySelector(`input[data-value="${i}"]`);v&&(v.checked=!1,v.closest(".js-dropdown-item").classList.remove("is-selected")),P.delete(m),r(l,f);let b=F(y);T(b),E(b,"search"),L(b,{terms:I(b),paged:1}),await S(b)}}}),a.dataset.listenerAdded="true")});function o(u){let l=u.querySelector(".js-dropdown-selected-tags");return l||(l=document.createElement("div"),l.className="filter-dropdown-selected-tags js-dropdown-selected-tags",u.appendChild(l)),l}function r(u,l){if((u.getAttribute("data-selection-mode")||"single")!=="multiple")return;let a=o(u);a.innerHTML="",l.forEach(({value:c,text:i})=>{let m=document.createElement("div");m.className="tag",m.dataset.value=c,m.innerHTML=`${i} <span class="tag__remove" data-value="${c}">\xD7</span>`,a.appendChild(m)})}function n(u){document.querySelectorAll(".ymc-dropdown.open").forEach(l=>{l!==u&&l.classList.remove("open")})}document.addEventListener("click",u=>{u.target.closest(".ymc-dropdown")||document.querySelectorAll(".ymc-dropdown.open").forEach(l=>l.classList.remove("open"))})}var ye=q(()=>{N();D();O();Z();V();J()});var ge={};R(ge,{initRangeSliderFilter:()=>Be});function Be(){document.querySelectorAll('[data-filter-type="range"]').forEach(e=>{let s=e.querySelector("[data-tags]").dataset.tags,o=e.querySelector("[data-selected-tags]");if(s&&o){s=JSON.parse(s);let r=e.querySelector(".slider-1"),n=e.querySelector(".slider-2"),u=e.querySelector(".range1"),l=e.querySelector(".range2"),p=[],d=e.querySelector(".slider-track"),a=Object.keys(s).length,c=Object.entries(s),i=0;c.sort((f,h)=>!isNaN(Number(f[1]))&&!isNaN(Number(h[1]))?f[1]-h[1]:f[1].localeCompare(h[1]));for(let[f,h]of c)p.push([f,h]);r.setAttribute("max",a-1),n.setAttribute("max",a-1),n.setAttribute("value",a-1),u.textContent=p[0][1],l.textContent=p[a-1][1];let m=r.max;r.addEventListener("input",function(f){parseInt(n.value)-parseInt(r.value)<=i&&(r.value=parseInt(n.value)-i),r.style.zIndex=10,n.style.zIndex=0,u.textContent=p[r.value][1];let h=Number(r.value),y=Number(n.value);o.dataset.selectedTags=he(h,y,p),ee(r,n,m,d)}),n.addEventListener("input",function(f){parseInt(n.value)-parseInt(r.value)<=i&&(n.value=parseInt(r.value)+i),r.style.zIndex=0,n.style.zIndex=10,l.textContent=p[n.value][1];let h=Number(r.value),y=Number(n.value);o.dataset.selectedTags=he(h,y,p),ee(r,n,m,d)}),ee(r,n,m,d)}e.querySelector(".apply-button button").addEventListener("click",async function(r){let n=F(e);T(n),E(n,"search"),L(n,{terms:I(n),paged:1}),await S(n)})})}function ee(t,e,s,o){let r=t.value/s*100,n=e.value/s*100;o.style.background=`linear-gradient(to right, #1F1F1F ${r}% , #1F1F1F ${r}% , #1F1F1F ${n}%, #1F1F1F ${n}%)`}function he(t,e,s){let o="";for(let r=t;r<=e;r++)o+=s[r][0]+",";return o.replace(/,\s*$/,"")}var ve=q(()=>{N();D();O();V();J()});var be={};R(be,{initDatePickerFilter:()=>Oe});function Oe(){document.querySelectorAll(".date-picker-wrapper").forEach(e=>{let s=e.querySelector(".js-dropdown-selected"),o=e.querySelector(".date-picker__dropdown"),r=e.querySelector(".js-date-range"),n=e.querySelectorAll(".js-dropdown-item"),u=e.querySelector(".js-dropdown-close"),l=e.querySelector(".js-btn-cancel"),p=e.querySelector(".js-btn-apply");s.addEventListener("click",()=>{o.classList.toggle("is-open"),s.classList.toggle("is-open")}),n.forEach(d=>{d.addEventListener("change",async a=>{var f,h;let c=F(a.target),i=d.querySelector("input"),m=i.dataset.value;n.forEach(y=>y.classList.remove("is-selected")),d.classList.add("is-selected"),s.textContent=i.value,m==="other_time"?(r.classList.add("is-open"),(f=o.classList)==null||f.remove("is-open")):(h=r.classList)==null||h.remove("is-open"),T(c),E(c,"search"),L(c,{date_filter:{type:m},paged:1}),m!=="other_time"&&await S(c)})}),l&&l.addEventListener("click",d=>{var c;d.stopPropagation(),(c=r.classList)==null||c.remove("is-open"),o.querySelector(".js-dropdown-item").classList.add("is-selected");let a=o.querySelector('input[data-value="all_time"]');a&&(a.checked=!0,s.textContent=a.value,a.dispatchEvent(new Event("change",{bubbles:!0})))}),u&&u.addEventListener("click",d=>{d.stopPropagation(),o.classList.remove("is-open"),s.classList.remove("is-open")}),p&&p.addEventListener("click",async d=>{d.stopPropagation();let a=F(d.target),c=parseInt(e.querySelector('.js-date-range input[name="date_from"]').dataset.timestamp),i=parseInt(e.querySelector('.js-date-range input[name="date_to"]').dataset.timestamp),m=e.querySelector(".notification");i>=c?(m.classList.add("is-hidden"),T(a),E(a,"search"),L(a,{date_filter:{type:"other_time",from:c,to:i},paged:1}),await S(a)):m.classList.remove("is-hidden")}),document.addEventListener("click",d=>{e.contains(d.target)||(o.classList.remove("is-open"),s.classList.remove("is-open"))}),jQuery(".datepicker").datepicker({dateFormat:"M dd, yy",showAnim:"slideDown",monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],onSelect:function(d,a){let c=new Date(d).getTime()/1e3,i=a.input[0];i.dataset.timestamp=c}})})}var Se=q(()=>{J();O();D();N()});Q();async function _e(t){let e=document.querySelectorAll(".js-ymc-container [data-filter-type]"),s=new Set;e.forEach(o=>{let r=o.dataset.filterType;s.add(r)});for(let o of s)switch(o){case"default":let{initDefaultFilter:r}=await Promise.resolve().then(()=>(me(),ue));r();break;case"dropdown":let{initDropdownFilter:n}=await Promise.resolve().then(()=>(ye(),fe));n();break;case"range":let{initRangeSliderFilter:u}=await Promise.resolve().then(()=>(ve(),ge));u();break;case"date_picker":let{initDatePickerFilter:l}=await Promise.resolve().then(()=>(Se(),be));l();break;case"dependent":let{initDependentFilter:p}=await Promise.resolve().then(()=>(Q(),pe));p();break;default:console.warn(`Unknown filter type: ${o}`)}}N();U();function X(t){if(t&&t.dataset.gridStyle==="masonry"){let e=t.dataset.filterId;g.addAction(`ymc/grid/after_update_${e}`,function(s,o){let r=o.querySelector(".js-ajax-content"),n=s.posts_count;r.classList.add("posts-grid--masonry"),Je(r,e,n)})}}function Je(t,e,s){let o=!1,r=s||4,n=20,u=4,l=!1,p=!0,d=!1,a=!1;o=g.applyFilters("ymc/grid/masonry/staticContent",o),o=g.applyFilters("ymc/grid/masonry/staticContent_"+e,o),n=g.applyFilters("ymc/grid/masonry/gutter",n),n=g.applyFilters("ymc/grid/masonry/gutter_"+e,n),u=g.applyFilters("ymc/grid/masonry/maxColumns",u),u=g.applyFilters("ymc/grid/masonry/maxColumns_"+e,u),l=g.applyFilters("ymc/grid/masonry/useMin",l),l=g.applyFilters("ymc/grid/masonry/useMin_"+e,l),p=g.applyFilters("ymc/grid/masonry/useTransform",p),p=g.applyFilters("ymc/grid/masonry/useTransform_"+e,p),d=g.applyFilters("ymc/grid/masonry/animate",d),d=g.applyFilters("ymc/grid/masonry/animate_"+e,d),a=g.applyFilters("ymc/grid/masonry/center",a),a=g.applyFilters("ymc/grid/masonry/center_"+e,a);let c=new MagicGrid({container:t,static:o,items:r,gutter:n,maxColumns:u,useMin:l,useTransform:p,animate:d,center:a});c.onReady(()=>{g.doAction("ymc/grid/masonry/magicGrid_ready",t),g.doAction("ymc/grid/masonry/magicGrid_ready_"+e,t)}),c.onPositionComplete(()=>{g.doAction("ymc/grid/masonry/magicGrid_position_complete",t),g.doAction("ymc/grid/masonry/magicGrid_position_complete_"+e,t)}),c.listen(),c.positionItems()}U();async function Le(){document.querySelectorAll(".js-ymc-container").forEach(e=>{g.doAction("ymc/grid/cancel_fetch",e),e.dataset.loadingEnabled==="true"&&(S(e),X(e))})}$();U();K();function xe(){g.addAction("ymc/grid/after_update",function(t,e){document.querySelectorAll(".ymc-filter-grids .js-ymc-popup-trigger").forEach(s=>{s.addEventListener("click",Re)})})}async function Re(t){t.preventDefault();let e=document.querySelector("body"),s=this.closest(".js-ymc-container"),o=JSON.parse(s.dataset.params),r=this.closest(".post-card"),n=this.getAttribute("data-grid-id"),u=this.getAttribute("data-post-id"),l=this.getAttribute("data-counter"),p=document.querySelector(`#ymc-popup-${n}`),d=p.querySelector(".js-ymc-popup-wrapper"),a=p.querySelector(".js-ymc-btn-popup-close"),c=p.querySelector(".js-ymc-popup-body"),i=o.preloader_settings.icon+".svg",m=o.preloader_settings.filter_preloader,f=o.preloader_settings.custom_filters_css,h=o.filter_id;if(!p)return;e.style.overflow="hidden",a.addEventListener("click",function(b){p.classList.remove("is-open"),e.style.overflow="auto"}),p.addEventListener("click",function(b){b.target===p&&(p.classList.remove("is-open"),e.style.overflow="auto")});let y=new FormData;y.append("action","get_post_to_popup"),y.append("nonce_code",_ymc_fg_object.getPostToPopup_nonce),y.append("post_id",u),y.append("grid_id",n),y.append("counter",l),c.innerHTML="",i=g.applyFilters("ymc/grid/preloader",i),i=g.applyFilters("ymc/grid/preloader_"+o.filter_id,i),z(r,"replace","js-grid-item",i,f,m,h),g.doAction("ymc/popup/before_open",p),g.doAction("ymc/popup/before_open_"+o.filter_id,p);let v;try{if(v=await fetch(H,{method:"POST",body:y}),!v.ok){console.error(`HTTP error: ${v.status}`);return}let b=await v.json();if(!b.success){console.warn("No renderedHTML in response");return}let{body:_}=b.data;c.innerHTML=_,p.classList.add("is-open"),g.doAction("ymc/popup/after_open",p,_),g.doAction("ymc/popup/after_open_"+o.filter_id,p,_)}catch(b){console.error("Error occurred:",b)}finally{G(r)}}$();D();N();function we(){let t=document.querySelectorAll(".js-ymc-container .js-search-field"),e=document.querySelectorAll(".js-ymc-container .js-search-button"),s=document.querySelectorAll(".js-ymc-container .js-clear-button");t&&t.forEach(o=>{o.addEventListener("keydown",We),o.addEventListener("input",Ue(ze,400))}),e&&e.forEach(o=>{o.addEventListener("click",Ge)}),s&&s.forEach(o=>{o.addEventListener("click",Ye)}),document.addEventListener("click",Ke)}function Ue(t,e){let s;return function(...o){let r=this;clearTimeout(s),s=setTimeout(()=>t.apply(r,o),e)}}async function ze(t){let e=this.value,s=this.closest(".js-ymc-container"),o=this.closest(".ymc-extra-search"),r=s.querySelector(".js-autocomplete-results"),n=s.querySelector(".js-clear-button"),u=this.dataset.gridId,l=this.dataset.stateAutocomplete,p=this.dataset.searchMode,d=[];if(n.classList.add("is-visible"),l==="no")return;let a=e.trim().replace(/[^\p{L}\p{N}\s\-]/gu,"");if(a.length<3){r.classList.remove("is-visible"),r.innerHTML="",n.classList.remove("is-visible");return}if(p==="filtered")if(o){let i=o.dataset.extraFilterId;d=B(document.querySelector(`.ymc-filter-${i}`)).terms}else d=B(s).terms;let c=new FormData;c.append("action","get_autocomplete_suggestions"),c.append("nonce_code",_ymc_fg_object.getAutocompletePosts_nonce),c.append("keyword",a),c.append("grid_id",u),c.append("terms",JSON.stringify(d));try{let i=await fetch(H,{method:"POST",body:c});if(!i.ok){console.error(`HTTP error: ${i.status}`);return}let m=await i.json();if(!m.success){console.warn("No renderedHTML in response");return}let{results:f}=m.data;if(f.length===0){r.classList.remove("is-visible"),r.innerHTML="";return}r.innerHTML=f.map(h=>`<div class="clue-item js-clue-item" data-post-title="${h.title}" data-post-id="${h.id}">
    1111                ${Xe(h.context)}
    1212             </div>`).join(""),Ve(s),r.classList.add("is-visible")}catch(i){console.error("Error occurred:",i)}finally{}}function Ve(t){t.querySelectorAll(".js-autocomplete-results .js-clue-item").forEach(e=>{e.addEventListener("click",async function(s){let o=s.target.closest(".js-clue-item"),r=o.closest(".ymc-extra-search"),n=o.dataset.postTitle;if(!o)return;let u=o.closest(".js-ymc-container"),l=u.querySelector(".js-search-field"),p=u.querySelector(".js-autocomplete-results"),d=u.querySelector(".js-clear-button"),a=document.createElement("div");a.innerHTML=o.innerHTML;let c=a.textContent.trim();if(l.value=c,l.dataset.postTitle=n,p.innerHTML="",p.classList.remove("is-visible"),d.classList.add("is-visible"),r){let i=r.dataset.extraFilterId;u=document.querySelector(`.ymc-filter-${i}`)}L(u,{search:n,paged:1}),await S(u)})})}async function Ge(){let t=this.closest(".js-ymc-container"),e=this.closest(".ymc-extra-search"),s=this.closest(".search-form").querySelector(".js-search-field"),o=t.querySelector(".js-autocomplete-results"),r=s.dataset.postTitle;r||(r=s.value);let n=r.trim().replace(/[^\p{L}\p{N}\s\-]/gu,"");if(n.length<3){console.log("Minimum keyword length: 2 characters");return}if(o.classList.remove("is-visible"),o.innerHTML="",s.dataset.postTitle="",e){let u=e.dataset.extraFilterId;t=document.querySelector(`.ymc-filter-${u}`)}L(t,{search:n}),await S(t)}async function Ye(){let t=this.closest(".js-ymc-container"),e=this.closest(".ymc-extra-search"),s=this.closest(".search-form").querySelector(".js-search-field"),o=t.querySelector(".js-autocomplete-results");if(this.classList.remove("is-visible"),s.value="",o.classList.remove("is-visible"),o.innerHTML="",s.dataset.postTitle="",e){let r=e.dataset.extraFilterId;t=document.querySelector(`.ymc-filter-${r}`)}E(t,"search"),await S(t)}function Xe(t){let e=document.createElement("div");e.innerHTML=t;function s(o){if(o.nodeType===Node.TEXT_NODE&&o.textContent.trim())return o.textContent=o.textContent.replace(/^(\s*)(\S)/,(r,n,u)=>n+u.toUpperCase()),!0;for(let r of o.childNodes)if(s(r))return!0;return!1}return s(e),e.innerHTML}function Ke(t){document.querySelectorAll(".filter-posts-search").forEach(s=>{let o=s.querySelector(".js-autocomplete-results");s.contains(t.target)||(o.classList.remove("is-visible"),o.innerHTML="")})}async function We(t){let e=t.target,s=e.closest(".js-ymc-container"),o=e.closest(".ymc-extra-search"),r=s.querySelector(".js-autocomplete-results"),n=r.querySelectorAll(".js-clue-item"),l=e.dataset.stateAutocomplete!=="no",p=-1;if(l&&n.length&&r.classList.contains("is-visible")){if(n.forEach((a,c)=>{a.classList.contains("is-active")&&(p=c)}),t.key==="ArrowDown")if(t.preventDefault(),p<n.length-1){p>=0&&n[p].classList.remove("is-active");let a=n[p+1];a.classList.add("is-active"),d(e,a)}else{n[p].classList.remove("is-active");let a=n[0];a.classList.add("is-active"),d(e,a)}if(t.key==="ArrowUp")if(t.preventDefault(),p>0){n[p].classList.remove("is-active");let a=n[p-1];a.classList.add("is-active"),d(e,a)}else if(p===0){n[p].classList.remove("is-active");let a=n[n.length-1];a.classList.add("is-active"),d(e,a)}else{let a=n[n.length-1];a.classList.add("is-active"),d(e,a)}}if(t.key==="Enter"){if(t.preventDefault(),l&&r.classList.contains("is-visible")){let c=r.querySelector(".js-clue-item.is-active");if(c){let i=c.dataset.postTitle,m=document.createElement("div");m.innerHTML=c.innerHTML;let f=m.textContent.trim();if(e.value=f,e.dataset.postTitle=i,r.innerHTML="",r.classList.remove("is-visible"),s.querySelector(".js-clear-button").classList.add("is-visible"),o){let y=o.dataset.extraFilterId;s=document.querySelector(`.ymc-filter-${y}`)}L(s,{search:i,paged:1}),await S(s);return}}let a=s.querySelector(".js-search-button");a&&a.click()}t.key==="Escape"&&(r.classList.remove("is-visible"),r.innerHTML="",n.forEach(a=>a.classList.remove("is-active")),e.focus());function d(a,c){let i=document.createElement("div");i.innerHTML=c.innerHTML;let m=i.textContent.trim(),f=c.dataset.postTitle;a.value=m,a.dataset.postTitle=f}}D();N();function Ae(){let t=document.querySelectorAll(".js-ymc-container .js-sort-dropdown");t&&t.forEach(e=>{let s=e.closest(".js-ymc-container"),o=e.closest(".ymc-extra-sort"),r=e.querySelector(".js-sort-dropdown-toggle"),n=e.querySelector(".js-sort-dropdown-menu"),u=e.querySelector(".js-sort-order-input"),l=e.querySelector(".js-selected-value");r.addEventListener("click",function(){e.classList.toggle("dropdown-open")}),n.querySelectorAll(".js-sort-item").forEach(p=>{p.addEventListener("click",async function(){let d=this.getAttribute("data-orderby"),a=this.getAttribute("data-order");if(p.closest(".js-sort-dropdown-menu").querySelectorAll(".js-sort-item").forEach(c=>{c.classList.remove("is-asc","is-desc")}),a==="DESC"?(a="ASC",this.setAttribute("data-order","ASC"),this.classList.add("is-asc"),this.classList.remove("is-desc"),l.classList.add("is-asc"),l.classList.remove("is-desc")):(a="DESC",this.setAttribute("data-order","DESC"),this.classList.add("is-desc"),this.classList.remove("is-asc"),l.classList.add("is-desc"),l.classList.remove("is-asc")),l.textContent=this.textContent,u.value=d,o){let c=o.dataset.extraFilterId;s=document.querySelector(`.ymc-filter-${c}`)}L(s,{order:a,orderby:d,paged:1}),await S(s)})}),document.addEventListener("click",function(p){e.contains(p.target)||e.classList.remove("dropdown-open")})})}$();function je(){ymcHooks.addAction("ymc/grid/after_update",function(t,e){e.querySelectorAll(".post-card .js-post-link").forEach(s=>{s.addEventListener("click",()=>{let o=s.dataset.postId;if(!o)return;let r=`ymc_post_view_${o}`,n=Date.now(),u=24*60*60*1e3,l=localStorage.getItem(r);if(l)try{let a=JSON.parse(l);if(a.timestamp&&n-a.timestamp<u)return}catch(a){}localStorage.setItem(r,JSON.stringify({timestamp:n}));let p="action=update_track_view&post_id="+encodeURIComponent(o),d=new Blob([p],{type:"application/x-www-form-urlencoded;charset=UTF-8"});navigator.sendBeacon?navigator.sendBeacon(H,d):fetch(H,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:p,keepalive:!0}).then(a=>a.json()).then(a=>{if(a.success&&a.data.views){let c=s.closest(".post-card").querySelector(".js-post-views");c&&(c.textContent=a.data.views)}}).catch(console.error)})})})}document.addEventListener("DOMContentLoaded",()=>{_e(),Le(),xe(),we(),Ae(),X(),je()});
  • ymc-smart-filter/trunk/ymc2/src/frontend/FG_Components.php

    r3371987 r3372791  
    200200        $sort_enable  = Data_Store::get_meta_value($filter_id, 'ymc_fg_enable_sort_posts');
    201201        $allowed_sort_fields  = Data_Store::get_meta_value($filter_id, 'ymc_fg_post_sortable_fields');
    202         $sort_dropdown_label  = Data_Store::get_meta_value($filter_id, 'ymc_fg_sort_dropdown_label');
     202        $sort_dropdown_label  = __( Data_Store::get_meta_value($filter_id, 'ymc_fg_sort_dropdown_label'), 'ymc-smart-filter' );
    203203
    204204        if (isset($sort_enable) && $sort_enable === 'yes' || $show_sort) :
  • ymc-smart-filter/trunk/ymc2/src/frontend/FG_Filter_Default.php

    r3365181 r3372791  
    2828        // Get all button settings
    2929        $filter_all_button = Data_Store::get_meta_value($filter_id, 'ymc_fg_filter_all_button');
    30         $all_button_label = 'All';
    3130        $is_visible_all_button = 'yes';
     31
    3232        foreach ($tax_name as $tax) {
    3333            if (!empty($filter_all_button[$tax])) {
    3434                $settings = $filter_all_button[$tax];
    35                 $all_button_label = !empty($settings['all_label']) ? $settings['all_label'] : 'All';
     35                if (!empty($settings['all_label'])) {
     36                    do_action( 'wpml_register_single_string', 'ymc-smart-filter', 'All Button Label', $settings['all_label'] );
     37                    $all_button_label = $settings['all_label'];
     38                } else {
     39                    $all_button_label = __( 'All', 'ymc-smart-filter' );
     40                }
    3641                $is_visible_all_button = $settings['is_visible'] ?? 'yes';
    3742                break;
    3843            }
    3944        }
     45
     46        $translated_label = apply_filters( 'wpml_translate_single_string', $all_button_label, 'ymc-smart-filter', 'All Button Label' );
    4047
    4148        // Get selection mode
     
    7986                        <?php
    8087                        // phpcs:ignore WordPress
    81                         echo esc_html(sprintf(__( '%s', 'ymc-smart-filter' ), $all_button_label)); ?></span>
     88                        echo esc_html( $translated_label ); ?></span>
    8289                    </button>
    8390
  • ymc-smart-filter/trunk/ymc2/src/frontend/FG_Frontend_Scripts.php

    r3365181 r3372791  
    164164                    'getAutocompletePosts_nonce' => wp_create_nonce('get_autocomplete_posts-ajax-nonce'),
    165165                    'loadDependentTerms_nonce' => wp_create_nonce('load_dependent_terms-ajax-nonce'),
    166                     'current_page'   => 1,
    167                     'path'           => YMC_PLUGIN_URL
     166                    'current_page' => 1,
     167                    'all_dropdown_label' => __('All tags', 'ymc-smart-filter'),
     168                    'path' => YMC_PLUGIN_URL
    168169            ));
    169170        }
  • ymc-smart-filter/trunk/ymc2/src/frontend/views/templates/posts/post-layout-carousel.php

    r3369116 r3372791  
    137137                      <?php endif; ?>
    138138
    139                       <?php if( $post_display_settings['button'] === 'show') : ?>
     139                      <?php if( $post_display_settings['button'] === 'show') :
     140                          if ( ! empty( $button_text ) ) {
     141                              do_action( 'wpml_register_single_string', 'ymc-smart-filter', 'Post Button Text', $button_text );
     142                              $button_text = apply_filters( 'wpml_translate_single_string', $button_text, 'ymc-smart-filter', 'Post Button Text' );
     143                          }
     144                          ?>
    140145                          <a class="post-card__read-more<?php echo esc_attr($popup_class_trigger); ?>"
    141146                             href="<?php echo esc_url($post_link); ?>"
  • ymc-smart-filter/trunk/ymc2/src/frontend/views/templates/posts/post-layout-standard.php

    r3370583 r3372791  
    140140            <?php endif; ?>
    141141
    142             <?php if( $post_display_settings['button'] === 'show') : ?>
     142            <?php if( $post_display_settings['button'] === 'show') :
     143                if ( ! empty( $button_text ) ) {
     144                    do_action( 'wpml_register_single_string', 'ymc-smart-filter', 'Post Button Text', $button_text );
     145                    $button_text = apply_filters( 'wpml_translate_single_string', $button_text, 'ymc-smart-filter', 'Post Button Text' );
     146                }
     147                ?>
    143148                <a class="post-card__read-more js-post-link<?php echo esc_attr($popup_class_trigger); ?>"
    144149                   href="<?php echo esc_url($post_link); ?>"
Note: See TracChangeset for help on using the changeset viewer.