Newsletter opt-in: silent Sendy subscribe on join
Pre-checked "InstantAdPay newsletter" opt-in on the join screen (read by both the email-code and password signup paths). On new-account creation only, the server silently subscribes them to the Sendy "InstantAdPay Newsletter" list (boolean=true, opt-out always wins). New sendy.js helper reads the API key from SENDY_API_KEY env or DATA_DIR/sendy.key on the volume (same pattern as sendgrid.key); subscribe is fire-and-forget and never blocks signup. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
+2
-2
@@ -1332,7 +1332,7 @@
|
||||
IAP.status('Fresh code sent.', 'ok');
|
||||
}));
|
||||
$('mcVerifyBtn').addEventListener('click', busy($('mcVerifyBtn'), async () => {
|
||||
const r = await api('/api/auth/email/verify', { email: $('mcEmail').value, code: $('mcCode').value });
|
||||
const r = await api('/api/auth/email/verify', { email: $('mcEmail').value, code: $('mcCode').value, newsletter: !!($('nlOptin') && $('nlOptin').checked) });
|
||||
IAP.status('You are in.', 'ok');
|
||||
if (r.created && !(r.account && r.account.username)) await showOnboard(); // pick a username first
|
||||
if (!(await showGauntlet())) await showLoginAd(); // welcome tour outranks the login ad
|
||||
@@ -1360,7 +1360,7 @@
|
||||
}
|
||||
|
||||
$('signupBtn').addEventListener('click', busy($('signupBtn'), async () => {
|
||||
const r = await api('/api/signup', { email: $('suEmail').value, password: $('suPass').value });
|
||||
const r = await api('/api/signup', { email: $('suEmail').value, password: $('suPass').value, newsletter: !!($('nlOptin') && $('nlOptin').checked) });
|
||||
IAP.status('Welcome aboard. You are in.', 'ok');
|
||||
if (!(r.account && r.account.username)) await showOnboard();
|
||||
await render();
|
||||
|
||||
Reference in New Issue
Block a user