diff --git a/resources/i18n/en.json5 b/resources/i18n/en.json5 index 74fbb42a2d..3b71ff709a 100644 --- a/resources/i18n/en.json5 +++ b/resources/i18n/en.json5 @@ -139,6 +139,7 @@ "collection.edit.tabs.roles.title": "Collection Edit - Roles", "collection.edit.tabs.source.head": "Content Source", "collection.edit.tabs.source.title": "Collection Edit - Content Source", + "collection.edit.template.label": "Item template", "collection.form.abstract": "Short Description", "collection.form.description": "Introductory text (HTML)", "collection.form.errors.title.required": "Please enter a collection name", diff --git a/src/app/+collection-page/edit-collection-page/collection-metadata/collection-metadata.component.html b/src/app/+collection-page/edit-collection-page/collection-metadata/collection-metadata.component.html index cc7a0d5de0..b14b034842 100644 --- a/src/app/+collection-page/edit-collection-page/collection-metadata/collection-metadata.component.html +++ b/src/app/+collection-page/edit-collection-page/collection-metadata/collection-metadata.component.html @@ -1,3 +1,6 @@ +
+ +
{{'collection.edit.delete' diff --git a/src/app/+collection-page/edit-collection-page/collection-metadata/collection-metadata.component.ts b/src/app/+collection-page/edit-collection-page/collection-metadata/collection-metadata.component.ts index 3a9d9c8af5..7ba692ef2b 100644 --- a/src/app/+collection-page/edit-collection-page/collection-metadata/collection-metadata.component.ts +++ b/src/app/+collection-page/edit-collection-page/collection-metadata/collection-metadata.component.ts @@ -3,6 +3,12 @@ import { ComcolMetadataComponent } from '../../../shared/comcol-forms/edit-comco import { Collection } from '../../../core/shared/collection.model'; import { CollectionDataService } from '../../../core/data/collection-data.service'; import { ActivatedRoute, Router } from '@angular/router'; +import { ItemTemplateDataService } from '../../../core/data/item-template-data.service'; +import { Observable } from 'rxjs/internal/Observable'; +import { RemoteData } from '../../../core/data/remote-data'; +import { Item } from '../../../core/shared/item.model'; +import { getRemoteDataPayload, getSucceededRemoteData } from '../../../core/shared/operators'; +import { switchMap } from 'rxjs/operators'; /** * Component for editing a collection's metadata @@ -14,11 +20,27 @@ import { ActivatedRoute, Router } from '@angular/router'; export class CollectionMetadataComponent extends ComcolMetadataComponent { protected frontendURL = '/collections/'; + /** + * The collection's template item + */ + templateItemRD$: Observable>; + public constructor( protected collectionDataService: CollectionDataService, + protected itemTemplateService: ItemTemplateDataService, protected router: Router, protected route: ActivatedRoute ) { super(collectionDataService, router, route); } + + ngOnInit(): void { + super.ngOnInit(); + + this.templateItemRD$ = this.dsoRD$.pipe( + getSucceededRemoteData(), + getRemoteDataPayload(), + switchMap((collection: Collection) => this.itemTemplateService.findByCollectionID(collection.uuid)) + ); + } }