Gate consistency video to members; embed on rhythm page; add vertical cut
- Members-only: the stay-consistent video now requires a wallet-verified session (server 403 + training-page lock UI), matching Module 3. - Embedded on /weekly-rhythm above the sheet (hidden in print) with a members-only fallback card for signed-out visitors. - Added a ~31s vertical (1080x1920) social cut, ungated, for Telegram/social. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -24,7 +24,7 @@
|
||||
@media print{
|
||||
@page{size:letter;margin:0.55in}
|
||||
body{background:#fff!important;color:#111!important}
|
||||
header,footer,nav,#fsPrintBtn,#rmcTrBtn,#rmcTrPanel,.chat-fab,.chat-panel,.fs-print-btn,.pp-stack{display:none!important}
|
||||
header,footer,nav,#fsPrintBtn,#rmcTrBtn,#rmcTrPanel,.chat-fab,.chat-panel,.fs-print-btn,.pp-stack,.wr-video{display:none!important}
|
||||
.fs-wrap{max-width:none;padding:0}
|
||||
.fs-sheet{background:#fff;border:0;border-radius:0;padding:0;color:#111}
|
||||
.fs-sheet h1,.fs-sec h2{color:#111}
|
||||
@@ -38,6 +38,10 @@
|
||||
<body>
|
||||
<div class="scr-nav"><a href="/my">← My Dashboard</a><a href="/suite">🧰 My Tools</a><a href="/tools">🎬 Promo Tools</a></div>
|
||||
<div class="fs-wrap">
|
||||
<div class="wr-video" style="max-width:820px;margin:0 auto 22px">
|
||||
<div style="font-weight:800;font-size:18px;margin:0 0 8px">▶ Watch first — Consistency Wins the Race</div>
|
||||
<video id="wrVid" class="video-frame" style="display:block;width:100%;border-radius:12px;aspect-ratio:16/9;background:#000" controls preload="none" poster="/v/rmc-stay-consistent-poster.jpg" src="/v/rmc-stay-consistent-bfbaa04500.mp4"></video>
|
||||
</div>
|
||||
<div class="fs-sheet">
|
||||
<h1>🔁 The Weekly Rhythm</h1>
|
||||
<p class="tag">Twenty minutes. Same time. Every week. Put it in the calendar like a dentist appointment you can't weasel out of.</p>
|
||||
@@ -80,6 +84,17 @@
|
||||
<a href="/training#stay-consistent" class="btn btn-secondary" style="margin-left:8px">▶ Watch: Stay consistent</a><a href="/training#lesson-10" class="btn btn-secondary" style="margin-left:8px">▶ Watch Lesson 10</a>
|
||||
<a href="/my" class="btn btn-secondary" style="margin-left:8px">← My dashboard</a></div>
|
||||
</div>
|
||||
<script>
|
||||
(async function(){
|
||||
var v=document.getElementById('wrVid'); if(!v) return;
|
||||
var member=null; try{ var r=await fetch('/api/public/msg-me'); if(r.ok) member=await r.json(); }catch(e){}
|
||||
if(member&&member.id) return; // signed-in member: leave the player as-is
|
||||
var box=document.createElement('div'); box.className='video-frame';
|
||||
box.style.cssText='display:flex;align-items:center;justify-content:center;aspect-ratio:16/9;border-radius:12px;background:#08131f;text-align:center;padding:20px';
|
||||
box.innerHTML='<div><div style="font-size:30px">🔒</div><div style="font-weight:800;margin:6px 0 4px">Members area</div><p class="micro" style="color:var(--muted,#aebdca);margin:0 0 12px;max-width:440px">This one is for members. Open it from the training page with the wallet that owns your position, or through the Telegram Mini App.</p><a class="btn btn-secondary" href="/training#stay-consistent">Unlock on the training page</a></div>';
|
||||
v.replaceWith(box);
|
||||
})();
|
||||
</script>
|
||||
<script src="/qrlib.js"></script>
|
||||
<script src="/fast-start.js"></script>
|
||||
<script src="/chat.js" defer></script>
|
||||
|
||||
Reference in New Issue
Block a user