Files
cms_thermo_active/Step/wwwroot/src/main.js
T
Paolo Possanzini 6d16c8ad9b test
2018-04-27 13:28:13 +02:00

75 lines
1.8 KiB
JavaScript

import Vue from "vue";
import VueRouter from "vue-router";
import VeeValidate from "vee-validate";
import "./_base/gestures";
import "./app.modules";
import { store, machineStatusActions } from "./store";
const App = () =>
import ("./App.vue");
import { routes } from "./app.routes.js";
Vue.use(VueRouter);
Vue.use(VeeValidate); // forms validation for vuejs
// Vue.use(VueGesture);
let router = new VueRouter({ linkActiveClass: "inpath", linkExactActiveClass: "active" });
router.addRoutes(routes);
// ATTENZIONE : mettere a true durante lo sviluppo e riportare a false per la pubblicazione
let developerMode = true;
// manipulate the title page
router.beforeEach((to, from, next) => {
if (to.meta && to.meta.area) {
// Check if area is enabled
if (!developerMode && !machineStatusActions.isAreaEnabled(store, to.meta.area)) {
next({
path: '/'
})
return;
}
}
if (to.meta && to.meta.title) {
window.document.title = to.meta.title;
}
next();
});
// Initialize default language
import { LocalizationService } from "src/services/localizationService";
new LocalizationService().init();
let v = new Vue({
router: router,
store,
el: "app",
render: (h) => h(App),
});
// Global filters
import "./filters/searchFilter";
import "./filters/localizeFilter";
import "./filters/dateFilter";
import "./filters/securityFilter";
import "./filters/cnFilter";
// polyfills !!
if (!String.prototype.format) {
String.prototype.format = function() {
var args = arguments;
return this.replace(/{(\d+)}/g, function(match, number) {
return typeof args[number] != 'undefined' ?
args[number] :
match;
});
};
}