Files
cms_thermo_active/Step/wwwroot/src/main.js
T
2019-03-26 18:17:27 +01:00

91 lines
2.3 KiB
JavaScript

import Vue from "vue";
import VueRouter from "vue-router";
import VeeValidate from "vee-validate";
import { store, machineStatusActions, machineInfoStore } from "./store";
import "./_base/gestures";
import "./app.business-logic";
import "./app.modules";
import { Factory, MessageService } from "src/_base";
// import VueDragDrop from 'vue-drag-drop';
// Vue.use(VueDragDrop);
const App = () =>
import ("./App.vue");
import { routes } from "./app.routes";
Vue.use(VueRouter);
Vue.use(VeeValidate); // forms validation for vuejs
// Vue.use(VueGesture);
import VTooltip from 'v-tooltip'
Vue.use(VTooltip)
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) {
if (typeof cmsClient == "undefined")
window.document.title = "CMS Active - " + to.meta.title;
else
window.document.title = to.meta.title;
}
if (store.state.machineInfo.canChangePages)
next();
else {
Factory.Get(MessageService).publishToChannel("show-nochange-page");
next(false);
}
});
// 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";
import "./filters/isValidMixin";
// 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;
});
};
}