import Vue from "vue"; import Router from 'vue-router' import Home from "./views/Home.vue"; import Signin from "@/views/Signin"; import Signup from "@/views/Signup"; import Logout from "@/views/Logout"; import Profile from "@/views/Profile"; import PageError from "@/views/PageError"; import OrderPoints from "@/views/OrderPoints"; import OrderStatus from "@/views/OrderStatus"; import Role from "@/views/Role"; import TruckProp from "@/views/TruckProp"; import TruckType from "@/views/TruckType"; import Managers from "@/views/Managers"; import Dispetchers from "@/views/Dispetchers"; import Companies from "@/views/Companies"; import Transports from "@/views/Transports"; import Drivers from "@/views/Drivers"; import Orders from "@/views/Orders"; import OrderPage from "@/views/OrderPage"; import Billing from "@/views/Billing"; import Tickets from "@/views/Tickets"; import Settings from "@/views/Settings"; import Dashboard from "@/views/Dashboard"; import User from "@/views/User"; import Mess from "@/views/Mess"; // import token from './main' Vue.use(Router); const router = new Router({ mode: 'history', // base: process.env.BASE_URL, routes: [ { path: "/", name: "home", component: Home, meta: { title: 'home', requireAuth: true } }, { path: "/mess", name: "mess", component: Mess, meta: { title: 'mess', requireAuth: true } }, { path: "/signin", name: "signin", component: Signin, meta: { title: 'signin', requireAuth: true } }, { path: "/signup", name: "signup", component: Signup, meta: { title: 'signup', requireAuth: true } }, { path: "/dashboard", name: "dashboard", component: Dashboard, meta: { title: 'dashboard', requireAuth: true } }, { path: "/logout", name: "Выйти", component: Logout, meta: { title: 'Выйти', requireAuth: true } }, { path: "/profile", name: "Profile", component: Profile, meta: { title: 'Profile', requireAuth: true } }, { path: "/user", name: "User", component: User, meta: { title: 'User', requireAuth: true } }, { path: '/orders', name: "orders", component: Orders, meta: { title: 'orders', requireAuth: true } }, { path: "/orders/:id", name: "orderpage", component: OrderPage, meta: { title: 'orderpage', requireAuth: true } }, { path: "/orderPoints", name: "OrderPoints", component: OrderPoints, meta: { title: 'OrderPoints', requireAuth: true } }, { path: "/orderStatus", name: "OrderStatus", component: OrderStatus, meta: { title: 'OrderStatus', requireAuth: true } }, { path: "/role", name: "Role", component: Role, meta: { title: 'Role', requireAuth: true } }, { path: "/truckProp", name: "TruckProp", component: TruckProp, meta: { title: 'TruckProp', requireAuth: true } }, { path: "/truckType", name: "TruckType", component: TruckType, meta: { title: 'TruckType', requireAuth: true } }, { path: "/dispetchers", name: "Диспетчеры", component: Dispetchers, meta: { title: 'Диспетчеры', requireAuth: true } }, { path: "/managers", name: "Менеджеры", component: Managers, meta: { title: 'Менеджеры', requireAuth: true } }, { path: "/companies", name: "Компании", component: Companies, meta: { title: 'Компании', requireAuth: true } }, { path: "/transports", name: "Транспорт", component: Transports, meta: { title: 'Транспорт', requireAuth: true } }, { path: "/drivers", name: "Водители", component: Drivers, meta: { title: 'Водители', requireAuth: true } }, { path: "/billing", name: "Биллинг", component: Billing, meta: { title: 'Биллинг', requireAuth: true } }, { path: "/tickets", name: "Обращения", component: Tickets, meta: { title: 'Обращения', requireAuth: true } }, { path: "/settings", name: "Настройки", component: Settings, meta: { title: 'Настройки', requireAuth: true } }, { path: "*", name: "Страница ошибок 404", component: PageError, }, ], }); // REDIRECT на главную страницу если не зарегистрирован router.beforeEach((to, from, next) => { console.log(!router.app.$options.store.getters.loggedIn); if (to.name !== 'home' && to.meta.requireAuth && !router.app.$options.store.getters.loggedIn) { next({name: 'home'}) } next(); }) export default router;