const container = document.querySelector('[itemtype="http://schema.org/DataCatalog"]'); if (!container) return; const h2CountElem = document.getElementById("h2-count"); const filterInput = document.getElementById("filter-linked-data-input"); const listElem = document.querySelector(".my-filterable-list"); const statusElem = document.getElementById("filter-status"); if (!h2CountElem || !filterInput || !listElem) return; const allItems = listElem.querySelectorAll("li"); const totalCount = allItems.length; const updateCountDisplay = (visibleCount) => { if (visibleCount === totalCount) { h2CountElem.textContent = " (" + totalCount + ")"; } else { h2CountElem.textContent = " (* " + visibleCount + "/" + totalCount + ")"; } if (statusElem) { statusElem.textContent = visibleCount + " Einträge sichtbar."; } }; updateCountDisplay(totalCount); filterInput.addEventListener("input", function() { const filterText = this.value.toLowerCase(); let visibleCount = 0; allItems.forEach(item => { const match = item.textContent.toLowerCase().includes(filterText); item.style.display = match ? "" : "none"; if (match) visibleCount++; }); updateCountDisplay(visibleCount); }); });