@@ -55,14 +55,8 @@ export class IdentitiesUpsertService extends AbstractIdentitiesService {
5555 this . logger . log ( `${ logPrefix } Starting additionalFields transformation.` ) ;
5656 await this . _validation . transform ( data . additionalFields ) ;
5757 this . logger . log ( `${ logPrefix } Starting additionalFields validation.` ) ;
58- let validations = await this . _validation . validate ( data . additionalFields ) ;
59- //validation email and uid
60- if ( await this . checkMail ( data ) === false ) {
61- validations [ 'inetOrgPerson.mail' ] = "Email déjà présent dans une autre identité"
62- }
63- if ( await this . checkUid ( data ) === false ) {
64- validations [ 'inetOrgPerson.uid' ] = "Uid déjà présent dans une autre identité"
65- }
58+
59+ let validations = await this . _validation . validate ( data . additionalFields , true ) ;
6660 this . logger . log ( `${ logPrefix } AdditionalFields validation successful.` ) ;
6761 this . logger . log ( `Validations : ${ JSON . stringify ( validations ) } ` ) ;
6862 crushedUpdate [ 'state' ] = IdentityState . TO_VALIDATE ;
@@ -72,6 +66,15 @@ export class IdentitiesUpsertService extends AbstractIdentitiesService {
7266 crushedUpdate [ 'state' ] = data . state ;
7367 crushedUpdate [ 'additionalFields.validations' ] = data . additionalFields . validations ;
7468 }
69+ //validation email and uid
70+ if ( await this . checkMail ( data ) === false ) {
71+ crushedUpdate [ 'additionalFields.validations' ] [ 'inetOrgPerson' ] = { mail :"Email déjà présent dans une autre identité" }
72+ crushedUpdate [ 'state' ] = data . state ;
73+ }
74+ if ( await this . checkUid ( data ) === false ) {
75+ crushedUpdate [ 'additionalFields.validations' ] [ 'inetOrgPerson' ] = { uid :"Uid déjà présent dans une autre identité" }
76+ crushedUpdate [ 'state' ] = data . state ;
77+ }
7578
7679 const fingerprint = await this . previewFingerprint (
7780 construct ( {
0 commit comments