60 lines
1.6 KiB
Vue
Raw Normal View History

<template>
<div id="user-preferences" class="description-list">
<dl>
2021-10-20 17:38:25 +02:00
<dt>{{ $t('user.PROFILE.LANGUAGE') }}:</dt>
<dd>{{ language }}</dd>
2021-10-20 17:38:25 +02:00
<dt>{{ $t('user.PROFILE.TIMEZONE') }}:</dt>
<dd>{{ timezone }}</dd>
2021-10-20 17:38:25 +02:00
<dt>{{ $t('user.PROFILE.FIRST_DAY_OF_WEEK') }}:</dt>
<dd>{{ $t(`user.PROFILE.${fistDayOfWeek}`) }}</dd>
</dl>
<div class="profile-buttons">
<button @click="$router.push('/profile/edit/preferences')">
2021-10-20 17:38:25 +02:00
{{ $t('user.PROFILE.EDIT_PREFERENCES') }}
</button>
2021-10-20 17:38:25 +02:00
<button @click="$router.push('/')">{{ $t('common.HOME') }}</button>
</div>
</div>
</template>
<script lang="ts">
import { PropType, computed, defineComponent } from 'vue'
2021-10-30 12:01:55 +02:00
import { IUserProfile } from '@/types/user'
2021-10-31 19:48:49 +01:00
import { languageLabels } from '@/utils/locales'
export default defineComponent({
name: 'UserPreferences',
props: {
user: {
2021-10-30 12:01:55 +02:00
type: Object as PropType<IUserProfile>,
required: true,
},
},
setup(props) {
const language = computed(() =>
2021-10-31 19:48:49 +01:00
props.user.language
? languageLabels[props.user.language]
: languageLabels['en']
)
const fistDayOfWeek = computed(() =>
props.user.weekm ? 'MONDAY' : 'SUNDAY'
)
const timezone = computed(() =>
props.user.timezone ? props.user.timezone : 'Europe/Paris'
)
2021-10-20 17:38:25 +02:00
return { fistDayOfWeek, language, timezone }
},
})
</script>
<style lang="scss" scoped>
@import '~@/scss/base.scss';
#user-preferences {
.profile-buttons {
display: flex;
gap: $default-padding;
}
}
</style>