diff --git a/layouts/default.vue b/layouts/default.vue
index 07b482219..4db556779 100644
--- a/layouts/default.vue
+++ b/layouts/default.vue
@@ -35,16 +35,24 @@
class="avatar-menu-popover"
style="padding-top: .5rem; padding-bottom: .5rem;"
@mouseover="popoverMouseEnter"
- @mouseleave="popoveMouseLeave"
- >
- Hallo {{ user.name }}
+ @mouseleave="popoveMouseLeave">
+ Hallo {{ user.name }}
+ :is-exact="isExact"
+ style="margin-left: -15px; margin-right: -15px; padding-top: 1rem; padding-bottom: 1rem;">
+
+ {{ item.route.name }}
+
+
- Logout
+ Logout
@@ -80,7 +88,7 @@ export default {
...mapGetters({
user: 'auth/user',
isLoggedIn: 'auth/isLoggedIn',
- isAdmin: 'auth/isLoggedIn'
+ isAdmin: 'auth/isAdmin'
}),
routes() {
if (!this.user.slug) {
@@ -89,17 +97,20 @@ export default {
let routes = [
{
name: 'Mein Profil',
- path: `/profile/${this.user.slug}`
+ path: `/profile/${this.user.slug}`,
+ icon: 'user'
},
{
name: 'Einstellungen',
- path: `/settings`
+ path: `/settings`,
+ icon: 'cogs'
}
]
if (this.isAdmin) {
routes.push({
name: 'Systemverwaltung',
- path: `/admin`
+ path: `/admin`,
+ icon: 'shield'
})
}
return routes
@@ -113,6 +124,9 @@ export default {
toggleMenu() {
this.isPopoverOpen = !this.isPopoverOpen
},
+ isExact(url) {
+ return this.$route.path.indexOf(url) === 0
+ },
popoverMouseEnter() {
clearTimeout(mouseEnterTimer)
clearTimeout(mouseLeaveTimer)
diff --git a/store/auth.js b/store/auth.js
index da4d567e7..c93ce87e2 100644
--- a/store/auth.js
+++ b/store/auth.js
@@ -37,12 +37,12 @@ export const getters = {
return !!state.user && state.user.isVerified && !!state.user.name
},
isAdmin(state) {
- return !!state.user && state.user.role === 'ADMIN'
+ return !!state.user && state.user.role === 'admin'
},
isModerator(state) {
return (
!!state.user &&
- (state.user.role === 'ADMIN' || state.user.role === 'MODERATOR')
+ (state.user.role === 'admin' || state.user.role === 'moderator')
)
},
user(state) {