This commit is contained in:
@@ -2,6 +2,8 @@ import decode from "jwt-decode";
|
||||
import config from "./config";
|
||||
import logger from "./logit";
|
||||
import store from "../store";
|
||||
import initialize from "./initialize";
|
||||
|
||||
//import axios from 'axios';
|
||||
//import auth0 from 'auth0-js';
|
||||
//import Router from 'vue-router';
|
||||
@@ -36,14 +38,13 @@ export function processLogin(response) {
|
||||
roles: token["ayanova/roles"]
|
||||
});
|
||||
|
||||
//Initialize the application
|
||||
initialize();
|
||||
|
||||
logger.log("User " + token.id + " logged in");
|
||||
return Promise.resolve(true);
|
||||
}
|
||||
|
||||
// var router = new Router({
|
||||
// mode: 'history',
|
||||
// });
|
||||
|
||||
export function processLogout() {
|
||||
logger.log("Logout");
|
||||
store.commit("notAuthenticated");
|
||||
|
||||
122
app/ayanova/src/utils/initialize.js
Normal file
122
app/ayanova/src/utils/initialize.js
Normal file
@@ -0,0 +1,122 @@
|
||||
import store from "../store";
|
||||
import roles from "./roles";
|
||||
|
||||
function addNavItem(title, icon, route) {
|
||||
store.state.navItems.push({
|
||||
title,
|
||||
icon,
|
||||
route
|
||||
});
|
||||
}
|
||||
|
||||
/////////////////////////////////////
|
||||
// Initialize the app
|
||||
// on change of authentication status
|
||||
export default function initialize() {
|
||||
//clear the nav items either way
|
||||
store.state.navItems = [];
|
||||
if (store.state.authenticated) {
|
||||
//put nav items into store
|
||||
|
||||
//Everyone has a home
|
||||
addNavItem("Home", "home", "/");
|
||||
|
||||
if (
|
||||
roles.hasRole(roles.AuthorizationRoles.TechLimited) ||
|
||||
roles.hasRole(roles.AuthorizationRoles.TechFull) ||
|
||||
roles.hasRole(roles.AuthorizationRoles.SubContractorLimited) ||
|
||||
roles.hasRole(roles.AuthorizationRoles.SubContractorFull)
|
||||
) {
|
||||
addNavItem("Service", "toolbox", "/service");
|
||||
}
|
||||
|
||||
if (
|
||||
roles.hasRole(roles.AuthorizationRoles.OpsAdminFull) ||
|
||||
roles.hasRole(roles.AuthorizationRoles.OpsAdminLimited)
|
||||
) {
|
||||
addNavItem("Operations", "cogs", "ops");
|
||||
}
|
||||
|
||||
//Everyone can see about and logout
|
||||
addNavItem("About", "info-circle", "/about");
|
||||
addNavItem("Log out", "sign-out-alt", "/login");
|
||||
}
|
||||
}
|
||||
/*
|
||||
<v-list-tile to="/">
|
||||
<v-list-tile-action>
|
||||
<v-icon>fa-home</v-icon>
|
||||
</v-list-tile-action>
|
||||
<v-list-tile-content>
|
||||
<v-list-tile-title>Home</v-list-tile-title>
|
||||
</v-list-tile-content>
|
||||
</v-list-tile>
|
||||
<v-list-tile to="/service">
|
||||
<v-list-tile-action>
|
||||
<v-icon>fa-toolbox</v-icon>
|
||||
</v-list-tile-action>
|
||||
<v-list-tile-content>
|
||||
<v-list-tile-title>Service</v-list-tile-title>
|
||||
</v-list-tile-content>
|
||||
</v-list-tile>
|
||||
<v-list-tile to="/dispatch">
|
||||
<v-list-tile-action>
|
||||
<v-icon>fa-shipping-fast</v-icon>
|
||||
</v-list-tile-action>
|
||||
<v-list-tile-content>
|
||||
<v-list-tile-title>Dispatch</v-list-tile-title>
|
||||
</v-list-tile-content>
|
||||
</v-list-tile>
|
||||
<v-list-tile to="/inventory">
|
||||
<v-list-tile-action>
|
||||
<v-icon>fa-dolly</v-icon>
|
||||
</v-list-tile-action>
|
||||
<v-list-tile-content>
|
||||
<v-list-tile-title>Inventory</v-list-tile-title>
|
||||
</v-list-tile-content>
|
||||
</v-list-tile>
|
||||
<v-list-tile to="/accounting">
|
||||
<v-list-tile-action>
|
||||
<v-icon>fa-file-invoice-dollar</v-icon>
|
||||
</v-list-tile-action>
|
||||
<v-list-tile-content>
|
||||
<v-list-tile-title>Accounting</v-list-tile-title>
|
||||
</v-list-tile-content>
|
||||
</v-list-tile>
|
||||
<v-list-tile to="/admin">
|
||||
<v-list-tile-action>
|
||||
<v-icon>fa-user-tie</v-icon>
|
||||
</v-list-tile-action>
|
||||
<v-list-tile-content>
|
||||
<v-list-tile-title>Administration</v-list-tile-title>
|
||||
</v-list-tile-content>
|
||||
</v-list-tile>
|
||||
<v-list-tile to="/ops">
|
||||
<v-list-tile-action>
|
||||
<v-icon>fa-cogs</v-icon>
|
||||
</v-list-tile-action>
|
||||
<v-list-tile-content>
|
||||
<v-list-tile-title>Operations</v-list-tile-title>
|
||||
</v-list-tile-content>
|
||||
</v-list-tile>
|
||||
<v-list-tile to="/about">
|
||||
<v-list-tile-action>
|
||||
<v-icon>fa-info-circle</v-icon>
|
||||
</v-list-tile-action>
|
||||
<v-list-tile-content>
|
||||
<v-list-tile-title>About</v-list-tile-title>
|
||||
</v-list-tile-content>
|
||||
</v-list-tile>
|
||||
<v-list-tile
|
||||
v-if="this.$store.state.authenticated"
|
||||
to="/login"
|
||||
v-on:click.native="logout()"
|
||||
>
|
||||
<v-list-tile-action>
|
||||
<v-icon>fa-sign-out-alt</v-icon>
|
||||
</v-list-tile-action>
|
||||
<v-list-tile-content>
|
||||
<v-list-tile-title>Log off</v-list-tile-title>
|
||||
</v-list-tile-content>
|
||||
</v-list-tile>
|
||||
*/
|
||||
Reference in New Issue
Block a user