From beb8c80e33a20fd289a318c83e54055f6e72a82e Mon Sep 17 00:00:00 2001 From: "robinwilliam.hundt" <robinwilliam.hundt@stud.uni-goettingen.de> Date: Sat, 9 Dec 2017 20:28:23 +0100 Subject: [PATCH] Working Layout --- frontend/src/components/base/BaseLayout.vue | 34 +++++++++++++++---- .../src/components/student/StudentLayout.vue | 7 ++-- 2 files changed, 32 insertions(+), 9 deletions(-) diff --git a/frontend/src/components/base/BaseLayout.vue b/frontend/src/components/base/BaseLayout.vue index e29bbc50..439074e1 100644 --- a/frontend/src/components/base/BaseLayout.vue +++ b/frontend/src/components/base/BaseLayout.vue @@ -6,8 +6,17 @@ app v-model="drawer" > + <v-toolbar flat> + <v-list> + <v-list-tile> + <v-list-tile-title class="title"> + {{ examInstance }} + </v-list-tile-title> + </v-list-tile> + </v-list> + </v-toolbar> <v-list dense> - <v-list-tile v-for="(item, i) in navItems" :key="i" :to="item.path"> + <v-list-tile v-for="(item, i) in navItems" :key="i" :to="item.route"> {{ item.name }} </v-list-tile> </v-list> @@ -16,7 +25,8 @@ app clipped-left fixed - color="deep-orange darken-4" + dark + color="indigo darken-4" class="grady-toolbar" > <v-toolbar-title> @@ -27,10 +37,10 @@ </v-avatar> </v-toolbar-title> <span class="pl-2 grady-speak">{{ gradySpeak }}</span> - <h2 class="pl-5">{{ $store.state.examInstance }}</h2> <div class="toolbar-content"> - <span>Logged in as {{ $store.state.username }}</span> + <span>{{ userRole }} | {{ username }}</span> </div> + <v-btn color="blue darken-1" to="/" @click.native="logout">Logout</v-btn> </v-toolbar> <v-content> <slot></slot> @@ -39,18 +49,28 @@ </template> <script> - import { mapGetters } from 'vuex' + import { mapActions, mapGetters, mapState } from 'vuex' export default { name: 'base-layout', data () { return { - drawer: true, - props: ['navItems'] + drawer: true } }, + props: ['navItems'], computed: { ...mapGetters([ 'gradySpeak' + ]), + ...mapState([ + 'examInstance', + 'username', + 'userRole' + ]) + }, + methods: { + ...mapActions([ + 'logout' ]) } } diff --git a/frontend/src/components/student/StudentLayout.vue b/frontend/src/components/student/StudentLayout.vue index e6704128..105f55c3 100644 --- a/frontend/src/components/student/StudentLayout.vue +++ b/frontend/src/components/student/StudentLayout.vue @@ -1,7 +1,9 @@ <template> <base-layout - - ></base-layout> + :navItems="navItems" + > + <slot></slot> + </base-layout> </template> <script> @@ -13,6 +15,7 @@ return { navItems: [ { + name: 'Login', route: '/' } ] -- GitLab