From 53a72ca54fabdaefaaf38b977a8590a187a2a88f Mon Sep 17 00:00:00 2001 From: Larry Date: Fri, 30 Oct 2020 12:01:27 +0100 Subject: [PATCH 1/4] slider values equal fix --- frontend/src/components/shared/FilterSliderDropdown.vue | 3 +++ 1 file changed, 3 insertions(+) diff --git a/frontend/src/components/shared/FilterSliderDropdown.vue b/frontend/src/components/shared/FilterSliderDropdown.vue index 177b608a9..6c7e5dab8 100644 --- a/frontend/src/components/shared/FilterSliderDropdown.vue +++ b/frontend/src/components/shared/FilterSliderDropdown.vue @@ -54,6 +54,9 @@ export default { this.slider.min = this.min; this.slider.max = this.max; this.slider.start = this.min; + if (this.slider.min === this.slider.max) { + this.slider.max += 1; + } noUiSlider.create(this.$refs.slider, { start: [this.slider.startMin, this.slider.startMax], step: this.slider.step, From 8ae0c634b1d2bbe71d5c3da061c4660af807ddcd Mon Sep 17 00:00:00 2001 From: Larry Date: Fri, 30 Oct 2020 12:45:51 +0100 Subject: [PATCH 2/4] logout undefined store and router fix --- frontend/src/auth/logOut.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/frontend/src/auth/logOut.js b/frontend/src/auth/logOut.js index ccb7ebd60..e0a7f5d79 100644 --- a/frontend/src/auth/logOut.js +++ b/frontend/src/auth/logOut.js @@ -1,7 +1,11 @@ /* eslint-disable import/prefer-default-export */ import Axios from 'axios'; +import router from '../router'; +import store from '../store'; export const logOut = async () => { + await store.dispatch('logout'); + await router.push('/accounts/signin'); await Axios.post('/auth/logout', { access_token: localStorage.getItem(process.env.VUE_APP_ACCESS_TOKEN), refresh_token: localStorage.getItem(process.env.VUE_APP_REFRESH_TOKEN), @@ -10,6 +14,4 @@ export const logOut = async () => { localStorage.removeItem(process.env.VUE_APP_REFRESH_TOKEN); localStorage.removeItem(process.env.VUE_APP_VUEX_PERSISTED_STATE); localStorage.removeItem(process.env.VUE_APP_SECURE_LS_METADATA); - await this.$store.dispatch('logout'); - await this.$router.push('/accounts/signin'); }; From 2e7dc01e421bf44ea9fa9c1745e6832fd4b1dcab Mon Sep 17 00:00:00 2001 From: Larry Date: Fri, 30 Oct 2020 15:00:15 +0100 Subject: [PATCH 3/4] reload window on logout to reset vue --- frontend/src/auth/logOut.js | 1 + 1 file changed, 1 insertion(+) diff --git a/frontend/src/auth/logOut.js b/frontend/src/auth/logOut.js index e0a7f5d79..341662b91 100644 --- a/frontend/src/auth/logOut.js +++ b/frontend/src/auth/logOut.js @@ -14,4 +14,5 @@ export const logOut = async () => { localStorage.removeItem(process.env.VUE_APP_REFRESH_TOKEN); localStorage.removeItem(process.env.VUE_APP_VUEX_PERSISTED_STATE); localStorage.removeItem(process.env.VUE_APP_SECURE_LS_METADATA); + window.location.reload(); }; From 6767b3144ab6edb7c8a52cb97689431f80a2495f Mon Sep 17 00:00:00 2001 From: Larry Date: Sat, 31 Oct 2020 17:16:45 +0100 Subject: [PATCH 4/4] logout route instead of function --- frontend/src/auth/logOut.js | 18 ------------------ frontend/src/auth/tokens.js | 4 ++-- frontend/src/components/shared/NavBar.vue | 8 +------- frontend/src/router/index.js | 6 ++++++ frontend/src/views/auth/SignOut.vue | 22 ++++++++++++++++++++++ 5 files changed, 31 insertions(+), 27 deletions(-) delete mode 100644 frontend/src/auth/logOut.js create mode 100644 frontend/src/views/auth/SignOut.vue diff --git a/frontend/src/auth/logOut.js b/frontend/src/auth/logOut.js deleted file mode 100644 index 341662b91..000000000 --- a/frontend/src/auth/logOut.js +++ /dev/null @@ -1,18 +0,0 @@ -/* eslint-disable import/prefer-default-export */ -import Axios from 'axios'; -import router from '../router'; -import store from '../store'; - -export const logOut = async () => { - await store.dispatch('logout'); - await router.push('/accounts/signin'); - await Axios.post('/auth/logout', { - access_token: localStorage.getItem(process.env.VUE_APP_ACCESS_TOKEN), - refresh_token: localStorage.getItem(process.env.VUE_APP_REFRESH_TOKEN), - }); - localStorage.removeItem(process.env.VUE_APP_ACCESS_TOKEN); - localStorage.removeItem(process.env.VUE_APP_REFRESH_TOKEN); - localStorage.removeItem(process.env.VUE_APP_VUEX_PERSISTED_STATE); - localStorage.removeItem(process.env.VUE_APP_SECURE_LS_METADATA); - window.location.reload(); -}; diff --git a/frontend/src/auth/tokens.js b/frontend/src/auth/tokens.js index 70ef31482..601df4aad 100644 --- a/frontend/src/auth/tokens.js +++ b/frontend/src/auth/tokens.js @@ -1,7 +1,7 @@ /* eslint-disable max-len */ import jwtDecode from 'jwt-decode'; import Axios from 'axios'; -import { logOut } from './logOut'; +import router from '@/router'; export const setAccessToken = (token) => (localStorage.setItem(process.env.VUE_APP_ACCESS_TOKEN, token)); export const setRefreshToken = (token) => (localStorage.setItem(process.env.VUE_APP_REFRESH_TOKEN, token)); @@ -24,7 +24,7 @@ export const renewAccessToken = async () => { const response = await Axios.post('/auth/refresh', {}); localStorage.setItem('matchaAccessToken', response.data.access_token); } catch (error) { - await logOut(); + await router.push('/accounts/signout'); } } }; diff --git a/frontend/src/components/shared/NavBar.vue b/frontend/src/components/shared/NavBar.vue index f83e3659f..982c0af3d 100644 --- a/frontend/src/components/shared/NavBar.vue +++ b/frontend/src/components/shared/NavBar.vue @@ -30,14 +30,13 @@ Matches Settings History - Exit + Exit diff --git a/frontend/src/router/index.js b/frontend/src/router/index.js index a2038d44b..9b1c770fe 100644 --- a/frontend/src/router/index.js +++ b/frontend/src/router/index.js @@ -15,6 +15,7 @@ import Settings from '../views/app/Settings.vue'; import User from '../components/app/users/User.vue'; import History from '../views/app/History.vue'; import Matches from '../views/app/Matches.vue'; +import SignOut from '../views/auth/SignOut.vue'; import store from '../store/index'; Vue.use(VueRouter); @@ -132,6 +133,11 @@ const routes = [ component: Matches, beforeEnter: notLoggedInRedirectLogin, }, + { + path: '/accounts/signout', + component: SignOut, + beforeEnter: notLoggedInRedirectLogin, + }, ]; const router = new VueRouter({ diff --git a/frontend/src/views/auth/SignOut.vue b/frontend/src/views/auth/SignOut.vue new file mode 100644 index 000000000..37b6ac66a --- /dev/null +++ b/frontend/src/views/auth/SignOut.vue @@ -0,0 +1,22 @@ + + +