view client/src/main.js @ 1351:89d013d55ec9

Fixed SQL in accepting/declining imports.
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Mon, 26 Nov 2018 15:04:07 +0100
parents 2738a6ae9ad8
children d0c4d17ee7ab
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>
 */

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 CxltToastr from "cxlt-vue2-toastr";
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/cxlt-vue2-toastr/dist/css/cxlt-vue2-toastr.css";
import "../node_modules/highlight.js/styles/paraiso-dark.css";
import VTooltip from "v-tooltip";
import { library } from "@fortawesome/fontawesome-svg-core";
import {
  faEye,
  faEyeSlash,
  faCopy,
  faCheck,
  faTimes,
  faInfo,
  faLayerGroup,
  faChartArea,
  faRuler,
  faDrawPolygon,
  faAngleDown,
  faAngleUp,
  faAngleLeft,
  faAngleRight,
  faFolderPlus,
  faFilePdf,
  faBars,
  faSearch,
  faShip,
  faUpload,
  faTasks,
  faUsersCog,
  faMapMarkedAlt,
  faClipboardCheck,
  faWrench,
  faBook,
  faPowerOff,
  faTrash,
  faStar,
  faUser,
  faExclamationTriangle,
  faPaperPlane,
  faPlus,
  faMinus,
  faSortAmountUp,
  faSortAmountDown
} 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(
  faEye,
  faEyeSlash,
  faCopy,
  faCheck,
  faTimes,
  faInfo,
  faLayerGroup,
  faChartArea,
  faRuler,
  faDrawPolygon,
  faAngleDown,
  faAngleUp,
  faAngleLeft,
  faAngleRight,
  faFolderPlus,
  faFilePdf,
  faBars,
  faSearch,
  faShip,
  faUpload,
  faTasks,
  faUsersCog,
  faMapMarkedAlt,
  faClipboardCheck,
  faWrench,
  faBook,
  faPowerOff,
  faTrash,
  faStar,
  faAdn,
  faUser,
  faExclamationTriangle,
  faPaperPlane,
  faPlus,
  faMinus,
  faSortAmountUp,
  faSortAmountDown
);
Vue.component("font-awesome-icon", FontAwesomeIcon);

Vue.use(VTooltip);

Vue.use(VueClipboard);

var toastrConfigs = {
  position: "bottom center",
  showDuration: 2000,
  timeOut: 8000,
  closeButton: true
};

Vue.use(CxltToastr, toastrConfigs);

let browserLanguage = locale2;

// planned also SK, HU, HR, RS, BiH, BG, RO, UA
const supportedLanguages = {
  en_GB: "British English",
  de_AT: "Deutsch"
};

if (browserLanguage === "de-DE") {
  browserLanguage = "de-AT"; // map german to austrian variant for now
}

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;