One way in: email sign-in only; wallet-only sessions finish setup by email
- Remove the "sign in with just your wallet" door from the sign-in card. - A wallet-only session (no account) is walked to the email card with a finish-setup note; verifying the code links that wallet to the account and retires the wallet-only session, so member #, purchases and payouts stay attached and username/profile work. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
+5
-11
@@ -467,9 +467,13 @@
|
||||
|
||||
async function render() {
|
||||
const me = await IAP.refreshNavWallet();
|
||||
const signedIn = me && me.signedIn;
|
||||
// one way in: email. A wallet-only session (no account) is sent back to the
|
||||
// email card with a finish-setup note; verifying the code links that wallet.
|
||||
const walletOnly = !!(me && me.signedIn && !me.email);
|
||||
const signedIn = me && me.signedIn && !walletOnly;
|
||||
$('authArea').hidden = !!signedIn;
|
||||
$('memberArea').hidden = !signedIn;
|
||||
if ($('mcFinish')) $('mcFinish').hidden = !walletOnly;
|
||||
if (!signedIn) return;
|
||||
if ($('adminLink')) $('adminLink').hidden = !me.isAdmin; // admin portal link, only for ADMIN_EMAIL
|
||||
setPane(location.hash.slice(1) || 'overview');
|
||||
@@ -1403,16 +1407,6 @@
|
||||
if (!(await showGauntlet())) await showLoginAd(); // welcome tour outranks the login ad
|
||||
await render();
|
||||
}));
|
||||
$('walletSigninLink').addEventListener('click', async e => {
|
||||
e.preventDefault();
|
||||
try {
|
||||
IAP.status('Check your wallet for the free sign-in signature…');
|
||||
await IAPWallet.signIn();
|
||||
IAP.status('Signed in with your wallet.', 'ok');
|
||||
if (!(await showGauntlet())) await showLoginAd(); // welcome tour outranks the login ad
|
||||
await render();
|
||||
} catch (err) { IAP.status((err && err.message) || String(err), 'bad'); }
|
||||
});
|
||||
$('linkBtn').addEventListener('click', busy($('linkBtn'), async () => {
|
||||
IAP.status('Check your wallet for the free link signature…');
|
||||
await IAPWallet.signIn(); // server binds the wallet to the signed-in email account
|
||||
|
||||
Reference in New Issue
Block a user