Skip to content
Original file line number Diff line number Diff line change
Expand Up @@ -41,4 +41,11 @@ export class ItemMetadataRepresentation extends Item implements MetadataRepresen
return this.virtualMetadata.value;
}

/**
* Get the language of the value to display
*/
getLanguage(): string {
return this.virtualMetadata.language || null;
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -37,4 +37,9 @@ export interface MetadataRepresentation {
*/
getValue(): string;

/**
* Fetches the language of the metadata
*/
getLanguage(): string;

}
Original file line number Diff line number Diff line change
Expand Up @@ -48,4 +48,11 @@ export class MetadatumRepresentation extends MetadataValue implements MetadataRe
return this.value;
}

/**
* Get the value language
*/
getLanguage(): string {
return this.language || null;
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -33,14 +33,14 @@ <h4 class="card-title" [innerHTML]="dsoTitle"></h4>
<p
class="item-date card-text text-muted">
<ds-truncatable-part [id]="dso.id" [minLines]="1">
<span [innerHTML]="firstMetadataValue('creativework.datePublished')"></span>
<span [dsMetadata]="firstMetadata('creativework.datePublished')"></span>
</ds-truncatable-part>
</p>
}
@if (dso.hasMetadata('journal.title')) {
<p class="item-journal-title card-text">
<ds-truncatable-part [id]="dso.id" [minLines]="3">
<span [innerHTML]="firstMetadataValue('journal.title')"></span>
<span [dsMetadata]="firstMetadata('journal.title')"></span>
</ds-truncatable-part>
</p>
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import { ViewMode } from '@dspace/core/shared/view-mode.model';
import { TranslateModule } from '@ngx-translate/core';

import { focusShadow } from '../../../../../shared/animations/focus';
import { MetadataDirective } from '../../../../../shared/metadata.directive';
import { ThemedBadgesComponent } from '../../../../../shared/object-collection/shared/badges/themed-badges.component';
import { listableObjectComponent } from '../../../../../shared/object-collection/shared/listable-object/listable-object.decorator';
import { ItemSearchResultGridElementComponent } from '../../../../../shared/object-grid/search-result-grid-element/item-search-result/item/item-search-result-grid-element.component';
Expand All @@ -20,6 +21,7 @@ import { ThemedThumbnailComponent } from '../../../../../thumbnail/themed-thumbn
animations: [focusShadow],
imports: [
AsyncPipe,
MetadataDirective,
RouterLink,
ThemedBadgesComponent,
ThemedThumbnailComponent,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,14 +33,14 @@ <h4 class="card-title" [innerHTML]="dsoTitle"></h4>
<p
class="item-date card-text text-muted">
<ds-truncatable-part [id]="dso.id" [minLines]="1">
<span [innerHTML]="firstMetadataValue('creativework.datePublished')"></span>
<span [dsMetadata]="firstMetadata('creativework.datePublished')"></span>
</ds-truncatable-part>
</p>
}
@if (dso.hasMetadata('dc.description')) {
<p class="item-description card-text">
<ds-truncatable-part [id]="dso.id" [minLines]="3">
<span [innerHTML]="firstMetadataValue('dc.description')"></span>
<span [dsMetadata]="firstMetadata('dc.description')"></span>
</ds-truncatable-part>
</p>
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import { ViewMode } from '@dspace/core/shared/view-mode.model';
import { TranslateModule } from '@ngx-translate/core';

import { focusShadow } from '../../../../../shared/animations/focus';
import { MetadataDirective } from '../../../../../shared/metadata.directive';
import { ThemedBadgesComponent } from '../../../../../shared/object-collection/shared/badges/themed-badges.component';
import { listableObjectComponent } from '../../../../../shared/object-collection/shared/listable-object/listable-object.decorator';
import { ItemSearchResultGridElementComponent } from '../../../../../shared/object-grid/search-result-grid-element/item-search-result/item/item-search-result-grid-element.component';
Expand All @@ -20,6 +21,7 @@ import { ThemedThumbnailComponent } from '../../../../../thumbnail/themed-thumbn
animations: [focusShadow],
imports: [
AsyncPipe,
MetadataDirective,
RouterLink,
ThemedBadgesComponent,
ThemedThumbnailComponent,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,11 +33,11 @@ <h4 class="card-title" [innerHTML]="dsoTitle"></h4>
<p
class="item-publisher card-text text-muted">
<ds-truncatable-part [id]="dso.id" [minLines]="1">
<span class="item-editor">{{firstMetadataValue('creativework.editor')}}</span>
<span class="item-editor" [dsMetadata]="firstMetadata('creativework.editor')"></span>
@if (dso.hasMetadata('creativework.publisher')) {
<span class="item-publisher">
<span>, </span>
{{firstMetadataValue('creativework.publisher')}}
<span [dsMetadata]="firstMetadata('creativework.publisher')"></span>
</span>
}
</ds-truncatable-part>
Expand All @@ -46,7 +46,7 @@ <h4 class="card-title" [innerHTML]="dsoTitle"></h4>
@if (dso.hasMetadata('dc.description')) {
<p class="item-description card-text">
<ds-truncatable-part [id]="dso.id" [minLines]="3">
<span [innerHTML]="firstMetadataValue('dc.description')"></span>
<span [dsMetadata]="firstMetadata('dc.description')"></span>
</ds-truncatable-part>
</p>
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import { ViewMode } from '@dspace/core/shared/view-mode.model';
import { TranslateModule } from '@ngx-translate/core';

import { focusShadow } from '../../../../../shared/animations/focus';
import { MetadataDirective } from '../../../../../shared/metadata.directive';
import { ThemedBadgesComponent } from '../../../../../shared/object-collection/shared/badges/themed-badges.component';
import { listableObjectComponent } from '../../../../../shared/object-collection/shared/listable-object/listable-object.decorator';
import { ItemSearchResultGridElementComponent } from '../../../../../shared/object-grid/search-result-grid-element/item-search-result/item/item-search-result-grid-element.component';
Expand All @@ -20,6 +21,7 @@ import { ThemedThumbnailComponent } from '../../../../../thumbnail/themed-thumbn
animations: [focusShadow],
imports: [
AsyncPipe,
MetadataDirective,
RouterLink,
ThemedBadgesComponent,
ThemedThumbnailComponent,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,21 +38,21 @@
@if (dso.allMetadata(['publicationvolume.volumeNumber']).length > 0) {
<span
class="item-list-journal-issues">
@for (value of allMetadataValues(['publicationvolume.volumeNumber']); track value; let last = $last) {
@for (value of allMetadata(['publicationvolume.volumeNumber']); track value; let last = $last) {
<span>
<span [innerHTML]="value"></span>@if (!last) {
<span [dsMetadata]="value"></span>@if (!last) {
<span>; </span>
}
</span>
}
@if (dso.allMetadata(['publicationissue.issueNumber']).length > 0) {
<span
class="item-list-journal-issue-numbers">
@for (value of allMetadataValues(['publicationissue.issueNumber']); track value; let first = $first; let last = $last) {
@for (value of allMetadata(['publicationissue.issueNumber']); track value; let first = $first; let last = $last) {
<span>
@if (first) {
<span> - </span>
}<span [innerHTML]="value"></span>@if (!last) {
}<span [dsMetadata]="value"></span>@if (!last) {
<span>; </span>
}
</span>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import { Component } from '@angular/core';
import { RouterLink } from '@angular/router';
import { ViewMode } from '@dspace/core/shared/view-mode.model';

import { MetadataDirective } from '../../../../../shared/metadata.directive';
import { ThemedBadgesComponent } from '../../../../../shared/object-collection/shared/badges/themed-badges.component';
import { listableObjectComponent } from '../../../../../shared/object-collection/shared/listable-object/listable-object.decorator';
import { ItemSearchResultListElementComponent } from '../../../../../shared/object-list/search-result-list-element/item-search-result/item-types/item/item-search-result-list-element.component';
Expand All @@ -20,6 +21,7 @@ import { ThemedThumbnailComponent } from '../../../../../thumbnail/themed-thumbn
templateUrl: './journal-issue-search-result-list-element.component.html',
imports: [
AsyncPipe,
MetadataDirective,
NgClass,
RouterLink,
ThemedBadgesComponent,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,9 +38,9 @@
@if (dso.allMetadata(['journal.title']).length > 0) {
<span
class="item-list-journal-volumes">
@for (value of allMetadataValues(['journal.title']); track value; let last = $last) {
@for (value of allMetadata(['journal.title']); track value; let last = $last) {
<span>
<span [innerHTML]="value"></span>@if (!last) {
<span [dsMetadata]="value"></span>@if (!last) {
<span>; </span>
}
</span>
Expand All @@ -50,9 +50,9 @@
@if (dso.allMetadata(['publicationvolume.volumeNumber']).length > 0) {
<span
class="item-list-journal-volume-identifiers">
@for (value of allMetadataValues(['publicationvolume.volumeNumber']); track value; let last = $last) {
@for (value of allMetadata(['publicationvolume.volumeNumber']); track value; let last = $last) {
<span>
<span> (</span><span [innerHTML]="value"></span><span>)</span>@if (!last) {
<span> (</span><span [dsMetadata]="value"></span><span>)</span>@if (!last) {
<span>;</span>
}
</span>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import { Component } from '@angular/core';
import { RouterLink } from '@angular/router';
import { ViewMode } from '@dspace/core/shared/view-mode.model';

import { MetadataDirective } from '../../../../../shared/metadata.directive';
import { ThemedBadgesComponent } from '../../../../../shared/object-collection/shared/badges/themed-badges.component';
import { listableObjectComponent } from '../../../../../shared/object-collection/shared/listable-object/listable-object.decorator';
import { ItemSearchResultListElementComponent } from '../../../../../shared/object-list/search-result-list-element/item-search-result/item-types/item/item-search-result-list-element.component';
Expand All @@ -20,6 +21,7 @@ import { ThemedThumbnailComponent } from '../../../../../thumbnail/themed-thumbn
templateUrl: './journal-volume-search-result-list-element.component.html',
imports: [
AsyncPipe,
MetadataDirective,
NgClass,
RouterLink,
ThemedBadgesComponent,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,9 +36,9 @@
@if (dso.allMetadata(['creativeworkseries.issn']).length > 0) {
<span
class="item-list-journals">
@for (value of allMetadataValues(['creativeworkseries.issn']); track value; let last = $last) {
@for (value of allMetadata(['creativeworkseries.issn']); track value; let last = $last) {
<span>
<span [innerHTML]="value"></span>@if (!last) {
<span [dsMetadata]="value"></span>@if (!last) {
<span>; </span>
}
</span>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import { Component } from '@angular/core';
import { RouterLink } from '@angular/router';
import { ViewMode } from '@dspace/core/shared/view-mode.model';

import { MetadataDirective } from '../../../../../shared/metadata.directive';
import { ThemedBadgesComponent } from '../../../../../shared/object-collection/shared/badges/themed-badges.component';
import { listableObjectComponent } from '../../../../../shared/object-collection/shared/listable-object/listable-object.decorator';
import { ItemSearchResultListElementComponent } from '../../../../../shared/object-list/search-result-list-element/item-search-result/item-types/item/item-search-result-list-element.component';
Expand All @@ -20,6 +21,7 @@ import { ThemedThumbnailComponent } from '../../../../../thumbnail/themed-thumbn
templateUrl: './journal-search-result-list-element.component.html',
imports: [
AsyncPipe,
MetadataDirective,
NgClass,
RouterLink,
ThemedBadgesComponent,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,20 +33,19 @@ <h4 class="card-title" [innerHTML]="dsoTitle"></h4>
<p
class="item-date card-text text-muted">
<ds-truncatable-part [id]="dso.id" [minLines]="1">
<span [innerHTML]="firstMetadataValue('organization.foundingDate')"></span>
<span [dsMetadata]="firstMetadata('organization.foundingDate')"></span>
</ds-truncatable-part>
</p>
}
@if (dso.hasMetadata('organization.address.addressCountry')) {
<p
class="item-location card-text">
<ds-truncatable-part [id]="dso.id" [minLines]="3">
<span
class="item-country">{{firstMetadataValue('organization.address.addressCountry')}}</span>
<span [dsMetadata]="firstMetadata('organization.address.addressCountry')" class="item-country"></span>
@if (dso.hasMetadata('organization.address.addressLocality')) {
<span class="item-city">
<span>, </span>
{{firstMetadataValue('organization.address.addressLocality')}}
<span [dsMetadata]="firstMetadata('organization.address.addressLocality')"></span>
</span>
}
</ds-truncatable-part>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import { ViewMode } from '@dspace/core/shared/view-mode.model';
import { TranslateModule } from '@ngx-translate/core';

import { focusShadow } from '../../../../../shared/animations/focus';
import { MetadataDirective } from '../../../../../shared/metadata.directive';
import { ThemedBadgesComponent } from '../../../../../shared/object-collection/shared/badges/themed-badges.component';
import { listableObjectComponent } from '../../../../../shared/object-collection/shared/listable-object/listable-object.decorator';
import { ItemSearchResultGridElementComponent } from '../../../../../shared/object-grid/search-result-grid-element/item-search-result/item/item-search-result-grid-element.component';
Expand All @@ -20,6 +21,7 @@ import { ThemedThumbnailComponent } from '../../../../../thumbnail/themed-thumbn
animations: [focusShadow],
imports: [
AsyncPipe,
MetadataDirective,
RouterLink,
ThemedBadgesComponent,
ThemedThumbnailComponent,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,14 +32,14 @@ <h4 class="card-title" [innerHTML]="dsoTitle"></h4>
@if (dso.hasMetadata('person.email')) {
<p class="item-email card-text text-muted">
<ds-truncatable-part [id]="dso.id" [minLines]="1">
<span [innerHTML]="firstMetadataValue('person.email')"></span>
<span [dsMetadata]="firstMetadata('person.email')"></span>
</ds-truncatable-part>
</p>
}
@if (dso.hasMetadata('person.jobTitle')) {
<p class="item-jobtitle card-text">
<ds-truncatable-part [id]="dso.id" [minLines]="3">
<span [innerHTML]="firstMetadataValue('person.jobTitle')"></span>
<span [dsMetadata]="firstMetadata('person.jobTitle')"></span>
</ds-truncatable-part>
</p>
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import { ViewMode } from '@dspace/core/shared/view-mode.model';
import { TranslateModule } from '@ngx-translate/core';

import { focusShadow } from '../../../../../shared/animations/focus';
import { MetadataDirective } from '../../../../../shared/metadata.directive';
import { ThemedBadgesComponent } from '../../../../../shared/object-collection/shared/badges/themed-badges.component';
import { listableObjectComponent } from '../../../../../shared/object-collection/shared/listable-object/listable-object.decorator';
import { ItemSearchResultGridElementComponent } from '../../../../../shared/object-grid/search-result-grid-element/item-search-result/item/item-search-result-grid-element.component';
Expand All @@ -20,6 +21,7 @@ import { ThemedThumbnailComponent } from '../../../../../thumbnail/themed-thumbn
animations: [focusShadow],
imports: [
AsyncPipe,
MetadataDirective,
RouterLink,
ThemedBadgesComponent,
ThemedThumbnailComponent,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ <h4 class="card-title" [innerHTML]="dsoTitle"></h4>
@if (dso.hasMetadata('dc.description')) {
<p class="item-description card-text text-muted">
<ds-truncatable-part [id]="dso.id" [minLines]="3">
<span [innerHTML]="firstMetadataValue('dc.description')"></span>
<span [dsMetadata]="firstMetadata('dc.description')"></span>
</ds-truncatable-part>
</p>
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import { ViewMode } from '@dspace/core/shared/view-mode.model';
import { TranslateModule } from '@ngx-translate/core';

import { focusShadow } from '../../../../../shared/animations/focus';
import { MetadataDirective } from '../../../../../shared/metadata.directive';
import { ThemedBadgesComponent } from '../../../../../shared/object-collection/shared/badges/themed-badges.component';
import { listableObjectComponent } from '../../../../../shared/object-collection/shared/listable-object/listable-object.decorator';
import { ItemSearchResultGridElementComponent } from '../../../../../shared/object-grid/search-result-grid-element/item-search-result/item/item-search-result-grid-element.component';
Expand All @@ -20,6 +21,7 @@ import { ThemedThumbnailComponent } from '../../../../../thumbnail/themed-thumbn
animations: [focusShadow],
imports: [
AsyncPipe,
MetadataDirective,
RouterLink,
ThemedBadgesComponent,
ThemedThumbnailComponent,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@
<span
class="item-list-org-unit-description">
<ds-truncatable-part [id]="dso.id" [minLines]="3"><span
[innerHTML]="firstMetadataValue('dc.description')"></span>
[dsMetadata]="firstMetadata('dc.description')"></span>
</ds-truncatable-part>
</span>
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import { RouterLink } from '@angular/router';
import { ViewMode } from '@dspace/core/shared/view-mode.model';
import { TranslateModule } from '@ngx-translate/core';

import { MetadataDirective } from '../../../../../shared/metadata.directive';
import { ThemedBadgesComponent } from '../../../../../shared/object-collection/shared/badges/themed-badges.component';
import { listableObjectComponent } from '../../../../../shared/object-collection/shared/listable-object/listable-object.decorator';
import { ItemSearchResultListElementComponent } from '../../../../../shared/object-list/search-result-list-element/item-search-result/item-types/item/item-search-result-list-element.component';
Expand All @@ -21,6 +22,7 @@ import { ThemedThumbnailComponent } from '../../../../../thumbnail/themed-thumbn
templateUrl: './org-unit-search-result-list-element.component.html',
imports: [
AsyncPipe,
MetadataDirective,
NgClass,
RouterLink,
ThemedBadgesComponent,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,9 @@
@if (dso.allMetadata(['person.jobTitle']).length > 0) {
<span
class="item-list-job-title">
@for (value of allMetadataValues(['person.jobTitle']); track value; let last = $last) {
@for (value of allMetadata(['person.jobTitle']); track value; let last = $last) {
<span>
<span [innerHTML]="value"><span [innerHTML]="value"></span></span>
<span [dsMetadata]="value"><span [dsMetadata]="value"></span></span>
</span>
}
</span>
Expand Down
Loading
Loading