From 7424b5beee120d5585c26d421216d272fc2b3349 Mon Sep 17 00:00:00 2001 From: RIHTARSIC Joze <joze.rihtarsic@ext.ec.europa.eu> Date: Wed, 7 Feb 2024 09:51:04 +0100 Subject: [PATCH] [EDELIVERY-12621] Fix resource pagination --- .../edit-resources/edit-resource.component.html | 4 ++-- .../edit-resources/edit-resource.component.ts | 16 ++++------------ .../edit-resources/edit-resource.controller.ts | 14 +++----------- 3 files changed, 9 insertions(+), 25 deletions(-) diff --git a/smp-angular/src/app/edit/edit-resources/edit-resource.component.html b/smp-angular/src/app/edit/edit-resources/edit-resource.component.html index 13024006b..e74a82901 100644 --- a/smp-angular/src/app/edit/edit-resources/edit-resource.component.html +++ b/smp-angular/src/app/edit/edit-resources/edit-resource.component.html @@ -4,7 +4,7 @@ text="Edit resource administration panel is a tool for resource administrators to administer the resource" [labelColumnContent]="searchGroupPanel"> - <mat-tab-group #domainTabs + <mat-tab-group #resourceTabs *ngIf="hasResources;else noUserAdminGroupsDataFound" style="height: 100%"> <mat-tab> @@ -132,7 +132,7 @@ </table> </div> - <mat-paginator class="mat-elevation-z2" [length]="resultsLength" + <mat-paginator #resourcePaginator class="mat-elevation-z2" (page)="onPageChanged($event)" [hidePageSize]="true" [pageSize]="5" diff --git a/smp-angular/src/app/edit/edit-resources/edit-resource.component.ts b/smp-angular/src/app/edit/edit-resources/edit-resource.component.ts index e34c09a08..9d18d5531 100644 --- a/smp-angular/src/app/edit/edit-resources/edit-resource.component.ts +++ b/smp-angular/src/app/edit/edit-resources/edit-resource.component.ts @@ -18,12 +18,10 @@ export class EditResourceComponent implements OnInit, BeforeLeaveGuard { groupMembershipType: MemberTypeEnum = MemberTypeEnum.RESOURCE; displayedColumns: string[] = ['identifierValue', 'identifierScheme']; selected: ResourceRo; - filter: any = {}; - resultsLength = 0; isLoadingResults = false; dataSource: MatTableDataSource<ResourceRo>; - @ViewChild(MatPaginator) paginator: MatPaginator; + @ViewChild("resourcePaginator") paginator: MatPaginator; constructor(private editResourceController: EditResourceController) { this.dataSource = editResourceController; @@ -43,9 +41,7 @@ export class EditResourceComponent implements OnInit, BeforeLeaveGuard { applyResourceFilter(event: Event) { - const filterValue = (event.target as HTMLInputElement).value; - this.editResourceController.filter["filter"] = filterValue.trim().toLowerCase(); - this.editResourceController.refreshResources(); + this.editResourceController.applyResourceFilter(event); } get hasResources(): boolean { @@ -92,11 +88,11 @@ export class EditResourceComponent implements OnInit, BeforeLeaveGuard { } get filterResourceResults(): boolean { - return !!this.filter["filter"] + return !!this.editResourceController.resourcesFilter; } get disabledResourceFilter(): boolean { - return !this.editResourceController.selectedGroup; + return !this.editResourceController.filteredData; } isDirty(): boolean { @@ -107,10 +103,6 @@ export class EditResourceComponent implements OnInit, BeforeLeaveGuard { this.editResourceController.refreshResources(); } - get disabledResourcePagination(): boolean { - return !this.editResourceController.selectedGroup; - } - get hasSubResources(): boolean { return this.selectedResourceDefinition?.subresourceDefinitions?.length > 0 } diff --git a/smp-angular/src/app/edit/edit-resources/edit-resource.controller.ts b/smp-angular/src/app/edit/edit-resources/edit-resource.controller.ts index be213942f..a114b874c 100644 --- a/smp-angular/src/app/edit/edit-resources/edit-resource.controller.ts +++ b/smp-angular/src/app/edit/edit-resources/edit-resource.controller.ts @@ -30,7 +30,7 @@ export class EditResourceController extends MatTableDataSource<ResourceRo>{ pageIndex: number = 0; pageSize: number = 10; - filterResources: any = {}; + resourcesFilter: any = {}; isLoadingResults = false; @@ -120,7 +120,7 @@ export class EditResourceController extends MatTableDataSource<ResourceRo>{ } this.isLoadingResults = true; this.resourceService.getGroupResourcesForResourceAdminObservable(this.selectedGroup, this.selectedDomain, - this.filterResources, this.pageIndex, this.pageSize) + this.resourcesFilter, this.pageIndex, this.pageSize) .subscribe((result: TableResult<ResourceRo>) => { this.updateResourceList(result.serviceEntities) this.isLoadingResults = false; @@ -167,18 +167,10 @@ export class EditResourceController extends MatTableDataSource<ResourceRo>{ applyResourceFilter(event: Event) { const filterValue = (event.target as HTMLInputElement).value; - this.filterResources["filter"] = filterValue.trim().toLowerCase(); + this.resourcesFilter["filter"] = filterValue.trim().toLowerCase(); this.refreshResources(); } - get filterResourceResults(): boolean { - return !!this.filterResources["filter"] - } - - get disabledResourceFilter(): boolean { - return !this._selectedGroup; - } - get selectedResourceDefinition(): ResourceDefinitionRo { if (!this._selectedResource) { -- GitLab