From cfbf483cb651317c19760dc27d03ad11301b63a0 Mon Sep 17 00:00:00 2001
From: Dev-Christon <devchriston@gmail.com>
Date: Wed, 19 Mar 2025 22:32:19 +0300
Subject: [PATCH] fix filters: waiting filter finish to disable active filter

---
 assets/js/default/filters.js | 48 +++++++++++++++++++-----------------
 1 file changed, 26 insertions(+), 22 deletions(-)

diff --git a/assets/js/default/filters.js b/assets/js/default/filters.js
index 675f67eea..bb643126d 100644
--- a/assets/js/default/filters.js
+++ b/assets/js/default/filters.js
@@ -2356,33 +2356,37 @@ var searchObj = {
 			filters : function(fObj, domFilters, k){
 				mylog.log("searchObj.events.selectList nemany", domFilters);
 				$(domFilters+" .btn-filters-select."+k).off().on("click",function(){
-					mylog.log("searchObj.events filters button[data-type='filters']");
-					if($(this).data("type") != "filters"){
-						if(notNull($(this).data("multiple"))){
-							if(typeof fObj.search.obj[$(this).data("type")]=="undefined")
-								fObj.search.obj[$(this).data("type")]=[];
-							fObj.search.obj[$(this).data("type")].push($(this).data("key"));
-						}else
-							fObj.search.obj[$(this).data("type")]=$(this).data("key");
-	                   	//fObj.search.init(fObj);
-						//fObj.filters.manage.addActive(fObj, $(this).data("type"),$(this).data("value"), $(this).data("key"), $(this).data("field"));
+					if(!fObj.search.currentlyLoading){
+						mylog.log("searchObj.events filters button[data-type='filters']");
+						if($(this).data("type") != "filters"){
+							if(notNull($(this).data("multiple"))){
+								if(typeof fObj.search.obj[$(this).data("type")]=="undefined")
+									fObj.search.obj[$(this).data("type")]=[];
+								fObj.search.obj[$(this).data("type")].push($(this).data("key"));
+							}else
+								fObj.search.obj[$(this).data("type")]=$(this).data("key");
+							//fObj.search.init(fObj);
+							//fObj.filters.manage.addActive(fObj, $(this).data("type"),$(this).data("value"), $(this).data("key"), $(this).data("field"));
 
-					}
-					else if(typeof $(this).data("field") != "undefined"){
+						}
+						else if(typeof $(this).data("field") != "undefined"){
 
-						if(typeof fObj.search.obj.filters == "undefined" )
-							fObj.search.obj.filters = {};
+							if(typeof fObj.search.obj.filters == "undefined" )
+								fObj.search.obj.filters = {};
 
-						if(typeof fObj.search.obj.filters[$(this).data("field")] == "undefined" )
-							fObj.search.obj.filters[$(this).data("field")] = [];
-							if(Array.isArray(fObj.search.obj.filters[$(this).data("field")]))
-	                    		fObj.search.obj.filters[$(this).data("field")].push($(this).data("key"));
-							else{
+							if(typeof fObj.search.obj.filters[$(this).data("field")] == "undefined" )
 								fObj.search.obj.filters[$(this).data("field")] = [];
-								fObj.search.obj.filters[$(this).data("field")].push($(this).data("key"));
-							}
+								if(Array.isArray(fObj.search.obj.filters[$(this).data("field")]))
+									fObj.search.obj.filters[$(this).data("field")].push($(this).data("key"));
+								else{
+									fObj.search.obj.filters[$(this).data("field")] = [];
+									fObj.search.obj.filters[$(this).data("field")].push($(this).data("key"));
+								}
+						}
+						fObj.filters.manage.addActive(fObj, $(this), true);//"filters",$(this).data("value"), $(this).data("key"), $(this).data("field"));
+					}else{
+						toastr.info(trad.currentlyloading);
 					}
-					fObj.filters.manage.addActive(fObj, $(this), true);//"filters",$(this).data("value"), $(this).data("key"), $(this).data("field"));
 				});
 			},
 			favorites : function(fObj, domFilters, k){
-- 
GitLab