From 7fce3df3b445b10ff61cb8862bc4952f737cba13 Mon Sep 17 00:00:00 2001 From: Kristof De Langhe Date: Sat, 14 Mar 2020 01:19:00 +0100 Subject: [PATCH] 68346: bitstream edit bugfix --- .../edit-bitstream-page.component.ts | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/app/+bitstream-page/edit-bitstream-page/edit-bitstream-page.component.ts b/src/app/+bitstream-page/edit-bitstream-page/edit-bitstream-page.component.ts index dc0e778ec5..4d5bc2ac9e 100644 --- a/src/app/+bitstream-page/edit-bitstream-page/edit-bitstream-page.component.ts +++ b/src/app/+bitstream-page/edit-bitstream-page/edit-bitstream-page.component.ts @@ -429,7 +429,7 @@ export class EditBitstreamPageComponent implements OnInit, OnDestroy { */ onSubmit() { const updatedValues = this.formGroup.getRawValue(); - this.formToBitstream(updatedValues); + const updatedBitstream = this.formToBitstream(updatedValues); const selectedFormat = this.formats.find((f: BitstreamFormat) => f.id === updatedValues.formatContainer.selectedFormat); const isNewFormat = selectedFormat.id !== this.originalFormat.id; @@ -456,7 +456,7 @@ export class EditBitstreamPageComponent implements OnInit, OnDestroy { bitstream$.pipe( switchMap(() => { - return this.bitstreamService.update(this.bitstream).pipe( + return this.bitstreamService.update(updatedBitstream).pipe( getFirstSucceededRemoteDataPayload() ); }) @@ -473,8 +473,9 @@ export class EditBitstreamPageComponent implements OnInit, OnDestroy { * Parse form data to an updated bitstream object * @param rawForm Raw form data */ - formToBitstream(rawForm) { - const newMetadata = cloneDeep(this.bitstream.metadata); + formToBitstream(rawForm): Bitstream { + const updatedBitstream = cloneDeep(this.bitstream); + const newMetadata = updatedBitstream.metadata; // TODO: Set bitstream to primary when supported const primary = rawForm.fileNamePrimaryContainer.primaryBitstream; Metadata.setFirstValue(newMetadata, 'dc.title', rawForm.fileNamePrimaryContainer.fileName); @@ -482,7 +483,8 @@ export class EditBitstreamPageComponent implements OnInit, OnDestroy { if (isNotEmpty(rawForm.formatContainer.newFormat)) { Metadata.setFirstValue(newMetadata, 'dc.format', rawForm.formatContainer.newFormat); } - this.bitstream.metadata = newMetadata; + updatedBitstream.metadata = newMetadata; + return updatedBitstream; } /**