first commit
This commit is contained in:
97
conf/static/email-templates/base.html
Normal file
97
conf/static/email-templates/base.html
Normal file
@ -0,0 +1,97 @@
|
||||
{{ define "header" }}
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1" />
|
||||
<base target="_blank">
|
||||
|
||||
<style>
|
||||
body {
|
||||
background-color: #F0F1F3;
|
||||
font-family: 'Helvetica Neue', 'Segoe UI', Helvetica, sans-serif;
|
||||
font-size: 15px;
|
||||
line-height: 26px;
|
||||
margin: 0;
|
||||
color: #444;
|
||||
}
|
||||
|
||||
.wrap {
|
||||
background-color: #fff;
|
||||
padding: 30px;
|
||||
max-width: 525px;
|
||||
margin: 0 auto;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.header {
|
||||
border-bottom: 1px solid #eee;
|
||||
padding-bottom: 15px;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
||||
.footer {
|
||||
text-align: center;
|
||||
font-size: 12px;
|
||||
color: #888;
|
||||
}
|
||||
.footer a {
|
||||
color: #888;
|
||||
}
|
||||
|
||||
.gutter {
|
||||
padding: 30px;
|
||||
}
|
||||
.button {
|
||||
background: #0055d4;
|
||||
color: #fff !important;
|
||||
display: inline-block;
|
||||
border-radius: 3px;
|
||||
padding: 10px 30px;
|
||||
text-align: center;
|
||||
text-decoration: none;
|
||||
font-weight: bold;
|
||||
}
|
||||
.button:hover {
|
||||
background: #222;
|
||||
color: #fff;
|
||||
}
|
||||
img {
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
a {
|
||||
color: #0055d4;
|
||||
}
|
||||
a:hover {
|
||||
color: #111;
|
||||
}
|
||||
@media screen and (max-width: 600px) {
|
||||
.wrap {
|
||||
max-width: auto;
|
||||
}
|
||||
.gutter {
|
||||
padding: 10px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body style="background-color: #F0F1F3;">
|
||||
<div class="gutter"> </div>
|
||||
<div class="wrap">
|
||||
<div class="header">
|
||||
{{ if ne LogoURL "" }}
|
||||
<img src="{{ LogoURL }}" alt="listmonk" />
|
||||
{{ end }}
|
||||
</div>
|
||||
{{ end }}
|
||||
|
||||
{{ define "footer" }}
|
||||
</div>
|
||||
|
||||
<div class="footer">
|
||||
</div>
|
||||
<div class="gutter"> </div>
|
||||
</body>
|
||||
</html>
|
||||
{{ end }}
|
25
conf/static/email-templates/campaign-status.html
Normal file
25
conf/static/email-templates/campaign-status.html
Normal file
@ -0,0 +1,25 @@
|
||||
{{ define "campaign-status" }}
|
||||
{{ template "header" . }}
|
||||
<h2>{{ L.Ts "email.status.campaignUpdateTitle" }}</h2>
|
||||
<table width="100%">
|
||||
<tr>
|
||||
<td width="30%"><strong>{{ L.Ts "globals.terms.campaign" }}</strong></td>
|
||||
<td><a href="{{ RootURL }}/admin/campaigns/{{ index . "ID" }}">{{ index . "Name" }}</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="30%"><strong>{{ L.Ts "email.status.status" }}</strong></td>
|
||||
<td>{{ index . "Status" }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="30%"><strong>{{ L.Ts "email.status.campaignSent" }}</strong></td>
|
||||
<td>{{ index . "Sent" }} / {{ index . "ToSend" }}</td>
|
||||
</tr>
|
||||
{{ if ne (index . "Reason") "" }}
|
||||
<tr>
|
||||
<td width="30%"><strong>{{ L.Ts "email.status.campaignReason" }}</strong></td>
|
||||
<td>{{ index . "Reason" }}</td>
|
||||
</tr>
|
||||
{{ end }}
|
||||
</table>
|
||||
{{ template "footer" }}
|
||||
{{ end }}
|
97
conf/static/email-templates/default-archive.tpl
Normal file
97
conf/static/email-templates/default-archive.tpl
Normal file
@ -0,0 +1,97 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<title>{{ .Campaign.Subject }}</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1">
|
||||
<base target="_blank">
|
||||
<style>
|
||||
body {
|
||||
background-color: #F0F1F3;
|
||||
font-family: 'Helvetica Neue', 'Segoe UI', Helvetica, sans-serif;
|
||||
font-size: 15px;
|
||||
line-height: 26px;
|
||||
margin: 0;
|
||||
color: #444;
|
||||
}
|
||||
|
||||
pre {
|
||||
background: #f4f4f4f4;
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
table {
|
||||
width: 100%;
|
||||
border: 1px solid #ddd;
|
||||
}
|
||||
table td {
|
||||
border-color: #ddd;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.wrap {
|
||||
background-color: #fff;
|
||||
padding: 30px;
|
||||
max-width: 525px;
|
||||
margin: 0 auto;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.button {
|
||||
background: #0055d4;
|
||||
border-radius: 3px;
|
||||
text-decoration: none !important;
|
||||
color: #fff !important;
|
||||
font-weight: bold;
|
||||
padding: 10px 30px;
|
||||
display: inline-block;
|
||||
}
|
||||
.button:hover {
|
||||
background: #111;
|
||||
}
|
||||
|
||||
.footer {
|
||||
text-align: center;
|
||||
font-size: 12px;
|
||||
color: #888;
|
||||
}
|
||||
.footer a {
|
||||
color: #888;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
.gutter {
|
||||
padding: 30px;
|
||||
}
|
||||
|
||||
img {
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
a {
|
||||
color: #0055d4;
|
||||
}
|
||||
a:hover {
|
||||
color: #111;
|
||||
}
|
||||
@media screen and (max-width: 600px) {
|
||||
.wrap {
|
||||
max-width: auto;
|
||||
}
|
||||
.gutter {
|
||||
padding: 10px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body style="background-color: #F0F1F3;font-family: 'Helvetica Neue', 'Segoe UI', Helvetica, sans-serif;font-size: 15px;line-height: 26px;margin: 0;color: #444;">
|
||||
<div class="gutter" style="padding: 30px;"> </div>
|
||||
<div class="wrap" style="background-color: #fff;padding: 30px;max-width: 525px;margin: 0 auto;border-radius: 5px;">
|
||||
{{ template "content" . }}
|
||||
</div>
|
||||
|
||||
<div class="footer" style="text-align: center;font-size: 12px;color: #888;">
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
103
conf/static/email-templates/default.tpl
Normal file
103
conf/static/email-templates/default.tpl
Normal file
@ -0,0 +1,103 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<title>{{ .Campaign.Subject }}</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1">
|
||||
<base target="_blank">
|
||||
<style>
|
||||
body {
|
||||
background-color: #F0F1F3;
|
||||
font-family: 'Helvetica Neue', 'Segoe UI', Helvetica, sans-serif;
|
||||
font-size: 15px;
|
||||
line-height: 26px;
|
||||
margin: 0;
|
||||
color: #444;
|
||||
}
|
||||
|
||||
pre {
|
||||
background: #f4f4f4f4;
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
table {
|
||||
width: 100%;
|
||||
border: 1px solid #ddd;
|
||||
}
|
||||
table td {
|
||||
border-color: #ddd;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.wrap {
|
||||
background-color: #fff;
|
||||
padding: 30px;
|
||||
max-width: 525px;
|
||||
margin: 0 auto;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.button {
|
||||
background: #0055d4;
|
||||
border-radius: 3px;
|
||||
text-decoration: none !important;
|
||||
color: #fff !important;
|
||||
font-weight: bold;
|
||||
padding: 10px 30px;
|
||||
display: inline-block;
|
||||
}
|
||||
.button:hover {
|
||||
background: #111;
|
||||
}
|
||||
|
||||
.footer {
|
||||
text-align: center;
|
||||
font-size: 12px;
|
||||
color: #888;
|
||||
}
|
||||
.footer a {
|
||||
color: #888;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
.gutter {
|
||||
padding: 30px;
|
||||
}
|
||||
|
||||
img {
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
a {
|
||||
color: #0055d4;
|
||||
}
|
||||
a:hover {
|
||||
color: #111;
|
||||
}
|
||||
@media screen and (max-width: 600px) {
|
||||
.wrap {
|
||||
max-width: auto;
|
||||
}
|
||||
.gutter {
|
||||
padding: 10px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body style="background-color: #F0F1F3;font-family: 'Helvetica Neue', 'Segoe UI', Helvetica, sans-serif;font-size: 15px;line-height: 26px;margin: 0;color: #444;">
|
||||
<div class="gutter" style="padding: 30px;"> </div>
|
||||
<div class="wrap" style="background-color: #fff;padding: 30px;max-width: 525px;margin: 0 auto;border-radius: 5px;">
|
||||
{{ template "content" . }}
|
||||
</div>
|
||||
|
||||
<div class="footer" style="text-align: center;font-size: 12px;color: #888;">
|
||||
<p>
|
||||
{{ L.T "email.unsubHelp" }}
|
||||
<a href="{{ UnsubscribeURL }}" style="color: #888;">{{ L.T "email.unsub" }}</a>
|
||||
<a href="{{ MessageURL }}" style="color: #888;">{{ L.T "email.viewInBrowser" }}</a>
|
||||
</p>
|
||||
</div>
|
||||
<div class="gutter" style="padding: 30px;"> {{ TrackView }}</div>
|
||||
</body>
|
||||
</html>
|
19
conf/static/email-templates/import-status.html
Normal file
19
conf/static/email-templates/import-status.html
Normal file
@ -0,0 +1,19 @@
|
||||
{{ define "import-status" }}
|
||||
{{ template "header" . }}
|
||||
<h2>{{ L.Ts "email.status.importTitle" }}</h2>
|
||||
<table width="100%">
|
||||
<tr>
|
||||
<td width="30%"><strong>{{ L.Ts "email.status.importFile" }}</strong></td>
|
||||
<td><a href="{{ RootURL }}/admin/subscribers/import">{{ .Name }}</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="30%"><strong>{{ L.Ts "email.status.status" }}</strong></td>
|
||||
<td>{{ .Status }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="30%"><strong>{{ L.Ts "email.status.importRecords" }}</strong></td>
|
||||
<td>{{ .Imported }} / {{ .Total }}</td>
|
||||
</tr>
|
||||
</table>
|
||||
{{ template "footer" }}
|
||||
{{ end }}
|
107
conf/static/email-templates/sample-tx.tpl
Normal file
107
conf/static/email-templates/sample-tx.tpl
Normal file
@ -0,0 +1,107 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1">
|
||||
<base target="_blank">
|
||||
|
||||
<style>
|
||||
body {
|
||||
background-color: #F0F1F3;
|
||||
font-family: 'Helvetica Neue', 'Segoe UI', Helvetica, sans-serif;
|
||||
font-size: 15px;
|
||||
line-height: 26px;
|
||||
margin: 0;
|
||||
color: #444;
|
||||
}
|
||||
|
||||
pre {
|
||||
background: #f4f4f4f4;
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
table {
|
||||
width: 100%;
|
||||
border: 1px solid #ddd;
|
||||
}
|
||||
table td {
|
||||
border-color: #ddd;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.wrap {
|
||||
background-color: #fff;
|
||||
padding: 30px;
|
||||
max-width: 525px;
|
||||
margin: 0 auto;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.button {
|
||||
background: #0055d4;
|
||||
border-radius: 3px;
|
||||
text-decoration: none !important;
|
||||
color: #fff !important;
|
||||
font-weight: bold;
|
||||
padding: 10px 30px;
|
||||
display: inline-block;
|
||||
}
|
||||
.button:hover {
|
||||
background: #111;
|
||||
}
|
||||
|
||||
.footer {
|
||||
text-align: center;
|
||||
font-size: 12px;
|
||||
color: #888;
|
||||
}
|
||||
.footer a {
|
||||
color: #888;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
.gutter {
|
||||
padding: 30px;
|
||||
}
|
||||
|
||||
img {
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
a {
|
||||
color: #0055d4;
|
||||
}
|
||||
a:hover {
|
||||
color: #111;
|
||||
}
|
||||
@media screen and (max-width: 600px) {
|
||||
.wrap {
|
||||
max-width: auto;
|
||||
}
|
||||
.gutter {
|
||||
padding: 10px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body style="background-color: #F0F1F3;font-family: 'Helvetica Neue', 'Segoe UI', Helvetica, sans-serif;font-size: 15px;line-height: 26px;margin: 0;color: #444;">
|
||||
<div class="gutter" style="padding: 30px;"> </div>
|
||||
<div class="wrap" style="background-color: #fff;padding: 30px;max-width: 525px;margin: 0 auto;border-radius: 5px;">
|
||||
<p>Hello {{ .Subscriber.Name }}</p>
|
||||
<p>
|
||||
<strong>Order number: </strong> {{ .Tx.Data.order_id }}<br />
|
||||
<strong>Shipping date: </strong> {{ .Tx.Data.shipping_date }}<br />
|
||||
</p>
|
||||
<br />
|
||||
<p>
|
||||
Transactional templates supports arbitrary parameters.
|
||||
Render them using <code>.Tx.Data.YourParamName</code>. For more information,
|
||||
see the transactional mailing <a href="https://listmonk.app/docs/transactional">documentation</a>.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="footer" style="text-align: center;font-size: 12px;color: #888;">
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
5
conf/static/email-templates/smtp-test.html
Normal file
5
conf/static/email-templates/smtp-test.html
Normal file
@ -0,0 +1,5 @@
|
||||
{{ define "smtp-test" }}
|
||||
{{ template "header" . }}
|
||||
<h2>{{ L.Ts "settings.smtp.testConnection" }}</h2>
|
||||
{{ template "footer" }}
|
||||
{{ end }}
|
8
conf/static/email-templates/subscriber-data.html
Normal file
8
conf/static/email-templates/subscriber-data.html
Normal file
@ -0,0 +1,8 @@
|
||||
{{ define "subscriber-data" }}
|
||||
{{ template "header" . }}
|
||||
<h2>{{ L.Ts "email.data.title" }}</h2>
|
||||
<p>
|
||||
{{ L.Ts "email.data.info" }}
|
||||
</p>
|
||||
{{ template "footer" }}
|
||||
{{ end }}
|
17
conf/static/email-templates/subscriber-optin-campaign.html
Normal file
17
conf/static/email-templates/subscriber-optin-campaign.html
Normal file
@ -0,0 +1,17 @@
|
||||
{{ define "optin-campaign" }}
|
||||
|
||||
<p>{{ L.Ts "email.optin.confirmSubWelcome" }} {{ "{{" }}.Subscriber.FirstName {{ "}}" }}</p>
|
||||
<p>{{ L.Ts "email.optin.confirmSubInfo" }}</p>
|
||||
<ul>
|
||||
{{ range $i, $l := .Lists }}
|
||||
{{ if eq .Type "public" }}
|
||||
<li>{{ .Name }}</li>
|
||||
{{ else }}
|
||||
<li>{{ L.Ts "email.optin.privateList" }}</li>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</ul>
|
||||
<p>
|
||||
<a class="button" {{ .OptinURLAttr }}>{{ L.Ts "email.optin.confirmSub" }}</a>
|
||||
</p>
|
||||
{{ end }}
|
22
conf/static/email-templates/subscriber-optin.html
Normal file
22
conf/static/email-templates/subscriber-optin.html
Normal file
@ -0,0 +1,22 @@
|
||||
{{ define "subscriber-optin" }}
|
||||
{{ template "header" . }}
|
||||
<h2>{{ L.Ts "email.optin.confirmSubTitle" }}</h2>
|
||||
<p>{{ L.Ts "email.optin.confirmSubWelcome" }} {{ .Subscriber.FirstName }}</p>
|
||||
<p>{{ L.Ts "email.optin.confirmSubInfo" }}</p>
|
||||
<ul>
|
||||
{{ range $i, $l := .Lists }}
|
||||
{{ if eq .Type "public" }}
|
||||
<li>{{ .Name }}</li>
|
||||
{{ else }}
|
||||
<li>{{ L.Ts "email.optin.privateList" }}</li>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</ul>
|
||||
<p>{{ L.Ts "email.optin.confirmSubHelp" }}</p>
|
||||
<p>
|
||||
<a href="{{ .OptinURL }}" class="button">{{ L.Ts "email.optin.confirmSub" }}</a>
|
||||
</p>
|
||||
<a href="{{ .UnsubURL }}">{{ L.T "email.unsub" }}</a>
|
||||
|
||||
{{ template "footer" }}
|
||||
{{ end }}
|
Reference in New Issue
Block a user