From ac39968a6d5a41b85bdf61491d7117da7b53c124 Mon Sep 17 00:00:00 2001 From: Valentyne Stigloher Date: Sun, 14 Sep 2025 13:31:29 +0200 Subject: [PATCH] troubleshoot --- app/components/Account.vue | 6 +++++- app/plugins/auth.ts | 10 ++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/app/components/Account.vue b/app/components/Account.vue index 0c241b799..3f9bf871e 100644 --- a/app/components/Account.vue +++ b/app/components/Account.vue @@ -117,6 +117,7 @@ watch(socialLookup, async (v) => { const router = useRouter(); onMounted(async () => { const user = await $fetch('/api/user/current'); + refreshCookie('token'); if (user) { await setToken(user.token); } @@ -213,7 +214,10 @@ const logoutAll = () => { const doLogout = async () => { await removeToken(); logoutInProgress.value = false; - setTimeout(() => window.location.reload(), 300); + setTimeout(() => { + console.log(localStorage.getItem('account-tokens'), tokenCookie.value, document.cookie); + window.location.reload(); + }, 300); }; const deleteAccount = async () => { diff --git a/app/plugins/auth.ts b/app/plugins/auth.ts index 2c03f275d..fadbca668 100644 --- a/app/plugins/auth.ts +++ b/app/plugins/auth.ts @@ -37,6 +37,7 @@ export default defineNuxtPlugin(async (nuxtApp) => { const store = useMainStore(nuxtApp.$pinia as Pinia); const tokenCookie = useCookie('token', longtimeCookieSetting); + console.log('setup', tokenCookie.value, document?.cookie, store.token); if (tokenCookie.value) { await store.setToken(tokenCookie.value); if (!store.token) { @@ -68,12 +69,16 @@ export default defineNuxtPlugin(async (nuxtApp) => { accounts[account.username] = { token, account }; } } + console.log('getAccounts', fallback, localStorage.getItem('account-tokens'), accounts, tokenCookie.value, document?.cookie, store.token); return accounts; }; const saveAccounts = (accounts: Record): void => { store.setAccounts(accounts); + console.log('saveAccounts', accounts, localStorage.getItem('account-tokens')); + console.trace(); window.localStorage.setItem('account-tokens', Object.values(accounts).map((x) => x.token) .join('|')); + console.log('saveAccounts, done', accounts, localStorage.getItem('account-tokens')); }; const accounts = async (): Promise => { @@ -105,6 +110,8 @@ export default defineNuxtPlugin(async (nuxtApp) => { }; const removeToken = async (username: string | null = null): Promise => { const accounts = await getAccounts(); + console.log('removeToken', username, accounts, toRaw(store.user), localStorage.getItem('account-tokens'), tokenCookie.value, document?.cookie, store.token); + console.trace(); if (store.user) { delete accounts[username || store.user.username]; @@ -113,12 +120,15 @@ export default defineNuxtPlugin(async (nuxtApp) => { if (Object.keys(accounts).length === 0) { await store.setToken(null); tokenCookie.value = null; + console.log('removeToken, set cookie', tokenCookie.value, document?.cookie, store.token); } else { await store.setToken(Object.values(accounts)[0].token); tokenCookie.value = store.token; } } + console.log('removeToken, saving', accounts, toRaw(store.user), localStorage.getItem('account-tokens'), tokenCookie.value, document?.cookie, store.token); saveAccounts(accounts); + console.log('removeToken, done', toRaw(store.user), localStorage.getItem('account-tokens'), tokenCookie.value, document?.cookie, store.token); }; return { provide: {