From d3040c02686533afc1d2608a709db18723b0bd4b Mon Sep 17 00:00:00 2001 From: Sylvain Monmignon Date: Wed, 23 Sep 2026 12:56:51 +0200 Subject: [PATCH] feat: Ajout de projet --- src/services/project.service.ts | 9 +++++++++ src/view/pages/home/home.component.html | 11 +++++++++++ src/view/pages/home/home.component.ts | 23 +++++++++++++++++++++++ 3 files changed, 43 insertions(+) diff --git a/src/services/project.service.ts b/src/services/project.service.ts index aba1862..505ae54 100644 --- a/src/services/project.service.ts +++ b/src/services/project.service.ts @@ -8,4 +8,13 @@ export class ProjectService extends BaseService { public getProjects(): Observable { return this.get("project"); } + + public addProject(name: string): Observable { + let body: Project = { + name_project: name, + id_project: 0 + } + + return this.post("project/add", body); + } } diff --git a/src/view/pages/home/home.component.html b/src/view/pages/home/home.component.html index d26d23d..ede63fb 100644 --- a/src/view/pages/home/home.component.html +++ b/src/view/pages/home/home.component.html @@ -67,6 +67,17 @@ {{ project.name_project }}

} + + + + @if (showProjectForm){ +
+ + + + +
+ } diff --git a/src/view/pages/home/home.component.ts b/src/view/pages/home/home.component.ts index 56b21e5..ff8a5b3 100644 --- a/src/view/pages/home/home.component.ts +++ b/src/view/pages/home/home.component.ts @@ -39,6 +39,13 @@ export class Home { }); showGroupForm: boolean = false; + + newProjectForm = new FormGroup({ + name: new FormControl('', Validators.required), + }); + + showProjectForm: boolean = false; + //#endregion public ngOnInit(): void { @@ -92,4 +99,20 @@ export class Home { }); } + public toggleProjectForm(): void { + this.showProjectForm = !this.showProjectForm; + } + + /** + * submitProject + */ + public submitProject() { + let response: Observable = this.projectService.addProject(this.newProjectForm.controls.name.value!); + + response.subscribe(response => { + this.projects.update(values => { + return [...values, response]; + }); + }); + } }