mirror of
https://github.com/Bubka/2FAuth.git
synced 2025-04-15 21:18:25 +02:00
sign in/out with correct redirect
This commit is contained in:
parent
c5161b880f
commit
1a53aeed33
@ -31,10 +31,6 @@ const router = new VueRouter({
|
|||||||
name: 'login',
|
name: 'login',
|
||||||
component: Login,
|
component: Login,
|
||||||
},
|
},
|
||||||
{
|
|
||||||
path: '/logout',
|
|
||||||
name: 'logout',
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
path: '/register',
|
path: '/register',
|
||||||
name: 'register',
|
name: 'register',
|
||||||
|
@ -18,9 +18,9 @@
|
|||||||
</router-link>
|
</router-link>
|
||||||
</p>
|
</p>
|
||||||
<p class="level-item" v-if="isLoggedIn">
|
<p class="level-item" v-if="isLoggedIn">
|
||||||
<router-link :to="{ name: 'sign out' }" class="button is-black">
|
<a class="button is-black" @click="logout">
|
||||||
Sign out
|
Sign out
|
||||||
</router-link>
|
</a>
|
||||||
</p>
|
</p>
|
||||||
<p class="level-item" v-if="!isLoggedIn">
|
<p class="level-item" v-if="!isLoggedIn">
|
||||||
<router-link :to="{ name: 'register' }" class="button is-black">
|
<router-link :to="{ name: 'register' }" class="button is-black">
|
||||||
@ -51,6 +51,26 @@
|
|||||||
mounted(){
|
mounted(){
|
||||||
this.isLoggedIn = localStorage.getItem('jwt')
|
this.isLoggedIn = localStorage.getItem('jwt')
|
||||||
this.username = localStorage.getItem('user')
|
this.username = localStorage.getItem('user')
|
||||||
|
},
|
||||||
|
|
||||||
|
methods: {
|
||||||
|
logout(evt) {
|
||||||
|
if(confirm("Are you sure you want to log out?")) {
|
||||||
|
axios.post('api/logout').then(response => {
|
||||||
|
|
||||||
|
localStorage.removeItem('jwt');
|
||||||
|
delete axios.defaults.headers.common['Authorization'];
|
||||||
|
|
||||||
|
this.$router.go('/login');
|
||||||
|
})
|
||||||
|
.catch(error => {
|
||||||
|
localStorage.removeItem('jwt');
|
||||||
|
delete axios.defaults.headers.common['Authorization'];
|
||||||
|
|
||||||
|
this.$router.go('/login');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
@ -62,7 +62,7 @@
|
|||||||
localStorage.setItem('jwt',response.data.success.token)
|
localStorage.setItem('jwt',response.data.success.token)
|
||||||
|
|
||||||
if (localStorage.getItem('jwt') != null){
|
if (localStorage.getItem('jwt') != null){
|
||||||
this.$router.push({name: 'accounts'});
|
this.$router.go('/');
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.catch(e => {
|
.catch(e => {
|
||||||
@ -80,7 +80,7 @@
|
|||||||
},
|
},
|
||||||
beforeRouteEnter (to, from, next) {
|
beforeRouteEnter (to, from, next) {
|
||||||
if (localStorage.getItem('jwt')) {
|
if (localStorage.getItem('jwt')) {
|
||||||
return next('accounts');
|
return next('/');
|
||||||
}
|
}
|
||||||
|
|
||||||
next();
|
next();
|
||||||
|
@ -88,7 +88,7 @@
|
|||||||
localStorage.setItem('jwt',response.data.success.token)
|
localStorage.setItem('jwt',response.data.success.token)
|
||||||
|
|
||||||
if (localStorage.getItem('jwt') != null){
|
if (localStorage.getItem('jwt') != null){
|
||||||
this.$router.push({name: 'accounts'});
|
this.$router.go('/');
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.catch(error => {
|
.catch(error => {
|
||||||
@ -103,7 +103,7 @@
|
|||||||
},
|
},
|
||||||
beforeRouteEnter (to, from, next) {
|
beforeRouteEnter (to, from, next) {
|
||||||
if (localStorage.getItem('jwt')) {
|
if (localStorage.getItem('jwt')) {
|
||||||
return next('accounts');
|
return next('/');
|
||||||
}
|
}
|
||||||
|
|
||||||
next();
|
next();
|
||||||
|
Loading…
Reference in New Issue
Block a user