From f98942f9169c50a19b8c6ac1779e3ed02c1ea57c Mon Sep 17 00:00:00 2001 From: Hamza HRAMCHI <hamza.hramchi@xelians.fr> Date: Tue, 24 Jan 2023 17:13:10 +0100 Subject: [PATCH] FIX #20284 TIME 0:20 set modes for external users --- .../app/document/visa-workflow/visa-workflow.component.ts | 7 +++++-- src/frontend/app/indexation/indexation.component.ts | 3 ++- .../app/service/otp-connectors/otp-generator.service.ts | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/frontend/app/document/visa-workflow/visa-workflow.component.ts b/src/frontend/app/document/visa-workflow/visa-workflow.component.ts index cf8a3ea3d0..170175eeda 100644 --- a/src/frontend/app/document/visa-workflow/visa-workflow.component.ts +++ b/src/frontend/app/document/visa-workflow/visa-workflow.component.ts @@ -67,14 +67,17 @@ export class VisaWorkflowComponent implements OnInit { formatRole(element: any) { if (!this.functionsService.empty(element.externalInformations)) { + if (this.functionsService.empty(element?.modes)) { + element['modes'] = []; + } if (element.externalInformations.informations.type === 'yousign') { element.role = element.externalInformations.informations.role === 'sign' ? 'otp_sign_yousign' : 'otp_visa_yousign'; } else if (element.externalInformations.informations.type === 'fast') { element.role = 'otp_sign_fast'; } + this.otpService.setConnector(element.externalInformations.informations.type); element.mode = element.role; - element.modes.push(element.mode); - element.modes = [... new Set(element.modes)]; + element.modes = element.externalInformations.informations.type === 'fast' ? ['otp_sign_fast'] : ['otp_visa_yousign', 'otp_sign_yousign']; } } diff --git a/src/frontend/app/indexation/indexation.component.ts b/src/frontend/app/indexation/indexation.component.ts index caaf79141b..a29653afe4 100644 --- a/src/frontend/app/indexation/indexation.component.ts +++ b/src/frontend/app/indexation/indexation.component.ts @@ -86,12 +86,13 @@ export class IndexationComponent implements OnInit { this.appVisaWorkflow.loadWorkflow(data.document.workflow.map((item: any) => { item.userSignatureModes.unshift('visa'); item.signatureMode = item.userId === null && item.signatureMode === 'stamp' ? 'sign' : item.signatureMode; + this.appVisaWorkflow.formatRole(item); return { ...item, processDate: null, current: false, role: item.mode === 'visa' ? 'visa' : item.signatureMode, - modes: item.userId === null ? ['otp_sign_yousign', 'otp_visa_yousign', 'otp_sign_fast'] : item.userSignatureModes + modes: item.userId === null ? item.modes : item.userSignatureModes }; })); for (let index = 0; index < data.document.attachments.length; index++) { diff --git a/src/frontend/app/service/otp-connectors/otp-generator.service.ts b/src/frontend/app/service/otp-connectors/otp-generator.service.ts index dcd21f183b..fef740363d 100644 --- a/src/frontend/app/service/otp-connectors/otp-generator.service.ts +++ b/src/frontend/app/service/otp-connectors/otp-generator.service.ts @@ -75,7 +75,7 @@ export class OtpService { } setConnector(connectorType: any) { - if (this.allowedConnectors.indexOf(connectorType.id) > -1) { + if (this.allowedConnectors.indexOf(connectorType?.id) > -1) { if (connectorType.id === 'fast') { this.connectorService = this.injector.get<OtpFastService>(OtpFastService); } else if (connectorType.id === 'yousign') { -- GitLab