Promo tools > PolHunter: the two vertical spots with download, caption carrying the member's link, share buttons and the platform guide

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
martbost
2026-09-21 09:59:58 -05:00
parent 260daaf9d0
commit a403ce3520
2 changed files with 18 additions and 1 deletions
+14
View File
@@ -238,6 +238,20 @@ window.IAPPromo = (function () {
{ name: 'Telegram or WhatsApp', text: '\u{1F3AF} PolHunter is live. Missions across our sites, one code to find per site, random POL drips paid straight to your wallet. The hiding place moves every day. Start here: ' + pl }, { name: 'Telegram or WhatsApp', text: '\u{1F3AF} PolHunter is live. Missions across our sites, one code to find per site, random POL drips paid straight to your wallet. The hiding place moves every day. Start here: ' + pl },
{ name: 'Email swipe', subject: 'A scavenger hunt that pays in POL', text: 'Hey,\n\nQuick one. I have been testing something called PolHunter.\n\nYou pick a mission, spend a couple of minutes on the site it names, and your personal code appears somewhere on the page. Tap it to copy, paste it on your board, and a random drip of POL goes to your wallet, on chain, with a link to prove it. Three missions a day, a leaderboard with weekly prizes, and the hiding place moves every day.\n\nIt is free to start. You need an InstantAdPay account (also free) and a wallet, and the site walks you through both.\n\nStart here: ' + pl + '\n\nTell me what your first find pays.' }, { name: 'Email swipe', subject: 'A scavenger hunt that pays in POL', text: 'Hey,\n\nQuick one. I have been testing something called PolHunter.\n\nYou pick a mission, spend a couple of minutes on the site it names, and your personal code appears somewhere on the page. Tap it to copy, paste it on your board, and a random drip of POL goes to your wallet, on chain, with a link to prove it. Three missions a day, a leaderboard with weekly prizes, and the hiding place moves every day.\n\nIt is free to start. You need an InstantAdPay account (also free) and a wallet, and the site walks you through both.\n\nStart here: ' + pl + '\n\nTell me what your first find pays.' },
]; ];
// the two spots (photoreal / animated): player, download, caption with the member's link, share buttons
const SP = 'https://coolify-saasytop.nyc3.digitaloceanspaces.com/promo/';
const SPOTS = [
{ id: 'photoreal', name: 'Photoreal: the hunt in the forest', file: 'polhunter-spot-photoreal.mp4', poster: 'polhunter-spot-photoreal-poster.jpg', best: 'Facebook, YouTube Shorts, an older audience', cap: 'Somewhere on one of our sites, a code is waiting. Find it, tap it, paste it on your board, and a drip of Polygon lands in your wallet. On chain, with a link to prove it. Free to play. Start here: ' + pl + ' #PolHunter #Polygon #crypto #scavengerhunt' },
{ id: 'animated', name: 'Animated: the explorer and the glass coin', file: 'polhunter-spot-animated.mp4', poster: 'polhunter-spot-animated-poster.jpg', best: 'TikTok, Instagram Reels, a younger crowd', cap: 'A scavenger hunt that pays in Polygon. Pick a mission, find the glass coin, tap it, and the drip lands in your wallet instantly. Three missions a day, badges, weekly prizes. 100% free. ' + pl + ' #PolHunter #Polygon #crypto #gaming' },
];
const ps = $('phSpots'); if (ps) { ps.innerHTML = '';
for (const s of SPOTS) { const d = document.createElement('div'); d.className = 'promo-block';
d.innerHTML = '<div class="pb-head"><span class="lab">' + esc(s.name) + '</span> <span class="muted small">Best on: ' + esc(s.best) + '</span></div><video controls playsinline preload="none" poster="' + SP + s.poster + '" src="' + SP + s.file + '" style="width:100%;max-width:300px;border-radius:12px;display:block;margin:8px auto"></video><div class="pb-text">' + esc(s.cap) + '</div>';
const row = document.createElement('div'); row.className = 'pb-actions';
row.appendChild(linkBtn(SP + s.file, 'Download the video')); row.appendChild(copyBtn(s.cap, 'Copy caption'));
[linkBtn('https://x.com/intent/tweet?text=' + enc(s.cap), 'X'), linkBtn('https://www.facebook.com/sharer/sharer.php?u=' + enc(pl), 'Facebook'), linkBtn('https://t.me/share/url?url=' + enc(pl) + '&text=' + enc(s.cap.replace(pl, '').trim()), 'Telegram'), linkBtn('https://wa.me/?text=' + enc(s.cap), 'WhatsApp')].forEach(b => row.appendChild(b));
d.appendChild(row); ps.appendChild(d); }
}
const pp = $('phPosts'); pp.innerHTML = ''; const pp = $('phPosts'); pp.innerHTML = '';
for (const p of PH_POSTS) { const extras = p.subject ? [] : [linkBtn('https://x.com/intent/tweet?text=' + enc(p.text), 'X'), linkBtn('https://t.me/share/url?url=' + enc(pl) + '&text=' + enc(p.text.replace(pl, '').trim()), 'Telegram')]; pp.appendChild(block(p.text, '<span class="lab">' + esc(p.name) + '</span>' + (p.subject ? ' <span class="muted small">Subject: ' + esc(p.subject) + '</span>' : ''), extras)); } for (const p of PH_POSTS) { const extras = p.subject ? [] : [linkBtn('https://x.com/intent/tweet?text=' + enc(p.text), 'X'), linkBtn('https://t.me/share/url?url=' + enc(pl) + '&text=' + enc(p.text.replace(pl, '').trim()), 'Telegram')]; pp.appendChild(block(p.text, '<span class="lab">' + esc(p.name) + '</span>' + (p.subject ? ' <span class="muted small">Subject: ' + esc(p.subject) + '</span>' : ''), extras)); }
const sizes = [['728x90', 'Leaderboard'], ['468x60', 'Mobile leaderboard'], ['300x250', 'Medium rectangle'], ['250x250', 'Square'], ['125x125', 'Button'], ['160x600', 'Skyscraper'], ['1200x630', 'Social card'], ['1080x1080', 'Instagram square']]; const sizes = [['728x90', 'Leaderboard'], ['468x60', 'Mobile leaderboard'], ['300x250', 'Medium rectangle'], ['250x250', 'Square'], ['125x125', 'Button'], ['160x600', 'Skyscraper'], ['1200x630', 'Social card'], ['1080x1080', 'Instagram square']];
+4 -1
View File
@@ -757,6 +757,9 @@
<div><video controls playsinline preload="metadata" poster="https://polhunter.com/video/polhunter-teaser-poster.jpg" src="https://polhunter.com/video/polhunter-teaser.mp4?v=20260921a" style="width:100%;border-radius:12px"></video><p class="small" style="margin:6px 0 0"><a href="https://polhunter.com/video/polhunter-teaser.mp4?v=20260921a" download="polhunter-teaser.mp4">Download the teaser</a></p></div> <div><video controls playsinline preload="metadata" poster="https://polhunter.com/video/polhunter-teaser-poster.jpg" src="https://polhunter.com/video/polhunter-teaser.mp4?v=20260921a" style="width:100%;border-radius:12px"></video><p class="small" style="margin:6px 0 0"><a href="https://polhunter.com/video/polhunter-teaser.mp4?v=20260921a" download="polhunter-teaser.mp4">Download the teaser</a></p></div>
<div><video controls playsinline preload="metadata" poster="https://coolify-saasytop.nyc3.digitaloceanspaces.com/training/polhunter-feeder.jpg?v=20260921a" src="https://coolify-saasytop.nyc3.digitaloceanspaces.com/training/polhunter-feeder.mp4?v=20260921a" style="width:100%;border-radius:12px"></video><p class="small" style="margin:6px 0 0"><a href="https://coolify-saasytop.nyc3.digitaloceanspaces.com/training/polhunter-feeder.mp4?v=20260921a" download="polhunter-feeder.mp4">Download the explainer</a></p></div> <div><video controls playsinline preload="metadata" poster="https://coolify-saasytop.nyc3.digitaloceanspaces.com/training/polhunter-feeder.jpg?v=20260921a" src="https://coolify-saasytop.nyc3.digitaloceanspaces.com/training/polhunter-feeder.mp4?v=20260921a" style="width:100%;border-radius:12px"></video><p class="small" style="margin:6px 0 0"><a href="https://coolify-saasytop.nyc3.digitaloceanspaces.com/training/polhunter-feeder.mp4?v=20260921a" download="polhunter-feeder.mp4">Download the explainer</a></p></div>
</div> </div>
<div class="card-head"><h3>Short videos for TikTok, Reels and Shorts</h3><span class="sub">two forty-second vertical spots, captions built in, no voice-over</span></div>
<div id="phSpots" style="display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;margin:0 0 10px"></div>
<details style="margin:0 0 16px"><summary style="cursor:pointer;font-weight:600">Where each one works best</summary><ul class="small" style="margin:8px 0 0 18px;padding:0;line-height:1.55"><li><b>TikTok:</b> the animated one first. Upload the file itself, never a link. The hook is built into the first two seconds. Paste the caption, keep three to five hashtags, and put your PolHunter link in your bio; TikTok does not make caption links clickable. Answer comments with "link in bio".</li><li><b>Instagram Reels and Stories:</b> either spot; animated tends to travel further on Reels. The link goes in your bio, or post the spot to your Story with the link sticker, which is the one place on Instagram the link is tappable.</li><li><b>YouTube Shorts:</b> the photoreal one. Title it with PolHunter, put the link in the description and pin it as the first comment.</li><li><b>Facebook feed, Reels and groups:</b> the photoreal one for an older crowd. Feed and group posts can carry the link right in the caption. Facebook keeps your name on the link when you use the share buttons here.</li><li><b>X:</b> either spot, uploaded natively, with the caption and the link in the post.</li><li><b>Telegram and WhatsApp:</b> send the video file with your link and one line under it, or use the share buttons to send the link with the caption.</li><li><b>Two rules:</b> post one spot, then the other a few days later, never both in one post. And never promise amounts; the drips are small and random, and the caption already says free to play.</li></ul></details>
<div class="card-head"><h3>Posts and a swipe</h3><span class="sub">your link is already in them</span></div> <div class="card-head"><h3>Posts and a swipe</h3><span class="sub">your link is already in them</span></div>
<div id="phPosts"></div> <div id="phPosts"></div>
<div class="card-head" style="margin-top:14px"><h3>Banners</h3><span class="sub">eight sizes, each linked to you</span></div> <div class="card-head" style="margin-top:14px"><h3>Banners</h3><span class="sub">eight sizes, each linked to you</span></div>
@@ -1066,7 +1069,7 @@
</div> </div>
<script src="/assets/common.js?v=20260916a"></script> <script src="/assets/common.js?v=20260916a"></script>
<script src="/assets/wallet.js?v=20260911a"></script> <script src="/assets/wallet.js?v=20260911a"></script>
<script src="/assets/promo.js?v=20260921c"></script> <script src="/assets/promo.js?v=20260921d"></script>
<script src="/assets/my.js?v=20260924c"></script> <script src="/assets/my.js?v=20260924c"></script>
<script src="/assets/chat.js?v=20260907l"></script> <script src="/assets/chat.js?v=20260907l"></script>
</body> </body>