features
This commit is contained in:
5
apps/api/src/mail/templates/account-created.hbs
Normal file
5
apps/api/src/mail/templates/account-created.hbs
Normal file
@@ -0,0 +1,5 @@
|
||||
{{#if greeting}}<p style="font-size:16px; line-height:1.6; margin:0 0 18px;">{{greeting}}</p>{{/if}}
|
||||
<p style="font-size:16px; line-height:1.6; margin:0 0 18px;">{{intro}}</p>
|
||||
{{#if action}}{{> button label=action.label url=action.url}}{{/if}}
|
||||
{{#if action}}{{> secondary-link url=action.url}}{{/if}}
|
||||
{{#if infoBox}}{{> info-box text=infoBox.text}}{{/if}}
|
||||
11
apps/api/src/mail/templates/account-created.text.hbs
Normal file
11
apps/api/src/mail/templates/account-created.text.hbs
Normal file
@@ -0,0 +1,11 @@
|
||||
{{title}}
|
||||
|
||||
{{#if greeting}}{{greeting}}
|
||||
|
||||
{{/if}}{{intro}}
|
||||
|
||||
{{#if action}}{{action.label}}:
|
||||
{{{action.url}}}
|
||||
{{/if}}
|
||||
|
||||
Support: {{branding.supportEmail}}
|
||||
5
apps/api/src/mail/templates/email-change.hbs
Normal file
5
apps/api/src/mail/templates/email-change.hbs
Normal file
@@ -0,0 +1,5 @@
|
||||
<p style="font-size:16px; line-height:1.6; margin:0 0 18px;">{{intro}}</p>
|
||||
{{> button label=action.label url=action.url}}
|
||||
{{> secondary-link url=confirmUrl}}
|
||||
<p style="font-size:15px; line-height:1.6; margin:22px 0 0;">Der Link ist gueltig bis <strong>{{expiresAtText}}</strong>.</p>
|
||||
{{#if infoBox}}{{> info-box text=infoBox.text}}{{/if}}
|
||||
10
apps/api/src/mail/templates/email-change.text.hbs
Normal file
10
apps/api/src/mail/templates/email-change.text.hbs
Normal file
@@ -0,0 +1,10 @@
|
||||
{{title}}
|
||||
|
||||
{{intro}}
|
||||
|
||||
E-Mail-Adresse bestaetigen:
|
||||
{{{confirmUrl}}}
|
||||
|
||||
Der Link ist gueltig bis {{expiresAtText}}.
|
||||
|
||||
Falls du diese Aenderung nicht angefordert hast, kontaktiere bitte den Support: {{branding.supportEmail}}
|
||||
5
apps/api/src/mail/templates/generic-notification.hbs
Normal file
5
apps/api/src/mail/templates/generic-notification.hbs
Normal file
@@ -0,0 +1,5 @@
|
||||
{{#if intro}}<p style="font-size:16px; line-height:1.6; margin:0 0 18px;">{{intro}}</p>{{/if}}
|
||||
{{#each paragraphs}}<p style="font-size:15px; line-height:1.6; margin:0 0 16px;">{{this}}</p>{{/each}}
|
||||
{{#if infoBox}}{{> info-box text=infoBox.text}}{{/if}}
|
||||
{{#if action}}{{> button label=action.label url=action.url}}{{> secondary-link url=action.url}}{{/if}}
|
||||
{{#if secondaryLink}}<p style="font-size:15px; line-height:1.6; margin:20px 0 0;"><a href="{{secondaryLink.url}}" style="color:{{branding.primaryColor}};">{{secondaryLink.label}}</a></p>{{/if}}
|
||||
14
apps/api/src/mail/templates/generic-notification.text.hbs
Normal file
14
apps/api/src/mail/templates/generic-notification.text.hbs
Normal file
@@ -0,0 +1,14 @@
|
||||
{{title}}
|
||||
|
||||
{{#if intro}}{{intro}}
|
||||
|
||||
{{/if}}{{#each paragraphs}}{{this}}
|
||||
|
||||
{{/each}}{{#if infoBox}}{{infoBox.text}}
|
||||
|
||||
{{/if}}{{#if action}}{{action.label}}:
|
||||
{{{action.url}}}
|
||||
|
||||
{{/if}}{{#if secondaryLink}}{{secondaryLink.label}}:
|
||||
{{{secondaryLink.url}}}
|
||||
{{/if}}
|
||||
6
apps/api/src/mail/templates/invitation.hbs
Normal file
6
apps/api/src/mail/templates/invitation.hbs
Normal file
@@ -0,0 +1,6 @@
|
||||
<p style="font-size:16px; line-height:1.6; margin:0 0 18px;">{{intro}}</p>
|
||||
{{#if invitedBy}}<p style="font-size:15px; line-height:1.6; margin:0 0 18px;">Eingeladen von: <strong>{{invitedBy}}</strong></p>{{/if}}
|
||||
{{> button label=action.label url=action.url}}
|
||||
{{> secondary-link url=invitationUrl}}
|
||||
{{#if infoBox}}{{> info-box text=infoBox.text}}{{/if}}
|
||||
{{#if warningBox}}{{> warning-box text=warningBox.text}}{{/if}}
|
||||
11
apps/api/src/mail/templates/invitation.text.hbs
Normal file
11
apps/api/src/mail/templates/invitation.text.hbs
Normal file
@@ -0,0 +1,11 @@
|
||||
{{title}}
|
||||
|
||||
{{intro}}
|
||||
{{#if invitedBy}}Eingeladen von: {{invitedBy}}
|
||||
{{/if}}
|
||||
Einladung annehmen:
|
||||
{{{invitationUrl}}}
|
||||
|
||||
{{#if expiresAtText}}Diese Einladung ist gueltig bis {{expiresAtText}}.
|
||||
{{/if}}
|
||||
Falls du diese Einladung nicht erwartest, ignoriere diese E-Mail.
|
||||
41
apps/api/src/mail/templates/layouts/base.hbs
Normal file
41
apps/api/src/mail/templates/layouts/base.hbs
Normal file
@@ -0,0 +1,41 @@
|
||||
<!doctype html>
|
||||
<html lang="{{#if locale}}{{locale}}{{else}}de{{/if}}">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="x-apple-disable-message-reformatting">
|
||||
<title>{{title}}</title>
|
||||
<style>
|
||||
@media screen and (max-width: 640px) {
|
||||
.outer { padding: 18px 10px !important; }
|
||||
.container { width: 100% !important; }
|
||||
.content { padding: 28px 22px !important; }
|
||||
.button { display: block !important; width: 100% !important; box-sizing: border-box !important; }
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body style="margin:0; padding:0; background:#f4f7f9; color:#1f2933; font-family:Arial, Helvetica, sans-serif;">
|
||||
<div style="display:none; max-height:0; overflow:hidden; opacity:0;">{{preheader}}</div>
|
||||
<table role="presentation" width="100%" cellpadding="0" cellspacing="0" style="background:#f4f7f9; border-collapse:collapse;">
|
||||
<tr>
|
||||
<td class="outer" align="center" style="padding:32px 16px;">
|
||||
<table class="container" role="presentation" width="640" cellpadding="0" cellspacing="0" style="width:640px; max-width:640px; border-collapse:collapse;">
|
||||
<tr>
|
||||
<td>{{> header}}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="content" style="background:#ffffff; border:1px solid #dbe4ea; border-radius:8px; padding:40px 44px;">
|
||||
<h1 style="font-size:24px; line-height:1.25; margin:0 0 12px; color:#17212b;">{{title}}</h1>
|
||||
{{#if subtitle}}<p style="font-size:16px; line-height:1.5; margin:0 0 24px; color:#516173;">{{subtitle}}</p>{{/if}}
|
||||
{{{body}}}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{> footer}}</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
7
apps/api/src/mail/templates/partials/button.hbs
Normal file
7
apps/api/src/mail/templates/partials/button.hbs
Normal file
@@ -0,0 +1,7 @@
|
||||
<table role="presentation" cellpadding="0" cellspacing="0" style="border-collapse:collapse; margin:26px 0;">
|
||||
<tr>
|
||||
<td>
|
||||
<a class="button" href="{{url}}" style="background:{{branding.primaryColor}}; border-radius:6px; color:#ffffff; display:inline-block; font-size:16px; font-weight:700; line-height:20px; padding:14px 22px; text-align:center; text-decoration:none;">{{label}}</a>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
3
apps/api/src/mail/templates/partials/divider.hbs
Normal file
3
apps/api/src/mail/templates/partials/divider.hbs
Normal file
@@ -0,0 +1,3 @@
|
||||
<table role="presentation" width="100%" cellpadding="0" cellspacing="0" style="border-collapse:collapse; margin:24px 0;">
|
||||
<tr><td style="border-top:1px solid #e5edf2; font-size:0; line-height:0;"> </td></tr>
|
||||
</table>
|
||||
14
apps/api/src/mail/templates/partials/footer.hbs
Normal file
14
apps/api/src/mail/templates/partials/footer.hbs
Normal file
@@ -0,0 +1,14 @@
|
||||
<table role="presentation" width="100%" cellpadding="0" cellspacing="0" style="border-collapse:collapse;">
|
||||
<tr>
|
||||
<td style="padding:20px 4px 0; color:#6b7785; font-size:12px; line-height:1.55;">
|
||||
<p style="margin:0 0 8px;">Diese E-Mail wurde automatisch erstellt. Bitte antworte nicht direkt auf diese Nachricht.</p>
|
||||
{{#if footerNote}}<p style="margin:0 0 8px;">{{footerNote}}</p>{{/if}}
|
||||
<p style="margin:0 0 8px;">Support: <a href="mailto:{{branding.supportEmail}}" style="color:{{branding.primaryColor}};">{{branding.supportEmail}}</a></p>
|
||||
<p style="margin:0;">
|
||||
{{branding.companyName}}
|
||||
{{#if branding.imprintUrl}} · <a href="{{branding.imprintUrl}}" style="color:{{branding.primaryColor}};">Impressum</a>{{/if}}
|
||||
{{#if branding.privacyUrl}} · <a href="{{branding.privacyUrl}}" style="color:{{branding.primaryColor}};">Datenschutz</a>{{/if}}
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
11
apps/api/src/mail/templates/partials/header.hbs
Normal file
11
apps/api/src/mail/templates/partials/header.hbs
Normal file
@@ -0,0 +1,11 @@
|
||||
<table role="presentation" width="100%" cellpadding="0" cellspacing="0" style="border-collapse:collapse; margin:0 0 18px;">
|
||||
<tr>
|
||||
<td style="padding:0 4px 10px;">
|
||||
{{#if branding.logoUrl}}
|
||||
<img src="{{branding.logoUrl}}" alt="{{branding.productName}}" width="140" style="border:0; display:block; max-width:140px; height:auto;">
|
||||
{{else}}
|
||||
<div style="font-size:18px; font-weight:700; color:#17212b;">{{branding.productName}}</div>
|
||||
{{/if}}
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
8
apps/api/src/mail/templates/partials/info-box.hbs
Normal file
8
apps/api/src/mail/templates/partials/info-box.hbs
Normal file
@@ -0,0 +1,8 @@
|
||||
<table role="presentation" width="100%" cellpadding="0" cellspacing="0" style="border-collapse:collapse; margin:24px 0;">
|
||||
<tr>
|
||||
<td style="background:#eef8f7; border:1px solid #c7e3df; border-radius:6px; color:#224f4d; font-size:14px; line-height:1.5; padding:14px 16px;">
|
||||
{{#if title}}<strong style="display:block; margin:0 0 4px;">{{title}}</strong>{{/if}}
|
||||
{{text}}
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
8
apps/api/src/mail/templates/partials/key-value.hbs
Normal file
8
apps/api/src/mail/templates/partials/key-value.hbs
Normal file
@@ -0,0 +1,8 @@
|
||||
<table role="presentation" width="100%" cellpadding="0" cellspacing="0" style="border-collapse:collapse; margin:20px 0;">
|
||||
{{#each items}}
|
||||
<tr>
|
||||
<td style="border-top:1px solid #e5edf2; color:#617080; font-size:13px; padding:10px 12px 10px 0; width:34%;">{{label}}</td>
|
||||
<td style="border-top:1px solid #e5edf2; color:#1f2933; font-size:14px; padding:10px 0;">{{value}}</td>
|
||||
</tr>
|
||||
{{/each}}
|
||||
</table>
|
||||
4
apps/api/src/mail/templates/partials/secondary-link.hbs
Normal file
4
apps/api/src/mail/templates/partials/secondary-link.hbs
Normal file
@@ -0,0 +1,4 @@
|
||||
<p style="font-size:13px; line-height:1.5; margin:18px 0 0; color:#617080;">
|
||||
Falls die Schaltflaeche nicht funktioniert, kopiere diesen Link in deinen Browser:<br>
|
||||
<a href="{{url}}" style="color:{{branding.primaryColor}}; overflow-wrap:anywhere; word-break:break-word;">{{url}}</a>
|
||||
</p>
|
||||
8
apps/api/src/mail/templates/partials/warning-box.hbs
Normal file
8
apps/api/src/mail/templates/partials/warning-box.hbs
Normal file
@@ -0,0 +1,8 @@
|
||||
<table role="presentation" width="100%" cellpadding="0" cellspacing="0" style="border-collapse:collapse; margin:24px 0;">
|
||||
<tr>
|
||||
<td style="background:#fff7ed; border:1px solid #fed7aa; border-radius:6px; color:#7c2d12; font-size:14px; line-height:1.5; padding:14px 16px;">
|
||||
{{#if title}}<strong style="display:block; margin:0 0 4px;">{{title}}</strong>{{/if}}
|
||||
{{text}}
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
7
apps/api/src/mail/templates/password-reset.hbs
Normal file
7
apps/api/src/mail/templates/password-reset.hbs
Normal file
@@ -0,0 +1,7 @@
|
||||
{{#if greeting}}<p style="font-size:16px; line-height:1.6; margin:0 0 18px;">{{greeting}}</p>{{/if}}
|
||||
<p style="font-size:16px; line-height:1.6; margin:0 0 18px;">{{intro}}</p>
|
||||
{{> button label=action.label url=action.url}}
|
||||
{{> secondary-link url=resetUrl}}
|
||||
<p style="font-size:15px; line-height:1.6; margin:22px 0 0;">Der Link ist gueltig bis <strong>{{expiresAtText}}</strong>.</p>
|
||||
{{#if warningBox}}{{> warning-box title=warningBox.title text=warningBox.text}}{{/if}}
|
||||
<p style="font-size:15px; line-height:1.6; margin:0;">Bei Fragen hilft dir der Support unter <a href="mailto:{{branding.supportEmail}}" style="color:{{branding.primaryColor}};">{{branding.supportEmail}}</a>.</p>
|
||||
14
apps/api/src/mail/templates/password-reset.text.hbs
Normal file
14
apps/api/src/mail/templates/password-reset.text.hbs
Normal file
@@ -0,0 +1,14 @@
|
||||
{{title}}
|
||||
|
||||
{{#if greeting}}{{greeting}}
|
||||
|
||||
{{/if}}{{intro}}
|
||||
|
||||
Passwort zuruecksetzen:
|
||||
{{{resetUrl}}}
|
||||
|
||||
Der Link ist gueltig bis {{expiresAtText}}.
|
||||
|
||||
Falls du diese Anfrage nicht selbst gestellt hast, kannst du diese E-Mail ignorieren. Dein bestehendes Passwort bleibt unveraendert.
|
||||
|
||||
Support: {{branding.supportEmail}}
|
||||
@@ -0,0 +1,13 @@
|
||||
<p style="font-size:16px; line-height:1.6; margin:0 0 18px;">{{intro}}</p>
|
||||
<table role="presentation" width="100%" cellpadding="0" cellspacing="0" style="border-collapse:collapse; margin:20px 0;">
|
||||
<tr>
|
||||
<td style="border-top:1px solid #e5edf2; color:#617080; font-size:13px; padding:10px 12px 10px 0; width:34%;">Name</td>
|
||||
<td style="border-top:1px solid #e5edf2; color:#1f2933; font-size:14px; padding:10px 0;">{{registration.displayName}}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="border-top:1px solid #e5edf2; color:#617080; font-size:13px; padding:10px 12px 10px 0; width:34%;">E-Mail</td>
|
||||
<td style="border-top:1px solid #e5edf2; color:#1f2933; font-size:14px; padding:10px 0;">{{registration.email}}</td>
|
||||
</tr>
|
||||
</table>
|
||||
{{> button label=action.label url=action.url}}
|
||||
{{> secondary-link url=adminUrl}}
|
||||
@@ -0,0 +1,9 @@
|
||||
{{title}}
|
||||
|
||||
{{intro}}
|
||||
|
||||
Name: {{registration.displayName}}
|
||||
E-Mail: {{registration.email}}
|
||||
|
||||
Admin-Bereich:
|
||||
{{{adminUrl}}}
|
||||
5
apps/api/src/mail/templates/verification.hbs
Normal file
5
apps/api/src/mail/templates/verification.hbs
Normal file
@@ -0,0 +1,5 @@
|
||||
<p style="font-size:16px; line-height:1.6; margin:0 0 18px;">{{intro}}</p>
|
||||
{{> button label=action.label url=action.url}}
|
||||
{{> secondary-link url=verificationUrl}}
|
||||
<p style="font-size:15px; line-height:1.6; margin:22px 0 0;">Der Link ist gueltig bis <strong>{{expiresAtText}}</strong>.</p>
|
||||
{{#if infoBox}}{{> info-box text=infoBox.text}}{{/if}}
|
||||
10
apps/api/src/mail/templates/verification.text.hbs
Normal file
10
apps/api/src/mail/templates/verification.text.hbs
Normal file
@@ -0,0 +1,10 @@
|
||||
{{title}}
|
||||
|
||||
{{intro}}
|
||||
|
||||
E-Mail bestaetigen:
|
||||
{{{verificationUrl}}}
|
||||
|
||||
Der Link ist gueltig bis {{expiresAtText}}.
|
||||
|
||||
Falls du diese Registrierung nicht gestartet hast, kannst du diese E-Mail ignorieren.
|
||||
4
apps/api/src/mail/templates/warning-notification.hbs
Normal file
4
apps/api/src/mail/templates/warning-notification.hbs
Normal file
@@ -0,0 +1,4 @@
|
||||
{{#if intro}}<p style="font-size:16px; line-height:1.6; margin:0 0 18px;">{{intro}}</p>{{/if}}
|
||||
{{#each paragraphs}}<p style="font-size:15px; line-height:1.6; margin:0 0 16px;">{{this}}</p>{{/each}}
|
||||
{{#if warningBox}}{{> warning-box text=warningBox.text}}{{/if}}
|
||||
{{#if action}}{{> button label=action.label url=action.url}}{{> secondary-link url=action.url}}{{/if}}
|
||||
12
apps/api/src/mail/templates/warning-notification.text.hbs
Normal file
12
apps/api/src/mail/templates/warning-notification.text.hbs
Normal file
@@ -0,0 +1,12 @@
|
||||
{{title}}
|
||||
|
||||
{{#if intro}}{{intro}}
|
||||
|
||||
{{/if}}{{#each paragraphs}}{{this}}
|
||||
|
||||
{{/each}}{{#if warningBox}}Warnung:
|
||||
{{warningBox.text}}
|
||||
|
||||
{{/if}}{{#if action}}{{action.label}}:
|
||||
{{{action.url}}}
|
||||
{{/if}}
|
||||
Reference in New Issue
Block a user