diff --git a/apps/red-ui/src/app/modules/dossier/dialogs/edit-dossier-dialog/attributes/edit-dossier-attributes.component.html b/apps/red-ui/src/app/modules/dossier/dialogs/edit-dossier-dialog/attributes/edit-dossier-attributes.component.html index 6657b935e..1cc4516d4 100644 --- a/apps/red-ui/src/app/modules/dossier/dialogs/edit-dossier-dialog/attributes/edit-dossier-attributes.component.html +++ b/apps/red-ui/src/app/modules/dossier/dialogs/edit-dossier-dialog/attributes/edit-dossier-attributes.component.html @@ -16,12 +16,16 @@ class="iqser-input-group" > - + > + + 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 bb7541497..e22722727 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 @@ -53,7 +53,7 @@ export class EditDossierAttributesComponent implements EditDossierSectionInterfa } get valid(): boolean { - return this.form.valid; + return !!this.form?.valid; } async ngOnInit() { @@ -66,7 +66,9 @@ export class EditDossierAttributesComponent implements EditDossierSectionInterfa async save(): EditDossierSaveResult { const dossierAttributeList = this.attributes.map(attr => ({ dossierAttributeConfigId: attr.id, - value: this.currentAttrValue(attr), + value: this.isSpecificType(attr, DossierAttributeConfigTypes.DATE) + ? moment(this.currentAttrValue(attr)).format('YYYY-MM-DD') + : this.currentAttrValue(attr), })); try { await this._dossierAttributesService.setAttributes(this.dossier, dossierAttributeList).toPromise(); diff --git a/apps/red-ui/src/app/services/user-preference.service.ts b/apps/red-ui/src/app/services/user-preference.service.ts index ac318c13d..cc89c6b6e 100644 --- a/apps/red-ui/src/app/services/user-preference.service.ts +++ b/apps/red-ui/src/app/services/user-preference.service.ts @@ -68,12 +68,9 @@ export class UserPreferenceService extends GenericService { window.location.reload(); } - reload(): Promise { - return this.getAll() - .toPromise() - .then(attributes => { - this._userAttributes = attributes ?? {}; - }); + async reload(): Promise { + const attributes = await this.getAll().toPromise(); + this._userAttributes = attributes ?? {}; } @Validate() diff --git a/apps/red-ui/src/app/utils/configuration.initializer.ts b/apps/red-ui/src/app/utils/configuration.initializer.ts index 2f31bef07..2f4bc4faf 100644 --- a/apps/red-ui/src/app/utils/configuration.initializer.ts +++ b/apps/red-ui/src/app/utils/configuration.initializer.ts @@ -1,4 +1,4 @@ -import { catchError, filter, mergeMapTo, switchMap, take, tap } from 'rxjs/operators'; +import { catchError, filter, mergeMap, switchMap, take, tap } from 'rxjs/operators'; import { ConfigService } from '@services/config.service'; import { Title } from '@angular/platform-browser'; import { from, of, throwError } from 'rxjs'; @@ -21,9 +21,10 @@ export function configurationInitializer( filter(event => event.type === KeycloakEventType.OnReady), switchMap(() => from(keycloakService.isLoggedIn())), switchMap(loggedIn => (!loggedIn ? throwError('Not Logged In') : of({}))), - mergeMapTo(generalSettingsService.getGeneralConfigurations()), + mergeMap(() => generalSettingsService.getGeneralConfigurations()), tap(configuration => configService.updateDisplayName(configuration.displayName)), - tap(() => userPreferenceService.reload().then(() => languageService.chooseAndSetInitialLanguage())), + switchMap(() => userPreferenceService.reload()), + tap(() => languageService.chooseAndSetInitialLanguage()), catchError(() => { title.setTitle('RedactManager'); return of({});