Mercurial > gemma
view client/src/main.js @ 1506:bf32ef5dfb04
Translation: add aditional languages for translation
* add the following languages hu_HU bg_BG hr_HR ro_Ro
author | Fadi Abbud <fadi.abbud@intevation.de> |
---|---|
date | Wed, 05 Dec 2018 12:34:02 +0100 |
parents | 197e932772fd |
children | 4f62e2610740 |
line wrap: on
line source
/* This is Free Software under GNU Affero General Public License v >= 3.0 * without warranty, see README.md and license for details. * * SPDX-License-Identifier: AGPL-3.0-or-later * License-Filename: LICENSES/AGPL-3.0.txt * * Copyright (C) 2018 by via donau * – Österreichische Wasserstraßen-Gesellschaft mbH * Software engineering by Intevation GmbH * * Author(s): * Thomas Junk <thomas.junk@intevation.de> * Markus Kottländer <markus@intevation.de> */ import Vue from "vue"; import App from "./components/App.vue"; import router from "./router"; import store from "./store"; import GetTextPlugin from "vue-gettext"; import translations from "./locale/translations.json"; import locale2 from "locale2"; import Snotify, { SnotifyPosition } from "vue-snotify"; import "../node_modules/bootstrap/dist/css/bootstrap.min.css"; import "../node_modules/animate.css/animate.min.css"; import "../node_modules/ol/ol.css"; import "../node_modules/highlight.js/styles/paraiso-dark.css"; import "../node_modules/vue-snotify/styles/material.css"; import VTooltip from "v-tooltip"; import { library } from "@fortawesome/fontawesome-svg-core"; import { faAngleDown, faAngleLeft, faAngleRight, faAngleUp, faBars, faBook, faChartArea, faCheck, faCity, faClipboardCheck, faClock, faCopy, faDrawPolygon, faExclamationTriangle, faEye, faEyeSlash, faFilePdf, faFolderPlus, faInfo, faLayerGroup, faMapMarkedAlt, faMinus, faPaperPlane, faPencilAlt, faPlus, faPowerOff, faRuler, faSearch, faShip, faSortAmountDown, faSortAmountUp, faSpinner, faStar, faTasks, faTimes, faTrash, faUpload, faUser, faUsersCog, faWater, faWrench } from "@fortawesome/free-solid-svg-icons"; import { faAdn } from "@fortawesome/free-brands-svg-icons"; import { FontAwesomeIcon } from "@fortawesome/vue-fontawesome"; import VueClipboard from "vue-clipboard2"; library.add( faAdn, faAngleDown, faAngleLeft, faAngleRight, faAngleUp, faBars, faBook, faChartArea, faCheck, faCity, faClipboardCheck, faClock, faCopy, faDrawPolygon, faExclamationTriangle, faEye, faEyeSlash, faFilePdf, faFolderPlus, faInfo, faLayerGroup, faMapMarkedAlt, faMinus, faPaperPlane, faPencilAlt, faPlus, faPowerOff, faRuler, faSearch, faShip, faSortAmountDown, faSortAmountUp, faSpinner, faStar, faTasks, faTimes, faTrash, faUpload, faUser, faUsersCog, faWater, faWrench ); Vue.component("font-awesome-icon", FontAwesomeIcon); Vue.use(VTooltip); const options = { toast: { position: SnotifyPosition.centerBottom } }; Vue.use(Snotify, options); Vue.use(VueClipboard); let browserLanguage = locale2; // planned also SK, HU, HR, RS, BiH, BG, RO, UA const supportedLanguages = { en_GB: "British English", de_AT: "Deutsch", sk_SK: "slovenčina", hu_HU: "Magyat", hr_HR: "Hrvatska", bg_BG: "български", ro_RO: "Română" }; if ( browserLanguage === "de-DE" || browserLanguage === "de-LI" || browserLanguage === "de-LU" || browserLanguage === "de-CH" || browserLanguage === "de" ) { browserLanguage = "de-AT"; // map german,liechtenstein,luxenburg and switzerland to austrian variant for now } if (browserLanguage === "sk") { browserLanguage = "sk_SK"; } if (browserLanguage === "hu") { browserLanguage = "hu_HU"; } if (browserLanguage === "hr") { browserLanguage = "hr_HR"; } if (browserLanguage === "bg") { browserLanguage = "bg_BG"; } if (browserLanguage === "ro") { browserLanguage = "ro_RO"; } const language = browserLanguage.replace("-", "_"); const isLanguageAvailable = supportedLanguages[language]; let defaultLanguage = isLanguageAvailable ? language : "en_GB"; Vue.use(GetTextPlugin, { translations: translations, availableLanguages: supportedLanguages, defaultLanguage: defaultLanguage }); Vue.config.productionTip = false; const app = new Vue({ router, store, render: h => h(App) }).$mount("#app"); export default app;