diff --git a/nginx/vue/src/components/admin/Login.vue b/nginx/vue/src/components/admin/Login.vue index d6aa1fc..29b5fc0 100644 --- a/nginx/vue/src/components/admin/Login.vue +++ b/nginx/vue/src/components/admin/Login.vue @@ -10,17 +10,23 @@ const loggedIn = computed(() => !!auth.user.username); function handleLogin() { auth.logIn(username.value, password.value); } + +function handleLogout() { + auth.logOut(); +} diff --git a/nginx/vue/src/components/home/Links.vue b/nginx/vue/src/components/home/Links.vue index d090a21..baf8cd5 100644 --- a/nginx/vue/src/components/home/Links.vue +++ b/nginx/vue/src/components/home/Links.vue @@ -1,22 +1,10 @@ diff --git a/nginx/vue/src/components/home/Stamps.vue b/nginx/vue/src/components/home/Stamps.vue index d7a3149..5715ec8 100644 --- a/nginx/vue/src/components/home/Stamps.vue +++ b/nginx/vue/src/components/home/Stamps.vue @@ -1,14 +1,9 @@ diff --git a/nginx/vue/src/stores/auth.js b/nginx/vue/src/stores/auth.js index e921952..df52368 100644 --- a/nginx/vue/src/stores/auth.js +++ b/nginx/vue/src/stores/auth.js @@ -6,7 +6,12 @@ export const useAuthStore = defineStore("auth", () => { const user = ref({}); checkToken(); - function logOut() { + async function logOut() { + try { + const res = await axios.post("/api/auth/logout"); + } catch (err) { + console.error(err); + } user.value = {}; } @@ -22,6 +27,18 @@ export const useAuthStore = defineStore("auth", () => { } } + async function createUser(username, password) { + try { + const res = await axios.post("/api/user", { + username, + password, + }); + user.value = res.data; + } catch (err) { + console.error(err); + } + } + async function refreshToken() { try { const res = await axios.post("/api/auth/refresh"); @@ -40,5 +57,5 @@ export const useAuthStore = defineStore("auth", () => { } } - return { user, checkToken, logIn, refreshToken, logOut }; + return { user, checkToken, logIn, refreshToken, logOut, createUser }; });