From 683c429dc90433d7a7c2cfa73687fe990c82bdc1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adina=20=C8=9Aeudan?= Date: Mon, 22 Nov 2021 22:17:50 +0200 Subject: [PATCH] RED-2703 --- .../edit-dossier-attributes.component.ts | 14 +++++-- .../edit-dossier-general-info.component.ts | 40 ++++++++++--------- apps/red-ui/src/assets/i18n/en.json | 3 ++ 3 files changed, 34 insertions(+), 23 deletions(-) diff --git a/apps/red-ui/src/app/modules/dossier/dialogs/edit-dossier-dialog/attributes/edit-dossier-attributes.component.ts b/apps/red-ui/src/app/modules/dossier/dialogs/edit-dossier-dialog/attributes/edit-dossier-attributes.component.ts index d185b7599..c1903040d 100644 --- a/apps/red-ui/src/app/modules/dossier/dialogs/edit-dossier-dialog/attributes/edit-dossier-attributes.component.ts +++ b/apps/red-ui/src/app/modules/dossier/dialogs/edit-dossier-dialog/attributes/edit-dossier-attributes.component.ts @@ -2,10 +2,11 @@ import { Component, ElementRef, EventEmitter, Input, OnInit, Output, QueryList, import { EditDossierSectionInterface } from '../edit-dossier-section.interface'; import { Dossier, DossierAttributeConfigType, DossierAttributeConfigTypes, DossierAttributeWithValue } from '@red/domain'; import { PermissionsService } from '@services/permissions.service'; -import { CircleButtonTypes, IconButtonTypes, LoadingService } from '@iqser/common-ui'; +import { CircleButtonTypes, IconButtonTypes, LoadingService, Toaster } from '@iqser/common-ui'; import { FormBuilder, FormGroup } from '@angular/forms'; import * as moment from 'moment'; import { DossierAttributesService } from '@shared/services/controller-wrappers/dossier-attributes.service'; +import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker'; @Component({ selector: 'redaction-edit-dossier-attributes', @@ -31,6 +32,7 @@ export class EditDossierAttributesComponent implements EditDossierSectionInterfa private readonly _dossierAttributesService: DossierAttributesService, private readonly _loadingService: LoadingService, private readonly _formBuilder: FormBuilder, + private readonly _toaster: Toaster, ) {} get changed() { @@ -67,9 +69,13 @@ export class EditDossierAttributesComponent implements EditDossierSectionInterfa dossierAttributeConfigId: attr.id, value: this.currentAttrValue(attr), })); - await this._dossierAttributesService.setAttributes(this.dossier, dossierAttributeList).toPromise(); - await this._loadAttributes(); - this.updateDossier.emit(); + try { + await this._dossierAttributesService.setAttributes(this.dossier, dossierAttributeList).toPromise(); + await this._loadAttributes(); + this.updateDossier.emit(); + } catch (e) { + this._toaster.error(_('edit-dossier-dialog.attributes.error.generic')); + } } fileInputClick(attr: DossierAttributeWithValue) { diff --git a/apps/red-ui/src/app/modules/dossier/dialogs/edit-dossier-dialog/general-info/edit-dossier-general-info.component.ts b/apps/red-ui/src/app/modules/dossier/dialogs/edit-dossier-dialog/general-info/edit-dossier-general-info.component.ts index 7bb983b8a..cb62879f8 100644 --- a/apps/red-ui/src/app/modules/dossier/dialogs/edit-dossier-dialog/general-info/edit-dossier-general-info.component.ts +++ b/apps/red-ui/src/app/modules/dossier/dialogs/edit-dossier-dialog/general-info/edit-dossier-general-info.component.ts @@ -72,23 +72,6 @@ export class EditDossierGeneralInfoComponent implements OnInit, EditDossierSecti this.hasDueDate = !!this.dossier.dueDate; } - private _getForm(): FormGroup { - return this._formBuilder.group({ - dossierName: [this.dossier.dossierName, Validators.required], - dossierTemplateId: [ - { - value: this.dossier.dossierTemplateId, - disabled: this._dossierStatsService.get(this.dossier.dossierId).hasFiles, - }, - Validators.required, - ], - description: [this.dossier.description], - dueDate: [this.dossier.dueDate], - watermarkEnabled: [this.dossier.watermarkEnabled], - watermarkPreviewEnabled: [this.dossier.watermarkPreviewEnabled], - }); - } - revert() { this.dossierForm.reset({ dossierName: this.dossier.dossierName, @@ -110,8 +93,10 @@ export class EditDossierGeneralInfoComponent implements OnInit, EditDossierSecti dueDate: this.hasDueDate ? this.dossierForm.get('dueDate').value : undefined, dossierTemplateId: this.dossierForm.get('dossierTemplateId').value, } as IDossierRequest; - await this._dossiersService.createOrUpdate(dossier).toPromise(); - this.updateDossier.emit(); + try { + await this._dossiersService.createOrUpdate(dossier).toPromise(); + this.updateDossier.emit(); + } catch (e) {} } deleteDossier() { @@ -136,6 +121,23 @@ export class EditDossierGeneralInfoComponent implements OnInit, EditDossierSecti }); } + private _getForm(): FormGroup { + return this._formBuilder.group({ + dossierName: [this.dossier.dossierName, Validators.required], + dossierTemplateId: [ + { + value: this.dossier.dossierTemplateId, + disabled: this._dossierStatsService.get(this.dossier.dossierId).hasFiles, + }, + Validators.required, + ], + description: [this.dossier.description], + dueDate: [this.dossier.dueDate], + watermarkEnabled: [this.dossier.watermarkEnabled], + watermarkPreviewEnabled: [this.dossier.watermarkPreviewEnabled], + }); + } + private _notifyDossierDeleted() { this._toaster.success(_('edit-dossier-dialog.delete-successful'), { params: { dossierName: this.dossier.dossierName } }); } diff --git a/apps/red-ui/src/assets/i18n/en.json b/apps/red-ui/src/assets/i18n/en.json index 737ad3f96..a7e4e28b3 100644 --- a/apps/red-ui/src/assets/i18n/en.json +++ b/apps/red-ui/src/assets/i18n/en.json @@ -840,6 +840,9 @@ "attributes": { "custom-attributes": "Custom Dossier Attributes", "delete-image": "Delete Image", + "error": { + "generic": "Only PNG, JPG and JPEG files are allowed as image dossier attributes." + }, "image-attributes": "Image Attributes", "no-custom-attributes": "There are no text attributes", "no-image-attributes": "There are no image attributes",