diff --git a/static/dashboard.js b/static/dashboard.js index eff91fc..417d4cb 100644 --- a/static/dashboard.js +++ b/static/dashboard.js @@ -18,6 +18,21 @@ function initDashboard() { let selectedTLDs = new Set(); // Empty means show all let allTLDs = []; // All available TLDs + // Event delegation for domain-spacer clicks (toggle feeds) + document.addEventListener('click', (e) => { + const spacer = e.target.closest('.domain-spacer'); + if (spacer) { + const block = spacer.closest('.domain-block'); + if (block) { + const feedsDiv = block.querySelector('.domain-feeds'); + if (feedsDiv) { + const isVisible = feedsDiv.style.display !== 'none'; + feedsDiv.style.display = isVisible ? 'none' : 'block'; + } + } + } + }); + // Status colors and labels const statusConfig = { hold: { color: '#f90', bg: '#330', border: '#550', dimColor: '#664', dimBg: '#1a1a00', label: 'hold' }, @@ -273,16 +288,6 @@ function initDashboard() { const row = block.querySelector('.domain-row'); const host = block.dataset.host; - // Click spacer area to toggle inline feeds - const domainSpacer = row.querySelector('.domain-spacer'); - const feedsDiv = block.querySelector('.domain-feeds'); - if (domainSpacer && feedsDiv) { - domainSpacer.addEventListener('click', () => { - const isVisible = feedsDiv.style.display !== 'none'; - feedsDiv.style.display = isVisible ? 'none' : 'block'; - }); - } - // Hover effect on domain row row.addEventListener('mouseenter', () => row.style.background = '#1a1a1a'); row.addEventListener('mouseleave', () => row.style.background = 'transparent'); diff --git a/templates.go b/templates.go index 5f7999a..07de729 100644 --- a/templates.go +++ b/templates.go @@ -534,7 +534,7 @@ const dashboardHTML = `
-
v48
+
v49
Last updated: {{.UpdatedAt.Format "2006-01-02 15:04:05"}}