Skip to content

Commit d4e4143

Browse files
authored
Merge pull request DSpace#3041 from DSpace/backport-2983-to-main
[Port main] Fix Author search result without co-author
2 parents 70cbe16 + 517b367 commit d4e4143

1 file changed

Lines changed: 11 additions & 2 deletions

File tree

src/app/shared/object-list/search-result-list-element/search-result-list-element.component.ts

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,13 +46,22 @@ export class SearchResultListElementComponent<T extends SearchResult<K>, K exten
4646
}
4747

4848
/**
49-
* Gets all matching metadata string values from hitHighlights or dso metadata, preferring hitHighlights.
49+
* Gets all matching metadata string values from hitHighlights or dso metadata.
5050
*
5151
* @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]].
5252
* @returns {string[]} the matching string values or an empty array.
5353
*/
5454
allMetadataValues(keyOrKeys: string | string[]): string[] {
55-
return Metadata.allValues([this.object.hitHighlights, this.dso.metadata], keyOrKeys);
55+
const dsoMetadata: string[] = Metadata.allValues([this.dso.metadata], keyOrKeys);
56+
const highlights: string[] = Metadata.allValues([this.object.hitHighlights], keyOrKeys);
57+
const removedHighlights: string[] = highlights.map(str => str.replace(/<\/?em>/g, ''));
58+
for (let i = 0; i < removedHighlights.length; i++) {
59+
const index = dsoMetadata.indexOf(removedHighlights[i]);
60+
if (index !== -1) {
61+
dsoMetadata[index] = highlights[i];
62+
}
63+
}
64+
return dsoMetadata;
5665
}
5766

5867
/**

0 commit comments

Comments
 (0)