parent
c80a953890
commit
6e692ecb62
2 changed files with 16 additions and 7 deletions
frontend/src
|
@ -1,6 +1,7 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<Login v-if="!user && !loading" />
|
||||||
<Header :user="user" />
|
<div class="app-container" v-else>
|
||||||
|
<Header :user="user" @logout="doLogout" v-if="user" />
|
||||||
|
|
||||||
<div class="body">
|
<div class="body">
|
||||||
<div class="loading-container" v-if="loading">
|
<div class="loading-container" v-if="loading">
|
||||||
|
@ -24,6 +25,7 @@ import Api from './mixins/Api.vue';
|
||||||
import Dropdowns from './mixins/Dropdowns.vue';
|
import Dropdowns from './mixins/Dropdowns.vue';
|
||||||
import Header from './components/Header.vue';
|
import Header from './components/Header.vue';
|
||||||
import Loading from './elements/Loading.vue';
|
import Loading from './elements/Loading.vue';
|
||||||
|
import Login from './views/Login.vue';
|
||||||
import Messages from './components/Messages.vue'
|
import Messages from './components/Messages.vue'
|
||||||
import User from './models/User';
|
import User from './models/User';
|
||||||
|
|
||||||
|
@ -35,6 +37,7 @@ export default {
|
||||||
components: {
|
components: {
|
||||||
Header,
|
Header,
|
||||||
Loading,
|
Loading,
|
||||||
|
Login,
|
||||||
Messages,
|
Messages,
|
||||||
RouterLink,
|
RouterLink,
|
||||||
RouterView,
|
RouterView,
|
||||||
|
@ -47,6 +50,13 @@ export default {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
methods: {
|
||||||
|
async doLogout() {
|
||||||
|
await this.logout()
|
||||||
|
this.user = null
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
async mounted() {
|
async mounted() {
|
||||||
this.loading = true
|
this.loading = true
|
||||||
this.installDropdownHandler()
|
this.installDropdownHandler()
|
||||||
|
|
|
@ -32,11 +32,9 @@
|
||||||
</RouterLink>
|
</RouterLink>
|
||||||
</DropdownItem>
|
</DropdownItem>
|
||||||
|
|
||||||
<DropdownItem>
|
<DropdownItem @click="$emit('logout')">
|
||||||
<RouterLink to="/logout">
|
<font-awesome-icon icon="sign-out-alt" />
|
||||||
<font-awesome-icon icon="sign-out-alt" />
|
<span class="item-text">Logout</span>
|
||||||
<span class="item-text">Logout</span>
|
|
||||||
</RouterLink>
|
|
||||||
</DropdownItem>
|
</DropdownItem>
|
||||||
</Dropdown>
|
</Dropdown>
|
||||||
</li>
|
</li>
|
||||||
|
@ -54,6 +52,7 @@ import DropdownItem from '../elements/DropdownItem.vue';
|
||||||
import User from '../models/User';
|
import User from '../models/User';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
|
emits: ['logout'],
|
||||||
components: {
|
components: {
|
||||||
Dropdown,
|
Dropdown,
|
||||||
DropdownItem,
|
DropdownItem,
|
||||||
|
|
Loading…
Add table
Reference in a new issue