Polish pass: sysops wording, QR size, NWC toolbar, logo, diagnostics placement
Eight fixes from live testing: Systems Operational modal: - Drop the "test from your phone on mobile data" (hairpin NAT) sentence from the router note — too technical for the intended audience. - Node-only role: when BTCPay Server and Lightning Wallet Connections (LNURL) are both off, the router card becomes a simple "No router setup needed yet" note explaining that ports 80/443 only matter if one of those services is turned on. When one is enabled, the card shows the same port steps and live domain/port diagnostics as the Desktop + Server role (diagnostics now poll only enabled services). Service modals: - The Domain Diagnostic Checklist now shows only the domain-active step (Domain Configured). DNS and port diagnostics live in Systems Operational, which shows the full checklist. - Node-only role: BTCPay Server and Lightning Wallet Connections modals gain a "Ports to Forward in Your Router" section with the standard 80/443 wording and this computer's LAN address. - Domain setup and reconfigure dialogs no longer contain router port-forwarding instructions (already handled during Desktop + Server onboarding and shown in Systems Operational). Lightning Wallet Connections: - Refresh and New Wallet toolbar buttons now share one height and baseline (a leftover 12px top margin on Refresh was offsetting it). - The header status chip has a proper gap between the status dot and its label. Zeus Connect / QR codes: - QR codes render at the original 240px with the white frame and pixelated upscaling, restoring scannability. Brand: - The sidebar logo loads via /static/sovran-hub-icon.svg (same as the login page) instead of an inline <use> symbol — the gradient-heavy symbol did not render reliably. The icon sprite is hidden with the browser-safe zero-size pattern instead of display:none.
This commit is contained in:
@@ -97,7 +97,6 @@ function openDomainSetupModal(feat, onSaved) {
|
||||
nwcWarning +
|
||||
renderDomainNeedsHtml({ serviceName: feat.name, hostExample: hostExample, purpose: purpose }) +
|
||||
renderNjallaStepsHtml({ hostExample: hostExample, pasteHint: "below" }) +
|
||||
'<div class="onboarding-port-warn" id="domain-router-box" style="margin-top:12px;"></div>' +
|
||||
'<p style="margin-top:10px;">Enter the address for this service and paste the update command from Njal.la.</p>' +
|
||||
'</div>' +
|
||||
'<div class="domain-field-group"><label class="domain-field-label" for="domain-subdomain-input">Service address (e.g. ' + domainLabelExample + '):</label><input class="domain-field-input" type="text" id="domain-subdomain-input" placeholder="' + domainPlaceholder + '" /></div>' +
|
||||
@@ -144,8 +143,6 @@ function openDomainSetupModal(feat, onSaved) {
|
||||
|
||||
$domainSetupModal.classList.add("open");
|
||||
|
||||
// Fill the router port-forwarding box with this computer's LAN IP (best-effort)
|
||||
renderRouterPortsBox("domain-router-box");
|
||||
}
|
||||
|
||||
function openDomainReconfigureModal(feat, existingDomain, onSaved) {
|
||||
@@ -193,9 +190,7 @@ function openDomainReconfigureModal(feat, existingDomain, onSaved) {
|
||||
'<span style="display:inline-block;margin-top:4px;padding:4px 10px;background:var(--card-color);border:1px solid var(--border-color);border-radius:6px;font-family:monospace;font-size:1em;font-weight:700;">' + escHtml(externalIp) + '</span></li>' +
|
||||
'<li>If the IP is wrong or the record is missing, update it</li>' +
|
||||
'<li>If you changed the DDNS curl command, paste the updated one below</li>' +
|
||||
'<li>Confirm ports <strong>80</strong> and <strong>443</strong> (TCP) are still forwarded on your router to this computer — see the reminder below:</li>' +
|
||||
'</ol>' +
|
||||
'<div class="onboarding-port-warn" id="domain-router-box" style="margin-top:12px;"></div>' +
|
||||
'</div>' +
|
||||
'<div class="domain-field-group"><label class="domain-field-label" for="domain-subdomain-input">Service domain (e.g. ' + domainLabelExample + '):</label><input class="domain-field-input" type="text" id="domain-subdomain-input" placeholder="' + domainPlaceholder + '" value="' + escHtml(currentDomain) + '" /></div>' +
|
||||
'<div class="domain-field-group"><label class="domain-field-label" for="domain-ddns-input">Njal.la Dynamic DNS Update Command:</label><input class="domain-field-input" type="text" id="domain-ddns-input" placeholder="curl "https://njal.la/update/?h=' + domainPlaceholder + '&k=abc123&auto"" /><p class="domain-field-hint">ℹ Paste the full curl command from your Njal.la dashboard\'s Dynamic record</p></div>' +
|
||||
@@ -241,8 +236,6 @@ function openDomainReconfigureModal(feat, existingDomain, onSaved) {
|
||||
|
||||
$domainSetupModal.classList.add("open");
|
||||
|
||||
// Fill the router port-forwarding box with this computer's LAN IP (best-effort)
|
||||
renderRouterPortsBox("domain-router-box");
|
||||
}
|
||||
|
||||
function closeDomainSetupModal() {
|
||||
|
||||
Reference in New Issue
Block a user