diff --git a/src/users/users.service.ts b/src/users/users.service.ts index b329eb71fe594731e7b8c0deb6a8825ecdec08de..354f5cee6acc07ca964a7c6b240a49519349dac0 100644 --- a/src/users/users.service.ts +++ b/src/users/users.service.ts @@ -313,8 +313,28 @@ export class UsersService { return false; } + /** + * Send to all admins validation email for structures + * new account. + */ + private async sendAdminStructureValidationMail(): Promise<any> { + const config = this.mailerService.config; + const ejsPath = this.mailerService.getTemplateLocation(config.templates.adminStructureClaim.ejs); + const jsonConfig = this.mailerService.loadJsonConfig(config.templates.adminStructureClaim.json); + + const html = await ejs.renderFile(ejsPath, { + config, + }); + const admins = await this.getAdmins(); + admins.forEach((admin) => { + this.mailerService.send(admin.email, jsonConfig.subject, html); + }); + } + public async updateStructureLinkedClaim(userEmail: string, idStructure: string): Promise<Types.ObjectId[]> { const stucturesLinked = this.updatePendingStructureLinked(userEmail, idStructure); + this.sendAdminStructureValidationMail(); + return stucturesLinked; }