diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/App.js | 3 | ||||
| -rw-r--r-- | src/App.vue | 1 | ||||
| -rw-r--r-- | src/modules/users.js | 8 |
3 files changed, 12 insertions, 0 deletions
@@ -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 |
