v49: fix spacer click using event delegation

This commit is contained in:
primal
2026-01-30 16:39:20 -05:00
parent 57801d0946
commit 51d05e18a1
2 changed files with 16 additions and 11 deletions
+15 -10
View File
@@ -18,6 +18,21 @@ function initDashboard() {
let selectedTLDs = new Set(); // Empty means show all let selectedTLDs = new Set(); // Empty means show all
let allTLDs = []; // All available TLDs 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 // Status colors and labels
const statusConfig = { const statusConfig = {
hold: { color: '#f90', bg: '#330', border: '#550', dimColor: '#664', dimBg: '#1a1a00', label: 'hold' }, 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 row = block.querySelector('.domain-row');
const host = block.dataset.host; 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 // Hover effect on domain row
row.addEventListener('mouseenter', () => row.style.background = '#1a1a1a'); row.addEventListener('mouseenter', () => row.style.background = '#1a1a1a');
row.addEventListener('mouseleave', () => row.style.background = 'transparent'); row.addEventListener('mouseleave', () => row.style.background = 'transparent');
+1 -1
View File
@@ -534,7 +534,7 @@ const dashboardHTML = `<!DOCTYPE html>
<div id="output"></div> <div id="output"></div>
</div> </div>
<div style="color: #333; font-size: 11px; margin-top: 10px;">v48</div> <div style="color: #333; font-size: 11px; margin-top: 10px;">v49</div>
<div class="updated" id="updatedAt">Last updated: {{.UpdatedAt.Format "2006-01-02 15:04:05"}}</div> <div class="updated" id="updatedAt">Last updated: {{.UpdatedAt.Format "2006-01-02 15:04:05"}}</div>
</body> </body>