From 0ea96d8c9f18055ec2848ef82c60bbb659917a7f Mon Sep 17 00:00:00 2001 From: Alex ORLUC <alex.orluc@maarch.org> Date: Thu, 6 Aug 2020 18:13:07 +0200 Subject: [PATCH] FEAT #14454 TIME 1:30 fix default sorting display --- .../actions-administration.component.html | 2 +- .../administration/administration.service.ts | 21 +++++++++++++++---- ...lfresco-list-administration.component.html | 2 +- .../baskets-administration.component.html | 2 +- ...tacts-groups-administration.component.html | 2 +- ...fusionModels-administration.component.html | 2 +- .../groups-administration.component.html | 2 +- .../user/users-administration.component.html | 2 +- .../user/users-administration.component.ts | 8 +++---- 9 files changed, 28 insertions(+), 15 deletions(-) diff --git a/src/frontend/app/administration/action/actions-administration.component.html b/src/frontend/app/administration/action/actions-administration.component.html index b5faa1bdd6a..6c8835a01bb 100755 --- a/src/frontend/app/administration/action/actions-administration.component.html +++ b/src/frontend/app/administration/action/actions-administration.component.html @@ -40,7 +40,7 @@ </mat-paginator> </div> </div> - <mat-table #table [dataSource]="adminService.getDataSource()" [matSortActive]="adminService.getFilter('sort')" [matSortDirection]="adminService.getFilter('sortDirection')" matSort> + <mat-table #table [dataSource]="adminService.getDataSource()" matSort matSortDisableClear> <ng-container matColumnDef="id"> <mat-header-cell *matHeaderCellDef mat-sort-header [class.hide-for-mobile]="appService.getViewMode()">{{lang.id}}</mat-header-cell> diff --git a/src/frontend/app/administration/administration.service.ts b/src/frontend/app/administration/administration.service.ts index e1f5db2f4e8..3639062fdbf 100644 --- a/src/frontend/app/administration/administration.service.ts +++ b/src/frontend/app/administration/administration.service.ts @@ -1,10 +1,10 @@ -import { Injectable } from '@angular/core'; +import { Injectable, ChangeDetectorRef, OnInit, OnDestroy } from '@angular/core'; import { LocalStorageService } from '../../service/local-storage.service'; import { HeaderService } from '../../service/header.service'; import { FunctionsService } from '../../service/functions.service'; import { MatTableDataSource } from '@angular/material/table'; import { MatPaginator } from '@angular/material/paginator'; -import { MatSort } from '@angular/material/sort'; +import { MatSort, Sort, MatSortable } from '@angular/material/sort'; import { merge } from 'rxjs/internal/observable/merge'; import { startWith } from 'rxjs/internal/operators/startWith'; import { tap } from 'rxjs/internal/operators/tap'; @@ -53,6 +53,12 @@ export class AdministrationService { page: 0, field: '' }, + admin_indexing_models: { + sort: 'label', + sortDirection: 'asc', + page: 0, + field: '' + }, }; dataSource: MatTableDataSource<any>; filterColumns: string[]; @@ -104,12 +110,19 @@ export class AdministrationService { ); } - sort.active = this.getFilter('sort'); - sort.direction = this.getFilter('sortDirection'); + // sort.active = this.getFilter('sort'); + // sort.direction = this.getFilter('sortDirection'); paginator.pageIndex = this.getFilter('page'); this.dataSource.sort = sort; + // WORKAROUND TO SHOW ARROW DEFAULT FILTER + const element: HTMLElement = document.getElementsByClassName('mat-column-' + this.getFilter('sort'))[0] as HTMLElement; + element.click(); + if (this.getFilter('sortDirection') === 'desc') { + element.click(); + } + this.searchTerm.setValue(this.getFilter('field')); merge(sort.sortChange, paginator.page) diff --git a/src/frontend/app/administration/alfresco/alfresco-list-administration.component.html b/src/frontend/app/administration/alfresco/alfresco-list-administration.component.html index e0c89a80e50..94147ffdaf3 100644 --- a/src/frontend/app/administration/alfresco/alfresco-list-administration.component.html +++ b/src/frontend/app/administration/alfresco/alfresco-list-administration.component.html @@ -48,7 +48,7 @@ </mat-paginator> </div> </div> - <mat-table #table [dataSource]="adminService.getDataSource()" [matSortActive]="adminService.getFilter('sort')" [matSortDirection]="adminService.getFilter('sortDirection')" matSort> + <mat-table #table [dataSource]="adminService.getDataSource()" matSortDisableClear matSort> <ng-container matColumnDef="label"> <mat-header-cell *matHeaderCellDef mat-sort-header [class.hide-for-mobile]="appService.getViewMode()">{{lang.label}}</mat-header-cell> diff --git a/src/frontend/app/administration/basket/baskets-administration.component.html b/src/frontend/app/administration/basket/baskets-administration.component.html index f07b15cf52f..e02cbac652c 100755 --- a/src/frontend/app/administration/basket/baskets-administration.component.html +++ b/src/frontend/app/administration/basket/baskets-administration.component.html @@ -46,7 +46,7 @@ </mat-paginator> </div> </div> - <mat-table #table [dataSource]="adminService.getDataSource()" [matSortActive]="adminService.getFilter('sort')" [matSortDirection]="adminService.getFilter('sortDirection')" matSort> + <mat-table #table [dataSource]="adminService.getDataSource()" matSortDisableClear matSort> <ng-container matColumnDef="basket_id"> <mat-header-cell *matHeaderCellDef mat-sort-header [class.hide-for-mobile]="appService.getViewMode()">{{lang.id}}</mat-header-cell> diff --git a/src/frontend/app/administration/contact/group/contacts-groups-administration.component.html b/src/frontend/app/administration/contact/group/contacts-groups-administration.component.html index e8bbf085279..4aaeb56d2f1 100644 --- a/src/frontend/app/administration/contact/group/contacts-groups-administration.component.html +++ b/src/frontend/app/administration/contact/group/contacts-groups-administration.component.html @@ -49,7 +49,7 @@ </mat-paginator> </div> </div> - <mat-table #table [dataSource]="adminService.getDataSource()" [matSortActive]="adminService.getFilter('sort')" [matSortDirection]="adminService.getFilter('sortDirection')" matSort> + <mat-table #table [dataSource]="adminService.getDataSource()" matSortDisableClear matSort> <ng-container matColumnDef="label"> <mat-header-cell *matHeaderCellDef mat-sort-header [class.hide-for-mobile]="appService.getViewMode()" style="flex:2;">{{lang.label}} diff --git a/src/frontend/app/administration/diffusionModel/diffusionModels-administration.component.html b/src/frontend/app/administration/diffusionModel/diffusionModels-administration.component.html index 2291204b738..ca56e2e9e72 100755 --- a/src/frontend/app/administration/diffusionModel/diffusionModels-administration.component.html +++ b/src/frontend/app/administration/diffusionModel/diffusionModels-administration.component.html @@ -40,7 +40,7 @@ </mat-paginator> </div> </div> - <mat-table #table [dataSource]="adminService.getDataSource()" [matSortActive]="adminService.getFilter('sort')" [matSortDirection]="adminService.getFilter('sortDirection')" matSort> + <mat-table #table [dataSource]="adminService.getDataSource()" matSortDisableClear matSort> <ng-container matColumnDef="title"> <mat-header-cell *matHeaderCellDef mat-sort-header style="flex:2;">{{lang.label}}</mat-header-cell> <mat-cell *matCellDef="let element" style="flex:2;"> diff --git a/src/frontend/app/administration/group/groups-administration.component.html b/src/frontend/app/administration/group/groups-administration.component.html index 432bd8a3c0c..01c989a7879 100755 --- a/src/frontend/app/administration/group/groups-administration.component.html +++ b/src/frontend/app/administration/group/groups-administration.component.html @@ -40,7 +40,7 @@ </mat-paginator> </div> </div> - <mat-table #table [dataSource]="adminService.getDataSource()" [matSortActive]="adminService.getFilter('sort')" [matSortDirection]="adminService.getFilter('sortDirection')" matSort> + <mat-table #table [dataSource]="adminService.getDataSource()" matSortDisableClear matSort> <ng-container matColumnDef="group_id"> <mat-header-cell *matHeaderCellDef mat-sort-header [class.hide-for-mobile]="appService.getViewMode()">{{lang.id}}</mat-header-cell> diff --git a/src/frontend/app/administration/user/users-administration.component.html b/src/frontend/app/administration/user/users-administration.component.html index 66000a17d19..316280c45b8 100755 --- a/src/frontend/app/administration/user/users-administration.component.html +++ b/src/frontend/app/administration/user/users-administration.component.html @@ -66,7 +66,7 @@ </mat-paginator> </div> </div> - <mat-table #table [dataSource]="adminService.getDataSource()" [matSortActive]="adminService.getFilter('sort')" [matSortDirection]="adminService.getFilter('sortDirection')" matSort> + <mat-table #table [dataSource]="adminService.getDataSource()" matSort matSortDisableClear> <ng-container matColumnDef="id"> <mat-header-cell *matHeaderCellDef mat-sort-header [class.hide-for-mobile]="appService.getViewMode()">{{lang.technicalId}} diff --git a/src/frontend/app/administration/user/users-administration.component.ts b/src/frontend/app/administration/user/users-administration.component.ts index 995e73c8741..610c3f71377 100755 --- a/src/frontend/app/administration/user/users-administration.component.ts +++ b/src/frontend/app/administration/user/users-administration.component.ts @@ -1,4 +1,4 @@ -import { Component, OnInit, ViewChild, Inject, TemplateRef, ViewContainerRef, ElementRef } from '@angular/core'; +import { Component, OnInit, ViewChild, Inject, TemplateRef, ViewContainerRef, ElementRef, ChangeDetectorRef } from '@angular/core'; import { HttpClient } from '@angular/common/http'; import { LANG } from '../../translate.component'; import { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog'; @@ -27,7 +27,7 @@ export class UsersAdministrationComponent implements OnInit { dialogRef: MatDialogRef<any>; lang: any = LANG; - loading: boolean = false; + loading: boolean = true; updateListModel: boolean = true; updateListInstance: boolean = true; @@ -56,7 +56,7 @@ export class UsersAdministrationComponent implements OnInit { public appService: AppService, public functions: FunctionsService, public adminService: AdministrationService, - private viewContainerRef: ViewContainerRef + private viewContainerRef: ViewContainerRef, ) { } ngOnInit(): void { @@ -65,7 +65,7 @@ export class UsersAdministrationComponent implements OnInit { this.headerService.injectInSideBarLeft(this.adminMenuTemplate, this.viewContainerRef, 'adminMenu'); this.user = this.headerService.user; - this.loading = true; + this.getData(); } -- GitLab