summaryrefslogtreecommitdiffstats
path: root/webapp/src/components/DashboardPage.vue
diff options
context:
space:
mode:
authorUdo Walter2018-07-20 07:48:06 +0200
committerUdo Walter2018-07-20 07:48:06 +0200
commitb48f74afc95a45f720e9e2c41ef71b3c3b117451 (patch)
tree6f8ec8aa23739d283f9e9596e1edf174519f5c82 /webapp/src/components/DashboardPage.vue
parent[webapp/settings] simplified settings storage (diff)
downloadbas-b48f74afc95a45f720e9e2c41ef71b3c3b117451.tar.gz
bas-b48f74afc95a45f720e9e2c41ef71b3c3b117451.tar.xz
bas-b48f74afc95a45f720e9e2c41ef71b3c3b117451.zip
[webapp] put settings state into settings object
Diffstat (limited to 'webapp/src/components/DashboardPage.vue')
-rw-r--r--webapp/src/components/DashboardPage.vue25
1 files changed, 13 insertions, 12 deletions
diff --git a/webapp/src/components/DashboardPage.vue b/webapp/src/components/DashboardPage.vue
index ffa57d0..37d4c80 100644
--- a/webapp/src/components/DashboardPage.vue
+++ b/webapp/src/components/DashboardPage.vue
@@ -22,7 +22,7 @@
</i18n>
<template>
- <v-app :dark="dark" class="non-selectable">
+ <v-app :dark="settings.dark" class="non-selectable">
<v-touch
@panstart="drawerDragStart"
@panmove="drawerDragMove"
@@ -36,7 +36,7 @@
:style="drawerDraggingStyle"
persistent
:mini-variant="desktop && drawerMini"
- :clipped="clipped && desktop"
+ :clipped="settings.clipped && desktop"
v-model="drawerOpen"
fixed
width="250"
@@ -65,12 +65,12 @@
</v-touch>
</v-navigation-drawer>
- <v-toolbar dark class="topbar" app :clipped-left="clipped">
+ <v-toolbar dark class="topbar" app :clipped-left="settings.clipped">
<v-toolbar-side-icon class="drawer-icon" @click.stop="toggleDrawer"></v-toolbar-side-icon>
<img class="logo non-draggable hidden-md-and-down" src="@/assets/logo.svg" />
<v-spacer></v-spacer>
- <v-btn v-if="devMode" icon @click="$store.commit('saveSetting', { name: 'locale', value: $i18n.locale === 'en' ? 'de' : 'en' })"><v-icon>language</v-icon></v-btn>
- <v-btn v-if="devMode" icon @click="$store.commit('saveSetting', { name: 'dark', value: !dark })"><v-icon>invert_colors</v-icon></v-btn>
+ <v-btn v-if="devMode" icon @click="$store.commit('saveSetting', { name: 'locale', value: settings.locale === 'en' ? 'de' : 'en' })"><v-icon>language</v-icon></v-btn>
+ <v-btn v-if="devMode" icon @click="$store.commit('saveSetting', { name: 'dark', value: !settings.dark })"><v-icon>invert_colors</v-icon></v-btn>
<v-toolbar-items>
<v-menu offset-y>
<v-btn class="user-button" flat slot="activator">
@@ -150,14 +150,15 @@ export default {
}
},
computed: {
- ...mapState(['dark', 'clipped', 'mini', 'snackbars']),
+ ...mapState(['settings', 'snackbars']),
+ mini () { return this.settings.mini },
...mapGetters(['nextSnackbar']),
desktop () { return this.$vuetify.breakpoint.lgAndUp },
drawerDraggingStyle () {
var style = {}
if (this.dragging) {
style.transition = 'none'
- if (this.mini && this.desktop) style.width = this.drawerWidth + 'px'
+ if (this.settings.mini && this.desktop) style.width = this.drawerWidth + 'px'
else style.transform = 'translateX(' + this.drawerTranslateX + 'px)'
}
return style
@@ -202,16 +203,16 @@ export default {
methods: {
...mapMutations(['shiftSnackbars']),
toggleDrawer () {
- if (this.mini && this.desktop) this.drawerMini = !this.drawerMini
+ if (this.settings.mini && this.desktop) this.drawerMini = !this.drawerMini
else this.drawerOpen = !this.drawerOpen
},
drawerDragStart (event) {
- if (this.mini && this.desktop) this.drawerWidth = this.drawerStartWidth = this.drawerMini ? 80 : 250
+ if (this.settings.mini && this.desktop) this.drawerWidth = this.drawerStartWidth = this.drawerMini ? 80 : 250
else this.drawerTranslateStartX = this.drawerTranslateX = this.drawerOpen ? 0 : -250
this.dragging = true
},
drawerDragMove (event) {
- if (this.mini && this.desktop) {
+ if (this.settings.mini && this.desktop) {
let newX = this.drawerStartWidth + event.deltaX
if (newX >= 80 && newX <= 250) this.drawerWidth = newX
} else {
@@ -221,7 +222,7 @@ export default {
},
drawerDragEnd (event) {
this.dragging = false
- if (this.mini && this.desktop) {
+ if (this.settings.mini && this.desktop) {
if ((this.drawerWidth < 100 && event.velocityX <= 0) || event.velocityX < -0.4) this.drawerMini = true
else this.drawerMini = false
} else {
@@ -236,7 +237,7 @@ export default {
}
},
created () {
- if (this.mini && this.desktop) this.drawerOpen = true
+ if (this.settings.mini && this.desktop) this.drawerOpen = true
this.$http('/api/user/info').then(response => {
this.userFullName = response.data.name
})