diff --git a/front/MyINPulse-front/src/App.vue b/front/MyINPulse-front/src/App.vue
index d359e36..d7f23f6 100644
--- a/front/MyINPulse-front/src/App.vue
+++ b/front/MyINPulse-front/src/App.vue
@@ -4,9 +4,22 @@ import ErrorWrapper from "@/views/errorWrapper.vue";
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
diff --git a/front/MyINPulse-front/src/components/canvas/Lean-canvas.vue b/front/MyINPulse-front/src/components/canvas/Lean-canvas.vue
new file mode 100644
index 0000000..40b1b80
--- /dev/null
+++ b/front/MyINPulse-front/src/components/canvas/Lean-canvas.vue
@@ -0,0 +1,71 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/front/MyINPulse-front/src/router/index.ts b/front/MyINPulse-front/src/router/index.ts
new file mode 100644
index 0000000..e69de29
diff --git a/front/MyINPulse-front/src/services/Apis/Admin.ts b/front/MyINPulse-front/src/services/Apis/Admin.ts
index 6c9e300..4ca6231 100644
--- a/front/MyINPulse-front/src/services/Apis/Admin.ts
+++ b/front/MyINPulse-front/src/services/Apis/Admin.ts
@@ -1,6 +1,7 @@
import { type AxiosError, type AxiosResponse } from "axios";
import Report from "@/ApiClasses/Repport";
import ProjectDecision from "@/ApiClasses/ProjectDecision";
+import UserAdmin from "@/ApiClasses/UserAdmin";
import {
axiosInstance,
defaultApiErrorHandler,
@@ -297,6 +298,29 @@ function grantAdminRights(
});
}
+function createAdmin(
+ onSuccessHandler?: (response: AxiosResponse) => void,
+ onErrorHandler?: (error: AxiosError) => void
+): void {
+ axiosInstance
+ .post("/admin/create-account")
+ .then((response) => {
+ if (onSuccessHandler) {
+ onSuccessHandler(response);
+ } else {
+ defaultApiSuccessHandler(response);
+ }
+ })
+ .catch((error: AxiosError) => {
+ if (onErrorHandler) {
+ onErrorHandler(error);
+ } else {
+ defaultApiErrorHandler(error);
+ }
+ });
+}
+
+
export {
axiosInstance,
//requestJoinProject, // Not yet implemented [cite: 4]
@@ -313,4 +337,5 @@ export {
getUpcomingAppointments,
removeProject,
grantAdminRights,
+ createAdmin,
};
diff --git a/front/MyINPulse-front/src/views/AdminMain.vue b/front/MyINPulse-front/src/views/AdminMain.vue
index 6b7b2be..dd2e23e 100644
--- a/front/MyINPulse-front/src/views/AdminMain.vue
+++ b/front/MyINPulse-front/src/views/AdminMain.vue
@@ -44,9 +44,10 @@ import ProjectComp from "../components/ProjectComponent.vue";
import PendingProjectComponent from "@/components/PendingProjectComponent.vue";
import AddProjectForm from "@/components/AddProjectForm.vue";
import PendingRequestsManager from "@/components/PendingRequestsManager.vue";
-
+import { createAdmin } from "@/services/Apis/Admin";
import Project from "@/ApiClasses/Project";
import UserEntrepreneur from "@/ApiClasses/UserEntrepreneur";
+import UserAdmin from "@/ApiClasses/UserAdmin";
//import AllEntrep from "../components/AllEntrep.vue";
const projects = ref<
{
@@ -69,6 +70,18 @@ const fallbackProjects = [
},
];
+const createFirstAdmin = () => {
+ createAdmin(
+ (response) => {
+ console.log("Admin créé avec succès :", response.data);
+ },
+ (error) => {
+ console.error("Erreur lors de la création de l'admin :", error.message);
+ }
+ );
+};
+
+
const fetchProjects = () => {
getAdminProjects(
(response: AxiosResponse) => {
@@ -122,6 +135,7 @@ const fetchProjects = () => {
};
onMounted(fetchProjects);
+onMounted(createFirstAdmin);
const pendingProjects = ref([]);