v58: remove all explicit font-sizes, reduce feed indentation
This commit is contained in:
+9
-9
@@ -175,15 +175,15 @@ function initDashboard() {
|
|||||||
const color = isActive ? cfg.color : cfg.dimColor;
|
const color = isActive ? cfg.color : cfg.dimColor;
|
||||||
const border = isActive ? cfg.border : '#333';
|
const border = isActive ? cfg.border : '#333';
|
||||||
html += `<button class="status-btn" data-type="${type}" data-id="${escapeHtml(id)}" data-status="${s}"
|
html += `<button class="status-btn" data-type="${type}" data-id="${escapeHtml(id)}" data-status="${s}"
|
||||||
style="padding: 2px 6px; font-size: 10px; font-family: monospace;
|
style="padding: 2px 6px; font-family: monospace;
|
||||||
background: ${bg}; border: 1px solid ${border}; border-radius: 3px;
|
background: ${bg}; border: 1px solid ${border}; border-radius: 3px;
|
||||||
color: ${color}; cursor: pointer; margin-left: ${i > 0 ? '1px' : '0'};">${cfg.label}</button>`;
|
color: ${color}; cursor: pointer; margin-left: ${i > 0 ? '1px' : '0'};">${cfg.label}</button>`;
|
||||||
});
|
});
|
||||||
// Fail indicator (not clickable) or hidden spacer for alignment
|
// Fail indicator (not clickable) or hidden spacer for alignment
|
||||||
const cfg = statusConfig.fail;
|
const cfg = statusConfig.fail;
|
||||||
const failBtnStyle = `padding: 2px 6px; font-size: 10px; font-family: monospace;
|
const failBtnStyle = `padding: 2px 6px; font-family: monospace;
|
||||||
background: ${cfg.bg}; border: 1px solid ${cfg.border}; border-radius: 3px;
|
background: ${cfg.bg}; border: 1px solid ${cfg.border}; border-radius: 3px;
|
||||||
color: ${cfg.color}; cursor: default; margin-left: 1px; min-width: 26px; box-sizing: border-box;`;
|
color: ${cfg.color}; cursor: default; margin-left: 1px; box-sizing: border-box;`;
|
||||||
if (showFail) {
|
if (showFail) {
|
||||||
html += `<button disabled style="${failBtnStyle}" title="Feed has errors">${cfg.label}</button>`;
|
html += `<button disabled style="${failBtnStyle}" title="Feed has errors">${cfg.label}</button>`;
|
||||||
} else {
|
} else {
|
||||||
@@ -244,7 +244,7 @@ function initDashboard() {
|
|||||||
// Drop button (only for skipped domains)
|
// Drop button (only for skipped domains)
|
||||||
if (status === 'skip') {
|
if (status === 'skip') {
|
||||||
html += `<button class="drop-btn" data-host="${escapeHtml(d.host)}"
|
html += `<button class="drop-btn" data-host="${escapeHtml(d.host)}"
|
||||||
style="padding: 2px 8px; font-size: 10px; font-family: monospace; margin-left: 8px;
|
style="padding: 2px 8px; font-family: monospace; margin-left: 8px;
|
||||||
background: #400; border: 1px solid #800; border-radius: 3px;
|
background: #400; border: 1px solid #800; border-radius: 3px;
|
||||||
color: #f88; cursor: pointer;" title="Permanently delete all data">drop</button>`;
|
color: #f88; cursor: pointer;" title="Permanently delete all data">drop</button>`;
|
||||||
}
|
}
|
||||||
@@ -253,7 +253,7 @@ function initDashboard() {
|
|||||||
|
|
||||||
// Feeds under this domain (hidden by default, toggled by clicking spacer)
|
// Feeds under this domain (hidden by default, toggled by clicking spacer)
|
||||||
if (d.feeds && d.feeds.length > 0) {
|
if (d.feeds && d.feeds.length > 0) {
|
||||||
html += '<div class="domain-feeds" style="display: none; margin-left: 20px; border-left: 2px solid #333; padding-left: 10px;">';
|
html += '<div class="domain-feeds" style="display: none; margin-left: 10px; border-left: 2px solid #333; padding-left: 6px;">';
|
||||||
d.feeds.forEach(f => {
|
d.feeds.forEach(f => {
|
||||||
const feedStatus = f.publish_status || 'hold';
|
const feedStatus = f.publish_status || 'hold';
|
||||||
|
|
||||||
@@ -320,7 +320,7 @@ function initDashboard() {
|
|||||||
|
|
||||||
// Language indicator (fixed width)
|
// Language indicator (fixed width)
|
||||||
const lang = f.language || '';
|
const lang = f.language || '';
|
||||||
html += `<span style="display: inline-block; width: 32px; margin-right: 6px; color: #666; font-size: 10px; font-family: monospace; text-align: center; padding-top: 4px;">${escapeHtml(lang)}</span>`;
|
html += `<span style="display: inline-block; width: 32px; margin-right: 6px; color: #666; font-family: monospace; text-align: center; padding-top: 4px;">${escapeHtml(lang)}</span>`;
|
||||||
|
|
||||||
// Status buttons (pass/hold/skip + fail indicator if errors)
|
// Status buttons (pass/hold/skip + fail indicator if errors)
|
||||||
html += `<div style="padding-top: 2px;">${renderStatusBtns(status, 'feed', f.url, f.status)}</div>`;
|
html += `<div style="padding-top: 2px;">${renderStatusBtns(status, 'feed', f.url, f.status)}</div>`;
|
||||||
@@ -443,7 +443,7 @@ function initDashboard() {
|
|||||||
block.dataset.status = 'drop';
|
block.dataset.status = 'drop';
|
||||||
const statusGroup = row.querySelector('.status-btn-group');
|
const statusGroup = row.querySelector('.status-btn-group');
|
||||||
if (statusGroup) {
|
if (statusGroup) {
|
||||||
statusGroup.innerHTML = '<span style="padding: 2px 6px; font-size: 10px; font-family: monospace; background: #300; border: 1px solid #600; border-radius: 3px; color: #f66;">dropped</span>';
|
statusGroup.innerHTML = '<span style="padding: 2px 6px; font-family: monospace; background: #300; border: 1px solid #600; border-radius: 3px; color: #f66;">dropped</span>';
|
||||||
}
|
}
|
||||||
dropBtn.remove();
|
dropBtn.remove();
|
||||||
console.log('Drop result:', result);
|
console.log('Drop result:', result);
|
||||||
@@ -1099,14 +1099,14 @@ function initDashboard() {
|
|||||||
const border = isSelected ? '#06c' : '#333';
|
const border = isSelected ? '#06c' : '#333';
|
||||||
const color = isSelected ? '#0af' : '#fff';
|
const color = isSelected ? '#0af' : '#fff';
|
||||||
html += `<button class="tld-btn" data-tld="${escapeHtml(t.tld)}"
|
html += `<button class="tld-btn" data-tld="${escapeHtml(t.tld)}"
|
||||||
style="padding: 4px 8px; font-size: 11px; font-family: monospace;
|
style="padding: 4px 8px; font-family: monospace;
|
||||||
background: ${bg}; border: 1px solid ${border}; border-radius: 3px;
|
background: ${bg}; border: 1px solid ${border}; border-radius: 3px;
|
||||||
color: ${color}; cursor: pointer;">.${escapeHtml(t.tld)} <span style="color: #888;">(${t.domain_count})</span></button>`;
|
color: ${color}; cursor: pointer;">.${escapeHtml(t.tld)} <span style="color: #888;">(${t.domain_count})</span></button>`;
|
||||||
});
|
});
|
||||||
|
|
||||||
// Add clear button if any selected
|
// Add clear button if any selected
|
||||||
if (selectedTLDs.size > 0) {
|
if (selectedTLDs.size > 0) {
|
||||||
html += `<button id="clearTLDs" style="padding: 4px 8px; font-size: 11px; font-family: monospace;
|
html += `<button id="clearTLDs" style="padding: 4px 8px; font-family: monospace;
|
||||||
background: #400; border: 1px solid #600; border-radius: 3px;
|
background: #400; border: 1px solid #600; border-radius: 3px;
|
||||||
color: #f66; cursor: pointer; margin-left: 10px;">clear</button>`;
|
color: #f66; cursor: pointer; margin-left: 10px;">clear</button>`;
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -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;">v57</div>
|
<div style="color: #333; font-size: 11px; margin-top: 10px;">v58</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>
|
||||||
|
|||||||
Reference in New Issue
Block a user