This repository has been archived on 2026-06-29. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
spellsaurus/client/src/store/modules/user.store.js
2020-12-18 19:34:02 +01:00

60 lines
1.0 KiB
JavaScript

// API
import { RepositoryFactory } from "~/api/repositories"
const Users = RepositoryFactory.get('users')
export const namespaced = true
const state = {
status: {
logged: false,
user_token: null,
}
};
const getters = {
getUserToken: state => {
if (state.status.logged) {
return state.status.user_token
} else {
return false
}
}
};
const mutations = {
loginUser(state, user_token) {
state.status.user_token = user_token;
state.status.logged = true;
},
logoutUser(state) {
state.status.user_token = null;
state.status.logged = false;
}
};
const actions = {
user_login ({ commit }, data) {
return new Promise((resolve, reject) => {
Users.login(data)
.then(v => {
let user_token = v.data.token;
commit('loginUser', user_token);
resolve(user_token);
})
.catch(() => {
reject();
});
})
},
user_logout ({ commit }) {
commit('logoutUser');
}
};
export default {
state,
getters,
actions,
mutations,
};