Skip to content

Commit c63abfa

Browse files
committed
fix: issue with user showing as logged in even after their session expired
1 parent cdf207b commit c63abfa

File tree

1 file changed

+15
-13
lines changed

1 file changed

+15
-13
lines changed

src/composables/stores/auth.js

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ export default {
4646
BanStore.initBanNotice(user)
4747
$prefs.fetch()
4848
socketLogin(user)
49-
}).catch(() => {})
49+
}).catch(() => userCleanup(`Goodbye ${user.username}, your session has expired`))
5050

5151
const login = (username, password, rememberMe) => authApi.login({ username, password, rememberMe })
5252
.then(dbUser => {
@@ -59,18 +59,20 @@ export default {
5959
}).catch(() => {})
6060

6161
const logout = () => authApi.logout()
62-
.then(() => {
63-
delete user.token // clear token to invalidate session immediately
64-
$appCache.delete(AUTH_KEY)
65-
$prefs.clear()
66-
BanStore.clearBanNotice()
67-
$alertStore.warn(`Goodbye ${user.username}, you have successfully logged out!`)
68-
// redirect to home on logout
69-
if ($route.meta.requiresAuth && $route.path !== '/') $router.push({ path: '/' })
70-
// delay clearing reactive user to give css transitions time to complete
71-
setTimeout(() => Object.assign(user, cloneDeep(emtpyUser)), 500)
72-
socketLogout(emtpyUser)
73-
}).catch(() => {})
62+
.then(() => userCleanup(`Goodbye ${user.username}, you have successfully logged out!`))
63+
64+
const userCleanup = msg => {
65+
delete user.token // clear token to invalidate session immediately
66+
$appCache.delete(AUTH_KEY)
67+
$prefs.clear()
68+
BanStore.clearBanNotice()
69+
$alertStore.warn(msg)
70+
// redirect to home on logout
71+
if ($route.meta.requiresAuth && $route.path !== '/') $router.push({ path: '/' })
72+
// delay clearing reactive user to give css transitions time to complete
73+
setTimeout(() => Object.assign(user, cloneDeep(emtpyUser)), 500)
74+
socketLogout(emtpyUser)
75+
}
7476

7577
const register = (email, username, password) => authApi.register({ email, username, password })
7678
.then(dbUser => {

0 commit comments

Comments
 (0)