From c5f100066f11593341c020d7bbd3eb1dd9a73663 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Wed, 31 Aug 2022 15:22:36 -0700 Subject: put otpauth url in 2fa qr code --- src/components/RegisterOrLogin.svelte | 18 +++++++- src/locales/en.json | 5 ++- src/routes/[username]/settings/_pos.svelte | 6 +-- src/routes/[username]/settings/_security.svelte | 58 +++++++++++++++++-------- 4 files changed, 62 insertions(+), 25 deletions(-) (limited to 'src') diff --git a/src/components/RegisterOrLogin.svelte b/src/components/RegisterOrLogin.svelte index d83ed21d..7177f353 100644 --- a/src/components/RegisterOrLogin.svelte +++ b/src/components/RegisterOrLogin.svelte @@ -10,7 +10,8 @@ let username = 'bob', password = 'pw', - email = 'satoshi@nakamoto.com'; + email = 'satoshi@nakamoto.com', + twofa = ''; let revealPassword = false; @@ -89,6 +90,21 @@ + {#if pageID === 'signIn'} +
+ + + +
+ {/if} + {#if pageID === 'register'}

{$t('login.passwordRecommendation')} diff --git a/src/locales/en.json b/src/locales/en.json index 8443ca3c..76b93303 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -106,6 +106,7 @@ } }, "login": { + "token": "2FA Token", "username": "Username", "password": "Password", "email": "Email", @@ -145,8 +146,8 @@ "showQR": "Show QR" }, "settings": { - "oneTimeCode": "Enter one-time code to enable", - "accountId": "Account ID", + "oneTimeCode": "Enter one-time code", + "accountId": "Account Secret", "header": "Settings", "ACCOUNT": "ACCOUNT", "POINT_OF_SALE": "POINT OF SALE", diff --git a/src/routes/[username]/settings/_pos.svelte b/src/routes/[username]/settings/_pos.svelte index 83a942bc..03f45771 100644 --- a/src/routes/[username]/settings/_pos.svelte +++ b/src/routes/[username]/settings/_pos.svelte @@ -27,9 +27,9 @@

- - +
diff --git a/src/routes/[username]/settings/_security.svelte b/src/routes/[username]/settings/_security.svelte index 5b7aaf8e..0c5c7aa3 100644 --- a/src/routes/[username]/settings/_security.svelte +++ b/src/routes/[username]/settings/_security.svelte @@ -14,11 +14,17 @@ let tokenInput, pinInput; $: if (settingPin) pinInput && tick().then(pinInput.focusFirstInput); - $: if (setting2fa) tokenInput && tick().then(tokenInput.focusFirstInput); + $: if (setting2fa || disabling2fa) tokenInput && tick().then(tokenInput.focusFirstInput); + + let reset = () => { + token = ''; + code = []; + return true; + }; let togglePin = () => (settingPin = !settingPin); - let toggleEnabling = () => (setting2fa = !setting2fa); - let toggleDisabling = () => (disabling2fa = !disabling2fa); + let toggleEnabling = () => reset() && (setting2fa = !setting2fa); + let toggleDisabling = () => reset() && (disabling2fa = !disabling2fa); $: enable2fa(token); let enable2fa = async (twoFa) => { @@ -47,6 +53,8 @@ failure('Failed to disable 2fa, try again'); } }; + + $: otpUri = `otpauth://totp/coinos:${$user.username}?secret=${$user.otpsecret}&period=30&digits=6&algorithm=SHA1&issuer=coinos`;
@@ -90,12 +98,15 @@
{#if setting2fa} - + + +
{$t('user.settings.accountId')}
{$user.otpsecret}
+
{$t('user.settings.oneTimeCode')}
@@ -108,17 +119,15 @@
{:else if disabling2fa} -
- {$t('user.settings.oneTimeCode')}
- - - - - - - - -
+ {$t('user.settings.oneTimeCode')}
+ + + + + + + + {:else} {$t('user.settings.twofa')}

@@ -130,10 +139,21 @@ {$t('user.settings.twofaDisable')} {:else} - + {$t('user.settings.twofa')} +

+ {$t('user.settings.twofaDescription')} +

+ {#if $user.twofa} + + {:else} + + {/if} {/if} {/if}
-- cgit v1.2.3