From 7be9959241ebd9ff7dcf1e6592de09cfd29d8394 Mon Sep 17 00:00:00 2001 From: "Claude (draft, do not push as-is)" Date: Fri, 17 Jul 2026 00:01:41 +0200 Subject: [PATCH] Align index.html with yearly-listing terms MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Sidebar: replace vague 'Bid-based ranking' lead with the actual 4-criteria ordering (excess donated, total paid, base fee, points) - Sidebar: drop 'Early-adopter guarantee 12 months' (contradicts Terms 2.04 pro-rata conversion of legacy balances); add 'Listing period 365 days' / 'Renewal window' facts instead - Info block 03: rename 'Early Adopter Incentives' -> 'Listing & Renewal', remove the unconditional 12-month promise, describe the real pay -> listed -> renewal -> expiry lifecycle from Terms Sec. 2 - Rename 'Next deposit' -> 'Next renewal' (label + status text) - Fix s-block stat: use max(last_block) across all servers instead of getFiltered()[0].last_block, since the list order no longer tracks block height - Clarify 'Server added' -> 'Server verified... listed after 3 confirmations', matching Terms 2.01 (listing starts at 3 confs, not at submission) Note: result.donation (singular) confirmed correct against the current API by backend — left untouched, no change needed here. --- index.html | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/index.html b/index.html index 758f16b..051d0f3 100644 --- a/index.html +++ b/index.html @@ -319,7 +319,7 @@ footer a{color:var(--accent);text-decoration:none}
Contact
Server
Will Executor
- +

@@ -331,10 +331,11 @@ footer a{color:var(--accent);text-decoration:none}

How ranking works

-

Bid-based ranking: higher contributions rank higher.

+

Ordered by excess donated, then total paid, then base fee (lower first), then WeTime points.

Yearly fee50,000 sats
-
Plugin integrationautomatic
-
Early-adopter guarantee12 months
+
Listing period365 days
+
Renewal windowfrom 6 months before expiry
+
Plugin integrationautomatic
@@ -354,8 +355,8 @@ footer a{color:var(--accent);text-decoration:none}
03 -

Early Adopter Incentives

-

To support the project's initial launch phase, we plan to maintain the first Will Executor servers for a minimum of 12 months, rewarding early participants. Long-term position is determined by total paid, base fee, and WeTime points (see Terms).

+

Listing & Renewal

+

A flat yearly fee buys 365 days of presence in the list, starting when your payment reaches 3 confirmations. You can renew for one additional year at any time from 6 months before expiry; listings that are not renewed are removed at expiry. See the Terms for details.

@@ -439,8 +440,9 @@ function render() { const online = allServers.filter(d => d.status === "OK").length; document.getElementById('s-online').textContent = online; document.getElementById('s-total').textContent = allServers.length; - const top = getFiltered()[0]; - document.getElementById('s-block').textContent = top ? fmt(top.last_block) : '—'; + // Highest known block across all servers (the list is ranked by fee/points, not by height) + const maxBlock = allServers.reduce((m, d) => Math.max(m, d.last_block || 0), 0); + document.getElementById('s-block').textContent = maxBlock ? fmt(maxBlock) : '—'; } async function fetchData() { @@ -587,7 +589,7 @@ document.getElementById('terms-accept').addEventListener('click', async function document.getElementById('iv-nextdep').textContent = result.next_deposit_date || '—'; document.getElementById('iv-nextdep-row').style.display = 'flex'; document.getElementById('iv-status').className = 'ok-line'; - document.getElementById('iv-status').textContent = 'Server is already listed. Next deposit: ' + (result.next_deposit_date || '—'); + document.getElementById('iv-status').textContent = 'Server is already listed. Next renewal: ' + (result.next_deposit_date || '—'); const inv = document.getElementById('invoice'); inv.classList.add('show'); inv.scrollIntoView({ behavior: 'smooth', block: 'nearest' }); @@ -623,7 +625,7 @@ document.getElementById('terms-accept').addEventListener('click', async function } }; document.getElementById('iv-status').className = 'ok-line'; - document.getElementById('iv-status').textContent = '✓ Server added: ' + serverUrl + '. Pay the invoice to complete.'; + document.getElementById('iv-status').textContent = '✓ Server verified: ' + serverUrl + '. Pay the invoice — it will be listed after 3 confirmations.'; const inv = document.getElementById('invoice'); inv.classList.add('show'); inv.scrollIntoView({ behavior: 'smooth', block: 'nearest' });