mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 01:54:15 +00:00
Merge pull request #979 from atmire/680-recent-submision-pagination-reload
680 Fix change event reference for recent submission
This commit is contained in:
@@ -21,6 +21,7 @@ import { fadeIn, fadeInOut } from '../shared/animations/fade';
|
||||
import { hasValue, isNotEmpty } from '../shared/empty.util';
|
||||
import { PaginationComponentOptions } from '../shared/pagination/pagination-component-options.model';
|
||||
import { AuthService } from '../core/auth/auth.service';
|
||||
import {PaginationChangeEvent} from '../shared/pagination/paginationChangeEvent.interface';
|
||||
|
||||
@Component({
|
||||
selector: 'ds-collection-page',
|
||||
@@ -95,7 +96,6 @@ export class CollectionPageComponent implements OnInit {
|
||||
|
||||
this.route.queryParams.pipe(take(1)).subscribe((params) => {
|
||||
this.metadata.processRemoteData(this.collectionRD$);
|
||||
this.onPaginationChange(params);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -103,12 +103,16 @@ export class CollectionPageComponent implements OnInit {
|
||||
return isNotEmpty(object);
|
||||
}
|
||||
|
||||
onPaginationChange(event) {
|
||||
this.paginationConfig.currentPage = +event.page || this.paginationConfig.currentPage;
|
||||
this.paginationConfig.pageSize = +event.pageSize || this.paginationConfig.pageSize;
|
||||
this.sortConfig.direction = event.sortDirection || this.sortConfig.direction;
|
||||
this.sortConfig.field = event.sortField || this.sortConfig.field;
|
||||
|
||||
onPaginationChange(event: PaginationChangeEvent) {
|
||||
this.paginationConfig = Object.assign(new PaginationComponentOptions(), {
|
||||
currentPage: event.pagination.currentPage || this.paginationConfig.currentPage,
|
||||
pageSize: event.pagination.pageSize || this.paginationConfig.pageSize,
|
||||
id: 'collection-page-pagination'
|
||||
});
|
||||
this.sortConfig = Object.assign(new SortOptions('dc.date.accessioned', SortDirection.DESC), {
|
||||
direction: event.sort.direction || this.sortConfig.direction,
|
||||
field: event.sort.field || this.sortConfig.field
|
||||
});
|
||||
this.paginationChanges$.next({
|
||||
paginationConfig: this.paginationConfig,
|
||||
sortConfig: this.sortConfig
|
||||
|
19
src/app/shared/pagination/paginationChangeEvent.interface.ts
Normal file
19
src/app/shared/pagination/paginationChangeEvent.interface.ts
Normal file
@@ -0,0 +1,19 @@
|
||||
import {PaginationComponentOptions} from './pagination-component-options.model';
|
||||
import {SortOptions} from '../../core/cache/models/sort-options.model';
|
||||
|
||||
|
||||
/**
|
||||
* The pagination event that contains updated pagination properties
|
||||
* for a given view
|
||||
*/
|
||||
export interface PaginationChangeEvent {
|
||||
/**
|
||||
* The pagination component object that contains id, current page, max size, page size options, and page size
|
||||
*/
|
||||
pagination: PaginationComponentOptions;
|
||||
|
||||
/**
|
||||
* The sort options object that contains which field to sort by and the sorting direction
|
||||
*/
|
||||
sort: SortOptions;
|
||||
}
|
Reference in New Issue
Block a user