diff --git a/src/app/collection-page/collection-page.component.ts b/src/app/collection-page/collection-page.component.ts index 09471d4c6d..1f30824877 100644 --- a/src/app/collection-page/collection-page.component.ts +++ b/src/app/collection-page/collection-page.component.ts @@ -28,6 +28,7 @@ import { AuthorizationDataService } from '../core/data/feature-authorization/aut import { FeatureID } from '../core/data/feature-authorization/feature-id'; import { getCollectionPageRoute } from './collection-page-routing-paths'; import { redirectOn4xx } from '../core/shared/authorized.operators'; +import { BROWSE_ITEM_LINKS_TO_FOLLOW } from '../core/browse/browse.service'; @Component({ selector: 'ds-collection-page', @@ -74,6 +75,7 @@ export class CollectionPageComponent implements OnInit { this.paginationConfig.pageSize = 5; this.paginationConfig.currentPage = 1; this.sortConfig = new SortOptions('dc.date.accessioned', SortDirection.DESC); + } ngOnInit(): void { @@ -108,7 +110,8 @@ export class CollectionPageComponent implements OnInit { pagination: currentPagination, sort: currentSort, dsoTypes: [DSpaceObjectType.ITEM] - })).pipe(toDSpaceObjectListRD()) as Observable>>; + }), null, true, true, ...BROWSE_ITEM_LINKS_TO_FOLLOW) + .pipe(toDSpaceObjectListRD()) as Observable>>; }), startWith(undefined) // Make sure switching pages shows loading component ) diff --git a/src/app/collection-page/collection-page.resolver.ts b/src/app/collection-page/collection-page.resolver.ts index d476a180d3..2f5b3ed37a 100644 --- a/src/app/collection-page/collection-page.resolver.ts +++ b/src/app/collection-page/collection-page.resolver.ts @@ -17,7 +17,7 @@ export const COLLECTION_PAGE_LINKS_TO_FOLLOW: FollowLinkConfig[] = [ followLink('parentCommunity', {}, followLink('parentCommunity') ), - followLink('logo') + followLink('logo'), ]; /** diff --git a/src/app/community-page.tar.gz b/src/app/community-page.tar.gz new file mode 100644 index 0000000000..33169aa509 Binary files /dev/null and b/src/app/community-page.tar.gz differ diff --git a/src/app/core/browse/browse.service.ts b/src/app/core/browse/browse.service.ts index 05e625d6c1..c34c32d9c2 100644 --- a/src/app/core/browse/browse.service.ts +++ b/src/app/core/browse/browse.service.ts @@ -21,6 +21,15 @@ import { URLCombiner } from '../url-combiner/url-combiner'; import { BrowseEntrySearchOptions } from './browse-entry-search-options.model'; import { BrowseDefinitionDataService } from './browse-definition-data.service'; import { HrefOnlyDataService } from '../data/href-only-data.service'; +import { followLink, FollowLinkConfig } from '../../shared/utils/follow-link-config.model'; + +const BROWSE_ENTRY_LINKS_TO_FOLLOW: FollowLinkConfig[] = [ + followLink('thumbnail') +]; + +export const BROWSE_ITEM_LINKS_TO_FOLLOW: FollowLinkConfig[] = [ + followLink('thumbnail') +]; /** * The service handling all browse requests @@ -96,6 +105,11 @@ export class BrowseService { return href; }) ); + + if (options.metadataDefinition == 'title' || options.metadataDefinition == 'dateissued' ) { + return this.hrefOnlyDataService.findAllByHref(href$, {}, null, null, ...BROWSE_ENTRY_LINKS_TO_FOLLOW); + + } return this.hrefOnlyDataService.findAllByHref(href$); } @@ -141,6 +155,9 @@ export class BrowseService { return href; }), ); + if (options.metadataDefinition == 'title' || options.metadataDefinition == 'dateissued' || hasValue(filterValue)) { + return this.hrefOnlyDataService.findAllByHref(href$, {}, null, null, ...BROWSE_ITEM_LINKS_TO_FOLLOW); + } return this.hrefOnlyDataService.findAllByHref(href$); } diff --git a/src/app/core/shared/browse-entry.model.ts b/src/app/core/shared/browse-entry.model.ts index df748ac61c..7556306235 100644 --- a/src/app/core/shared/browse-entry.model.ts +++ b/src/app/core/shared/browse-entry.model.ts @@ -51,6 +51,7 @@ export class BrowseEntry extends ListableObject implements TypedObject { _links: { self: HALLink; entries: HALLink; + thumbnail: HALLink; }; /** diff --git a/src/app/shared/object-list/search-result-list-element/item-search-result/item-types/item/item-search-result-list-element.component.html b/src/app/shared/object-list/search-result-list-element/item-search-result/item-types/item/item-search-result-list-element.component.html index 645cace8dc..c13821a153 100644 --- a/src/app/shared/object-list/search-result-list-element/item-search-result/item-types/item/item-search-result-list-element.component.html +++ b/src/app/shared/object-list/search-result-list-element/item-search-result/item-types/item/item-search-result-list-element.component.html @@ -1,15 +1,24 @@ -
- - -
- - +
+
- - + [routerLink]="[itemPageRoute]" class="lead item-list-title dont-break-out"> + + + +
+
+
+ + +
+ + + + + ( @@ -23,9 +32,11 @@ -
+
+ [innerHTML]="firstMetadataValue('dc.description.abstract')"> -
- +
+
+
+