Wallet system (sats ledger + deposit + spend), HydraProxy fulfillment queue, paid IP-quality scorer (85/100 verified)

This commit is contained in:
drjones
2026-09-20 18:51:47 -07:00
parent 16dde93ce2
commit a7d6b98183
8 changed files with 481 additions and 12 deletions

45
templates/wallet.html Normal file
View File

@@ -0,0 +1,45 @@
{% extends "base.html" %}
{% block title %}Wallet — Clean Proxys{% endblock %}
{% block body %}
<h2>Wallet</h2>
<p class="sub">Deposit Bitcoin, spend sats on proxies and tools. No KYC, no email.</p>
<div class="statsbar">
<div class="s"><div class="n grad">{{ balance }}</div><div class="l">Balance (sats)</div></div>
<div class="s"><div class="n grad">{{ (balance / 1e8) | round(8, 'floor') }}</div><div class="l">BTC</div></div>
</div>
<div class="card" style="margin-top:18px">
<h3>Deposit</h3>
<p class="muted" style="font-size:14px">Pick an amount — funds credit instantly on payment confirmation.</p>
<form method="POST" action="/wallet/deposit">
<div class="cta-row" style="justify-content:flex-start;flex-wrap:wrap;gap:10px;margin:14px 0">
{% for amt in [10000, 50000, 100000, 250000] %}
<button type="button" class="btn btn-ghost" onclick="document.getElementById('sats').value={{ amt }}">{{ amt }} sats</button>
{% endfor %}
</div>
<label>Custom amount (sats)</label>
<input type="number" id="sats" name="sats" min="500" placeholder="e.g. 50000" required>
<input type="submit" value="Deposit via Bitcoin">
</form>
</div>
<div class="card" style="margin-top:18px">
<h3>Transactions</h3>
{% if txs %}
<table style="width:100%">
<tr><th>When</th><th>Type</th><th>Amount</th><th>Ref</th></tr>
{% for t in txs %}
<tr>
<td class="mono">{{ t.ts }}</td>
<td>{{ t.type }}</td>
<td class="mono" style="color:{% if t.amount_sats >= 0 %}var(--neon){% else %}var(--danger){% endif %}">{{ '+' if t.amount_sats >= 0 else '' }}{{ t.amount_sats }} sats</td>
<td class="mono" style="font-size:12px;color:var(--muted)">{{ t.ref }}</td>
</tr>
{% endfor %}
</table>
{% else %}
<p class="muted">No transactions yet — make your first deposit.</p>
{% endif %}
</div>
{% endblock %}