From f00e2a03296fe65e97695e94e538c714f53bfcd2 Mon Sep 17 00:00:00 2001
From: VIktorGrev <viktog2210@gmail.com>
Date: Fri, 19 Apr 2024 10:11:18 +0200
Subject: [PATCH] feat: login feature

---
 src/components/Login/LoginForm.vue |  2 +-
 src/router/index.ts                | 20 +++++++++++++++-----
 2 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/src/components/Login/LoginForm.vue b/src/components/Login/LoginForm.vue
index 3b08c7d..9d94306 100644
--- a/src/components/Login/LoginForm.vue
+++ b/src/components/Login/LoginForm.vue
@@ -35,7 +35,7 @@ const handleSubmit = async () => {
     let response = await AuthenticationService.login({ requestBody: loginUserPayload });
 
     if (response.token == null || response.token == undefined) {
-      //errorBoxMsg.value = 'A valid token could not be created';
+      errorMsg.value = 'A valid token could not be created';
       return;
     }
 
diff --git a/src/router/index.ts b/src/router/index.ts
index d8c0f7c..2fa8ce7 100644
--- a/src/router/index.ts
+++ b/src/router/index.ts
@@ -11,6 +11,7 @@ const routes = [
     path: '/',
     name: 'base',
     component: () => import('@/views/BasePageView.vue'),
+    meta: { requiresAuth: true },
     children: [
       {
         path: '',
@@ -130,13 +131,22 @@ const router = createRouter({
 router.beforeEach((to, from, next) => {
   const requiresAuth = to.matched.some(record => record.meta.requiresAuth);
   const requiresAdmin = to.matched.some(record => record.meta.requiresAdmin);
-  const userRole = useUserInfoStore().role;
+  let user = useUserInfoStore();
+  const userRole = user.role;
+  const isAuthenticated = user.isLoggedIn;
 
-  if (requiresAdmin && userRole !== 'admin') {
-    next({ name: 'unauthorized' });
+  /*if (requiresAuth && !isAuthenticated) {
+    next({ name: 'login' });
   } else {
-    next();
-  }
+    if (requiresAdmin && userRole !== 'admin') {
+      next({ name: 'unauthorized' });
+    } else {
+      next();
+    }
+  }*/
+
+  next();
+
 });
 
 export default router;
\ No newline at end of file
-- 
GitLab