use locale env var for loading locale files

This commit is contained in:
Grzegorz Leoniec 2018-12-18 15:25:36 +01:00
parent 8f44685ca7
commit 8599612499
No known key found for this signature in database
GPG Key ID: 3AA43686D4EB1377
3 changed files with 15 additions and 7 deletions

View File

@ -26,7 +26,9 @@ module.exports = {
'pages-slug'
],
// pages to keep alive
keepAlivePages: ['index']
keepAlivePages: ['index'],
// active locales
locales: ['en', 'de', 'nl', 'fr', 'es', 'pt', 'it', 'pl']
},
/*
** Headers of the page

View File

@ -62,7 +62,7 @@ export default ({ app, req, cookie, store }) => {
}
}
const availableLocales = ['de', 'en', 'nl', 'fr', 'pt', 'es']
const availableLocales = process.env.locales
const locale = availableLocales.indexOf(userLocale) >= 0 ? userLocale : 'en'
if (locale !== 'en') {

View File

@ -1,6 +1,6 @@
import Vue from 'vue'
import { enUS, de, nl, fr, es, pt } from 'date-fns/locale'
import { enUS, de, nl, fr, es, pt, pl } from 'date-fns/locale'
import format from 'date-fns/format'
import formatRelative from 'date-fns/formatRelative'
import addSeconds from 'date-fns/addSeconds'
@ -13,25 +13,31 @@ export default ({ app }) => {
nl: nl,
fr: fr,
es: es,
pt: pt
pt: pt,
pl: pl
}
const getLocalizedFormat = () => {
let locale = app.$i18n.locale()
locale = locales[locale] ? locale : 'en'
return locales[locale]
}
app.$filters = Object.assign(app.$filters || {}, {
date: (value, fmt = 'dd. MMM yyyy') => {
if (!value) return ''
return format(new Date(value), fmt, {
locale: locales[app.$i18n.locale()]
locale: getLocalizedFormat()
})
},
dateTime: (value, fmt = 'dd. MMM yyyy HH:mm') => {
if (!value) return ''
return format(new Date(value), fmt, {
locale: locales[app.$i18n.locale()]
locale: getLocalizedFormat()
})
},
relativeDateTime: value => {
if (!value) return ''
return formatRelative(new Date(value), new Date(), {
locale: locales[app.$i18n.locale()]
locale: getLocalizedFormat()
})
},
number: (