From b99c290f2ca4d19d30ecf95bc72cde4f10f97a94 Mon Sep 17 00:00:00 2001
From: Antonin Coquet <ext.sopra.acoquet@grandlyon.com>
Date: Thu, 8 Apr 2021 11:33:51 +0200
Subject: [PATCH] send actual filters and change endpoint

---
 .../components/search/search.component.ts     | 63 ++++++++++---------
 .../structure-list/services/search.service.ts |  4 +-
 2 files changed, 35 insertions(+), 32 deletions(-)

diff --git a/src/app/structure-list/components/search/search.component.ts b/src/app/structure-list/components/search/search.component.ts
index dffac930f..b743d1cfd 100644
--- a/src/app/structure-list/components/search/search.component.ts
+++ b/src/app/structure-list/components/search/search.component.ts
@@ -184,38 +184,41 @@ export class SearchComponent implements OnInit, OnChanges {
   // Get the correct list of checkbox/modules depending on the type of modal.
   private getData(option: TypeModal): void {
     if (option === TypeModal.accompaniment) {
-      forkJoin([this.searchService.getCategoriesAccompaniment(), this.searchService.getFakeCounterModule()]).subscribe(
-        (res) => {
-          const categories: Category[] = res[0];
-          const structureCounter: StructureCounter[] = res[1];
-          categories.forEach((category) => {
-            category = this.searchService.setCountModules(category, structureCounter);
-            this.categories.push(category);
-          });
-        }
-      );
+      forkJoin([
+        this.searchService.getCategoriesAccompaniment(),
+        this.searchService.getFakeCounterModule(this.checkedModulesFilter),
+      ]).subscribe((res) => {
+        const categories: Category[] = res[0];
+        const structureCounter: StructureCounter[] = res[1];
+        categories.forEach((category) => {
+          category = this.searchService.setCountModules(category, structureCounter);
+          this.categories.push(category);
+        });
+      });
     } else if (option === TypeModal.training) {
-      forkJoin([this.searchService.getCategoriesTraining(), this.searchService.getFakeCounterModule()]).subscribe(
-        (res) => {
-          const categories: Category[] = res[0];
-          const structureCounter: StructureCounter[] = res[1];
-          categories.forEach((category) => {
-            category = this.searchService.setCountModules(category, structureCounter);
-            this.categories.push(category);
-          });
-        }
-      );
+      forkJoin([
+        this.searchService.getCategoriesTraining(),
+        this.searchService.getFakeCounterModule(this.checkedModulesFilter),
+      ]).subscribe((res) => {
+        const categories: Category[] = res[0];
+        const structureCounter: StructureCounter[] = res[1];
+        categories.forEach((category) => {
+          category = this.searchService.setCountModules(category, structureCounter);
+          this.categories.push(category);
+        });
+      });
     } else if (option === TypeModal.moreFilters) {
-      forkJoin([this.searchService.getCategoriesMoreFilters(), this.searchService.getFakeCounterModule()]).subscribe(
-        (res) => {
-          const categories: Category[] = res[0];
-          const structureCounter: StructureCounter[] = res[1];
-          categories.forEach((category) => {
-            category = this.searchService.setCountModules(category, structureCounter);
-            this.categories.push(category);
-          });
-        }
-      );
+      forkJoin([
+        this.searchService.getCategoriesMoreFilters(),
+        this.searchService.getFakeCounterModule(this.checkedModulesFilter),
+      ]).subscribe((res) => {
+        const categories: Category[] = res[0];
+        const structureCounter: StructureCounter[] = res[1];
+        categories.forEach((category) => {
+          category = this.searchService.setCountModules(category, structureCounter);
+          this.categories.push(category);
+        });
+      });
     }
   }
 }
diff --git a/src/app/structure-list/services/search.service.ts b/src/app/structure-list/services/search.service.ts
index 2c2b58e37..8436bc53f 100644
--- a/src/app/structure-list/services/search.service.ts
+++ b/src/app/structure-list/services/search.service.ts
@@ -28,9 +28,9 @@ export class SearchService {
       .pipe(map((data: any[]) => data.map((item) => new Category(item))));
   }
 
-  public getFakeCounterModule(): Observable<StructureCounter[]> {
+  public getFakeCounterModule(selectedFilters: { id: string; text: string }[]): Observable<StructureCounter[]> {
     return this.http
-      .get('/api/structures/count')
+      .post('/api/structures/count', selectedFilters)
       .pipe(map((data: any[]) => data.map((item) => new StructureCounter(item))));
   }
   public setCountModules(category: Category, structureCountTab: StructureCounter[]): Category {
-- 
GitLab