mirror of
https://github.com/advplyr/audiobookshelf.git
synced 2025-07-12 18:35:00 +02:00
Seperate setUserToken from setUser in store
This commit is contained in:
parent
4ff7355262
commit
d0d152c20d
3 changed files with 13 additions and 14 deletions
|
@ -189,6 +189,7 @@ export default {
|
|||
|
||||
this.$store.commit('libraries/setCurrentLibrary', userDefaultLibraryId)
|
||||
this.$store.commit('user/setUser', user)
|
||||
this.$store.commit('user/setUserToken', user.accessToken)
|
||||
|
||||
this.$store.dispatch('user/loadUserSettings')
|
||||
},
|
||||
|
|
|
@ -45,6 +45,7 @@ export default function ({ $axios, store, $root, app }) {
|
|||
if (originalRequest.url === '/auth/refresh' || originalRequest.url === '/login') {
|
||||
// Refresh failed or login failed, redirect to login
|
||||
store.commit('user/setUser', null)
|
||||
store.commit('user/setUserToken', null)
|
||||
app.router.push('/login')
|
||||
return Promise.reject(error)
|
||||
}
|
||||
|
@ -81,6 +82,7 @@ export default function ({ $axios, store, $root, app }) {
|
|||
|
||||
// Update the token in store and localStorage
|
||||
store.commit('user/setUser', response.user)
|
||||
store.commit('user/setUserToken', newAccessToken)
|
||||
|
||||
// Emit event used to re-authenticate socket in default.vue since $root is not available here
|
||||
if (app.$eventBus) {
|
||||
|
@ -106,6 +108,7 @@ export default function ({ $axios, store, $root, app }) {
|
|||
|
||||
// Clear user data and redirect to login
|
||||
store.commit('user/setUser', null)
|
||||
store.commit('user/setUserToken', null)
|
||||
app.router.push('/login')
|
||||
|
||||
return Promise.reject(refreshError)
|
||||
|
|
|
@ -151,22 +151,17 @@ export const actions = {
|
|||
export const mutations = {
|
||||
setUser(state, user) {
|
||||
state.user = user
|
||||
if (user) {
|
||||
// Use accessToken from user if included in response (for login)
|
||||
if (user.accessToken) localStorage.setItem('token', user.accessToken)
|
||||
else if (localStorage.getItem('token')) {
|
||||
user.accessToken = localStorage.getItem('token')
|
||||
} else {
|
||||
console.error('No access token found for user', user)
|
||||
}
|
||||
} else {
|
||||
localStorage.removeItem('token')
|
||||
}
|
||||
},
|
||||
setUserToken(state, token) {
|
||||
if (!state.user) return
|
||||
state.user.accessToken = token
|
||||
localStorage.setItem('token', token)
|
||||
if (!token) {
|
||||
localStorage.removeItem('token')
|
||||
if (state.user) {
|
||||
state.user.accessToken = null
|
||||
}
|
||||
} else if (state.user) {
|
||||
state.user.accessToken = token
|
||||
localStorage.setItem('token', token)
|
||||
}
|
||||
},
|
||||
updateMediaProgress(state, { id, data }) {
|
||||
if (!state.user) return
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue