diff --git a/public/my.html b/public/my.html index 3a71c3c..db6a8c1 100644 --- a/public/my.html +++ b/public/my.html @@ -7,7 +7,7 @@
Member #—'s RM Circle page Verified on-chain
-
You've landed on Member #—'s page

Get Your 2.
Help Your 2 Get Theirs.

The RM Circle is a team-first build on the Polygon blockchain. Every payout happens on a public smart contract that no one can fake, pause, or edit — no company holds your money. The plan is simple, and it duplicates.

+
You've landed on Member #—'s page

Get Your 2.
Help Your 2 Get Theirs.

The RM Circle is a team-first build on the Polygon blockchain. Every payout happens on a public smart contract that no one can fake, pause, or edit — no company holds your money. The plan is simple, and it duplicates.

Ready to build?
Join the Team →

Dive in now, or scroll for the 60-second overview and the live proof below.
No income is guaranteed.

▶ The 60-second overview — plays right here, no leaving the page.
1
See how it worksWatch the overview above ↑, then the full pay-flow — plain English, no jargon.
2
Get set upA Polygon wallet plus POL to enter. The training walks you through every step.
3
Join the teamEnter under this member — you're placed on the team and start building your own 2.
Don't take our word for it

This is Member #—'s real position — read live from the blockchain.

—POL earned, on-chain
—members on their team
—current level of 8
diff --git a/public/my.js b/public/my.js index ec81db5..31823f6 100644 --- a/public/my.js +++ b/public/my.js @@ -3,6 +3,7 @@ const fmt=n=>Number(n||0).toLocaleString(undefined,{maximumFractionDigits:2}); const date=ts=>ts?new Date(ts*1000).toLocaleDateString(undefined,{year:'numeric',month:'short',day:'numeric'}):'—'; const prompt=document.getElementById('idPrompt'),dash=document.getElementById('dash'); + let openDashTab=false; // which tab opens on load — set by the form/URL; default = pitch // Two-purpose page: a "Team Build" pitch tab (for cold visitors who clicked a // promoted link) and the "Position Dashboard" tab. Persistent — the pitch is @@ -21,6 +22,7 @@ set('pTeam',(d.subtree&&d.subtree.downCount!=null)?String(d.subtree.downCount):'—'); set('pLevel',d.levelName||'—'); const jb=document.getElementById('pJoinBtn'); if(jb){jb.href='/join/'+d.id;jb.textContent='Join under #'+d.id+' →';} + const hj=document.getElementById('pHeroJoin'); if(hj)hj.href='/join/'+d.id; const pp=document.getElementById('pPayouts'); if(pp){ const inc=(d.income||[]).slice(0,3); @@ -84,10 +86,11 @@ }); function render(d){ prompt.classList.add('hidden');dash.classList.remove('hidden'); - // default tab: a cold visitor (hasn't viewed this ID before) opens on the - // Team Build pitch; the member (their own saved ID) opens on their dashboard. + // default tab: shared /my/ link visits open on the Team Build pitch; a + // form lookup, a returning member on bare /my, or a #dash link opens the + // dashboard (openDashTab is set by those paths before load()). renderPitch(d); - try{ setTab(d._priorId===String(d.id)?'dash':'pitch'); }catch(e){ setTab('pitch'); } + setTab(openDashTab?'dash':'pitch'); document.getElementById('dTitle').textContent='#'+d.id; const qb=document.getElementById('dQualified'); if(qb)qb.outerHTML=d.directCount>=2 @@ -342,6 +345,7 @@ e.preventDefault(); const v=document.getElementById('memberId').value.trim(); if(!/^\d{1,15}$/.test(v)){document.getElementById('idError').textContent='Numbers only — the ID from the RM Circle dApp.';return} + openDashTab=true; // they actively looked up an ID — open the dashboard load(v); }); document.getElementById('switchId').addEventListener('click',()=>{ @@ -350,6 +354,9 @@ dash.classList.add('hidden');prompt.classList.remove('hidden'); document.getElementById('memberId').value=''; }); + try{ if(location.hash==='#dash'||new URLSearchParams(location.search).get('tab')==='dash') openDashTab=true; }catch(e){} + const pathHasId=/^\/my\/\d+$/.test(location.pathname); const id=pathId(); + if(id&&!pathHasId)openDashTab=true; // bare /my resolved from storage = returning to your own page if(id)load(id); })(); diff --git a/public/styles.css b/public/styles.css index e2ee7a8..3a063e8 100644 --- a/public/styles.css +++ b/public/styles.css @@ -177,7 +177,13 @@ a.brand{text-decoration:none;color:inherit} .mp-tab.on{background:linear-gradient(160deg,#12293f,#0b1b2b);border-color:var(--teal);color:var(--text)} .mp-tab.on span{color:var(--teal)} .mp-panel{display:none}.mp-panel.on{display:block} -.pitch-hero{padding:8px 0 4px} +.pitch-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:26px;align-items:center;padding:10px 0 6px} +.pitch-hero-cta{display:flex;flex-direction:column;gap:12px;background:linear-gradient(150deg,rgba(243,190,67,.12),rgba(243,190,67,.03));border:1px solid rgba(243,190,67,.32);border-radius:18px;padding:24px 22px;text-align:center} +.pitch-hero-eye{color:var(--gold);text-transform:uppercase;letter-spacing:1.6px;font-weight:800;font-size:12px} +.pitch-hero-btn{font-size:22px;padding:18px 24px;font-weight:900;justify-content:center;box-shadow:0 12px 34px rgba(243,190,67,.3)} +.pitch-hero-hint{color:var(--muted);font-size:13px;line-height:1.5;margin:0} +.pitch-hero-dim{opacity:.7} +@media(max-width:760px){.pitch-hero{grid-template-columns:1fr;gap:18px}.pitch-hero-btn{font-size:20px;padding:16px 22px}} .pitch-h1{font-size:clamp(30px,6vw,52px);line-height:1;letter-spacing:-1.5px;margin:12px 0 12px;font-weight:900} .pitch-lede{font-size:clamp(16px,2.2vw,19px);color:var(--muted);line-height:1.55;max-width:640px;margin:0 0 22px} .pitch-video{margin:2px 0 24px;text-align:center}