diff options
Diffstat (limited to 'src/routes/(app)/otpsecret/+server.js')
| -rw-r--r-- | src/routes/(app)/otpsecret/+server.js | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/routes/(app)/otpsecret/+server.js b/src/routes/(app)/otpsecret/+server.js new file mode 100644 index 00000000..8dec7778 --- /dev/null +++ b/src/routes/(app)/otpsecret/+server.js @@ -0,0 +1,8 @@ +import { auth, post } from '$lib/utils'; +import Qr from 'qrcode-base64'; + +export async function POST({ cookies, locals, request }) { + let { secret } = await post('/otpsecret', await request.json(), auth(cookies)); + let uri = `otpauth://totp/coinos:${locals.user.username}?secret=${secret}&period=30&digits=6&algorithm=SHA1&issuer=coinos`; + return new Response(JSON.stringify({ secret, uri, qr: Qr.drawImg(uri, { size: 600 }) })); +} |
