changeset 2328:c98491f9c466

router: cleanup auth code
author Thomas Junk <thomas.junk@intevation.de>
date Tue, 19 Feb 2019 13:55:02 +0100
parents ead321473840
children 514193fd0120
files client/src/router.js
diffstat 1 files changed, 11 insertions(+), 17 deletions(-) [+]
line wrap: on
line diff
--- a/client/src/router.js	Tue Feb 19 13:45:39 2019 +0100
+++ b/client/src/router.js	Tue Feb 19 13:55:02 2019 +0100
@@ -181,21 +181,6 @@
       component: () => import("./components/Main.vue"),
       meta: {
         requiresAuth: true
-      },
-      beforeEnter: (to, from, next) => {
-        const expiresFromPastSession = toMillisFromString(
-          localStorage.getItem("expires")
-        );
-        if (sessionStillActive(expiresFromPastSession)) {
-          store.commit("user/setUser", localStorage.getItem("user"));
-          store.commit("user/setExpires", expiresFromPastSession);
-          store.commit("user/setRoles", localStorage.getItem("roles"));
-          store.commit("user/setIsAuthenticate", true);
-        } else {
-          store.commit("reset");
-          store.commit("user/clearAuth");
-        }
-        next();
       }
     },
     {
@@ -206,11 +191,20 @@
 });
 
 router.beforeEach((to, from, next) => {
-  const requiresAuth = to.matched.some(record => record.meta.requiresAuth);
-  const loggedIn = store.state.user.isAuthenticated;
   const expiresFromPastSession = toMillisFromString(
     localStorage.getItem("expires")
   );
+  if (sessionStillActive(expiresFromPastSession)) {
+    store.commit("user/setUser", localStorage.getItem("user"));
+    store.commit("user/setExpires", expiresFromPastSession);
+    store.commit("user/setRoles", localStorage.getItem("roles"));
+    store.commit("user/setIsAuthenticate", true);
+  } else {
+    store.commit("reset");
+    store.commit("user/clearAuth");
+  }
+  const requiresAuth = to.matched.some(record => record.meta.requiresAuth);
+  const loggedIn = store.state.user.isAuthenticated;
   const authRequired =
     requiresAuth && !(loggedIn || sessionStillActive(expiresFromPastSession));
   if (authRequired) {