From f50e0edbc07fdce4c02db47ca9966cb960e82178 Mon Sep 17 00:00:00 2001 From: Kristof De Langhe Date: Thu, 31 May 2018 12:40:05 +0200 Subject: [PATCH 1/3] 52213: Item lists: displayed metadata journal-types --- .../journal-issue-list-element.component.html | 20 +++++++++++++++++++ .../journal-issue-list-element.component.scss | 0 .../journal-issue-list-element.component.ts | 14 +++++++++++++ ...journal-volume-list-element.component.html | 20 +++++++++++++++++++ ...journal-volume-list-element.component.scss | 0 .../journal-volume-list-element.component.ts | 14 +++++++++++++ .../journal-list-element.component.html | 15 ++++++++++++++ .../journal-list-element.component.scss | 0 .../journal/journal-list-element.component.ts | 14 +++++++++++++ src/app/shared/shared.module.ts | 8 +++++++- 10 files changed, 104 insertions(+), 1 deletion(-) create mode 100644 src/app/shared/object-list/item-list-element/entity-types/journal-issue/journal-issue-list-element.component.html create mode 100644 src/app/shared/object-list/item-list-element/entity-types/journal-issue/journal-issue-list-element.component.scss create mode 100644 src/app/shared/object-list/item-list-element/entity-types/journal-issue/journal-issue-list-element.component.ts create mode 100644 src/app/shared/object-list/item-list-element/entity-types/journal-volume/journal-volume-list-element.component.html create mode 100644 src/app/shared/object-list/item-list-element/entity-types/journal-volume/journal-volume-list-element.component.scss create mode 100644 src/app/shared/object-list/item-list-element/entity-types/journal-volume/journal-volume-list-element.component.ts create mode 100644 src/app/shared/object-list/item-list-element/entity-types/journal/journal-list-element.component.html create mode 100644 src/app/shared/object-list/item-list-element/entity-types/journal/journal-list-element.component.scss create mode 100644 src/app/shared/object-list/item-list-element/entity-types/journal/journal-list-element.component.ts diff --git a/src/app/shared/object-list/item-list-element/entity-types/journal-issue/journal-issue-list-element.component.html b/src/app/shared/object-list/item-list-element/entity-types/journal-issue/journal-issue-list-element.component.html new file mode 100644 index 0000000000..08011cf04e --- /dev/null +++ b/src/app/shared/object-list/item-list-element/entity-types/journal-issue/journal-issue-list-element.component.html @@ -0,0 +1,20 @@ + + + + + + + + + + + - + + + + + + diff --git a/src/app/shared/object-list/item-list-element/entity-types/journal-issue/journal-issue-list-element.component.scss b/src/app/shared/object-list/item-list-element/entity-types/journal-issue/journal-issue-list-element.component.scss new file mode 100644 index 0000000000..e69de29bb2 diff --git a/src/app/shared/object-list/item-list-element/entity-types/journal-issue/journal-issue-list-element.component.ts b/src/app/shared/object-list/item-list-element/entity-types/journal-issue/journal-issue-list-element.component.ts new file mode 100644 index 0000000000..8580757997 --- /dev/null +++ b/src/app/shared/object-list/item-list-element/entity-types/journal-issue/journal-issue-list-element.component.ts @@ -0,0 +1,14 @@ +import { Component } from '@angular/core'; +import { rendersEntityType } from '../../../../entities/entity-type-decorator'; +import { ElementViewMode } from '../../../../view-mode'; +import { EntitySearchResultComponent } from '../entity-search-result-component'; + +@rendersEntityType('JournalIssue', ElementViewMode.SetElement) +@Component({ + selector: 'ds-journal-issue-list-element', + styleUrls: ['./journal-issue-list-element.component.scss'], + templateUrl: './journal-issue-list-element.component.html' +}) + +export class JournalIssueListElementComponent extends EntitySearchResultComponent { +} diff --git a/src/app/shared/object-list/item-list-element/entity-types/journal-volume/journal-volume-list-element.component.html b/src/app/shared/object-list/item-list-element/entity-types/journal-volume/journal-volume-list-element.component.html new file mode 100644 index 0000000000..b071179950 --- /dev/null +++ b/src/app/shared/object-list/item-list-element/entity-types/journal-volume/journal-volume-list-element.component.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + () + + + + + diff --git a/src/app/shared/object-list/item-list-element/entity-types/journal-volume/journal-volume-list-element.component.scss b/src/app/shared/object-list/item-list-element/entity-types/journal-volume/journal-volume-list-element.component.scss new file mode 100644 index 0000000000..e69de29bb2 diff --git a/src/app/shared/object-list/item-list-element/entity-types/journal-volume/journal-volume-list-element.component.ts b/src/app/shared/object-list/item-list-element/entity-types/journal-volume/journal-volume-list-element.component.ts new file mode 100644 index 0000000000..956afe99be --- /dev/null +++ b/src/app/shared/object-list/item-list-element/entity-types/journal-volume/journal-volume-list-element.component.ts @@ -0,0 +1,14 @@ +import { Component } from '@angular/core'; +import { rendersEntityType } from '../../../../entities/entity-type-decorator'; +import { ElementViewMode } from '../../../../view-mode'; +import { EntitySearchResultComponent } from '../entity-search-result-component'; + +@rendersEntityType('JournalVolume', ElementViewMode.SetElement) +@Component({ + selector: 'ds-journal-volume-list-element', + styleUrls: ['./journal-volume-list-element.component.scss'], + templateUrl: './journal-volume-list-element.component.html' +}) + +export class JournalVolumeListElementComponent extends EntitySearchResultComponent { +} diff --git a/src/app/shared/object-list/item-list-element/entity-types/journal/journal-list-element.component.html b/src/app/shared/object-list/item-list-element/entity-types/journal/journal-list-element.component.html new file mode 100644 index 0000000000..fb5284d398 --- /dev/null +++ b/src/app/shared/object-list/item-list-element/entity-types/journal/journal-list-element.component.html @@ -0,0 +1,15 @@ + + + + + + + + + + + + diff --git a/src/app/shared/object-list/item-list-element/entity-types/journal/journal-list-element.component.scss b/src/app/shared/object-list/item-list-element/entity-types/journal/journal-list-element.component.scss new file mode 100644 index 0000000000..e69de29bb2 diff --git a/src/app/shared/object-list/item-list-element/entity-types/journal/journal-list-element.component.ts b/src/app/shared/object-list/item-list-element/entity-types/journal/journal-list-element.component.ts new file mode 100644 index 0000000000..d5d2cee1cc --- /dev/null +++ b/src/app/shared/object-list/item-list-element/entity-types/journal/journal-list-element.component.ts @@ -0,0 +1,14 @@ +import { Component } from '@angular/core'; +import { rendersEntityType } from '../../../../entities/entity-type-decorator'; +import { ElementViewMode } from '../../../../view-mode'; +import { EntitySearchResultComponent } from '../entity-search-result-component'; + +@rendersEntityType('Journal', ElementViewMode.SetElement) +@Component({ + selector: 'ds-journal-list-element', + styleUrls: ['./journal-list-element.component.scss'], + templateUrl: './journal-list-element.component.html' +}) + +export class JournalListElementComponent extends EntitySearchResultComponent { +} diff --git a/src/app/shared/shared.module.ts b/src/app/shared/shared.module.ts index 0da82f5e2f..2dd35cb6f8 100644 --- a/src/app/shared/shared.module.ts +++ b/src/app/shared/shared.module.ts @@ -14,6 +14,9 @@ import { PublicationListElementComponent } from './object-list/item-list-element import { OrgUnitListElementComponent } from './object-list/item-list-element/entity-types/orgunit/orgunit-list-element.component'; import { PersonListElementComponent } from './object-list/item-list-element/entity-types/person/person-list-element.component'; import { ProjectListElementComponent } from './object-list/item-list-element/entity-types/project/project-list-element.component'; +import { JournalListElementComponent } from './object-list/item-list-element/entity-types/journal/journal-list-element.component'; +import { JournalVolumeListElementComponent } from './object-list/item-list-element/entity-types/journal-volume/journal-volume-list-element.component'; +import { JournalIssueListElementComponent } from './object-list/item-list-element/entity-types/journal-issue/journal-issue-list-element.component'; import { EnumKeysPipe } from './utils/enum-keys-pipe'; import { FileSizePipe } from './utils/file-size-pipe'; @@ -112,7 +115,10 @@ const ENTRY_COMPONENTS = [ PublicationListElementComponent, PersonListElementComponent, OrgUnitListElementComponent, - ProjectListElementComponent + ProjectListElementComponent, + JournalListElementComponent, + JournalVolumeListElementComponent, + JournalIssueListElementComponent ]; const PROVIDERS = [ From c99d05c5f98d3d8b6b17459fb31e98f2a71201a3 Mon Sep 17 00:00:00 2001 From: Kristof De Langhe Date: Thu, 31 May 2018 14:02:04 +0200 Subject: [PATCH 2/3] 52211: Item display regular metadata journal-types --- resources/i18n/en.json | 22 ++++++++++++++ src/app/+item-page/item-page.module.ts | 13 ++++++-- .../journal-issue-page-fields.component.html | 28 +++++++++++++++++ .../journal-issue-page-fields.component.scss | 1 + .../journal-issue-page-fields.component.ts | 30 +++++++++++++++++++ .../journal-volume-page-fields.component.html | 24 +++++++++++++++ .../journal-volume-page-fields.component.scss | 1 + .../journal-volume-page-fields.component.ts | 30 +++++++++++++++++++ .../journal-page-fields.component.html | 24 +++++++++++++++ .../journal-page-fields.component.scss | 1 + .../journal/journal-page-fields.component.ts | 30 +++++++++++++++++++ 11 files changed, 202 insertions(+), 2 deletions(-) create mode 100644 src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.html create mode 100644 src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.scss create mode 100644 src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.ts create mode 100644 src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.html create mode 100644 src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.scss create mode 100644 src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.ts create mode 100644 src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.html create mode 100644 src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.scss create mode 100644 src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.ts diff --git a/resources/i18n/en.json b/resources/i18n/en.json index 5057410ff8..ab53d312e5 100644 --- a/resources/i18n/en.json +++ b/resources/i18n/en.json @@ -84,6 +84,28 @@ "description": "Description" } }, + "journal": { + "page": { + "issn": "ISSN", + "publisher": "Publisher", + "description": "Description" + } + }, + "journalvolume": { + "page": { + "volume": "Volume", + "issuedate": "Issue Date", + "description": "Description" + } + }, + "journalissue": { + "page": { + "number": "Number", + "issuedate": "Issue Date", + "description": "Description", + "keyword": "Keywords" + } + }, "nav": { "home": "Home" }, diff --git a/src/app/+item-page/item-page.module.ts b/src/app/+item-page/item-page.module.ts index 763f549b26..ce859e0168 100644 --- a/src/app/+item-page/item-page.module.ts +++ b/src/app/+item-page/item-page.module.ts @@ -25,6 +25,9 @@ import { OrgUnitPageFieldsComponent } from './simple/entity-types/orgunit/orguni import { PersonPageFieldsComponent } from './simple/entity-types/person/person-page-fields.component'; import { ProjectPageFieldsComponent } from './simple/entity-types/project/project-page-fields.component'; import { RelatedEntitiesComponent } from './simple/related-entities/related-entities-component'; +import { JournalPageFieldsComponent } from './simple/entity-types/journal/journal-page-fields.component'; +import { JournalIssuePageFieldsComponent } from './simple/entity-types/journal-issue/journal-issue-page-fields.component'; +import { JournalVolumePageFieldsComponent } from './simple/entity-types/journal-volume/journal-volume-page-fields.component'; @NgModule({ imports: [ @@ -53,13 +56,19 @@ import { RelatedEntitiesComponent } from './simple/related-entities/related-enti PersonPageFieldsComponent, RelatedEntitiesComponent, EntityPageFieldsComponent, - GenericItemPageFieldComponent + GenericItemPageFieldComponent, + JournalPageFieldsComponent, + JournalIssuePageFieldsComponent, + JournalVolumePageFieldsComponent ], entryComponents: [ PublicationPageFieldsComponent, ProjectPageFieldsComponent, OrgUnitPageFieldsComponent, - PersonPageFieldsComponent + PersonPageFieldsComponent, + JournalPageFieldsComponent, + JournalIssuePageFieldsComponent, + JournalVolumePageFieldsComponent ] }) export class ItemPageModule { diff --git a/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.html b/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.html new file mode 100644 index 0000000000..ae1e6f9376 --- /dev/null +++ b/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.html @@ -0,0 +1,28 @@ +

+ +

+
+
+ + + + + + + +
+
+ + + + +
+
diff --git a/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.scss b/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.scss new file mode 100644 index 0000000000..3575cae797 --- /dev/null +++ b/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.scss @@ -0,0 +1 @@ +@import '../../../../../styles/variables.scss'; diff --git a/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.ts b/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.ts new file mode 100644 index 0000000000..bbf2515945 --- /dev/null +++ b/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.ts @@ -0,0 +1,30 @@ +import { Component, Inject } from '@angular/core'; +import { Observable } from 'rxjs/Observable'; +import { ItemDataService } from '../../../../core/data/item-data.service'; +import { Item } from '../../../../core/shared/item.model'; +import { rendersEntityType } from '../../../../shared/entities/entity-type-decorator'; +import { ITEM } from '../../../../shared/entities/switcher/entity-type-switcher.component'; +import { ElementViewMode } from '../../../../shared/view-mode'; +import { + EntityPageFieldsComponent, filterRelationsByTypeLabel, + relationsToItems +} from '../shared/entity-page-fields.component'; + +@rendersEntityType('JournalIssue', ElementViewMode.Full) +@Component({ + selector: 'ds-journal-issue-page-fields', + styleUrls: ['./journal-issue-page-fields.component.scss'], + templateUrl: './journal-issue-page-fields.component.html' +}) +export class JournalIssuePageFieldsComponent extends EntityPageFieldsComponent { + + constructor( + @Inject(ITEM) public item: Item, + private ids: ItemDataService + ) { + super(item); + } + ngOnInit(): void { + super.ngOnInit(); + } +} diff --git a/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.html b/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.html new file mode 100644 index 0000000000..eabf0ede98 --- /dev/null +++ b/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.html @@ -0,0 +1,24 @@ +

+ +

+
+
+ + + + + + + +
+
+ + +
+
diff --git a/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.scss b/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.scss new file mode 100644 index 0000000000..3575cae797 --- /dev/null +++ b/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.scss @@ -0,0 +1 @@ +@import '../../../../../styles/variables.scss'; diff --git a/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.ts b/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.ts new file mode 100644 index 0000000000..1f0a046ce6 --- /dev/null +++ b/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.ts @@ -0,0 +1,30 @@ +import { Component, Inject } from '@angular/core'; +import { Observable } from 'rxjs/Observable'; +import { ItemDataService } from '../../../../core/data/item-data.service'; +import { Item } from '../../../../core/shared/item.model'; +import { rendersEntityType } from '../../../../shared/entities/entity-type-decorator'; +import { ITEM } from '../../../../shared/entities/switcher/entity-type-switcher.component'; +import { ElementViewMode } from '../../../../shared/view-mode'; +import { + EntityPageFieldsComponent, filterRelationsByTypeLabel, + relationsToItems +} from '../shared/entity-page-fields.component'; + +@rendersEntityType('JournalVolume', ElementViewMode.Full) +@Component({ + selector: 'ds-journal-volume-page-fields', + styleUrls: ['./journal-volume-page-fields.component.scss'], + templateUrl: './journal-volume-page-fields.component.html' +}) +export class JournalVolumePageFieldsComponent extends EntityPageFieldsComponent { + + constructor( + @Inject(ITEM) public item: Item, + private ids: ItemDataService + ) { + super(item); + } + ngOnInit(): void { + super.ngOnInit(); + } +} diff --git a/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.html b/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.html new file mode 100644 index 0000000000..eaa72b8e95 --- /dev/null +++ b/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.html @@ -0,0 +1,24 @@ +

+ +

+
+
+ + + + + + + +
+
+ + +
+
diff --git a/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.scss b/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.scss new file mode 100644 index 0000000000..3575cae797 --- /dev/null +++ b/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.scss @@ -0,0 +1 @@ +@import '../../../../../styles/variables.scss'; diff --git a/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.ts b/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.ts new file mode 100644 index 0000000000..27b4710886 --- /dev/null +++ b/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.ts @@ -0,0 +1,30 @@ +import { Component, Inject } from '@angular/core'; +import { Observable } from 'rxjs/Observable'; +import { ItemDataService } from '../../../../core/data/item-data.service'; +import { Item } from '../../../../core/shared/item.model'; +import { rendersEntityType } from '../../../../shared/entities/entity-type-decorator'; +import { ITEM } from '../../../../shared/entities/switcher/entity-type-switcher.component'; +import { ElementViewMode } from '../../../../shared/view-mode'; +import { + EntityPageFieldsComponent, filterRelationsByTypeLabel, + relationsToItems +} from '../shared/entity-page-fields.component'; + +@rendersEntityType('Journal', ElementViewMode.Full) +@Component({ + selector: 'ds-journal-page-fields', + styleUrls: ['./journal-page-fields.component.scss'], + templateUrl: './journal-page-fields.component.html' +}) +export class JournalPageFieldsComponent extends EntityPageFieldsComponent { + + constructor( + @Inject(ITEM) public item: Item, + private ids: ItemDataService + ) { + super(item); + } + ngOnInit(): void { + super.ngOnInit(); + } +} From 34dbc24ba3677a4e156359aa763afd8f5b52ff64 Mon Sep 17 00:00:00 2001 From: Kristof De Langhe Date: Thu, 31 May 2018 14:38:12 +0200 Subject: [PATCH 3/3] 52212: Item display relations journal-types --- resources/i18n/en.json | 7 ++++++- .../journal-issue-page-fields.component.html | 4 ++++ .../journal-issue-page-fields.component.ts | 6 ++++++ .../journal-volume-page-fields.component.html | 8 ++++++++ .../journal-volume-page-fields.component.ts | 11 +++++++++++ .../journal/journal-page-fields.component.html | 4 ++++ .../journal/journal-page-fields.component.ts | 6 ++++++ 7 files changed, 45 insertions(+), 1 deletion(-) diff --git a/resources/i18n/en.json b/resources/i18n/en.json index ab53d312e5..ab0d82aabe 100644 --- a/resources/i18n/en.json +++ b/resources/i18n/en.json @@ -50,7 +50,12 @@ "isProjectOf": "Projects", "isOrgUnitOf": "Org Units", "isAuthorOf": "Authors", - "isPersonOf": "Authors" + "isPersonOf": "Authors", + "isJournalOf": "Journals", + "isSingleJournalOf": "Journal", + "isVolumeOf": "Volumes", + "isSingleVolumeOf": "Volume", + "isIssueOf": "Issues" }, "person": { "page": { diff --git a/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.html b/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.html index ae1e6f9376..3f86ab912b 100644 --- a/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.html +++ b/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.html @@ -16,6 +16,10 @@
+ + diff --git a/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.ts b/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.ts index bbf2515945..2f98c187f2 100644 --- a/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.ts +++ b/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.ts @@ -17,6 +17,7 @@ import { templateUrl: './journal-issue-page-fields.component.html' }) export class JournalIssuePageFieldsComponent extends EntityPageFieldsComponent { + volumes$: Observable; constructor( @Inject(ITEM) public item: Item, @@ -26,5 +27,10 @@ export class JournalIssuePageFieldsComponent extends EntityPageFieldsComponent { } ngOnInit(): void { super.ngOnInit(); + + this.volumes$ = this.resolvedRelsAndTypes$.pipe( + filterRelationsByTypeLabel('isJournalVolumeOfIssue'), + relationsToItems(this.item.id, this.ids) + ); } } diff --git a/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.html b/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.html index eabf0ede98..b1dbc5429f 100644 --- a/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.html +++ b/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.html @@ -16,6 +16,14 @@
+ + + + diff --git a/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.ts b/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.ts index 1f0a046ce6..cd3725018d 100644 --- a/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.ts +++ b/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.ts @@ -17,6 +17,8 @@ import { templateUrl: './journal-volume-page-fields.component.html' }) export class JournalVolumePageFieldsComponent extends EntityPageFieldsComponent { + journals$: Observable; + issues$: Observable; constructor( @Inject(ITEM) public item: Item, @@ -26,5 +28,14 @@ export class JournalVolumePageFieldsComponent extends EntityPageFieldsComponent } ngOnInit(): void { super.ngOnInit(); + + this.journals$ = this.resolvedRelsAndTypes$.pipe( + filterRelationsByTypeLabel('isJournalOfVolume'), + relationsToItems(this.item.id, this.ids) + ); + this.issues$ = this.resolvedRelsAndTypes$.pipe( + filterRelationsByTypeLabel('isIssueOfJournalVolume'), + relationsToItems(this.item.id, this.ids) + ); } } diff --git a/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.html b/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.html index eaa72b8e95..452e1d61ea 100644 --- a/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.html +++ b/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.html @@ -16,6 +16,10 @@
+ + diff --git a/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.ts b/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.ts index 27b4710886..b43805ec52 100644 --- a/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.ts +++ b/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.ts @@ -17,6 +17,7 @@ import { templateUrl: './journal-page-fields.component.html' }) export class JournalPageFieldsComponent extends EntityPageFieldsComponent { + volumes$: Observable; constructor( @Inject(ITEM) public item: Item, @@ -26,5 +27,10 @@ export class JournalPageFieldsComponent extends EntityPageFieldsComponent { } ngOnInit(): void { super.ngOnInit(); + + this.volumes$ = this.resolvedRelsAndTypes$.pipe( + filterRelationsByTypeLabel('isVolumeOfJournal'), + relationsToItems(this.item.id, this.ids) + ); } }