From 877e0454b20aeebee6bd69c20c2356d78da5f1d7 Mon Sep 17 00:00:00 2001
From: Nestor <npegane@hotmail.com>
Date: Thu, 5 Jul 2018 17:38:38 +0200
Subject: [PATCH] FEAT #8056 filter on displayed columns only

---
 .../templates-administration.component.ts         | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

diff --git a/apps/maarch_entreprise/js/angular/app/administration/templates-administration.component.ts b/apps/maarch_entreprise/js/angular/app/administration/templates-administration.component.ts
index fa739fff863..fb806860f20 100644
--- a/apps/maarch_entreprise/js/angular/app/administration/templates-administration.component.ts
+++ b/apps/maarch_entreprise/js/angular/app/administration/templates-administration.component.ts
@@ -33,6 +33,16 @@ export class TemplatesAdministrationComponent implements OnInit {
         filterValue = filterValue.trim(); // Remove whitespace
         filterValue = filterValue.toLowerCase(); // MatTableDataSource defaults to lowercase matches
         this.dataSource.filter = filterValue;
+        var disCol = this.displayedColumns;
+        this.dataSource.filterPredicate = function(template, filter: string): boolean {
+            var filterReturn = false;
+            disCol.forEach(function(column:any){
+                if(column != 'actions'){
+                    filterReturn = filterReturn || template[column].toLowerCase().includes(filter) ;
+                }
+            })
+            return filterReturn;
+        };
     }
 
     constructor(changeDetectorRef: ChangeDetectorRef, media: MediaMatcher, public http: HttpClient, private notify: NotificationService) {
@@ -58,10 +68,7 @@ export class TemplatesAdministrationComponent implements OnInit {
                 setTimeout(() => {
                     this.dataSource = new MatTableDataSource(this.templates);
                     this.dataSource.paginator = this.paginator;
-                    this.dataSource.sort = this.sort;
-                    this.dataSource.filterPredicate = function(template, filter: string): boolean {
-                        return template.template_comment.toLowerCase().includes(filter) ||  template.template_label.toLowerCase().includes(filter) || template.template_type.toLowerCase().includes(filter) || template.template_target.toLowerCase().includes(filter);
-                    };
+                    this.dataSource.sort = this.sort;                    
                 }, 0);
                 
             }, (err) => {
-- 
GitLab