-
Notifications
You must be signed in to change notification settings - Fork 3
/
forgot-event-planning.ts
74 lines (63 loc) · 2.68 KB
/
forgot-event-planning.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
/**
* SudoSOS back-end API service.
* Copyright (C) 2024 Study association GEWIS
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as published
* by the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
* @license
*/
/**
* This is the module page of the forgot-event-planning.
*
* @module internal/mailer
*/
import MailMessage, { Language, MailLanguageMap } from '../mail-message';
import MailContentBuilder from './mail-content-builder';
export interface ForgotEventPlanningOptions {
name: string;
eventName: string;
}
const forgotEventPlanningEnglish = new MailContentBuilder<ForgotEventPlanningOptions>({
getHTML: (context) => `<p>What is this? Have you not yet filled in the borrel planning for ${context.eventName}? Shame on you!<br>
Go quickly to SudoSOS to fix your mistakes!</p>
<p>Hugs,<br>
The SudoSOS borrel planning robot</p>`,
getText: (context) => `What is this? Have you not yet filled in the borrel planning for ${context.eventName}? Shame on you!
Go quickly to SudoSOS to fix your mistakes!
Hugs,
The SudoSOS borrel planning robot`,
getSubject: ({ eventName }) => `Borrel planning ${eventName}`,
getTitle: 'Planningnotificatie',
});
const forgotEventPlanningDutch = new MailContentBuilder<ForgotEventPlanningOptions>({
getHTML: (context) => `<p>Wat is dit nou? Heb je het borrelrooster voor ${context.eventName} nog niet ingevuld? Foei!<br>
Ga snel naar SudoSOS om je fouten recht te zetten!</p>
<p>Kusjes,<br>
De SudoSOS borrelrooster invulrobot</p>`,
getText: (context) => `Wat is dit nou? Heb je het borrelrooster voor ${context.eventName} nog niet ingevuld? Foei!
Ga snel naar SudoSOS om je fouten recht te zetten!
Kusjes,
De SudoSOS borrelrooster invulrobot`,
getSubject: ({ eventName }) => `Borrelrooster ${eventName}`,
getTitle: 'Planning notification',
});
const mailContents: MailLanguageMap<ForgotEventPlanningOptions> = {
[Language.DUTCH]: forgotEventPlanningDutch,
[Language.ENGLISH]: forgotEventPlanningEnglish,
};
export default class ForgotEventPlanning extends MailMessage<ForgotEventPlanningOptions> {
public constructor(options: ForgotEventPlanningOptions) {
super(options, mailContents);
}
}