Skip to content

Commit de95938

Browse files
Merge pull request #346 from lara-learning/fix/email-description
fix: email descrition
2 parents c12d8bf + 22e1b5a commit de95938

File tree

7 files changed

+59
-23
lines changed

7 files changed

+59
-23
lines changed

packages/api/src/email.ts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ export type BaseEmailPayload = {
99
}
1010

1111
export type TrainerMailPayload = BaseEmailPayload & {
12-
emailType: 'acceptReport' | 'needChanges'
12+
emailType: 'acceptReport' | 'needChangesComment' | 'needChangesNoComment'
1313
userData: BaseMailUserData & {
1414
trainer: string
1515
}
@@ -70,7 +70,8 @@ export type EmailTranslations = {
7070
error: string
7171
reportExport: string
7272
acceptReport: string
73-
needChanges: string
73+
needChangesComment: string
74+
needChangesNoComment: string
7475
deleteYourTrainee: string
7576
deleteAccount: string
7677
deleteUser: string
@@ -80,7 +81,8 @@ export type EmailTranslations = {
8081
headline: {
8182
export: string
8283
accepted: string
83-
needChanges: string
84+
needChangesComment: string
85+
needChangesNoComment: string
8486
deleteTrainee: string
8587
deleteAccount: string
8688
deleteUser: string
@@ -91,7 +93,8 @@ export type EmailTranslations = {
9193
error: string
9294
success: string
9395
accepted: string
94-
needChanges: string
96+
needChangesComment: string
97+
needChangesNoComment: string
9598
deleteTrainee: string
9699
deleteAccount: string
97100
deleteUser: string

packages/backend/src/i18n/de.ts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,8 @@ export const GermanTranslations: Translations = {
3737
error: 'Fehler bei der pdf Generierung',
3838
reportExport: 'Dein Lara Export',
3939
acceptReport: 'Dein Bericht wurde genehmigt',
40-
needChanges: 'Bericht zurückgegeben',
40+
needChangesNoComment: 'Bericht zurückgegeben',
41+
needChangesComment: 'Bericht zurückgegeben',
4142
deleteYourTrainee: 'Dein Azubi wird bald gelöscht',
4243
deleteAccount: 'Dein Account wird bald gelöscht',
4344
deleteUser: 'Ein Benutzer wird bald gelöscht',
@@ -47,7 +48,8 @@ export const GermanTranslations: Translations = {
4748
headline: {
4849
export: 'Dein Lara-Export!',
4950
accepted: 'Report genehmigt!',
50-
needChanges: 'Änderungen erforderlich!',
51+
needChangesComment: 'Änderungen erforderlich!',
52+
needChangesNoComment: 'Änderungen erforderlich!',
5153
deleteTrainee: 'Dein Azubi wird bald gelöscht',
5254
deleteAccount: 'Dein Account wird bald gelöscht',
5355
deleteUser: 'Ein Benutzer wird bald gelöscht',
@@ -58,8 +60,9 @@ export const GermanTranslations: Translations = {
5860
error: 'etwas ist schiefgegangen. Bitte wende dich an einen Lara Admin oder Entwickler.',
5961
success: 'im Anhang findest du deinen Lara-Export. Wir wünschen dir ganz viel Spaß damit.',
6062
accepted: '{{ trainer }} hat dein Berichtsheft erhalten und genehmigt',
61-
needChanges:
62-
'{{ trainer }} hat dein Berichtsheft erhalten und es zurückgegeben. Zu dieser Woche gibt es einen Kommentar.',
63+
needChangesComment:
64+
'{{ trainer }} hat dein Berichtsheft erhalten und es zurückgegeben. Zu dieser Woche gibt es Rückmeldungen',
65+
needChangesNoComment: '{{ trainer }} hat dein Berichtsheft erhalten und es zurückgegeben.',
6366
deleteTrainee:
6467
'Dein Auszubildener {{ trainee }} wird in 3 Monaten gelöscht. Sollte dies ein Fehler sein kannst du dich mit deinem Admin in Verbindung setzen, damit er die Löschung abbricht.',
6568
deleteAccount:

packages/backend/src/i18n/en.ts

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,8 @@ export const EnglishTranslations: Translations = {
3737
error: 'Error while generating reports.',
3838
reportExport: 'Your Lara export',
3939
acceptReport: 'Your report got accepted',
40-
needChanges: 'Your report got handed back',
40+
needChangesComment: 'Your report got handed back',
41+
needChangesNoComment: 'Your report got handed back',
4142
deleteYourTrainee: 'Your Trainee will be deleted soon',
4243
deleteAccount: 'Your account will be deleted',
4344
deleteUser: 'A User will be deleted soon',
@@ -47,7 +48,8 @@ export const EnglishTranslations: Translations = {
4748
headline: {
4849
export: 'Your Lara export!',
4950
accepted: 'Report accepted!',
50-
needChanges: 'Changes necessary!',
51+
needChangesNoComment: 'Changes necessary!',
52+
needChangesComment: 'Changes necessary!',
5153
deleteTrainee: 'Your trainee will be delted soon',
5254
deleteAccount: 'Your account will be deleted',
5355
deleteUser: 'A User will be deleted soon',
@@ -58,7 +60,8 @@ export const EnglishTranslations: Translations = {
5860
error: 'Something went wring. Please conteact your Lara admin.',
5961
success: 'Your lara report is attached to this mail. Good luck with it.',
6062
accepted: '{{ trainer }} received your report and approved it',
61-
needChanges: '{{ trainer }} received your report and handed it back. There are comments to your report.',
63+
needChangesComment: '{{ trainer }} received your report and handed it back. There are comments to your report.',
64+
needChangesNoComment: '{{ trainer }} received your report and handed it back.',
6265
deleteTrainee:
6366
'Your trainee {{ trainee }} will be deleted in 3 month. If this is wrong you should contact your Lara-Admin to solve this problem.',
6467
deleteAccount:

packages/backend/src/services/email.service.ts

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,19 @@ const trainerNotificationMailPayload = (receiver: Trainer, sender: Trainee, repo
2828
translations: translations(receiver),
2929
})
3030

31+
const hasComments = (report: Report) => {
32+
let hasComments = report.comments.length > 0
33+
report.days.forEach((day) => {
34+
if (day.comments.length > 0) {
35+
hasComments = true
36+
}
37+
})
38+
return hasComments
39+
}
40+
3141
const traineeNoficationMailPayload = (receiver: Trainee, sender: Trainer, report: Report): EmailPayload => ({
32-
emailType: report.status === 'archived' ? 'acceptReport' : 'needChanges',
42+
emailType:
43+
report.status === 'archived' ? 'acceptReport' : hasComments(report) ? 'needChangesComment' : 'needChangesNoComment',
3344
userData: {
3445
receiverEmail: receiver.email,
3546
receiverName: receiver.firstName,

packages/email/src/mail-template.ts

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,13 +59,23 @@ export const generateEmailTemplate = (type: EmailType, translations: EmailTransl
5959
BUTTONTEXT: link.report,
6060
}
6161
break
62-
case 'needChanges':
62+
case 'needChangesComment':
6363
emailVariables = {
6464
...emailVariables,
6565
DEFAULTBACKGROUND: createBase64UrlfromPng('background_1.png'),
66-
HEADLINE: headline.needChanges,
66+
HEADLINE: headline.needChangesComment,
6767
HEADLINEIMAGE: createBase64UrlfromPng('tablet.png'),
68-
MAINTEXT: message.needChanges,
68+
MAINTEXT: message.needChangesComment,
69+
BUTTONTEXT: link.report,
70+
}
71+
break
72+
case 'needChangesNoComment':
73+
emailVariables = {
74+
...emailVariables,
75+
DEFAULTBACKGROUND: createBase64UrlfromPng('background_1.png'),
76+
HEADLINE: headline.needChangesNoComment,
77+
HEADLINEIMAGE: createBase64UrlfromPng('tablet.png'),
78+
MAINTEXT: message.needChangesNoComment,
6979
BUTTONTEXT: link.report,
7080
}
7181
break

packages/email/src/mock.ts

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@ export const DUMMY_DATA: EmailPayload = {
1919
error: 'Fehler bei der pdf Generierung',
2020
reportExport: 'Dein Lara Export',
2121
acceptReport: 'Dein Bericht wurde genehmigt',
22-
needChanges: 'Bericht zurückgegeben',
22+
needChangesNoComment: 'Bericht zurückgegeben',
23+
needChangesComment: 'Bericht zurückgegeben',
2324
deleteYourTrainee: 'Dein Azubi wird bald gelöscht',
2425
deleteAccount: 'Dein Account wird bald gelöscht',
2526
deleteUser: 'Ein Benutzer wird bald gelöscht',
@@ -29,7 +30,8 @@ export const DUMMY_DATA: EmailPayload = {
2930
headline: {
3031
export: 'Dein Lara-Export!',
3132
accepted: 'Report genehmigt!',
32-
needChanges: 'Änderungen erforderlich!',
33+
needChangesNoComment: 'Änderungen erforderlich!',
34+
needChangesComment: 'Änderungen erforderlich!',
3335
deleteTrainee: 'Dein Azubi wird bald gelöscht',
3436
deleteAccount: 'Dein Account wird bald gelöscht',
3537
deleteUser: 'Ein Benutzer wird bald gelöscht',
@@ -40,8 +42,9 @@ export const DUMMY_DATA: EmailPayload = {
4042
error: 'etwas ist schiefgegangen. Bitte wende dich an einen Lara Admin oder Entwickler.',
4143
success: 'im Anhang findest du deinen Lara-Export. Wir wünschen dir ganz viel Spaß damit.',
4244
accepted: '{{ trainer }} hat dein Berichtsheft erhalten und genehmigt',
43-
needChanges:
44-
'{{ trainer }} hat dein Berichtsheft erhalten und es zurückgegeben. Zu dieser Woche gibt es einen Kommentar.',
45+
needChangesComment:
46+
'{{ trainer }} hat dein Berichtsheft erhalten und es zurückgegeben. Zu dieser Woche gibt es Rückmeldungen.',
47+
needChangesNoComment: '{{ trainer }} hat dein Berichtsheft erhalten und es zurückgegeben.',
4548
deleteTrainee:
4649
'Dein Auszubildener {{ trainee }} wird in 3 Monaten gelöscht. Sollte dies ein Fehler sein kannst du dich mit deinem Admin in Verbindung setzen, damit er die Löschung abbricht.',
4750
deleteAccount:
@@ -83,7 +86,7 @@ const requestListener: RequestListener = (_req, res) => {
8386
break
8487
case '/needChanges':
8588
res.writeHead(200)
86-
res.end(generateEmailTemplate('needChanges', translations))
89+
res.end(generateEmailTemplate('needChangesNoComment', translations))
8790
break
8891
case '/deleteYourTrainee':
8992
res.writeHead(200)

packages/print/src/mock.ts

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,8 @@ export const DUMMY_DATA: PrintData = {
129129
error: 'Fehler bei der pdf Generierung',
130130
reportExport: 'Dein Lara Export',
131131
acceptReport: 'Dein Bericht wurde genehmigt',
132-
needChanges: 'Bericht zurückgegeben',
132+
needChangesNoComment: 'Bericht zurückgegeben',
133+
needChangesComment: 'Bericht zurückgegeben',
133134
deleteYourTrainee: 'Dein Azubi wird bald gelöscht',
134135
deleteAccount: 'Dein Account wird bald gelöscht',
135136
deleteUser: 'Ein Benutzer wird bald gelöscht',
@@ -139,7 +140,8 @@ export const DUMMY_DATA: PrintData = {
139140
headline: {
140141
export: 'Dein Lara-Export!',
141142
accepted: 'Report genehmigt!',
142-
needChanges: 'Änderungen erforderlich!',
143+
needChangesNoComment: 'Änderungen erforderlich!',
144+
needChangesComment: 'Änderungen erforderlich!',
143145
deleteTrainee: 'Dein Azubi wird bald gelöscht',
144146
deleteAccount: 'Dein Account wird bald gelöscht',
145147
deleteUser: 'Ein Benutzer wird bald gelöscht',
@@ -150,8 +152,9 @@ export const DUMMY_DATA: PrintData = {
150152
error: 'etwas ist schiefgegangen. Bitte wende dich an einen Lara Admin oder Entwickler.',
151153
success: 'im Anhang findest du deinen Lara-Export. Wir wünschen dir ganz viel Spaß damit.',
152154
accepted: '{{ trainer }} hat dein Berichtsheft erhalten und genehmigt',
153-
needChanges:
155+
needChangesComment:
154156
'{{ trainer }} hat dein Berichtsheft erhalten und es zurückgegeben. Zu dieser Woche gibt es einen Kommentar.',
157+
needChangesNoComment: '{{ trainer }} hat dein Berichtsheft erhalten und es zurückgegeben.',
155158
deleteTrainee:
156159
'Dein Auszubildener {{ trainee }} wird in 3 Monaten gelöscht. Sollte dies ein Fehler sein kannst du dich mit deinem Admin in Verbindung setzen, damit er die Löschung abbricht.',
157160
deleteAccount:

0 commit comments

Comments
 (0)