From 4ccd19081a86212794ff02d243d8d27d4f865e04 Mon Sep 17 00:00:00 2001 From: Kristof De Langhe Date: Tue, 29 Jan 2019 15:47:32 +0100 Subject: [PATCH] 59415: Possibility to browse-by using a scope --- .../browse-by-author-page.component.ts | 4 +++- .../browse-by-title-page.component.ts | 7 +++++-- src/app/core/browse/browse.service.ts | 4 ++++ src/app/navbar/navbar.component.ts | 10 ---------- 4 files changed, 12 insertions(+), 13 deletions(-) diff --git a/src/app/+browse-by/+browse-by-author-page/browse-by-author-page.component.ts b/src/app/+browse-by/+browse-by-author-page/browse-by-author-page.component.ts index 813ee8a32f..6299dd896b 100644 --- a/src/app/+browse-by/+browse-by-author-page/browse-by-author-page.component.ts +++ b/src/app/+browse-by/+browse-by-author-page/browse-by-author-page.component.ts @@ -57,6 +57,7 @@ export class BrowseByAuthorPageComponent implements OnInit { const pageSize = +params.pageSize || this.paginationConfig.pageSize; const sortDirection = params.sortDirection || this.sortConfig.direction; const sortField = params.sortField || this.sortConfig.field; + const scope = params.scope; this.value = +params.value || params.value || ''; const pagination = Object.assign({}, this.paginationConfig, @@ -68,7 +69,8 @@ export class BrowseByAuthorPageComponent implements OnInit { ); const searchOptions = { pagination: pagination, - sort: sort + sort: sort, + scope: scope }; if (isNotEmpty(this.value)) { this.updatePageWithItems(searchOptions, this.value); diff --git a/src/app/+browse-by/+browse-by-title-page/browse-by-title-page.component.ts b/src/app/+browse-by/+browse-by-title-page/browse-by-title-page.component.ts index e9127dbbab..b5e9eb2427 100644 --- a/src/app/+browse-by/+browse-by-title-page/browse-by-title-page.component.ts +++ b/src/app/+browse-by/+browse-by-title-page/browse-by-title-page.component.ts @@ -56,6 +56,7 @@ export class BrowseByTitlePageComponent implements OnInit { const pageSize = +params.pageSize || this.paginationConfig.pageSize; const sortDirection = params.sortDirection || this.sortConfig.direction; const sortField = params.sortField || this.sortConfig.field; + const scopeID = params.scope; const pagination = Object.assign({}, this.paginationConfig, { currentPage: page, pageSize: pageSize } @@ -66,7 +67,8 @@ export class BrowseByTitlePageComponent implements OnInit { ); this.updatePage({ pagination: pagination, - sort: sort + sort: sort, + scopeID: scopeID }); })); } @@ -81,7 +83,8 @@ export class BrowseByTitlePageComponent implements OnInit { this.items$ = this.itemDataService.findAll({ currentPage: searchOptions.pagination.currentPage, elementsPerPage: searchOptions.pagination.pageSize, - sort: searchOptions.sort + sort: searchOptions.sort, + scopeID: searchOptions.scopeID }); } diff --git a/src/app/core/browse/browse.service.ts b/src/app/core/browse/browse.service.ts index ddce277e7e..9293343c24 100644 --- a/src/app/core/browse/browse.service.ts +++ b/src/app/core/browse/browse.service.ts @@ -90,6 +90,7 @@ export class BrowseService { getBrowseEntriesFor(definitionID: string, options: { pagination?: PaginationComponentOptions; sort?: SortOptions; + scope?: string; } = {}): Observable>> { const request$ = this.getBrowseDefinitions().pipe( getBrowseDefinitionLinks(definitionID), @@ -99,6 +100,9 @@ export class BrowseService { map((href: string) => { // TODO nearly identical to PaginatedSearchOptions => refactor const args = []; + if (isNotEmpty(options.sort)) { + args.push(`scope=${options.scope}`); + } if (isNotEmpty(options.sort)) { args.push(`sort=${options.sort.field},${options.sort.direction}`); } diff --git a/src/app/navbar/navbar.component.ts b/src/app/navbar/navbar.component.ts index 54d409d751..92bd0cd633 100644 --- a/src/app/navbar/navbar.component.ts +++ b/src/app/navbar/navbar.component.ts @@ -63,16 +63,6 @@ export class NavbarComponent extends MenuComponent implements OnInit { } as LinkMenuItemModel, }, { - id: 'browse_global_global_by_issue_date', - parentID: 'browse_global', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.browse_global_by_issue_date', - link: '#' - } as LinkMenuItemModel, - }, { id: 'browse_global_global_by_title', parentID: 'browse_global', active: false,