3b35afa944
Webinar flyer re-dated for Thursday 24 September
main
martbost
2026-09-24 06:50:10 -05:00
a95633c6ca
Day page: a past date with no activity is not found, and never written to disk
martbost
2026-09-23 05:46:00 -05:00
4c6fb7bed2
A page per day: the whole contract, midnight to midnight
martbost
2026-09-23 05:41:31 -05:00
e6cdd77d17
Webinar flyer: correct the time list
martbost
2026-09-22 08:50:04 -05:00
2c6b116e9a
Add to Calendar: hand phones the .ics file instead of a Google link
martbost
2026-09-22 06:26:21 -05:00
9249ae6368
Member milestones: a celebration photo + caption to the proof channel, team feed and shared payments topic when the contract reaches 1,000 members (then 2,500 / 5,000 / 10,000), once per milestone; sendPhoto capability; admin preview route
martbost
2026-09-21 04:50:56 -05:00
d72248bacb
SafePal is the preferred wallet: listed first with a Recommended tag in the picker, detected by flag/window.safepal, named first in the in-app notice, join error, chatbot answer and AI prompt
martbost
2026-09-20 08:45:14 -05:00
c3523bdac2
Webinar flyer for Tuesday, September 22 (event pop-up)
martbost
2026-09-20 06:40:08 -05:00
f28804862b
Training: two NAS zones (above the first video, above the Circle Method); CSP allows the NAS script and https images
martbost
2026-09-19 16:41:25 -05:00
f18ef592fa
Make announce-once survive a deploy, not just a restart
martbost
2026-09-18 10:02:14 -05:00
812cbd03b8
Log every Telegram send with a per-process id while tracing duplicate payment lines
martbost
2026-09-18 09:55:51 -05:00
e43b812f97
Refuse to post the same payment line twice, at the sender
martbost
2026-09-18 09:37:10 -05:00
85a6056354
Announce each payout once, the same way registrations and upgrades already are
martbost
2026-09-18 09:31:56 -05:00
1284d28891
Keep a member's link inside their own team, and stop the dashboard contradicting the admin
martbost
2026-09-18 09:08:24 -05:00
2f4b70c886
Members can take it back off, and OPTIONAL is now impossible to miss
martbost
2026-09-17 06:52:43 -05:00
88a3ad1149
Captions: add German and Portuguese, make them findable, and fix the dead "Add mine" button
martbost
2026-09-17 06:39:08 -05:00
1c51599f07
Captions: Manson's five videos, in Italian, French and Spanish
martbost
2026-09-17 06:20:46 -05:00
b3385ca3f8
Captions: translated subtitles for the training videos, no re-render, no re-voicing
martbost
2026-09-17 06:06:34 -05:00
8bdc105a7a
Live visitor smoke check, and the written explanation for Manson
martbost
2026-09-17 04:53:49 -05:00
91a6893df9
Member profiles are optional: an invitation on the dashboard, never a gate
martbost
2026-09-17 04:44:09 -05:00
0189278aa5
QA: end-to-end join-flow harness proving the post-registration sign-in, including the refuse regression
martbost
2026-09-16 19:05:04 -05:00
49a0778a53
Post-join sign-in actually works: live position lookup for a cold index, ordered calls, redirect no longer races the signature
martbost
2026-09-16 18:49:33 -05:00
6f1c9ff8ca
New members are signed in to their inbox right after registering, so the profile gate actually fires
martbost
2026-09-16 18:11:12 -05:00
2f90e1a97f
QA pass on the member profile gate: stable button ids, completion opens the dashboard tab, local devCode, 47-test E2E suite
martbost
2026-09-16 17:40:03 -05:00
2c5fff20f5
Members can change their username and email: in-place profile card replaces the separate alert-email opt-in for signed-in owners
martbost
2026-09-16 17:28:26 -05:00
1ea8f8df48
Profile gate fires only on the member's own dashboard, not when they browse a teammate's page
martbost
2026-09-16 17:18:15 -05:00
dd74ded287
Profile read endpoint answers 200 signedIn:false for visitors, so a shared /my link logs no console error
martbost
2026-09-16 17:05:05 -05:00
7d07fc01f1
Required member profile: username + verified email per position, gated at proof of ownership
martbost
2026-09-16 16:56:35 -05:00
8521f7a3f2
Triple Play: highlight the Corona catch (Gen 8 Corona buys pay your Gen 1, which is you) on how-pay-works, tools objection bank, chatbot canned + AI prompt
martbost
2026-09-16 11:46:11 -05:00
8da1c144ea
Marty is a team leader, not a program founder: fix the #21 upgrade-tip wording on how-pay-works and in the chatbot
martbost
2026-09-16 11:44:11 -05:00
c89bbb5c59
how-pay-works: keep level and amount cells on one line in the level-scale table
martbost
2026-09-16 11:43:41 -05:00
fedbb7f0f7
how-pay-works: depth-ladder diagram shows all 7 paying layers; Premium/Standard table lists all 7 upgrades; level-scale table adds a green net-after-upgrade-price column
martbost
2026-09-16 11:40:29 -05:00
c371149507
Chatbot: canned + AI-prompt answer for reading the generation table (level you hold vs level they buy; Vertex row is gen 7, not a total)
martbost
2026-09-16 11:35:57 -05:00
19127a11a1
how-pay-works: generation table shows the level you hold AND the level each generation buys (Clinton's off-by-one reading), plus running-total note
martbost
2026-09-16 11:34:42 -05:00
cbfc642187
Upgrade promo overlay: flyer shown once per session on the dashboard and Mini App (announce.js promo mode, admin-configurable promo* keys)
martbost
2026-09-16 04:22:53 -05:00
59db1bd711
Generation Pay: consistent row labels (positions moved to the header), no wrap on phones
martbost
2026-09-15 13:39:36 -05:00