a386c8e3a3
/api/my/dashboard aggregates credits, earned POL (from the chain index), qualification count, and the referral roster (privacy-masked emails, joined-free vs wallet-linked status, code+id referrer match). Members area leads with four stat cards, a next-move card with a qualification progress bar (2 and 5 buyer marks), the line roster, and a copy-ready share message beside the invite link. Assets v=20260904j. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
169 lines
8.3 KiB
HTML
169 lines
8.3 KiB
HTML
<!doctype html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1">
|
|
<title>My account | InstantAdPay</title>
|
|
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Sora:wght@600;700;800&display=swap">
|
|
<link rel="stylesheet" href="/assets/site.css?v=20260904j">
|
|
</head>
|
|
<body>
|
|
<div class="wrap">
|
|
<section class="hero" style="padding-bottom:16px">
|
|
<h1>My <em>account</em></h1>
|
|
<p class="lead" id="introLead">Join free with your email. Your wallet only comes out when you buy
|
|
a package or switch on payouts, and it stays yours the whole time.</p>
|
|
</section>
|
|
|
|
<div id="authArea">
|
|
<div class="card" id="magicCard" hidden>
|
|
<h3>Sign in or join free</h3>
|
|
<p class="muted small">Type your email and we send a 6-digit code. No password to invent,
|
|
no password to forget. New emails get a free account automatically.</p>
|
|
<p><input id="mcEmail" type="email" placeholder="Email" autocomplete="email" style="width:100%;max-width:420px"></p>
|
|
<p id="mcCodeRow" hidden><input id="mcCode" inputmode="numeric" placeholder="6-digit code" style="width:100%;max-width:420px"></p>
|
|
<button class="btn" id="mcSendBtn">Email me a code</button>
|
|
<button class="btn" id="mcVerifyBtn" hidden>Sign in</button>
|
|
<button class="btn sec small" id="mcResend" hidden>Send a fresh code</button>
|
|
</div>
|
|
<div class="grid c2" id="passCards">
|
|
<div class="card">
|
|
<h3>Create your free account</h3>
|
|
<p class="muted small">Takes ten seconds. No wallet needed to join.</p>
|
|
<p><input id="suEmail" type="email" placeholder="Email" autocomplete="email" style="width:100%"></p>
|
|
<p><input id="suPass" type="password" placeholder="Password (8+ characters)" autocomplete="new-password" style="width:100%"></p>
|
|
<button class="btn" id="signupBtn">Join free</button>
|
|
</div>
|
|
<div class="card">
|
|
<h3>Log in</h3>
|
|
<p class="muted small">Welcome back.</p>
|
|
<p><input id="liEmail" type="email" placeholder="Email" autocomplete="email" style="width:100%"></p>
|
|
<p><input id="liPass" type="password" placeholder="Password" autocomplete="current-password" style="width:100%"></p>
|
|
<button class="btn sec" id="loginBtn">Log in</button>
|
|
</div>
|
|
</div>
|
|
<p class="small muted">Crypto-native? You can also <a href="#" id="walletSigninLink">sign in with just your wallet</a>.
|
|
One free signature, no email needed.</p>
|
|
</div>
|
|
|
|
<div id="memberArea" hidden>
|
|
<div class="stats" style="margin-top:0">
|
|
<div class="stat"><div class="n" id="dbCredits">0</div><div class="l">Ad credits</div></div>
|
|
<div class="stat"><div class="n mono" id="dbEarned">0</div><div class="l">POL earned</div></div>
|
|
<div class="stat"><div class="n" id="dbBuyers">0</div><div class="l">Qualifying buyers</div></div>
|
|
<div class="stat"><div class="n" id="dbTeam">0</div><div class="l">Joined your line</div></div>
|
|
</div>
|
|
|
|
<div class="card" id="nextCard">
|
|
<h3>Your next move</h3>
|
|
<p class="muted" id="nextMove">…</p>
|
|
<div id="qualBarWrap">
|
|
<div class="qualbar"><div id="qualFill"></div>
|
|
<span class="qb-mark" style="left:40%">2 · level 2</span>
|
|
<span class="qb-mark" style="left:100%">5 · level 3</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="grid c3">
|
|
<div class="card"><h3>Your account</h3>
|
|
<p id="posLine" class="muted small">…</p></div>
|
|
<div class="card"><h3>Ad credits</h3>
|
|
<p class="mono" style="font-size:26px;margin:0" id="creditLine">0</p>
|
|
<p class="muted small">1 credit = 1 cent of ad delivery across the network. Recorded on-chain. Only your campaigns can spend them.</p></div>
|
|
<div class="card"><h3>Earning levels</h3>
|
|
<p id="qualLine" class="muted small">…</p></div>
|
|
</div>
|
|
|
|
<div class="card">
|
|
<h3>Your line</h3>
|
|
<p class="muted small">Everyone who joined through your link, newest first. When they buy their
|
|
first package of $20 or more, they count toward your qualification.</p>
|
|
<div id="rosterWrap"><p class="muted small" id="rosterEmpty">Nobody yet. Your link is ready below; share it and this list starts filling.</p></div>
|
|
</div>
|
|
|
|
<div class="card" id="linkCard" hidden>
|
|
<h3>Link your wallet</h3>
|
|
<p class="muted small">Your earnings pay straight to your own wallet, so we need to know which one is yours.
|
|
One free signature links it. It cannot move funds or approve anything. Buying any package links it automatically too.</p>
|
|
<button class="btn" id="linkBtn">Connect & link wallet</button>
|
|
</div>
|
|
|
|
<div class="card" id="activateCard" hidden>
|
|
<h3>Switch on payouts, free</h3>
|
|
<p class="muted small">One free transaction registers your linked wallet on-chain so commissions can reach it,
|
|
and it unlocks your invite link. Buying any package does this automatically.</p>
|
|
<button class="btn sec" id="activateBtn">Activate payouts</button>
|
|
</div>
|
|
|
|
<div class="card">
|
|
<h3>Your invite link, live from day one</h3>
|
|
<p class="muted small">Share it anywhere, starting now. Everyone who joins through it becomes part of
|
|
your line, and you earn 50 percent of every ad package they ever buy, plus levels 2 and 3 as you
|
|
qualify. Just switch on payouts before your people start buying so every payment locks to you.</p>
|
|
<p class="mono" id="inviteLine">…</p>
|
|
<p>
|
|
<button class="btn small sec" id="copyInvite" hidden>Copy link</button>
|
|
<button class="btn small sec" id="copyPitch" hidden>Copy a ready-to-send message</button>
|
|
</p>
|
|
<p class="muted small" id="pitchPreview" hidden></p>
|
|
</div>
|
|
|
|
<div class="card">
|
|
<h3>Buy ad packages</h3>
|
|
<p class="muted small">The full ladder with live pricing is on the <a href="/">home page</a>.
|
|
Purchases from your linked wallet automatically credit this account.</p>
|
|
</div>
|
|
|
|
<div class="card" id="campaignCard" hidden>
|
|
<h3>Your ad campaigns</h3>
|
|
<p class="muted small" id="rateLine">…</p>
|
|
<div id="campList"></div>
|
|
<h3 style="margin-top:18px">New campaign</h3>
|
|
<div class="grid c3">
|
|
<p><select id="cType" style="width:100%">
|
|
<option value="banner">Banner (per impression)</option>
|
|
<option value="text">Text ad (per impression)</option>
|
|
<option value="login">Login ad (per day)</option>
|
|
</select></p>
|
|
<p><input id="cName" placeholder="Campaign name" style="width:100%"></p>
|
|
<p><input id="cBudget" type="number" placeholder="Budget (credits)" min="10" style="width:100%"></p>
|
|
</div>
|
|
<p><input id="cTarget" placeholder="Target URL (https://…)" style="width:100%"></p>
|
|
<p id="cImageRow"><input id="cImage" placeholder="Image URL (banner/login ads)" style="width:100%"></p>
|
|
<p id="cTitleRow" hidden><input id="cTitle" placeholder="Headline (max 60)" style="width:100%"></p>
|
|
<p id="cBodyRow" hidden><input id="cBody" placeholder="Ad text (max 140)" style="width:100%"></p>
|
|
<button class="btn" id="createCampBtn">Launch campaign</button>
|
|
</div>
|
|
|
|
<div id="activityArea" hidden>
|
|
<h2>Your activity, straight from the chain</h2>
|
|
<div class="grid c2">
|
|
<div class="card">
|
|
<h3>Earnings</h3>
|
|
<p class="muted small">Every payout the contract has sent to your wallet. Each line links to the transaction.</p>
|
|
<div class="feed" id="earnFeed"><div class="row muted">Nothing yet.</div></div>
|
|
</div>
|
|
<div class="card">
|
|
<h3>Your referrals</h3>
|
|
<p class="muted small">Activations and qualifying buys in your line.</p>
|
|
<div class="feed" id="refFeed"><div class="row muted">Nothing yet.</div></div>
|
|
</div>
|
|
</div>
|
|
<div class="card">
|
|
<h3>Your purchases</h3>
|
|
<div class="feed" id="buyFeed"><div class="row muted">Nothing yet.</div></div>
|
|
</div>
|
|
</div>
|
|
|
|
<p class="small"><a href="#" id="logoutLink">Log out</a></p>
|
|
</div>
|
|
|
|
<footer><div>InstantAdPay · <a href="/ledger">live ledger</a></div></footer>
|
|
</div>
|
|
<script src="/assets/common.js?v=20260904j"></script>
|
|
<script src="/assets/wallet.js?v=20260904j"></script>
|
|
<script src="/assets/my.js?v=20260904j"></script>
|
|
<script src="/assets/chat.js?v=20260904j"></script>
|
|
</body>
|
|
</html>
|