From 3ef2d8a1987a75a81cb8ce5ad84441825158da5d Mon Sep 17 00:00:00 2001
From: Mohamed Maoulainine Maoulainine
 <Mohamed_Maoulainine.Maoulainine@enseirb-matmeca.fr>
Date: Sun, 11 May 2025 20:37:57 +0200
Subject: [PATCH] fix: join or create

---
 .../src/views/JoinOrCreatProjectForEntrep.vue | 39 ++++++++++++++++---
 1 file changed, 33 insertions(+), 6 deletions(-)

diff --git a/front/MyINPulse-front/src/views/JoinOrCreatProjectForEntrep.vue b/front/MyINPulse-front/src/views/JoinOrCreatProjectForEntrep.vue
index 2c0e62e..8c88c24 100644
--- a/front/MyINPulse-front/src/views/JoinOrCreatProjectForEntrep.vue
+++ b/front/MyINPulse-front/src/views/JoinOrCreatProjectForEntrep.vue
@@ -1,4 +1,5 @@
 <template>
+    <Header/>
     <header class="header">
         <img
             src="@/components/icons/logo inpulse.png"
@@ -38,11 +39,17 @@
     </div>
 </template>
 
-<script setup lang="ts">
-import { ref } from "vue";
+<script setup lang="ts">import { ref, onMounted } from "vue";
+import { useRouter } from "vue-router";
 import Project from "@/ApiClasses/Project";
-import { requestProjectCreation } from "@/services/Apis/Entrepreneurs.ts";
+import Header from "../components/HeaderComponent.vue";
+import {
+    requestProjectCreation,
+    checkIfProjectIsActive,
+    checkPendingProjectRequest,
+} from "@/services/Apis/Entrepreneurs";
 
+const router = useRouter();
 const choix = ref<string | null>(null);
 const nomProjet = ref("");
 
@@ -56,21 +63,18 @@ const validerCreation = () => {
         return;
     }
 
-    // Obtenir la date actuelle au format YYYY-MM-DD
     const today = new Date();
     const yyyy = today.getFullYear();
     const mm = String(today.getMonth() + 1).padStart(2, "0");
     const dd = String(today.getDate()).padStart(2, "0");
     const formattedDate = `${yyyy}-${mm}-${dd}`;
 
-    // Créer une instance de Project
     const nouveauProjet = new Project({
         projectName: nomProjet.value.trim(),
         creationDate: formattedDate,
         status: "PENDING",
     });
 
-    // Appeler l’API
     requestProjectCreation(
         nouveauProjet,
         (response) => {
@@ -83,6 +87,29 @@ const validerCreation = () => {
         }
     );
 };
+
+onMounted(() => {
+    checkIfProjectIsActive(
+        (response) => {
+            if (response.data === true) {
+                router.push("/canvas");
+            }
+        },
+        () => {
+            checkPendingProjectRequest(
+                (response) => {
+                    if (response.data === true) {
+                        router.push("/pending-approval");
+                    }
+                },
+                (error) => {
+                    console.warn("No active or pending project:", error);
+                }
+            );
+        }
+    );
+});
+
 </script>
 
 <style scoped>