9c21039dcd0fee54fdfd30253bc0088597df90e3
braney
  Sun Feb 25 11:48:47 2024 -0800
another attempt to finish #19984

diff --git src/hg/lib/hui.c src/hg/lib/hui.c
index 54eabdd..1997719 100644
--- src/hg/lib/hui.c
+++ src/hg/lib/hui.c
@@ -6763,30 +6763,51 @@
         else
             safef(labelBuf, sizeof(labelBuf),"%s%s", filterByRange ? "": "Minimum ", field);
 
         showScoreFilter(cart,tdb,opened,boxed,parentLevel,name,title,label,scoreName);
         count++;
         }
     if (as != NULL)
         asObjectFree(&as);
     }
 if (count > 0)
     puts("</TABLE>");
 return count;
 }
 
 
+boolean bedHasFilters(struct trackDb *tdb)
+// Does track have filters
+{
+if (trackDbSettingClosestToHome(tdb, FILTER_BY))
+    return TRUE;
+if (trackDbSettingClosestToHome(tdb, GRAY_LEVEL_SCORE_MIN))
+    return TRUE;
+
+struct trackDbFilter *filterSettings = tdbGetTrackNumFilters( tdb);
+if (filterSettings != NULL)
+    return TRUE;
+filterSettings = tdbGetTrackTextFilters( tdb);
+if (filterSettings != NULL)
+    return TRUE;
+filterSettings = tdbGetTrackFilterByFilters( tdb);
+if (filterSettings != NULL)
+    return TRUE;
+
+return FALSE;
+}
+
 boolean bedScoreHasCfgUi(struct trackDb *tdb)
 // Confirms that this track has a bedScore Cfg UI
 {
 // Assumes that cfgType == cfgBedScore
 if (trackDbSettingClosestToHome(tdb, FILTER_BY))
     return TRUE;
 if (trackDbSettingClosestToHome(tdb, GRAY_LEVEL_SCORE_MIN))
     return TRUE;
 boolean blocked = FALSE;
 struct trackDbFilter *filterSettings = tdbGetTrackNumFilters( tdb);
 
 if (filterSettings != NULL)
     {
     boolean one = FALSE;
     struct trackDbFilter *oneFilter = filterSettings;