From b3952c39e5f52412c955d6a9cb96f81396e06d82 Mon Sep 17 00:00:00 2001 From: Nicolai Ort Date: Wed, 3 Mar 2021 18:10:41 +0100 Subject: [PATCH] Added registration mail endpoint ref #2 --- src/controllers/MailController.ts | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/controllers/MailController.ts b/src/controllers/MailController.ts index 337318f..99be6c2 100644 --- a/src/controllers/MailController.ts +++ b/src/controllers/MailController.ts @@ -4,6 +4,7 @@ import { Mailer } from '../Mailer'; import { locales } from '../models/LocaleEnum'; import { ResetMail } from '../models/ResetMail'; import { SuccessResponse } from '../models/SuccessResponse'; +import { WelcomeMail } from '../models/WelcomeMail'; /** * The mail controller handels all endpoints concerning Mail sending. @@ -45,4 +46,20 @@ export class MailController { } return new SuccessResponse(locale); } + + @Post('/registration') + @OpenAPI({ description: "Sends registration welcome mails", parameters: [{ in: "query", name: "locale", schema: { type: "string", enum: ["de", "en"] } }] }) + async sendRegistrationWelcome(@Body({ validate: true }) mailOptions: WelcomeMail, @QueryParam("locale") locale: locales) { + if (!this.initialized) { + await this.mailer.init(); + this.initialized = true; + } + try { + this.mailer.sendWelcomeMail(mailOptions.address, mailOptions.selfserviceToken, locale?.toString()) + } catch (error) { + console.log(error) + throw error; + } + return new SuccessResponse(locale); + } }