1function UEDynamicFilters(){var g_objFilters,g_filtersData,g_urlBase;var g_urlAjax,g_lastGridAjaxCall,g_cache={},g_objBody;var g_remote=null,g_lastSyncGrids,g_initFiltersCounter=0;var t=this;var g_showDebug=!1;var g_debugInitMode=!1;var g_debugBeforeRefreshMode=!1;var g_isGutenberg=!1;var g_types={PAGINATION:"pagination",LOADMORE:"loadmore",TERMS_LIST:"terms_list",SEARCH:"search",SELECT:"select",SUMMARY:"summary",GENERAL:"general",GENERAL_MOBILE_DRAWER:"mobilefilters"};var g_vars={CLASS_DIV_DEBUG:"uc-div-ajax-debug",CLASS_GRID:"uc-filterable-grid",CLASS_GRID_NOREFRESH:"uc-grid-norefresh",DEBUG_AJAX_OPTIONS:!1,CLASS_CLICKED:"uc-clicked",CLASS_HIDDEN:"uc-filter-hidden",CLASS_INITING:"uc-filter-initing",CLASS_INITING_HIDDEN:"uc-initing-filter-hidden",CLASS_SKIP_REFRESH:"uc-filters-norefresh",CLASS_REFRESH_SOON:"uc-ajax-refresh-soon",EVENT_SET_HTML_ITEMS:"uc_ajax_sethtml",CLASS_FILTER_INITED:"ucfilters--filter-inited",ATTRIBUTE_URLADD:"ajaxurladd",GRID_DATA_SKIP_HTML:"skip_set_html",EVENT_BEFORE_REFRESH:"uc_before_ajax_refresh",EVENT_AJAX_REFRESHED:"uc_ajax_refreshed",EVENT_AJAX_REFRESHED_BODY:"uc_ajax_refreshed_body",EVENT_UPDATE_ACTIVE_FILTER_ITEMS:"update_active_filter_items",EVENT_UNSELECT_FILTER:"uc_unselect_filter",EVENT_SILENT_FILTER_CHANGE:"uc_silent_filter_change",EVENT_DOM_UPDATED:"uc_dom_updated",EVENT_INIT_FILTER:"init_filter",EVENT_INIT_FILTER_TYPE:"init_filter_type",EVENT_GET_FILTER_DATA:"get_filter_data",EVENT_FILTER_RELOADED:"uc_ajax_reloaded",ACTION_CLEAR_FILTERS:"clear_filters",ACTION_REFRESH_GRID:"uc_refresh",ACTION_GET_FILTERS_URL:"uc_get_filters_url",ACTION_FILTER_CHANGE:"uc_filter_change",ACTION_FILTER_UNSELECT_BY_KEY:"unselect_by_key",REFRESH_MODE_PAGINATION:"pagination",REFRESH_MODE_LOADMORE:"loadmore",trashold_handle:null,class_widget_wrapper:"elementor-widget",current_postid:null,ucpage_url:null};var g_options={is_cache_enabled:!0,urlkey_taxsap:"~"};function trace(str){console.log(str)} 2function ________GENERAL_______________(){} 3function addUrlParam(url,param,value){if(url){if(url.indexOf("?")==-1) 4url+="?";else url+="&"} 5if(typeof value=="undefined") 6url+=param;else url+=param+"="+value;return(url)} 7function getVal(obj,name,defaultValue){if(!defaultValue) 8var defaultValue="";var val="";if(!obj||typeof obj!="object") 9val=defaultValue;else if(obj.hasOwnProperty(name)==!1){val=defaultValue}else{val=obj[name]} 10return(val)} 11function strToBool(str){switch(typeof str){case "boolean":return(str);break;case "undefined":return(!1);break;case "number":if(str==0) 12return(!1);else return(!0);break;case "string":str=str.toLowerCase();if(str=="true"||str=="1") 13return(!0);else return(!1);break} 14return(!1)};function getOffsetsDistance(offset1,offset2){var dx=offset2.left-offset1.left;var dy=offset2.top-offset1.top;return Math.sqrt(dx*dx+dy*dy)} 15function roundToOneDecimal(num){if(num%1!==0){return num.toFixed(1)}else{return num.toFixed(0)}} 16function getClosestByOffset(objParents,objElement,isVertical){if(objParents.length==0){throw new Error("get closest by offset error - grids not found")} 17if(g_showDebug==!0){trace("get closest grids for");trace(objElement) 18trace("parents");trace(objParents)} 19var objClosest=null;var minDiff=1000000;var elementOffset=objElement.offset();jQuery.each(objParents,function(index,parent){var objParent=jQuery(parent);var objGrid=jQuery(parent);var distance=0;var isVisible=objParent.is(":visible");var constantHeight=null;if(isVisible==!1){objParent=objParent.parent()} 20var parentOffset=objParent.offset();if(isVertical==!0){var offsetY=elementOffset.top;var parentY=parentOffset.top;if(parentY<offsetY) 21parentY+=objParent.height();var distance=Math.abs(offsetY-parentY)}else{var parentOffset=objParent.offset();var distance=getOffsetsDistance(parentOffset,elementOffset)} 22if(g_showDebug==!0){trace(objParent);trace("distance: "+distance);trace("is vertical: "+isVertical)} 23if(distance<minDiff){minDiff=distance;objClosest=objGrid}});if(g_showDebug==!0){trace("filter: ");trace(objElement);trace("Closest grid found:");trace(objClosest)} 24return(objClosest)} 25function getAllGrids(type){if(type=="loaded_only") 26var objGrids=jQuery("."+g_vars.CLASS_GRID).not(".ucfilters--grid-inited");else var objGrids=jQuery("."+g_vars.CLASS_GRID);return(objGrids)} 27function getGridFromParentContainers(objSource){var objParents=objSource.parents();var objGrid=null;if(g_showDebug==!0){trace("get from parent containers");trace(objParents)} 28objParents.each(function(){var objParent=jQuery(this);objGrid=objParent.find("."+g_vars.CLASS_GRID);if(objGrid.length>=1) 29return(!1);});return(objGrid)} 30function getClosestGrid(objSource){var objGrids=getAllGrids();if(objGrids.length==0) 31return(null);if(g_showDebug==!0){trace("get closest grids");trace(objSource);trace(objGrids)}
32if(objGrids.length==1) 33return(objGrids);var group=objSource.data("connectgroup");if(group){var objGridsGroup=objGrids.filter("[data-filtergroup="+group+"]");if(objGridsGroup.length>0){if(objGridsGroup.length==1) 34return(objGridsGroup);objGrids=objGridsGroup}}else{var objGrid=getGridFromParentContainers(objSource);if(objGrid&&objGrid.length==1) 35return(objGrid);} 36if(objGrid&&objGrid.length>1) 37objGrids=objGrid;var objSingleGrid=getClosestByOffset(objGrids,objSource,!0);if(objSingleGrid&&objSingleGrid.length==1) 38return(objSingleGrid);var objFirstGrid=jQuery(objGrids[0]);return(objFirstGrid)} 39function bindFilterToGrid(objGrid,objFilter){if(g_showDebug){trace("bind filter to grid");trace(objFilter)} 40var arrFilters=objGrid.data("filters");var objTypes=objGrid.data("filter_types");if(!arrFilters) 41arrFilters=[];if(!objTypes) 42objTypes={};var type=getFilterType(objFilter);if(objTypes.hasOwnProperty(type)){switch(type){case g_types.LOADMORE:trace("Double filter not allowed");trace("existing Filters:");trace(arrFilters);trace("Second Filter");trace(objFilter);trace("Grid:");trace(objGrid);showElementError(objFilter,"Double load more button for one grid not allowed") 43return(!1);break}} 44objTypes[type]=!0;var filterID=objFilter.attr("id");var objElementorStickySpacer=objFilter.closest(".elementor-sticky__spacer");if(objElementorStickySpacer.length) 45return(!0);var objExistingFilter=arrFilters.filter(function(objFilterInArray){return objFilterInArray.attr("id")==filterID});if(objExistingFilter&&objExistingFilter.length) 46throw new Error("Can't bind filter to grid, it's already exists: "+filterID);arrFilters.push(objFilter);var isInitAfter=objFilter.data("initafter");if(!isInitAfter) 47isInitAfter=isSpecialFilterInitAfter(objFilter,objGrid);if(g_showDebug){trace("init after: "+isInitAfter)} 48if(isInitAfter===!0){addFilterToInitAfter(objFilter,objGrid)} 49objGrid.data("filters",arrFilters);objGrid.data("filter_types",objTypes)} 50function getElementWidgetID(objElement){if(!objElement||objElement.length===0) 51throw new Error("Element not found");var objWidget=objElement.closest("."+g_vars.class_widget_wrapper);if(objWidget.length===0) 52throw new Error("Element parent not found with class: "+g_vars.class_widget_wrapper);var widgetID=objWidget.data("id");if(!widgetID) 53throw new Error("widget id not found");return widgetID} 54function getGridFromElementorElementID(elementID,group,showDebug){var selector="."+g_vars.class_widget_wrapper+"[data-id='"+elementID+"']";var objElement=g_objBody.find(selector);if(showDebug==!0){trace("selector: "+selector);trace("element: ");trace(objElement)} 55if(objElement.length==0) 56return(null);var selectorGrid="."+g_vars.CLASS_GRID;var objGrid=objElement.find(selectorGrid);if(showDebug==!0){trace("selector grid: "+selectorGrid);trace("grid: ");trace(objGrid)} 57if(objGrid.length==1) 58return(objGrid);if(objGrid.length==0) 59return(null);if(group){objGrid=objGrid.filter("[data-filtergroup="+group+"]")} 60if(showDebug==!0){trace("after group filter: "+group);trace(objGrid)} 61if(objGrid.length!=1) 62return(null);return(objGrid)} 63function getGroupWidgets(arrSyncedGrids,objElement){var group=objElement.data("filtergroup");if(!group) 64return(arrSyncedGrids);var objGrids=jQuery("."+g_vars.CLASS_GRID);if(objGrids.length<2) 65return(arrSyncedGrids);var elementID=objElement.attr("id");var objDataGrids=objGrids.filter("[data-filtergroup='"+group+"']:not(#"+elementID+")");if(objDataGrids.length==0) 66return(arrSyncedGrids);jQuery.each(objDataGrids,function(index,grid){var objGrid=jQuery(grid);arrSyncedGrids.push(objGrid)});return(arrSyncedGrids)} 67function getSyncedWidgetData(objElement){var arrSyncedGrids=[];if(g_remote) 68arrSyncedGrids=g_remote.getSyncedElements(objElement);if(!arrSyncedGrids) 69arrSyncedGrids=[];arrSyncedGrids=getGroupWidgets(arrSyncedGrids,objElement);if(!arrSyncedGrids||arrSyncedGrids.length==0) 70return(!1);var arrWidgetIDs=[];var objGrids=null;for(var index in arrSyncedGrids){var objGrid=arrSyncedGrids[index];if(objGrid.hasClass(g_vars.CLASS_GRID)==!1){var message="Please enable ajax on all synced widgets";var message2="Please enable ajax on this synced widget, it's missing class: "+g_vars.CLASS_GRID;showElementError(objGrid,message2);showAjaxError(message);throw new Error(message);return(!1)} 71var objWidgetID=getElementWidgetID(objGrid);if(!objGrids) 72objGrids=objGrid;else objGrids=objGrids.add(objGrid);arrWidgetIDs.push(objWidgetID)} 73var strWidgetIDs=arrWidgetIDs.toString();var objOutput={};objOutput.ids=strWidgetIDs;objOutput.grids=objGrids;return(objOutput)} 74function getElementLayoutData(objElement,addSyncedGrids){var widgetID=getElementWidgetID(objElement);var objWidget=objElement.parents("."+g_vars.class_widget_wrapper);var objSyncedData=null;if(addSyncedGrids){var objSyncedData=getSyncedWidgetData(objElement);if(g_showDebug&&objSyncedData){trace("sync data");trace(objSyncedData)}}else{if(g_showDebug) 75trace("skip sync grid");} 76if(g_isGutenberg==!1){var objLayout=objWidget.parents(".elementor");if(objLayout.length==0) 77throw new Error("layout not found");var layoutID=objLayout.data("elementor-id");if(!layoutID) 78layoutID=objLayout.data("id");}else{var layoutID=g_vars.current_postid} 79var output={};output.widgetid=widgetID;output.layoutid=layoutID;if(objSyncedData){output.synced_widgetids=objSyncedData.ids;output.synced_grids=objSyncedData.grids} 80return(output)} 81function showElementError(objElement,error){var objParent=objElement.parent();if(g_showDebug==!0){trace("Show Error Message for: ");trace(objElement);trace(error)} 82var objError=objParent.find(".uc-filers-error-message");if(objError.length==0){objParent.append("<div class='uc-filers-error-message' style='color:red;position:absolute;top:-24px;left:0px;background-color:rgba(230, 230, 230, 0.8);padding:3px;font-size:12px;border:5px solid white;'></div>");var objError=objParent.find(".uc-filers-error-message");
82objParent.css("border","1px solid red !important")} 83objError.append(error);objError.css("top",-objError.height()-5)} 84function getGridEmptyMessage(objGrid){var gridID=objGrid.attr("id");if(!gridID) 85return(null);var objEmptyMessage=jQuery("#"+gridID+"_empty_message");if(objEmptyMessage.length==0) 86return(null);return(objEmptyMessage)} 87function getGridActiveFilterItems(objGrid){var arrActiveItems=objGrid.data("active_filters_items");if(!arrActiveItems) 88return(null);if(arrActiveItems.length==0) 89return(null);return(arrActiveItems)} 90function getSelectedFilters(objFilters,roleArg){if(!objFilters) 91var objFilters=objGrid.data("filters");if(!objFilters) 92return(!1);var arrSelectedFilters=[];jQuery.each(objFilters,function(index,filter){var objFilter=jQuery(filter);var isSelected=objFilter.hasClass("uc-has-selected");if(!roleArg&&isSelected==!0){arrSelectedFilters.push(objFilter);return(!0)} 93var role=objFilter.data("role");if(role==roleArg){var isSelected=objFilter.hasClass("uc-has-selected");if(isSelected) 94arrSelectedFilters.push(objFilter);}});return(arrSelectedFilters)} 95function ________FILTERS_______________(){} 96function getFiltersParent(objFilters){var objParent=objFilters.parents(".elementor");if(objFilters.length>1&&objParent.length>1) 97objParent=objFilters.parents("body");if(objParent.length>1){objParent=jQuery(objParent[0])} 98if(objParent.length==0) 99objParent=objFilters.parents("body");return(objParent)} 100function getFilterWrapper(objFilter){var objParent=objFilter.parent();if(objParent.hasClass("uc-checkbox-filter-accordion-container")) 101objParent=objParent.parent();return(objParent)} 102function getFilterType(objFilter,getGeneralType){if(objFilter.hasClass("uc-filter-pagination")) 103return(g_types.PAGINATION);if(objFilter.hasClass("uc-filter-load-more")) 104return(g_types.LOADMORE);var filterType=objFilter.data("filtertype") 105if(filterType==g_types.GENERAL&&getGeneralType===!0){var generalType=objFilter.data("generaltype");return(generalType)} 106if(filterType) 107return(filterType);trace("Filter type not found: ");trace(objFilter);throw new Error("wrong filter type")} 108function clearAllFilters(objGrid){clearChildFilters(objGrid,null,!0,null,!0)} 109function getGridFilters(objGrid){var objFilters=objGrid.data("filters");if(!objFilters) 110return(null);if(objFilters.length==0) 111return(null);return(objFilters)} 112function clearChildFilters(objGrid,objCurrentFilter,isHideChildren,termID,isClearAll){var objFilters=getGridFilters(objGrid);if(!objFilters) 113return(!1);var currentFilterID=null;if(objCurrentFilter) 114var currentFilterID=objCurrentFilter.attr("id");jQuery.each(objFilters,function(index,filter){var objFilter=jQuery(filter);var filterID=objFilter.attr("id");if(filterID==currentFilterID) 115return(!0);var role=objFilter.data("role");if(role!="child"&&role!="main"&&role!="term_child"){if(isClearAll==!0){clearFilter(objFilter)} 116return(!0)} 117var isHide=!1;var isShow=!1;switch(role){case "term_child":if(isHideChildren==!0) 118isHide=!0;var linkedTermID=objFilter.data("childterm");if(linkedTermID==termID){objFilter.removeClass(g_vars.CLASS_HIDDEN);objFilter.removeClass(g_vars.CLASS_INITING);objFilter.removeClass(g_vars.CLASS_INITING_HIDDEN)}else{isHide=!0} 119break;case "child":if(isHideChildren==!0) 120isHide=!0;else{objFilter.removeClass(g_vars.CLASS_HIDDEN);objFilter.addClass(g_vars.CLASS_INITING);objFilter.addClass(g_vars.CLASS_INITING_HIDDEN)} 121break;default:if(isClearAll==!0){clearFilter(objFilter)} 122return(!0);break} 123if(isHide==!0) 124objFilter.addClass(g_vars.CLASS_HIDDEN);clearFilter(objFilter)})} 125function clearFilter(objFilter){var type=getFilterType(objFilter);switch(type){case g_types.TERMS_LIST:var objSelectedItems=objFilter.find(".ue_taxonomy_item.uc-selected");objSelectedItems.removeClass("uc-selected");var objAll=objFilter.find(".ue_taxonomy_item.uc-item-all");objAll.addClass("uc-selected");break;case g_types.SELECT:var objSelect=objFilter.find("select");objSelect.val("");var objSelected=objFilter.find("option:selected");if(objSelected.length==0) 126objFilter.find("option:first-child").prop("selected","selected");break;default:case g_types.SEARCH:case g_types.GENERAL:objFilter.trigger("clear_filter");break}} 127function unselectFilterItem(objGrid,key){var objFilters=getGridFilters(objGrid);if(!objFilters) 128return(!1);jQuery.each(objFilters,function(index,filter){var objFilter=jQuery(filter);objFilter.trigger(g_vars.ACTION_FILTER_UNSELECT_BY_KEY,[key])})} 129function isFilterSkipAction(objFilter){var objParentSkipRefresh=objFilter.parents("."+g_vars.CLASS_SKIP_REFRESH);if(objParentSkipRefresh.length) 130return(!0);return(!1)} 131function hasChildFilters(objGrid){var objFilters=getGridFilters(objGrid);if(!objFilters) 132return(!1);for(var index in objFilters){var objFilter=objFilters[index];var role=objFilter.data("role");
132if(role=="child") 133return(!0);} 134return(!1)} 135function checkTriggerSkipAction(objFilter,objGrid){var isSkipAction=isFilterSkipAction(objFilter);if(isSkipAction==!1) 136return(!1);if(g_showDebug==!0) 137trace("skip refresh - silent change triggered");var filterRole=objFilter.data("role");objGrid.trigger(g_vars.EVENT_SILENT_FILTER_CHANGE);initGrid_setActiveFiltersData(objGrid);if(filterRole=="main"&&hasChildFilters(objGrid)){if(g_showDebug==!0) 138trace("refresh children only");objGrid.data(g_vars.GRID_DATA_SKIP_HTML,!0);refreshAjaxGrid(objGrid)} 139return(!0)} 140function ________PAGINATION_FILTER______(){} 141function getPaginationSelectedData(objPagination){var objCurrentLink=objPagination.find("a.current,span.current");if(objCurrentLink.length==0) 142return(null);var url=objCurrentLink.attr("href");var numPage=objCurrentLink.text();if(jQuery.isNumeric(numPage)==!1) 143numPage=null;numPage=Number(numPage);if(numPage===1) 144numPage=null;var output={};output.url=url;output.page=numPage;return(output)} 145function onAjaxPaginationLinkClick(event){var objLink=jQuery(this);var objPagination=objLink.parents(".uc-filter-pagination");var objGrid=objPagination.data("grid");if(!objGrid||objGrid.length==0||objPagination.hasClass("uc-no-ajax")){return(!0)} 146event.preventDefault();var objLinkCurrent=objPagination.find(".current");if(objLink.hasClass("next")){var nextLink=objLinkCurrent.next();var objNextLink=jQuery(nextLink);objNextLink.trigger("click");return(!1)} 147if(objLink.hasClass("prev")){var prevLink=objLinkCurrent.prev();var objPrevLink=jQuery(prevLink);objPrevLink.trigger("click");return(!1)} 148objLinkCurrent.removeClass("current");objLink.addClass("current");var objGrid=objPagination.data("grid");objPagination.addClass(g_vars.CLASS_CLICKED);if(g_showDebug==!0){trace("click on pagination!!!, no grid refresh");trace(objLink)}else{refreshAjaxGrid(objGrid,g_vars.REFRESH_MODE_PAGINATION)} 149return(!1)} 150function ________LOAD_MORE_______________(){} 151function getLoadMoreUrlData(objFilter){var objData=objFilter.find(".uc-filter-load-more__data");var nextOffset=objData.data("nextoffset");if(!nextOffset) 152nextOffset=null;var numItems=objFilter.data("numitems");if(!numItems) 153numItems=null;var isSingleGridOnly=objFilter.data("affect_single_grid");var data={};data.offset=nextOffset;data.numItems=numItems;data.singlegrid=isSingleGridOnly;return(data)} 154function onLoadMoreClick(){var objLink=jQuery(this);var objLoadMore=objLink.parents(".uc-filter-load-more");var objData=objLoadMore.find(".uc-filter-load-more__data");var isMore=objData.data("more");if(isMore==!1) 155return(!1);var objGrid=objLoadMore.data("grid");if(!objGrid||objGrid.length==0) 156throw new Error("Grid not found!");objLoadMore.addClass(g_vars.CLASS_CLICKED);refreshAjaxGrid(objGrid,g_vars.REFRESH_MODE_LOADMORE)} 157function ________SELECT_______________(){} 158function initSelectFilter(objFilter){var objSelected=objFilter.find(".uc-selected");if(objSelected.length==0) 159return(!1);var value=objSelected.attr("value");var objSelect=objFilter.find("select");objSelect.val(value)} 160function ________TERMS_LIST_______________(){} 161function termsFilterUnselectByKey(event,key){var objFilter=jQuery(this);var selectedTerm=getTermsListSelectedTerm(objFilter);if(!selectedTerm) 162return(!1);var selectedKey=getVal(selectedTerm,"key");if(selectedKey!=key) 163return(!1);clearFilter(objFilter);setNoRefreshFilter(objFilter)} 164function onTermsLinkClick(event){var className="uc-selected";event.preventDefault();var objLink=jQuery(this);if(objLink.hasClass("uc-grid-filter")){var objTermsFilter=objLink}else{var objTermsFilter=objLink.parents(".uc-grid-filter")} 165var filterType=getFilterType(objTermsFilter);if(filterType==g_types.SELECT){var objLink=objTermsFilter.find("option:selected")} 166if(filterType==g_types.TERMS_LIST){var objActiveLinks=objLink.siblings("."+className).not(objLink);objActiveLinks.removeClass(className);objLink.addClass(className)} 167var objGrid=objTermsFilter.data("grid");if(!objGrid||objGrid.length==0) 168throw new Error("Grid not found");var filterRole=objTermsFilter.data("role");var termID=objLink.data("id");var isRefresh=!1;if(!termID){var objHiddenItems=objTermsFilter.find(".uc-item-hidden");if(objHiddenItems.length) 169isRefresh=!0} 170var isHideChildren=!1;if(!termID) 171isHideChildren=!0;if(isRefresh==!1) 172setNoRefreshFilter(objTermsFilter);if(filterRole=="main") 173clearChildFilters(objGrid,objTermsFilter,isHideChildren,termID);
173var isSkipAction=checkTriggerSkipAction(objTermsFilter,objGrid);if(isSkipAction==!0) 174return(!1);if(g_showDebug==!0){trace("refresh grid - on term click")} 175refreshAjaxGrid(objGrid)} 176function getTermsListSelectedTerm(objFilter){if(!objFilter) 177return(null);var filterType=getFilterType(objFilter);var objSelected=objFilter.find(".uc-selected");if(filterType==g_types.SELECT){var objSelected=objFilter.find("option:selected")}else{var objSelected=objFilter.find(".uc-selected")} 178if(objSelected.length==0){if(g_showDebug==!0){trace("no selected found, skipping...")} 179return(null)} 180if(filterType==g_types.TERMS_LIST&&objSelected.hasClass("uc-item-hidden")==!0){if(g_showDebug==!0){trace("the selected object");trace(objSelected);trace("the term is hidden, skipping...")} 181return(null)} 182if(objSelected.length>1) 183objSelected=jQuery(objSelected[0]);var objTerm=getFilterElementData(objSelected);return(objTerm)} 184function termListSelectItems(objFilter,arrTerms){var objSelected=objFilter.find(".uc-selected");objSelected.removeClass("uc-selected");jQuery.each(arrTerms,function(index,term){var termID=getVal(term,"id");var objItem=objFilter.find("a.ue_taxonomy_item[data-id='"+termID+"']");if(objItem.length==0) 185return(!0);objItem.addClass("uc-selected")})} 186function ________GENERAL_FILTER_______________(){} 187function initGeneralFilter(objFilter){objFilter.on(g_vars.ACTION_FILTER_CHANGE,onGeneralFilterChange)} 188function onGeneralFilterChange(event,params){event.stopPropagation();var isRefresh=getVal(params,"refresh");var objFilter=jQuery(this);var filterType=objFilter.data("filtertype");if(filterType!="general"){trace(objFilter);throw new Error("Not a general filter on action: "+g_vars.ACTION_FILTER_CHANGE);return(!1)} 189if(isRefresh!==!0) 190setNoRefreshFilter(objFilter);var objGrid=objFilter.data("grid");if(!objGrid||objGrid.length==0){trace(objGrid);throw new Error("Wrong filter change");return(!1)} 191var filterRole=objFilter.data("role");if(filterRole=="main"){var isHideChildren=!1;var objData=getGeneralFilterData(objFilter);if(!objData) 192isHideChildren=!0;clearChildFilters(objGrid,objFilter,isHideChildren)} 193var isSkipAction=checkTriggerSkipAction(objFilter,objGrid);if(isSkipAction==!0) 194return(!1);if(g_showDebug==!0){trace("refresh grid - on general filter change");trace(objFilter)} 195refreshAjaxGrid(objGrid);return(!1)} 196function selectFilterItemsByTerms(objFilters,arrTerms){if(!objFilters||objFilters.length==0) 197return(!1);if(!arrTerms||arrTerms.length==0) 198return(!1);jQuery.each(objFilters,function(index,filter){var objFilter=jQuery(filter);selectFilterItems(objFilter,arrTerms)})} 199function selectFilterItems(objFilter,arrTerms){var type=getFilterType(objFilter);switch(type){case g_types.TERMS_LIST:termListSelectItems(objFilter,arrTerms);break;case g_types.GENERAL:objFilter.trigger("uc_select_items",arrTerms);break}} 200function getGeneralFilterData(objFilter){var filterDataObj={};objFilter.trigger(g_vars.EVENT_GET_FILTER_DATA,filterDataObj);var filterData=getVal(filterDataObj,"output");return(filterData)} 201function ________INIT_FILTERS_______________(){} 202function initTermsRelatedFilter(objFilter){objFilter.on(g_vars.ACTION_FILTER_UNSELECT_BY_KEY,termsFilterUnselectByKey)} 203function getFilterTaxIDs(objFilter,objIDs){var type=getFilterType(objFilter);if(type==g_types.SELECT) 204var objItems=objFilter.find(".uc-select-filter__option");else var objItems=objFilter.find(".ue_taxonomy_item");if(objItems.length==0) 205return(objIDs);jQuery.each(objItems,function(index,item){var objItem=jQuery(item);var taxID=objItem.data("id");if(!taxID) 206return(!0);objIDs[taxID]=!0});return(objIDs)} 207function getTermDsList(objIDs){var strIDs="";for(var id in objIDs){if(jQuery.isNumeric(id)==!1) 208continue;if(strIDs) 209strIDs+=",";strIDs+=id} 210return(strIDs)} 211function ________DATA_______________(){} 212function getMetaCompareUrlWord(compare){if(!compare||compare==="="||compare==="equals") 213return("");var map={"!=":"notequals",">":"greater","<":"less",">=":"greaterequal","<=":"lessequal","LIKE":"like","NOT LIKE":"notlike","IN":"in","NOT IN":"notin","BETWEEN":"between","NOT BETWEEN":"notbetween","EXISTS":"exists","NOT EXISTS":"notexists"};if(map[compare]) 214return(map[compare]);var lower=(""+compare).toLowerCase();for(var op in map){if(map[op]===lower) 215return(map[op]);} 216return("")} 217function getMetaSelectedPair(objMeta){var metaKey=getVal(objMeta,"meta_key");if(!metaKey) 218metaKey=getVal(objMeta,"slug");if(!metaKey) 219return("");var metaValue=getVal(objMeta,"meta_value");if(!metaValue) 220metaValue="";var metaPair=metaKey+g_options.urlkey_taxsap+metaValue;var compareWord=getMetaCompareUrlWord(getVal(objMeta,"compare"));if(compareWord) 221metaPair+=g_options.urlkey_taxsap+compareWord;return(metaPair)} 222function getMetaGroupedQueryKey(objItem,keyName,extraName){var key=objItem[keyName];if(!key||!extraName) 223return(key);var word=getMetaCompareUrlWord(objItem[extraName]);if(!word) 224return(key);return(key+"\x1e"+word)} 225function buildGroupedValuesQuery_handleItem(objItem,arrGrouped,keyName,valueName,extraName){var key=getMetaGroupedQueryKey(objItem,keyName,extraName);var value=objItem[valueName];if(!key) 226return(arrGrouped);if(value===null||typeof value==="undefined") 227value="";var objValues=getVal(arrGrouped,key);if(!objValues) 228objValues={};objValues[value]=!0;arrGrouped[key]=objValues;return(arrGrouped)} 229function buildGroupedValuesQuery_getStrValues(objValues,isGroup){var isDebug=!1;if(isDebug==!0){trace("get str values");trace(objValues);trace("is group:"+isGroup)} 230var strValues="";var moreThenOne=!1;var isEndSlugFound=!1;var isOrSlugFound=!1;for(var value in objValues){if(value==="__ucand__"){isEndSlugFound=!0;continue} 231if(value==="__ucor__"){isOrSlugFound=!0;continue}
232if(strValues){moreThenOne=!0;strValues+="."} 233strValues+=value} 234if(isDebug==!0){trace("more then one: "+moreThenOne);trace("is end found: "+isEndSlugFound)} 235var addAnd=(moreThenOne==!0&&isGroup!==!0||isEndSlugFound);if(isOrSlugFound===!0) 236addAnd=!1;if(addAnd) 237strValues+=".*";if(isDebug) 238trace("str values: "+strValues);return(strValues)} 239function buildGroupedValuesQuery(arrItems,keyName,valueName,extraName){var isDebug=!1;if(!keyName) 240keyName="taxonomy";if(!valueName) 241valueName="slug";var query="";var arrGrouped={};var arrGroupItems=[];if(isDebug==!0){trace("arr items");trace(arrItems)} 242jQuery.each(arrItems,function(index,objItem){if(jQuery.isArray(objItem)&&objItem.length!=0){if(objItem.length==1){arrGrouped=buildGroupedValuesQuery_handleItem(objItem[0],arrGrouped,keyName,valueName,extraName);return} 243var arrGroupMap={};jQuery.each(objItem,function(index,groupItem){arrGroupMap=buildGroupedValuesQuery_handleItem(groupItem,arrGroupMap,keyName,valueName,extraName)});arrGroupItems.push(arrGroupMap)}else{arrGrouped=buildGroupedValuesQuery_handleItem(objItem,arrGrouped,keyName,valueName,extraName)}});if(isDebug==!0){trace("first arr grouped");trace(arrGrouped)} 244if(jQuery.isEmptyObject(arrGrouped)&&jQuery.isEmptyObject(arrGroupItems)) 245return(null);if(isDebug==!0){trace("group items");trace(arrGroupItems)} 246var isMultipleGroups=(arrGroupItems.length>1);jQuery.each(arrGroupItems,function(index,objGroupKeys){jQuery.each(objGroupKeys,function(key,objValues){var strValues=buildGroupedValuesQuery_getStrValues(objValues,!0);var strAdd=strValues;if(isMultipleGroups===!0&&strValues.indexOf(".")!==-1){strAdd="|"+strValues+"|"} 247var objKeyValues=getVal(arrGrouped,key);if(!objKeyValues) 248objKeyValues={};objKeyValues[strAdd]=!0;arrGrouped[key]=objKeyValues})});if(isDebug==!0){trace("The result after grouping");trace(arrGrouped)} 249jQuery.each(arrGrouped,function(groupKey,objValues){var strValues=buildGroupedValuesQuery_getStrValues(objValues);var key=groupKey;var compareWord="";var sepIndex=groupKey.indexOf("\x1e");if(sepIndex!==-1){key=groupKey.substring(0,sepIndex);compareWord=groupKey.substring(sepIndex+1)} 250var strPart=key+g_options.urlkey_taxsap+strValues;if(compareWord) 251strPart+=g_options.urlkey_taxsap+compareWord;if(query) 252query+=";";query+=strPart});if(isDebug==!0){trace("query");trace(query)} 253return(query)} 254function buildTermsQuery(arrTerms){return buildGroupedValuesQuery(arrTerms,"taxonomy","slug")} 255function buildMetaQuery(arrMeta){var arrNormalized=[];jQuery.each(arrMeta,function(index,item){if(jQuery.isArray(item)){var arrGroup=[];jQuery.each(item,function(groupIndex,groupItem){if(!groupItem) 256return(!0);if(!groupItem.meta_key&&groupItem.slug) 257groupItem.meta_key=groupItem.slug;if(typeof groupItem.meta_value==="undefined"||groupItem.meta_value===null) 258groupItem.meta_value="";if(!groupItem.compare) 259groupItem.compare="=";arrGroup.push(groupItem)});arrNormalized.push(arrGroup)}else{if(!item) 260return(!0);if(!item.meta_key&&item.slug) 261item.meta_key=item.slug;if(typeof item.meta_value==="undefined"||item.meta_value===null) 262item.meta_value="";if(!item.compare) 263item.compare="=";arrNormalized.push(item)}});return buildGroupedValuesQuery(arrNormalized,"meta_key","meta_value","compare")} 264function getFilterElementData(objElement){var id=objElement.data("id");var title=objElement.data("title");var key=objElement.data("key");var type=objElement.data("type");if(!id&&!key) 265return(null);switch(type){case "taxonomy":default:var slug=objElement.data("slug");var taxonomy=objElement.data("taxonomy");var objTerm={"type":type,"id":id,"slug":slug,"taxonomy":taxonomy,"title":title,"key":key};return(objTerm);break;case "author":var username=objElement.data("username");var objAuthor={"type":type,"id":id,"username":username,"title":title,"key":key};return(objAuthor);break;case "meta":var slug=objElement.data("slug");var metaKey=objElement.data("metakey");var metaValue=objElement.data("metavalue");var compare=objElement.data("compare");if(!metaKey) 266metaKey=slug;if(!metaValue) 267metaValue="";if(!compare) 268compare="=";var objMeta={"type":type,"id":id,"slug":slug,"meta_key":metaKey,"meta_value":metaValue,"compare":compare,"title":title,"key":key};return(objMeta);break}} 269function ________AJAX_CACHE_________(){} 270function getAjaxCacheKeyFromUrl(ajaxUrl){var key=ajaxUrl;key=key.replace(g_urlAjax,"");key=key.replace(g_urlBase,"");key=replaceAll(key,"/","");key=replaceAll(key,"?","_");key=replaceAll(key,"&","_");key=replaceAll(key,"=","_");return(key)} 271function getAjaxCacheKey(ajaxUrl,action,objData){if(g_options.is_cache_enabled==!1) 272return(!1);if(jQuery.isEmptyObject(objData)==!1) 273return(!1);if(action) 274return(!1);var cacheKey=getAjaxCacheKeyFromUrl(ajaxUrl);if(!cacheKey) 275return(!1);return(cacheKey)} 276function cacheAjaxResponse(ajaxUrl,action,objData,response){var cacheKey=getAjaxCacheKey(ajaxUrl,action,objData);if(!cacheKey) 277return(!1);if(g_cache.length>100) 278return(!1);g_cache[cacheKey]=response} 279function ________AJAX_RESPONSE_______________(){} 280function operateAjax_setHtmlDebug(response,objGrid){var htmlDebug=getVal(response,"html_debug");if(!htmlDebug) 281return(!1);var gridParent=objGrid.parents("."+g_vars.class_widget_wrapper);var objDebug=gridParent.find(".uc-debug-query-wrapper");if(objDebug.length==0) 282return(!1);objDebug.replaceWith(htmlDebug)} 283function operateAjax_setHtmlGrid(response,objGrid,isLoadMore){if(g_showDebug==!0){trace("set html grid, response: ");trace(response);trace("obj grid:");trace(objGrid)} 284if(objGrid.length==0) 285return(!1);if(objGrid.data(g_vars.GRID_DATA_SKIP_HTML)===!0){if(g_showDebug==!0) 286trace("skip set html");
286objGrid.data(g_vars.GRID_DATA_SKIP_HTML,!1);return(!1)} 287var objItemsWrapper=getGridItemsWrapper(objGrid);var objItemsWrapper2=getGridItemsWrapper(objGrid,!0);if(g_showDebug==!0){trace("items wrapper 1: ");trace(objItemsWrapper);trace("items wrapper 2:");trace(objItemsWrapper2)} 288if(!objItemsWrapper||objItemsWrapper.length==0) 289throw new Error("Missing items wrapper: .uc-items-wrapper");operateAjax_setHtmlDebug(response,objGrid);if(response.hasOwnProperty("html_items")==!1) 290return(!1);var htmlItems=getVal(response,"html_items");var htmlItems2=null;if(objItemsWrapper2) 291htmlItems2=getVal(response,"html_items2");var gridID=objGrid.attr("id");htmlItems=replaceAll(htmlItems,"%uc_widget_id%",gridID);if(htmlItems2) 292htmlItems2=replaceAll(htmlItems2,"%uc_widget_id%",gridID);var isCustomRefresh=objGrid.data("custom-sethtml");var objEmptyMessage=getGridEmptyMessage(objGrid);if(objEmptyMessage){if(htmlItems=="") 293objEmptyMessage.show();else objEmptyMessage.hide()} 294var queryDataOriginal=getVal(response,"query_data");var queryIDs=getVal(response,"query_ids");var queryData=jQuery.extend({},queryDataOriginal);if(isLoadMore==!0){var currentQueryData=objGrid.attr("querydata");var objCurrentData=jQuery.parseJSON(currentQueryData);var currentNumPosts=getVal(objCurrentData,"count_posts");queryData.count_posts+=currentNumPosts;var currentQueryIDs=objGrid.data("postids");if(queryIDs&¤tQueryIDs) 295queryIDs=currentQueryIDs+","+queryIDs} 296if(queryData){objGrid.removeAttr("querydata");var jsonData=JSON.stringify(queryData);objGrid.attr("querydata",jsonData);objGrid.data("querydata",queryData)} 297objGrid.removeAttr("data-postids");objGrid.attr("data-postids",queryIDs);objGrid.data("postids",queryIDs);if(isCustomRefresh==!0){objGrid.trigger(g_vars.EVENT_SET_HTML_ITEMS,[htmlItems,isLoadMore,htmlItems2]);return(!1)} 298if(!htmlItems2) 299htmlItems2="";if(isLoadMore===!0){if(g_showDebug==!0){trace("append load more")} 300objItemsWrapper.append(htmlItems);if(objItemsWrapper) 301objItemsWrapper.append(htmlItems2);}else{objItemsWrapper.html(htmlItems);if(objItemsWrapper2&&objItemsWrapper2.length) 302objItemsWrapper2.html(htmlItems2);} 303return(!0)} 304function operateAjax_setHtmlSyngGrids(response,objGrid,isLoadMore){var objSyncWidgetsResponse=getVal(response,"html_sync_widgets");if(g_showDebug==!0){trace("set html sync grids");trace(objSyncWidgetsResponse)} 305var queryData=getVal(response,"query_data");if(!objSyncWidgetsResponse){if(g_showDebug==!0){trace("no sync widgets response")} 306return(!1)} 307var group=objGrid.data("filtergroup");jQuery.each(objSyncWidgetsResponse,function(elementID,childResponse){var objGridWidget=getGridFromElementorElementID(elementID,group);if(!objGridWidget){if(g_showDebug==!0){trace("no grid widget found: "+elementID);getGridFromElementorElementID(elementID,group,!0)} 308return(!0)} 309if(g_showDebug==!0){trace("set sync grid!");trace(objGridWidget);trace(childResponse)} 310objGridWidget.removeClass(g_vars.CLASS_REFRESH_SOON);childResponse.query_data=queryData;operateAjax_setHtmlGrid(childResponse,objGridWidget,isLoadMore);objGridWidget.trigger(g_vars.EVENT_AJAX_REFRESHED);g_objBody.trigger(g_vars.EVENT_AJAX_REFRESHED_BODY,[objGridWidget])})} 311function operateAjax_setHtmlWidgets(response,objFilters){if(!objFilters) 312return(!1);if(objFilters.length==0) 313return(!1);var objHtmlWidgets=getVal(response,"html_widgets");if(!objHtmlWidgets) 314return(!1);if(objHtmlWidgets.length==0) 315return(!1);var objHtmlDebug=getVal(response,"html_widgets_debug");jQuery.each(objFilters,function(index,objFilter){var widgetID=getElementWidgetID(objFilter);if(!widgetID) 316return(!0);var html=getVal(objHtmlWidgets,widgetID);if(!html) 317return(!0);var objHtml=jQuery(html);var htmlInner=objHtml.html();var filterClassName=objHtml.attr("class");filterClassName+=" "+g_vars.CLASS_FILTER_INITED;objFilter.attr("class",filterClassName);objFilter.removeClass(g_vars.CLASS_INITING);objFilter.removeClass(g_vars.CLASS_REFRESH_SOON);objFilter.html(htmlInner);var htmlDebug=null;if(objHtmlDebug) 318var htmlDebug=getVal(objHtmlDebug,widgetID);if(htmlDebug){var objParent=objFilter.parents("."+g_vars.class_widget_wrapper);var objDebug=objParent.find(".uc-div-ajax-debug");if(objDebug.length) 319objDebug.replaceWith(htmlDebug);} 320objFilter.trigger(g_vars.EVENT_FILTER_RELOADED)})} 321function scrollToGridTop(objGrid){var gapTop=150;var gridOffset=objGrid.offset().top;var gridTop=gridOffset-gapTop;if(gridTop<0) 322gridTop=0;var currentPos=jQuery(window).scrollTop();if(currentPos<=gridOffset) 323return(!1);window.scrollTo({top:gridTop,behavior:'smooth'})} 324function operateAjaxRefreshResponse(response,objGrid,objFilters,isLoadMore,isNoScroll){var isGridRefreshed=operateAjax_setHtmlGrid(response,objGrid,isLoadMore);operateAjax_setHtmlWidgets(response,objFilters);operateAjax_setHtmlSyngGrids(response,objGrid,isLoadMore);
324objGrid.trigger(g_vars.EVENT_AJAX_REFRESHED,[{isLoadMore:isLoadMore}]);g_objBody.trigger(g_vars.EVENT_AJAX_REFRESHED_BODY,[objGrid]);if(isLoadMore==!1&&isGridRefreshed==!0&&isNoScroll!==!0){setTimeout(function(){scrollToGridTop(objGrid)},200)}} 325function replaceAll(text,from,to){return text.split(from).join(to)};function getResponseFromAjaxCache(ajaxUrl,action,objData){var cacheKey=getAjaxCacheKey(ajaxUrl,action,objData);if(!cacheKey) 326return(!1);var response=getVal(g_cache,cacheKey);return(response)} 327function ________AJAX_______________(){} 328function setNoRefreshFilter(objFilter){objFilter.data("uc_norefresh",!0)} 329function showAjaxError(message){alert(message)} 330function getDebugObject(){var objGrid=g_lastGridAjaxCall;if(!objGrid) 331return(null);var objDebug=objGrid.find("."+g_vars.CLASS_DIV_DEBUG);if(objDebug.length) 332return(objDebug);objGrid.after("<div class='"+g_vars.CLASS_DIV_DEBUG+"' style='padding:10px;display:none;background-color:#D8FCC6'></div>");var objDebug=jQuery("body").find("."+g_vars.CLASS_DIV_DEBUG);return(objDebug)} 333function showAjaxDebug(str){trace("Ajax Error! - Check the debug");str=jQuery.trim(str);if(!str||str.length==0) 334return(!1);var objStr=jQuery(str);if(objStr.find("header").length||objStr.find("body").length){str="Wrong ajax response!"} 335var objDebug=getDebugObject();if(!objDebug||objDebug.length==0){alert(str);throw new Error("debug not found")} 336objDebug.show();objDebug.html(str)} 337function ajaxRequest(ajaxUrl,action,objData,onSuccess){if(g_debugInitMode===!0){trace("debug init mode - skip request");return(!1)} 338if(g_showDebug==!0){trace("ajax request");trace(ajaxUrl)} 339if(!objData) 340var objData={};if(typeof objData!="object") 341throw new Error("wrong ajax param");var responseFromCache=getResponseFromAjaxCache(ajaxUrl,action,objData);if(responseFromCache){setTimeout(function(){onSuccess(responseFromCache)},300);return(!1)} 342var ajaxData={};ajaxData.action="unlimitedelements_ajax_action";ajaxData.client_action=action;var ajaxtype="get";if(jQuery.isEmptyObject(objData)==!1){ajaxData.data=objData;ajaxtype="post"} 343var ajaxOptions={type:ajaxtype,url:ajaxUrl,success:function(response){if(!response){showAjaxError("Empty ajax response!");return(!1)} 344if(typeof response!="object"){try{response=jQuery.parseJSON(response)}catch(e){showAjaxDebug(response);showAjaxError("Ajax Error!!! not ajax response");return(!1)}} 345if(response==-1){showAjaxError("ajax error!!!");return(!1)} 346if(response==0){showAjaxError("ajax error, action: <b>"+action+"</b> not found");return(!1)} 347if(response.success==undefined){showAjaxError("The 'success' param is a must!");return(!1)} 348if(response.success==!1){showAjaxError(response.message);return(!1)} 349cacheAjaxResponse(ajaxUrl,action,objData,response);if(typeof onSuccess=="function"){onSuccess(response)}},error:function(jqXHR,textStatus,errorThrown){switch(textStatus){case "parsererror":case "error":showAjaxDebug(jqXHR.responseText);break}}} 350if(ajaxtype=="post"){ajaxOptions.dataType='json';ajaxOptions.data=ajaxData} 351var handle=jQuery.ajax(ajaxOptions);return(handle)} 352function getGridItemsWrapper(objGrid,isSecond){var classItems="uc-items-wrapper";if(isSecond==!0) 353classItems="uc-items-wrapper2";if(objGrid.hasClass(classItems)) 354return(objGrid);var objItemsWrapper=objGrid.find("."+classItems);if(objItemsWrapper.length==0&&isSecond==!1) 355throw new Error("Missing items wrapper - with class: uc-items-wrapper");if(objItemsWrapper.length==0) 356return(null);return(objItemsWrapper)} 357function showAjaxLoader(objElement){objElement.addClass("uc-ajax-loading")} 358function hideAjaxLoader(objElement){objElement.removeClass("uc-ajax-loading")} 359function showMultipleAjaxLoaders(objElements,isShow){if(!objElements) 360return(!1);if(objElements.length==0) 361return(!1);jQuery.each(objElements,function(index,objElement){objElement=jQuery(objElement);if(isShow==!0){showAjaxLoader(objElement)}else hideAjaxLoader(objElement)})} 362function refreshAjaxGrid(objGrid,refreshType){var isLoadMore=(refreshType==g_vars.REFRESH_MODE_LOADMORE);var isFiltersInit=(refreshType=="filters"||refreshType=="filters_children");var isLoadMoreMode=(refreshType==g_vars.REFRESH_MODE_LOADMORE||refreshType==g_vars.REFRESH_MODE_PAGINATION);var objFilters=objGrid.data("filters");if(!objFilters) 363return(!1);if(objFilters.length==0) 364return(!1);if(objGrid.hasClass(g_vars.CLASS_GRID_NOREFRESH)) 365return(!1);var params={};if(refreshType=="filters_children") 366params.filters_init_type="children";params.refresh_type=refreshType;var objAjaxOptions=getGridAjaxOptions(objFilters,objGrid,isFiltersInit,isLoadMoreMode,params);if(!objAjaxOptions){trace("ajax options are null");return(!1)}
367var ajaxUrl=objAjaxOptions.ajax_url;var urlReplace=objAjaxOptions.url_replace;var arrTerms=objAjaxOptions.terms;if(g_vars.DEBUG_AJAX_OPTIONS==!0){trace("DEBUG AJAX OPTIONS");trace(objAjaxOptions);return(!1)} 368var behave=objGrid.data("filterbehave");var isSetUrl=(behave=="mixed"||behave=="mixed_back");if(isFiltersInit==!1&&isSetUrl===!0){try{if(behave=="mixed_back"){var gridID=objGrid.attr("id");var isStateEmpty=jQuery.isEmptyObject(history.state);var objState={"ucaction":"change","ajaxurl":ajaxUrl,"gridid":gridID,selected_terms:arrTerms};if(isStateEmpty){var ajaxUrlInitial=objGrid.data("initajaxurl");objState.ajaxurl=ajaxUrlInitial;history.replaceState(objState,null,urlReplace)} 369history.pushState(objState,null,urlReplace)}else history.replaceState({},null,urlReplace)}catch(error){trace("history push state error");trace(error)}} 370initGrid_setActiveFiltersData(objGrid,objAjaxOptions);doGridAjaxRequest(ajaxUrl,objGrid,objFilters,isLoadMore,isFiltersInit)} 371function doGridAjaxRequest(ajaxUrl,objGrid,objFilters,isLoadMore,isFiltersInit){var objEmptyMessage=getGridEmptyMessage(objGrid);if(isLoadMore!==!0&&isFiltersInit!==!0){showAjaxLoader(objGrid);if(objEmptyMessage) 372showAjaxLoader(objEmptyMessage);} 373var objFiltersToReload=objFilters.filter(function(objFilter){return objFilter.hasClass(g_vars.CLASS_REFRESH_SOON)});showMultipleAjaxLoaders(objFiltersToReload,!0);if(g_lastSyncGrids&&isLoadMore!==!0){showMultipleAjaxLoaders(g_lastSyncGrids,!0)} 374g_lastGridAjaxCall=objGrid;objGrid.trigger(g_vars.EVENT_BEFORE_REFRESH);var lastAjaxHandle=objGrid.data("last_ajax_refresh_handle");if(lastAjaxHandle){lastAjaxHandle.abort()} 375if(g_debugBeforeRefreshMode==!0){alert("Debug before refresh - please turn if off");return(!1)} 376var ajaxHandle=ajaxRequest(ajaxUrl,null,null,function(response){if(isLoadMore!==!0){hideAjaxLoader(objGrid);if(objEmptyMessage) 377hideAjaxLoader(objEmptyMessage);} 378showMultipleAjaxLoaders(objFilters,!1);if(g_lastSyncGrids) 379showMultipleAjaxLoaders(g_lastSyncGrids,!1);operateAjaxRefreshResponse(response,objGrid,objFilters,isLoadMore);onAfterGridRefresh(objGrid)});objGrid.data("last_ajax_refresh_handle",ajaxHandle)} 380function onAfterGridRefresh(objGrid){var isInitRefesh=objGrid.data("init_refresh_child_filters");if(isInitRefesh===!0){objGrid.removeData("init_refresh_child_filters");var objFilters=objGrid.data("filters");var arrSelectedMain=getSelectedFilters(objFilters,"main");if(arrSelectedMain.length) 381refreshAjaxGrid(objGrid,"filters_children");}} 382function ________STATE_RELATED_______________(){} 383function changeToHistoryState(state){if(g_showDebug==!0){trace("change to history");trace(state)} 384var ajaxUrl=getVal(state,"ajaxurl");var gridID=getVal(state,"gridid");var arrTerms=getVal(state,"selected_terms");if(!gridID) 385return(!1);if(!ajaxUrl) 386return(!1);var objGrid=jQuery("#"+gridID);var objFilters=objGrid.data("filters");if(!objFilters) 387return(!1);selectFilterItemsByTerms(objFilters,arrTerms);var responseFromCache=getResponseFromAjaxCache(ajaxUrl);if(!responseFromCache){doGridAjaxRequest(ajaxUrl,objGrid,objFilters);return(!1)} 388operateAjaxRefreshResponse(responseFromCache,objGrid,objFilters,!1,!0)} 389function onPopState(){if(!history.state) 390return(!0);var action=getVal(history.state,"ucaction");if(!action) 391return(!0);switch(action){case "change":changeToHistoryState(history.state);break;default:throw new Error("Wrong history action: "+action);break}} 392function ________RUN_______________(){} 393function getGridUrlFiltersString(objGrid){var objAjaxOptions=getGridAjaxOptions_simple(objGrid);if(!objAjaxOptions) 394return("");var strFilters=getVal(objAjaxOptions,"filters_string");return(strFilters)} 395function getGridAjaxOptions_simple(objGrid){var objFilters=objGrid.data("filters");if(!objFilters) 396return(null);var objAjaxOptions=getGridAjaxOptions(objFilters,objGrid,!1,!1,{getonly:!0});if(!objAjaxOptions) 397return(null);return(objAjaxOptions)} 398function isElementHiddenByDisplayNone(objElement){var element=objElement[0];var hidden=window.getComputedStyle(element).display=="none";return hidden};function getObjOperatorTerm(operator,dataTerms){var slug=(operator=="and")?"__ucand__":"__uc
398or__";var firstTerm=dataTerms[0];var objOperatorTerm={taxonomy:firstTerm.taxonomy,slug:slug,id:null};return(objOperatorTerm)} 399function getObjOperatorMeta(operator,dataMeta){var opValue=(operator=="and")?"__ucand__":"__ucor__";var firstMeta=dataMeta[0];var metaKey=getVal(firstMeta,"meta_key");if(!metaKey) 400metaKey=getVal(firstMeta,"slug");return({type:"meta",meta_key:metaKey,meta_value:opValue,compare:getVal(firstMeta,"compare","="),slug:opValue,id:null})} 401function getGridAjaxOptions(objFilters,objGrid,isFiltersInitMode,isLoadMoreMode,params){if(!isLoadMoreMode) 402var isLoadMoreMode=!1;if(g_showDebug){trace("getGridAjaxOptions");trace("Filters:");trace(objFilters);trace("grid:");trace(objGrid);trace("is init: "+isFiltersInitMode);trace("params: ");trace(params)} 403var objVisibleFilters=objFilters.filter(function(objFilter){var objParent=getFilterWrapper(objFilter);var isHidden=isElementHiddenByDisplayNone(objParent);return(!isHidden)});if(objVisibleFilters.length<objFilters.length){if(objVisibleFilters.length==0){if(g_showDebug) 404trace("no visible filters");var objFilters=[]}else{var objFirstFilter=jQuery(objVisibleFilters[0]);var visibleFilterType=getFilterType(objFirstFilter,!0);if(visibleFilterType!=g_types.GENERAL_MOBILE_DRAWER){var objFilters=objVisibleFilters;if(g_showDebug){trace("Visible Filters: ");trace(objFilters)}}}} 405if(!objFilters||objFilters.length==0) 406return(null);var urlReplace=g_urlBase;var urlAjax=g_urlBase;var strRefreshIDs="";var isReplaceMode=!1;var page=null;var offset=null;var numItems=null;var arrTerms=[];var objTaxIDs={};var objAuthorIDs={};var strSelectedTerms="";var strSelectedAuthors="";var strSelectedMeta="";var search="";var price_from,price_to;var arrAuthors=[];var arrMeta=[];var orderby=null;var orderby_metaname=null;var orderby_metatype=null;var orderdir=null;var title_start=null;var addSyncedGrids=!0;var arrAllFiltersData;var arrFiltersForInit=[];var urlAddFromFilters="";var isPaginationClicked=!1;var isGetUrlOnly=getVal(params,"getonly");var initModeType=getVal(params,"filters_init_type");var initModeChildrens=!1;if(isFiltersInitMode==!0&&initModeType=="children") 407initModeChildrens=!0;var wasInitMode=objGrid.data("was_init_mode");var arrFilterIDs={};var advancedSearchFilterID;var refreshType=getVal(params,"refresh_type");if(refreshType==g_vars.REFRESH_MODE_PAGINATION) 408isPaginationClicked=!0;var child_auto,childAutoTaxonomy,childAutoSlug,childAutoString="";jQuery.each(objFilters,function(index,objFilter){var id=objFilter.attr("id");if(arrFilterIDs.hasOwnProperty(id)==!0){trace("problematic filter: ");trace(objFilter);trace("original filter found: ");trace(arrFilterIDs[id]);trace("filters list: ");trace(objFilters);throw new Error("Duplicate Filter ID found: "+id)} 409arrFilterIDs[id]=objFilter;var isNoRefresh=objFilter.data("uc_norefresh");var filterRole=objFilter.data("role");var type=getFilterType(objFilter);if(g_showDebug==!0){trace("filter: "+type+", role: "+filterRole);trace(objFilter)} 410var urlAdd=objFilter.attr(g_vars.ATTRIBUTE_URLADD);if(urlAdd) 411urlAddFromFilters=addUrlParam(urlAddFromFilters,urlAdd);switch(type){case g_types.PAGINATION:var isClicked=objFilter.hasClass(g_vars.CLASS_CLICKED);if(isClicked==!0||isFiltersInitMode==!0){var paginationData=getPaginationSelectedData(objFilter);var paginationPage=getVal(paginationData,"page");if(paginationPage) 412page=paginationPage;if(isFiltersInitMode==!0&&!page&&g_vars.ucpage_url) 413page=g_vars.ucpage_url;if(g_showDebug){trace("pagination data");trace(paginationData)} 414objFilter.removeClass(g_vars.CLASS_CLICKED)} 415break;case g_types.LOADMORE:var isLoadMoreBeforeGrid=!1;if(isFiltersInitMode==!0){var offsetLoadMore=objFilter.offset();var offsetGrid=objGrid.offset();if(offsetLoadMore.top<offsetGrid.top){isLoadMoreBeforeGrid=!0;if(g_showDebug==!0) 416trace("Loadmore before grid - process in init mode");}} 417if(isFiltersInitMode==!0&&isLoadMoreBeforeGrid==!1) 418return(!0);var isClicked=objFilter.hasClass(g_vars.CLASS_CLICKED);if(isClicked==!0){var loadMoreData=getLoadMoreUrlData(objFilter);offset=loadMoreData.offset;numItems=loadMoreData.numItems;var isSingleGrid=loadMoreData.singlegrid;if(isSingleGrid==!0) 419addSyncedGrids=!1;if(!offset) 420urlAjax=null;objFilter.removeClass(g_vars.CLASS_CLICKED)} 421break;case g_types.TERMS_LIST:case g_types.SELECT:var objTerm=getTermsListSelectedTerm(objFilter);
421var filterSource=objFilter.data("filtersource");if(objTerm){if(isFiltersInitMode==!1){if(filterSource=="authors") 422arrAuthors.push(objTerm);else if(filterSource=="meta") 423arrMeta.push(objTerm);else arrTerms.push(objTerm)}else{var isInit=objFilter.data("initafter");if(initModeChildrens==!0&&filterRole!="child") 424arrTerms.push(objTerm);else if(isInit!=!0){if(filterSource=="authors") 425arrAuthors.push(objTerm);else if(filterSource=="meta") 426arrMeta.push(objTerm);else arrTerms.push(objTerm)} 427var termID=objTerm.id;if(filterSource=="authors"){if(strSelectedAuthors) 428strSelectedAuthors+=",";strSelectedAuthors+=termID}else if(filterSource=="meta"){var metaPair=getMetaSelectedPair(objTerm);if(metaPair){if(strSelectedMeta) 429strSelectedMeta+=",";strSelectedMeta+=metaPair}}else{if(strSelectedTerms) 430strSelectedTerms+=",";strSelectedTerms+=termID}}} 431var modeReplace=objFilter.data("replace-mode");if(modeReplace===!0) 432isReplaceMode=!0;if(isLoadMoreMode==!0) 433isNoRefresh=!0;if(g_showDebug==!0){trace("Selected Term: ");trace(objTerm)} 434break;case g_types.SUMMARY:isNoRefresh=!0;break;case g_types.SEARCH:isNoRefresh=!0;var objInput=objFilter.find("input");search=objInput.val();search=search.trim();var isAdvancedSearch=objFilter.data("advancedsearch");if(isAdvancedSearch==!0) 435advancedSearchFilterID=getElementWidgetID(objFilter);break;case g_types.GENERAL:var generalType=objFilter.data("generaltype");if(generalType==g_types.GENERAL_MOBILE_DRAWER) 436return(!0);var generalIsNoRefresh=objFilter.data("norefresh");if(generalIsNoRefresh===!0) 437isNoRefresh=!0;var filterData=getGeneralFilterData(objFilter);var dataTerms=getVal(filterData,"terms");if(dataTerms&&dataTerms.length){var isOperatoeAdded=!1;if(filterRole=="main"){var operator=getVal(filterData,"operator");if(operator==="and"||operator==="or"){var objOperatorTerm=getObjOperatorTerm(operator,dataTerms);dataTerms.push(objOperatorTerm);isOperatoeAdded=!0}} 438if(dataTerms.length==1){arrTerms.push(dataTerms[0])} 439if(dataTerms.length>1){var operator=getVal(filterData,"operator");if(isOperatoeAdded==!1){if(operator==="and"||operator==="or"){var objOperatorTerm=getObjOperatorTerm(operator,dataTerms);dataTerms.push(objOperatorTerm)}} 440arrTerms.push(dataTerms)} 441if(isFiltersInitMode==!0&&dataTerms&&dataTerms.length){var arrTermsForSelect=[];if(jQuery.isArray(arrTerms)) 442arrTermsForSelect=arrTerms.flat();jQuery.each(arrTermsForSelect,function(index,term){var termID=getVal(term,"id");if(!termID) 443return(!0);if(strSelectedTerms) 444strSelectedTerms+=",";strSelectedTerms+=termID})}} 445var dataAuthors=getVal(filterData,"authors");if(dataAuthors&&dataAuthors.length){jQuery.each(dataAuthors,function(index,author){arrAuthors.push(author)});if(isFiltersInitMode==!0){jQuery.each(dataAuthors,function(index,author){var authorID=getVal(author,"id");if(!authorID) 446return(!0);if(strSelectedAuthors) 447strSelectedAuthors+=",";strSelectedAuthors+=authorID})}} 448var dataMeta=getVal(filterData,"meta");if(dataMeta&&dataMeta.length){var isMetaOperatorAdded=!1;if(filterRole=="main"){var metaOperator=getVal(filterData,"operator");if(metaOperator==="and"||metaOperator==="or"){dataMeta.push(getObjOperatorMeta(metaOperator,dataMeta));isMetaOperatorAdded=!0}} 449if(dataMeta.length==1){arrMeta.push(dataMeta[0])} 450if(dataMeta.length>1){var metaOperator=getVal(filterData,"operator");if(isMetaOperatorAdded==!1){if(metaOperator==="and"||metaOperator==="or") 451dataMeta.push(getObjOperatorMeta(metaOperator,dataMeta));} 452arrMeta.push(dataMeta)} 453if(isFiltersInitMode==!0){jQuery.each(dataMeta,function(index,metaItem){var metaValue=getVal(metaItem,"meta_value");if(metaValue==="__ucand__"||metaValue==="__ucor__") 454return(!0);var metaPair=getMetaSelectedPair(metaItem);if(!metaPair) 455return(!0);if(strSelectedMeta) 456strSelectedMeta+=",";strSelectedMeta+=metaPair})}} 457if(g_showDebug==!0){trace("Filter Data:");trace(filterData)} 458if(generalType=="price"&&isFiltersInitMode==!1){var priceFromArg=getVal(filterData,"price_from");var priceToArg=getVal(filterData,"price_to");if(priceFromArg) 459price_from=roundToOneDecimal(priceFromArg);if(priceToArg) 460price_to=roundToOneDecimal(priceToArg);} 461var titleStartArg=getVal(filterData,"title_start");if(titleStartArg) 462title_start=titleStartArg;var argOrderby=getVal(filterData,"orderby");if(argOrderby&&argOrderby!="default"){orderby=argOrderby;orderby_metaname=getVal(filterData,"metaname");orderby_metatype=getVal(filterData,"metatype")} 463var argOrderDir=getVal(filterData,"orderdir");
463if(argOrderDir&&argOrderDir!="default") 464orderdir=argOrderDir;if(isLoadMoreMode==!0) 465isNoRefresh=!0;break;default:throw new Error("Unknown filter type: "+type);break} 466if(isFiltersInitMode==!0){var isInit=objFilter.data("initafter");if(isInit!=!0){isNoRefresh=!0} 467if(initModeChildrens==!1&&filterRole=="child") 468isNoRefresh=!0;if(initModeChildrens==!0&&filterRole!="child") 469isNoRefresh=!0;if(isNoRefresh==!1){arrFiltersForInit.push(objFilter)}} 470var isFilterHidden=objFilter.hasClass(g_vars.CLASS_HIDDEN);if(isFilterHidden==!0) 471isNoRefresh=!0;objFilter.data("uc_norefresh",!1);var isMainFilter=(filterRole=="main");var isTermChild=(filterRole=="term_child");var isRefresh=!0;if(isFiltersInitMode==!1&&(isMainFilter===!0||isTermChild==!0)) 472isRefresh=!1;if(isNoRefresh===!0) 473isRefresh=!1;if(g_showDebug==!0){trace("Filter Refresh: "+isRefresh);if(isRefresh==!0){trace("isFiltersInitMode: "+isFiltersInitMode);trace("isMainFilter: "+isMainFilter);trace("isTermChild: "+isTermChild);trace("isNoRefresh: "+isNoRefresh)}} 474if(isRefresh==!0){var filterWidgetID=getElementWidgetID(objFilter);var filterSource=objFilter.data("filtersource");if(filterSource=="authors"&&isFiltersInitMode==!0){objAuthorIDs=getFilterTaxIDs(objFilter,objAuthorIDs)}else{objTaxIDs=getFilterTaxIDs(objFilter,objTaxIDs)} 475if(strRefreshIDs) 476strRefreshIDs+=",";strRefreshIDs+=filterWidgetID;if(!isGetUrlOnly) 477objFilter.addClass(g_vars.CLASS_REFRESH_SOON);} 478if(filterRole=="main"){var objTerm=getTermsListSelectedTerm(objFilter);if(objTerm&&objTerm!=null){childAutoTaxonomy=objTerm.taxonomy;childAutoSlug=objTerm.slug}} 479if(filterRole=="child_auto"&&arrTerms.length){child_auto=!0;if(childAutoTaxonomy&&childAutoSlug){childAutoString="&ucmainterm="+childAutoTaxonomy+":"+childAutoSlug}}});var urlAddition_filtersTest="";var strTaxIDs=getTermDsList(objTaxIDs);var strAuthorIDs=getTermDsList(objAuthorIDs);if(isFiltersInitMode==!0){if(!strTaxIDs&&!strAuthorIDs&&arrFiltersForInit.length==0) 480urlAjax=null;else{if(urlAddition_filtersTest) 481urlAddition_filtersTest+="&";urlAddition_filtersTest+="modeinit=true"}} 482if(strTaxIDs&&(search||arrTerms.length||isFiltersInitMode==!0||wasInitMode===!0)){if(urlAddition_filtersTest) 483urlAddition_filtersTest+="&";urlAddition_filtersTest+="testtermids="+strTaxIDs} 484if(strAuthorIDs&&(search||arrAuthors.length||isFiltersInitMode==!0||wasInitMode===!0)){if(urlAddition_filtersTest) 485urlAddition_filtersTest+="&";urlAddition_filtersTest+="testauthorids="+strAuthorIDs} 486g_lastSyncGrids=null;if(urlAjax==null) 487return(null);var dataLayout=getElementLayoutData(objGrid,addSyncedGrids);var widgetID=dataLayout.widgetid;var layoutID=dataLayout.layoutid;if(addSyncedGrids==!1){var syncedWidgetIDs=!1;g_lastSyncGrids=null}else{var syncedWidgetIDs=getVal(dataLayout,"synced_widgetids");g_lastSyncGrids=getVal(dataLayout,"synced_grids")} 488var urlFilterString="";var urlAddition="ucfrontajaxaction=getfiltersdata&layoutid="+layoutID+"&elid="+widgetID;urlAjax=addUrlParam(urlAjax,urlAddition);if(g_isGutenberg==!0) 489urlAjax=addUrlParam(urlAjax,"platform=gutenberg");if(syncedWidgetIDs) 490urlAjax+="&syncelids="+syncedWidgetIDs;if(urlAddition_filtersTest) 491urlAjax=addUrlParam(urlAjax,urlAddition_filtersTest);if(price_from){urlAjax+="&ucpricefrom="+price_from;if(g_showDebug==!0){trace("add price from");trace(urlAjax)}} 492if(price_to){urlAjax+="&ucpriceto="+price_to;if(g_showDebug==!0){trace("add price to");trace(urlAjax)}} 493if(title_start){if(g_showDebug==!0) 494trace("add title start: "+title_start);urlAjax+="&titlestart="+title_start;urlReplace=addUrlParam(urlReplace,"titlestart="+title_start)} 495if(page){urlAjax+="&ucpage="+page;urlReplace=addUrlParam(urlReplace,"ucpage="+page)} 496if(numItems) 497urlAjax+="&uccount="+numItems;if(arrTerms.length){var strTerms=buildTermsQuery(arrTerms);if(strTerms){urlAjax+="&ucterms="+strTerms;urlReplace=addUrlParam(urlReplace,"ucterms="+strTerms);urlFilterString=addUrlParam(urlFilterString,"ucterms="+strTerms)}} 498if(arrAuthors.length){var strAuthors="";jQuery.each(arrAuthors,function(index,author){var authorID=getVal(author,"id");if(authorID){if(strAuthors) 499strAuthors+=",";strAuthors+=authorID}});if(strAuthors){urlAjax+="&ucauthors="+strAuthors;urlReplace=addUrlParam(urlReplace,"ucauthors="+strAuthors);urlFilterString=addUrlParam(urlFilterString,"ucauthors="+strAuthors)}} 500if(arrMeta.length){var strMeta=buildMetaQuery(arrMeta);if(strMeta){urlAjax+="&ucmeta="+strMeta;urlReplace=addUrlParam(urlReplace,"ucmeta="+strMeta);urlFilterString=addUrlParam(urlFilterString,"ucmeta="+strMeta)}} 501if(child_auto&&arrTerms.length&&childAutoString!=""){urlAjax+=childAutoString} 502if(orderby){urlAjax+="&ucorderby="+orderby;urlReplace=addUrlParam(urlReplace,"ucorderby="+orderby);if(orderby_metaname){urlAjax+="&ucorderby_meta="+orderby_metaname;urlReplace=addUrlParam(urlReplace,"ucorderby_meta="+orderby_metaname)} 503if(orderby_metatype){urlAjax+="&ucorderby_metatype="+orderby_metatype;urlReplace=addUrlParam(urlReplace,"ucorderby_metatype="+orderby_metatype)}} 504if(orderdir){urlAjax+="&ucorderdir="+orderdir;urlReplace=addUrlParam(urlReplace,"ucorderdir="+orderdir)} 505if(isFiltersInitMode&&strSelectedTerms&&strSelectedTerms!=="undefined") 506urlAjax+="&ucinitselectedterms="+strSelectedTerms;if(isFiltersInitMode&&strSelectedAuthors&&strSelectedAuthors!=="undefined") 507urlAjax+="&ucinitselectedauthors="+strSelectedAuthors;if(isFiltersInitMode&&strSelectedMeta&&strSelectedMeta!=="undefined") 508urlAjax+="&ucinitselectedmeta="+strSelectedMeta;if(strRefreshIDs) 509urlAjax+="&addelids="+strRefreshIDs;if(isReplaceMode==!0) 510urlAjax+="&ucreplace=1";if(search){search=encodeURIComponent(search);urlAjax=addUrlParam(urlAjax,"ucs="+search);urlFilterString=addUrlParam(urlFilterString,"ucs="+search);urlReplace=addUrlParam(urlReplace,"ucs="+search);if(advancedSearchFilterID) 511urlAjax=addUrlParam(urlAjax,"ucsid="+advancedSearchFilterID);} 512if(objGrid.hasClass("uc-avoid-duplicates")){var objCurrentGrid=objGrid;if(isLoadMoreMode==!0) 513objCurrentGrid=null;var strExcludePostIDs=getExcludePostIDs(objCurrentGrid);if(strExcludePostIDs){urlAjax+="&ucexclude="+strExcludePostIDs;if(isLoadMoreMode==!0) 514offset=null;urlFilterString=addUrlParam(urlFilterString,"ucexclude="+strExcludePostIDs)}}
515if(offset){urlAjax+="&ucoffset="+offset;urlFilterString=addUrlParam(urlFilterString,"offset="+offset)} 516if(urlAddFromFilters){urlAjax+=addUrlParam(urlAjax,urlAddFromFilters);urlFilterString=addUrlParam(urlFilterString,urlAddFromFilters)} 517if(urlFilterString) 518urlFilterString=urlFilterString.substring(1);if(isFiltersInitMode==!0) 519objGrid.data("was_init_mode",!0);if(g_showDebug==!0){trace("url ajax: "+urlAjax)} 520var output={};output.ajax_url=urlAjax;output.url_replace=urlReplace;output.terms=arrTerms;output.meta=arrMeta;output.authors=arrAuthors;output.search=search;output.title_start=title_start;output.filters_string=urlFilterString;if(g_showDebug==!0){trace("output: ");trace(output);trace("End getGridAjaxOptions function")} 521return(output)} 522function getExcludePostIDs(objCurrentGrid){if(!objCurrentGrid) 523var objGrids=jQuery(".uc-avoid-duplicates");else var objGrids=jQuery(".uc-avoid-duplicates").not(objCurrentGrid);if(objGrids.length==0) 524return("");if(objGrids.length==1&&!objCurrentGrid){var queryData=objGrids.attr("querydata");var objQueryData=JSON.parse(queryData);var orderby=getVal(objQueryData,"orderby");if(orderby!="rand") 525return("");} 526var strIDs="";jQuery.each(objGrids,function(index,grid){var objGrid=jQuery(grid);var postIDs=objGrid.data("postids");if(!postIDs) 527return(!0);if(strIDs) 528strIDs+=",";strIDs+=postIDs});return(strIDs)} 529function ________INIT_AFTER_______________(){} 530function addFilterToInitAfter(objFilter,objGrid){var role=objFilter.data("role");var key="filters_init_after";if(role=="child") 531key="filters_init_after_children";objFilter.data("initafter",!0);var arrFiltersInitAfter=objGrid.data(key);if(!arrFiltersInitAfter) 532arrFiltersInitAfter=[];arrFiltersInitAfter.push(objFilter);if(g_showDebug==!0) 533trace("Add init after: "+key+" | "+objFilter.attr("id"));objGrid.data(key,arrFiltersInitAfter)} 534function isSpecialFilterInitAfter(objFilter,objGrid){var type=getFilterType(objFilter);if(type!=g_types.PAGINATION&&type!=g_types.LOADMORE) 535return(!1);var offsetPagination=objFilter.offset();var offsetGrid=objGrid.offset();if(offsetPagination.top<offsetGrid.top){if(g_showDebug==!0) 536trace("Set "+type+" to ajax init");return(!0)} 537return(!1)} 538function initGrid_setInitFiltersAfterLoad(objGrid){var objFilters=objGrid.data("filters");if(!objFilters) 539return(!1);if(objFilters.length==0) 540return(!1);var arrSelectedFilters=getSelectedFilters(objFilters);if(arrSelectedFilters.length==0) 541return(!1);jQuery.each(objFilters,function(index,filter){var objFilter=jQuery(filter);var type=getFilterType(objFilter);switch(type){case g_types.PAGINATION:case g_types.LOADMORE:return(!0);break} 542var isSelected=objFilter.hasClass("uc-has-selected");if(isSelected==!0) 543return(!0);var filterRole=objFilter.data("role");if(filterRole=="main") 544return(!0);var objGrid=objFilter.data("grid");addFilterToInitAfter(objFilter,objGrid)})} 545function ________INIT_______________(){} 546function initGlobals(){if(typeof g_strFiltersData==="undefined") 547return(!1);g_filtersData=JSON.parse(g_strFiltersData);if(jQuery.isEmptyObject(g_filtersData)){trace("filters error - filters data not found");return(!1)} 548g_urlBase=getVal(g_filtersData,"urlbase");g_urlAjax=getVal(g_filtersData,"urlajax");var platform=getVal(g_filtersData,"platform");if(platform=="gutenberg"){g_isGutenberg=!0;g_vars.class_widget_wrapper="ue-widget-root";g_vars.current_postid=getVal(g_filtersData,"postid")} 549var ucpage=getVal(g_filtersData,"ucpage");if(jQuery.isNumeric(ucpage)) 550g_vars.ucpage_url=ucpage;var objUrlKeys=getVal(g_filtersData,"urlkeys");var taxSap=getVal(objUrlKeys,"tax_sap");if(taxSap) 551g_options.urlkey_taxsap=taxSap;var isShowDebug=getVal(g_filtersData,"debug");if(isShowDebug==!0) 552g_showDebug=!0;if(g_showDebug==!0) 553trace("Show Filters Debug");if(!g_urlBase){trace("ue filters error - base url not inited");return(!1)} 554if(!g_urlAjax){trace("ue filters error - ajax url not inited");return(!1)} 555return(!0)} 556function initFilter(objFilter,type){var objGrid=getClosestGrid(objFilter);var error="Filter Parent not found! Please put the posts element on the page, and turn on 'Enable Post Filtering' option on it";if(!objGrid){var type=getFilterType(objFilter);if(type==g_types.PAGINATION) 557return(!1);showElementError(objFilter,error);return(null)} 558var isAjax=objGrid.data("ajax");if(isAjax==!1){showElementError(objFilter,error);return(!1)}
559objFilter.data("grid",objGrid);bindFilterToGrid(objGrid,objFilter);if(g_showDebug==!0) 560objFilter.attr("data-showdebug",!0);switch(type){case g_types.TERMS_LIST:initTermsRelatedFilter(objFilter);break;case g_types.SELECT:initSelectFilter(objFilter);initTermsRelatedFilter(objFilter);break;case g_types.GENERAL:initGeneralFilter(objFilter);break} 561objFilter.trigger(g_vars.EVENT_INIT_FILTER)} 562function initFilterEventsByTypes(arrTypes,arrGeneralTypes,objFilters,objParent){if(!arrTypes||arrTypes.length==0) 563return(!1);if(g_showDebug==!0){trace("Init filter events for parent");trace(arrTypes);trace(objParent)} 564for(var type in arrTypes){switch(type){case g_types.PAGINATION:objParent.on("click",".uc-filter-pagination a",onAjaxPaginationLinkClick);break;case g_types.LOADMORE:objParent.on("click",".uc-filter-load-more__link",onLoadMoreClick);break;case g_types.TERMS_LIST:objParent.on("click",".ue_taxonomy.uc-grid-filter a.ue_taxonomy_item",onTermsLinkClick);break;case g_types.SEARCH:break;case g_types.SELECT:objParent.on("change",".uc-select-filter__select",onTermsLinkClick);break;case g_types.SUMMARY:break;case g_types.GENERAL:break;default:trace("init by type - unrecognized type: "+type);break}} 565if(!arrGeneralTypes||arrGeneralTypes.length==0) 566return(!1);for(var generalType in arrGeneralTypes){var objFirstFilter=arrGeneralTypes[generalType];objFirstFilter.trigger(g_vars.EVENT_INIT_FILTER_TYPE,[objParent])}} 567function initFilters(objFilters){if(g_showDebug==!0){trace("init filters");if(objFilters.length==0) 568trace("no filters found");else trace(objFilters)} 569var numFilters=objFilters.length;if(numFilters==0) 570return(!1);var arrTypes={};var arrGeneralTypes={};var objParent=getFiltersParent(objFilters);jQuery.each(objFilters,function(index,filter){var objFilter=jQuery(filter);var type=getFilterType(objFilter);if(numFilters===1){objFilter.attr("data-singlefilter",!0)} 571initFilter(objFilter,type);arrTypes[type]=!0;if(type==g_types.GENERAL){var generalType=objFilter.data("generaltype");if(!generalType){trace(objFilter);throw new Error("The filter is missing generaltype data")} 572if(arrGeneralTypes.hasOwnProperty(generalType)==!1) 573arrGeneralTypes[generalType]=objFilter} 574objFilter.addClass(g_vars.CLASS_FILTER_INITED)});initFilterEventsByTypes(arrTypes,arrGeneralTypes,objFilters,objParent)} 575function initGrid_setAjaxUrl(objGrid){var behave=objGrid.data("filterbehave");if(behave!="mixed_back") 576return(!1);var objFilters=objGrid.data("filters");if(!objFilters) 577return(!1);if(objFilters.length==0) 578return(!1);var objAjaxOptions=getGridAjaxOptions(objFilters,objGrid,!1,!1,{getonly:!0});var ajaxUrlInit=getVal(objAjaxOptions,"ajax_url");objGrid.data("initajaxurl",ajaxUrlInit)} 579function initGrid_setActiveFiltersData(objGrid,objAjaxOptions){if(!objAjaxOptions) 580var objAjaxOptions=getGridAjaxOptions_simple(objGrid);var arrTerms=getVal(objAjaxOptions,"terms");var arrMeta=getVal(objAjaxOptions,"meta");var arrAuthors=getVal(objAjaxOptions,"authors");if(!jQuery.isArray(arrTerms)) 581arrTerms=[];if(!jQuery.isArray(arrMeta)) 582arrMeta=[];if(!jQuery.isArray(arrAuthors)) 583arrAuthors=[];arrTerms=arrTerms.concat(arrMeta,arrAuthors);if(jQuery.isArray(arrTerms)) 584arrTerms=arrTerms.flat();var filteredTerms=[];jQuery.each(arrTerms,function(index,term){if(!term) 585return(!0);var slug=getVal(term,"slug");var metaValue=getVal(term,"meta_value");if(slug==="__ucand__"||slug==="__ucor__"||slug==="__and__"||slug==="__or__") 586return(!0);if(metaValue==="__ucand__"||metaValue==="__ucor__") 587return(!0);filteredTerms.push(term)});arrTerms=filteredTerms;var search=getVal(objAjaxOptions,"search");if(search) 588search=search.trim();if(search){var objSearch={type:"search","key":"search|"+search,"title":search};if(!arrTerms) 589var arrTerms=[];arrTerms.push(objSearch)} 590var titleStart=getVal(objAjaxOptions,"title_start");if(titleStart){var objTitleStart={type:"titlestart","key":"titlestart|"+titleStart,"title":titleStart};if(!arrTerms) 591var arrTerms=[];arrTerms.push(objTitleStart)} 592objGrid.data("active_filters_items",arrTerms);objGrid.trigger(g_vars.EVENT_UPDATE_ACTIVE_FILTER_ITEMS,[arrTerms])} 593function initGrids(){var objGrids=getAllGrids("loaded_only");if(objGrids.length==0) 594return(!1);if(g_showDebug==!0){trace("init grids");trace(objGrids)} 595jQuery.each(objGrids,function(index,grid){var objGrid=jQuery(grid);initGrid_setAjaxUrl(objGrid);initGrid_setInitFiltersAfterLoad(objGrid);initGrid_setActiveFiltersData(objGrid);var objInitFilters=objGrid.data("filters_init_after");var isMainFiltersRefreshed=!1;if(objInitFilters&&objInitFilters.length>0){isMainFiltersRefreshed=!0;if(g_showDebug==!0){trace("ajax init Filters");trace(objInitFilters)} 596refreshAjaxGrid(objGrid,"filters")}
597var objInitFiltersChildren=objGrid.data("filters_init_after_children");if(objInitFiltersChildren&&objInitFiltersChildren.length>0){if(isMainFiltersRefreshed==!1){if(g_showDebug==!0){trace("ajax init child Filters");trace(objInitFiltersChildren)} 598refreshAjaxGrid(objGrid,"filters_children")}else objGrid.data("init_refresh_child_filters",!0)} 599objGrid.addClass("ucfilters--grid-inited")});return(objGrids)} 600function initGridsEvents(objGrids){if(!objGrids||objGrids.length==0) 601return(!1);objGrids.on(g_vars.ACTION_REFRESH_GRID,function(){var objGrid=jQuery(this);if(g_showDebug==!0){trace("Refresh grid - by event:"+g_vars.ACTION_REFRESH_GRID);console.trace()} 602refreshAjaxGrid(objGrid)});objGrids.on(g_vars.ACTION_GET_FILTERS_URL,function(){var objGrid=jQuery(this);var urlFilters=getGridUrlFiltersString(objGrid);return(urlFilters)});objGrids.on(g_vars.ACTION_CLEAR_FILTERS,function(){var objGrid=jQuery(this);var arrActiveFilterItems=getGridActiveFilterItems(objGrid);if(!arrActiveFilterItems) 603return(null);clearAllFilters(objGrid,null,!0);objGrid.trigger(g_vars.ACTION_REFRESH_GRID)});objGrids.on(g_vars.EVENT_UNSELECT_FILTER,function(event,key){var objGrid=jQuery(this);unselectFilterItem(objGrid,key);objGrid.trigger(g_vars.ACTION_REFRESH_GRID)})} 604function initGeneralEvents(){addEventListener('popstate',onPopState);g_objBody.on(g_vars.EVENT_DOM_UPDATED,runInitFilters)} 605function validateGrid(objGrid){var isAjax=objGrid.data("ajax");if(isAjax==="'true'") 606showElementError(objGrid,"This grid configured wrong way, missing |raw in html attributes");} 607function validateGrids(){var objGrids=getAllGrids("loaded_only");jQuery.each(objGrids,function(index,grid){var objGrid=jQuery(grid);validateGrid(objGrids)})} 608function runInitFilters(){validateGrids();var objFilters=jQuery(".uc-grid-filter, .uc-filter-pagination").not("."+g_vars.CLASS_FILTER_INITED);var objFiltersLoading=objFilters.filter(".uc-waitforload");if(objFiltersLoading.length&&g_initFiltersCounter<2){if(g_showDebug==!0){trace(objFiltersLoading);trace("Wait for Load!")} 609setTimeout(runInitFilters,500);g_initFiltersCounter++;objFilters=null;objFiltersLoading=null;return(!1)} 610g_initFiltersCounter=0;initFilters(objFilters);var objGrids=initGrids();initGridsEvents(objGrids)} 611function init(){g_objBody=jQuery("body");var success=initGlobals();if(success==!1){if(typeof window.ueFiltersTimeoutCounter!="undefined") 612window.ueFiltersTimeoutCounter++;else window.ueFiltersTimeoutCounter=0;if(window.ueFiltersTimeoutCounter==3){trace("Failed to init filters");return(!1)} 613setTimeout(init,200);return(!1)} 614if(typeof UERemoteConnection=="function") 615g_remote=window.ueRemoteConnection;runInitFilters();initGeneralEvents();jQuery(document).on('elementor/popup/show',function(event,id,objPopup){g_objBody.trigger(g_vars.EVENT_DOM_UPDATED)})} 616this.isElementInViewport=function(objElement){var elementTop=objElement.offset().top;var elementBottom=elementTop+objElement.outerHeight();var viewportTop=jQuery(window).scrollTop();var viewportBottom=viewportTop+jQuery(window).height();return(elementBottom>viewportTop&&elementTop<viewportBottom)} 617this.runWithTrashold=function(func,trashold){if(!trashold) 618var trashold=500;if(g_vars.trashold_handle) 619clearTimeout(g_vars.trashold_handle);g_vars.trashold_handle=setTimeout(func,trashold)};this.getFilterElementData=function(objElement){var objData=getFilterElementData(objElement);return(objData)} 620this.getFilterGridQueryData=function(objFilter){var objGrid=objFilter.data("grid");if(!objGrid) 621return(null);var queryData=objGrid.attr("querydata");if(!queryData) 622return(null);var objData=jQuery.parseJSON(queryData);if(g_showDebug==!0){console.log("getQueryData (filter, grid, querydata): ",objFilter,objGrid,queryData)} 623return(objData)} 624this.getFilterItemKey=function(objItem){if(!objItem||objItem.length==0) 625return(null);var key=objItem.data("key");if(key) 626return(key);key="term|"+objItem.data("taxonomy")+"|"+objItem.data("slug");return(key)} 627this.getVal=function(obj,name,defaultValue){return getVal(obj,name,defaultValue)} 628this.getGridFiltersByType=function(objGrid,filterType){if(!filterType) 629throw new Error("getGridFiltersByType error - enter type as second param");var arrFilters=getGridFilters(objGrid);if(arrFilters.length==0) 630return(jQuery());var objChosenFilters=jQuery();jQuery.each(arrFilters,function(index,objFilter){var type=getFilterType(objFilter,!0);if(type==filterType){objChosenFilters=objChosenFilters.add(objFilter)}});return(objChosenFilters)} 631function construct(){if(!jQuery){trace("Filters not loaded, jQuery not loaded");return(!1)} 632jQuery("document").ready(function(){setTimeout(init,200)})} 633construct()} 634g_ucDynamicFilters=new UEDynamicFilters() 635;
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.