aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/App.js3
-rw-r--r--src/App.vue1
-rw-r--r--src/modules/users.js8
3 files changed, 12 insertions, 0 deletions
diff --git a/src/App.js b/src/App.js
index a2d891f7..1da3ff7c 100644
--- a/src/App.js
+++ b/src/App.js
@@ -29,6 +29,9 @@ export default {
},
scrollToTop () {
window.scrollTo(0, 0)
+ },
+ logout () {
+ this.$store.dispatch('logout')
}
}
}
diff --git a/src/App.vue b/src/App.vue
index 79eded08..48cf9ea6 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -8,6 +8,7 @@
<div class='item right'>
<user-finder></user-finder>
<router-link :to="{ name: 'settings'}"><i class="icon-cog"></i></router-link>
+ <a href="#" v-if="currentUser" @click.prevent="logout"><i class="icon-logout" title="Logout" ></i></a>
</div>
</div>
</nav>
diff --git a/src/modules/users.js b/src/modules/users.js
index b68f67e6..98ac8f7e 100644
--- a/src/modules/users.js
+++ b/src/modules/users.js
@@ -26,6 +26,9 @@ export const mutations = {
setCurrentUser (state, user) {
state.currentUser = merge(state.currentUser || {}, user)
},
+ clearCurrentUser (state) {
+ state.currentUser = false
+ },
beginLogin (state) {
state.loggingIn = true
},
@@ -66,6 +69,11 @@ const users = {
store.commit('setUserForStatus', status)
})
},
+ logout (store) {
+ store.commit('clearCurrentUser')
+ store.dispatch('stopFetching', 'friends')
+ store.commit('setBackendInteractor', backendInteractorService())
+ },
loginUser (store, userCredentials) {
return new Promise((resolve, reject) => {
const commit = store.commit