From 3253e0393cf0d12f05edcd5cf53c3a4f2fe6a3d2 Mon Sep 17 00:00:00 2001
From: kbeyro <121854496+kbeyro@users.noreply.github.com>
Date: Fri, 23 Jun 2023 16:37:22 +0200
Subject: [PATCH] add search

---
 .../appmanagementlist.component.html             | 16 ++++++++++++----
 .../appmanagementlist.component.ts               | 16 ++++++++++++++++
 2 files changed, 28 insertions(+), 4 deletions(-)

diff --git a/src/app/appmarket/appmanagement/app-management-list/appmanagementlist.component.html b/src/app/appmarket/appmanagement/app-management-list/appmanagementlist.component.html
index fdbd3301..6db0e2c6 100644
--- a/src/app/appmarket/appmanagement/app-management-list/appmanagementlist.component.html
+++ b/src/app/appmarket/appmanagement/app-management-list/appmanagementlist.component.html
@@ -1,10 +1,18 @@
 <div class="col-sm-12 col-sm-offset-1 col-sm 10 col-md-offset-1 col-md-10">
   <h3>{{'APPS_MANAGEMENT.TITLE'| translate}}</h3>
-  <button [routerLink]="['/admin/apps/create']" class="btn btn-primary">{{ 'APPS_MANAGEMENT.ADD_BUTTON' | translate }}</button>
-  <button (click)="appAddJson.show()" class="btn btn-primary" style="margin-left: 10px">{{ 'APPS_MANAGEMENT.ADD_BUTTON' | translate }} (JSON)</button>
+  <div style="display:flex; justify-content: space-between">
+    <div style="display:flex">
+      <button [routerLink]="['/admin/apps/create']" class="btn btn-primary">{{ 'APPS_MANAGEMENT.ADD_BUTTON' | translate }}</button>
+      <button (click)="appAddJson.show()" class="btn btn-primary" style="margin-left: 10px">{{ 'APPS_MANAGEMENT.ADD_BUTTON' | translate }} (JSON)</button>
+    </div>
+    <div style="display: flex">
+      <input pInputText id="searchText" type="text"  placeholder="Search" (keyup)="searchApp($event.target.value)">
 
-  <hr>
-  <table class="table table-hover table-condensed" aria-describedby="Apps management table">
+    </div>
+  </div>
+
+
+  <table class="table table-hover table-condensed" aria-describedby="Apps management table" style="margin-top:15px">
     <thead>
     <tr>
       <th scope="col"></th>
diff --git a/src/app/appmarket/appmanagement/app-management-list/appmanagementlist.component.ts b/src/app/appmarket/appmanagement/app-management-list/appmanagementlist.component.ts
index be91ee2c..8f0e6740 100644
--- a/src/app/appmarket/appmanagement/app-management-list/appmanagementlist.component.ts
+++ b/src/app/appmarket/appmanagement/app-management-list/appmanagementlist.component.ts
@@ -27,6 +27,8 @@ export class AppManagementListComponent implements OnInit {
 
     public versionRowVisible: boolean[] = []
 
+    public filteredApps: ApplicationBase[] = [];
+
     constructor(public appsService: AppsService,
                 public router: Router,
                 public authService: AuthService) {
@@ -84,8 +86,22 @@ export class AppManagementListComponent implements OnInit {
             })
         ).subscribe(val => {
             this.apps = val;
+            this.filteredApps = val;
             this.versionRowVisible = new Array(val.length).fill(false);
         });
     }
 
+    public searchApp(value: string) {
+        const result = [];
+        if (value !== null && value !== '') {
+            this.apps.forEach(app => {
+                if (app.name.toLowerCase().includes(value.toLowerCase())) {
+                    result.push(app)
+                }
+            })
+            this.apps = result;
+        } else {
+            this.apps = this.filteredApps
+        }
+    }
 }
-- 
GitLab