From 158d2681e444af435843987df462ccf6b3e5518b Mon Sep 17 00:00:00 2001
From: henridb <henridb@stud.ntnu.no>
Date: Thu, 2 May 2024 16:28:07 +0200
Subject: [PATCH] feat: push to login on unauthorized

---
 src/App.vue                                     | 6 +++---
 src/components/Exceptions/unkownErrorHandler.ts | 6 ++++++
 2 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/src/App.vue b/src/App.vue
index d32330f..d80fae0 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -1,13 +1,13 @@
 <script setup lang="ts">
 import { RouterView } from 'vue-router'
-//import ErrorBoundaryCatcher from '@/components/Exceptions/ErrorBoundaryCatcher.vue';
+import ErrorBoundaryCatcher from '@/components/Exceptions/ErrorBoundaryCatcher.vue';
 </script>
 
 <template>
   <main>
-    <error-boundary-catcher>
+    <ErrorBoundaryCatcher>
       <RouterView />
-    </error-boundary-catcher>
+    </ErrorBoundaryCatcher>
   </main>
 </template>
 
diff --git a/src/components/Exceptions/unkownErrorHandler.ts b/src/components/Exceptions/unkownErrorHandler.ts
index 68ecb6e..e15b5b4 100644
--- a/src/components/Exceptions/unkownErrorHandler.ts
+++ b/src/components/Exceptions/unkownErrorHandler.ts
@@ -1,5 +1,6 @@
 import { ApiError as BackendApiError } from '@/api';
 import { AxiosError } from 'axios';
+import router from '@/router'
 
 /**
  * Finds the correct error message for the given error
@@ -11,6 +12,11 @@ const handleUnknownError = (error: any): string => {
   if (error instanceof AxiosError) {
     return error.code!!;
   } else if (error instanceof BackendApiError) {
+    if (error.body.status == 403) {
+      router.push("/login");
+    } else if (error.body.status == 401) {
+      router.push("/roadmap");
+    }
     return error.body.message ?? error.body;
   }
   return error;
-- 
GitLab