From 5a5ea3ccc327ff52fb1c313998d90e4bfefea90a Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Tue, 25 Oct 2022 14:12:05 -0700 Subject: pin expiry --- src/components/Pin.svelte | 13 +++---------- src/lib/store.js | 11 ++++------- src/routes/send/[...text]/+page.server.js | 2 +- 3 files changed, 8 insertions(+), 18 deletions(-) diff --git a/src/components/Pin.svelte b/src/components/Pin.svelte index 86e78ac1..8f33a7f3 100644 --- a/src/components/Pin.svelte +++ b/src/components/Pin.svelte @@ -1,13 +1,11 @@ @@ -29,13 +27,8 @@ diff --git a/src/lib/store.js b/src/lib/store.js index c648a657..3174a86c 100644 --- a/src/lib/store.js +++ b/src/lib/store.js @@ -1,10 +1,8 @@ import { get, writable } from 'svelte/store'; import { browser } from '$app/environment'; -// creates a Svelte store synced to sessionStorage with the given key and default value -const persistSession = (key, defaultValue, expiry = 60 * 5 * 1000) => { - if (browser && new Date() - expiry > sessionStorage.getItem(key + 'time')) { - console.log('expired', sessionStorage.getItem(key + 'time')); +const persistSession = (key, defaultValue, expiry) => { + if (expiry && browser && new Date() - expiry > sessionStorage.getItem(key + 'time')) { sessionStorage.removeItem(key); } @@ -14,14 +12,13 @@ const persistSession = (key, defaultValue, expiry = 60 * 5 * 1000) => { : defaultValue ); - browser && sessionStorage.setItem(key + 'time', Date.now()); + expiry && browser && sessionStorage.setItem(key + 'time', Date.now()); s.subscribe((v) => browser && sessionStorage.setItem(key, JSON.stringify(v))); return s; }; -// creates a Svelte store synced to localStorage with the given key and default value const persistLocal = (key, defaultValue) => { let s = writable( browser && localStorage.getItem(key) && localStorage.getItem(key) !== 'undefined' @@ -45,4 +42,4 @@ export const colorTheme = writable('from-primary to-gradient'); export const tempProfileFiles = writable(); export const avatarUpload = writable(); export const bannerUpload = writable(); -export const pin = persistSession('pin'); +export const pin = persistSession('pin', undefined, 5 * 60 * 1000); diff --git a/src/routes/send/[...text]/+page.server.js b/src/routes/send/[...text]/+page.server.js index 45bb597d..b909ab4d 100644 --- a/src/routes/send/[...text]/+page.server.js +++ b/src/routes/send/[...text]/+page.server.js @@ -55,6 +55,6 @@ export const actions = { const form = await request.formData(); await parse(form.get('text')); - return invalid(403, { error: 'Failed to recognize input' }); + return invalid(403, { error: 'Does not compute, try again' }); } }; -- cgit v1.2.3