4.21.3
This commit is contained in:
137
app/templates/emails/_emailhelpers.html
Normal file
137
app/templates/emails/_emailhelpers.html
Normal file
@ -0,0 +1,137 @@
|
||||
{% macro render_text(text) %}
|
||||
<p style="font-size: 16px;
|
||||
line-height: 1.625;
|
||||
color: #51545E;
|
||||
margin: .4em 0 1.1875em;">{{ text }}</p>
|
||||
{% endmacro %}
|
||||
<!-- To be used instead of render_text, much better! -->
|
||||
{% macro text() %}
|
||||
<p style="font-size: 16px;
|
||||
line-height: 1.625;
|
||||
color: #51545E;
|
||||
margin: .4em 0 1.1875em;">{{ caller() }}</p>
|
||||
{% endmacro %}
|
||||
{% macro render_button(button_text, link) %}
|
||||
<!-- Action -->
|
||||
<table class="body-action"
|
||||
align="center"
|
||||
width="100%"
|
||||
cellpadding="0"
|
||||
cellspacing="0"
|
||||
role="presentation"
|
||||
style="width: 100%;
|
||||
-premailer-width: 100%;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;
|
||||
text-align: center;
|
||||
margin: 30px auto;
|
||||
padding: 0;">
|
||||
<tr>
|
||||
<td align="center"
|
||||
style="word-break: break-word;
|
||||
font-family: Helvetica, Arial, sans-serif;
|
||||
font-size: 16px;">
|
||||
<!-- Border based button
|
||||
https://litmus.com/blog/a-guide-to-bulletproof-buttons-in-email-design -->
|
||||
<table width="100%"
|
||||
border="0"
|
||||
cellspacing="0"
|
||||
cellpadding="0"
|
||||
role="presentation">
|
||||
<tr>
|
||||
<td align="center"
|
||||
style="word-break: break-word;
|
||||
font-family: Helvetica, Arial, sans-serif;
|
||||
font-size: 16px;">
|
||||
<a href="{{ link }}"
|
||||
class="f-fallback button"
|
||||
target="_blank"
|
||||
rel="noopener"
|
||||
style="color: #FFF;
|
||||
border-color: #3869d4;
|
||||
border-style: solid;
|
||||
border-width: 10px 18px;
|
||||
background-color: #3869D4;
|
||||
display: inline-block;
|
||||
text-decoration: none;
|
||||
border-radius: 3px;
|
||||
box-shadow: 0 2px 3px rgba(0, 0, 0, 0.16);
|
||||
-webkit-text-size-adjust: none;
|
||||
box-sizing: border-box;">
|
||||
{{ button_text }}
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
{% endmacro %}
|
||||
{% macro raw_url(link) %}
|
||||
<!-- Sub copy -->
|
||||
<table class="body-sub"
|
||||
role="presentation"
|
||||
style="margin-top: 25px;
|
||||
padding-top: 25px;
|
||||
border-top-width: 1px;
|
||||
border-top-color: #EAEAEC;
|
||||
border-top-style: solid;">
|
||||
<tr>
|
||||
<td style="word-break: break-word;
|
||||
font-family: Helvetica, Arial, sans-serif;
|
||||
font-size: 16px;">
|
||||
<p class="f-fallback sub"
|
||||
style="font-size: 13px;
|
||||
line-height: 1.625;
|
||||
color: #51545E;
|
||||
margin: .4em 0 1.1875em;">
|
||||
If you’re having trouble with the button above, copy and paste the URL below into your web browser.
|
||||
</p>
|
||||
<p class="f-fallback sub"
|
||||
style="font-size: 13px;
|
||||
line-height: 1.625;
|
||||
color: #51545E;
|
||||
margin: .4em 0 1.1875em;">
|
||||
{{ link }}
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
{% endmacro %}
|
||||
{% macro grey_section(parts) %}
|
||||
<table class="attributes"
|
||||
width="100%"
|
||||
cellpadding="0"
|
||||
cellspacing="0"
|
||||
role="presentation"
|
||||
style="margin: 0 0 21px;">
|
||||
<tr>
|
||||
<td class="attributes_content"
|
||||
style="word-break: break-word;
|
||||
font-family: Helvetica, Arial, sans-serif;
|
||||
font-size: 16px;
|
||||
background-color: #F4F4F7;
|
||||
padding: 16px;"
|
||||
bgcolor="#F4F4F7">
|
||||
<table width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
||||
{% for part in parts %}
|
||||
|
||||
<tr>
|
||||
<td class="attributes_item"
|
||||
style="word-break: break-word;
|
||||
font-family: Helvetica, Arial, sans-serif;
|
||||
font-size: 16px;
|
||||
padding: 0;">
|
||||
<div class="f-fallback">
|
||||
{{ part }}
|
||||
<br />
|
||||
<br />
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
{% endmacro %}
|
623
app/templates/emails/base.html
Normal file
623
app/templates/emails/base.html
Normal file
@ -0,0 +1,623 @@
|
||||
{% from "_emailhelpers.html" import render_text, text, render_button, raw_url, grey_section, section %}
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<meta name="x-apple-disable-message-reformatting" />
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||||
<style type="text/css" rel="stylesheet" media="all">
|
||||
/* Base ------------------------------ */
|
||||
body {
|
||||
width: 100% !important;
|
||||
height: 100%;
|
||||
margin: 0;
|
||||
-webkit-text-size-adjust: none;
|
||||
line-height: 1.6;
|
||||
}
|
||||
|
||||
img {
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
a {
|
||||
color: #3869D4;
|
||||
}
|
||||
|
||||
a img {
|
||||
border: none;
|
||||
}
|
||||
|
||||
td {
|
||||
word-break: break-word;
|
||||
}
|
||||
|
||||
.preheader {
|
||||
display: none !important;
|
||||
visibility: hidden;
|
||||
mso-hide: all;
|
||||
font-size: 1px;
|
||||
line-height: 1px;
|
||||
max-height: 0;
|
||||
max-width: 0;
|
||||
opacity: 0;
|
||||
overflow: hidden;
|
||||
}
|
||||
/* Type ------------------------------ */
|
||||
|
||||
body,
|
||||
td,
|
||||
th {
|
||||
font-family: "Nunito Sans", Helvetica, Arial, sans-serif;
|
||||
}
|
||||
|
||||
h1 {
|
||||
margin-top: 0;
|
||||
color: #333333;
|
||||
font-size: 22px;
|
||||
font-weight: bold;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
h2 {
|
||||
margin-top: 0;
|
||||
color: #333333;
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
h3 {
|
||||
margin-top: 0;
|
||||
color: #333333;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
td,
|
||||
th {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
p,
|
||||
ul,
|
||||
ol,
|
||||
blockquote {
|
||||
margin: .4em 0 1.1875em;
|
||||
font-size: 16px;
|
||||
line-height: 1.625;
|
||||
}
|
||||
|
||||
p.sub {
|
||||
font-size: 13px;
|
||||
}
|
||||
/* Utilities ------------------------------ */
|
||||
|
||||
.align-right {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.align-left {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.align-center {
|
||||
text-align: center;
|
||||
}
|
||||
/* Buttons ------------------------------ */
|
||||
|
||||
.button {
|
||||
background-color: #3869D4;
|
||||
border-top: 10px solid #3869D4;
|
||||
border-right: 18px solid #3869D4;
|
||||
border-bottom: 10px solid #3869D4;
|
||||
border-left: 18px solid #3869D4;
|
||||
display: inline-block;
|
||||
color: #FFF;
|
||||
text-decoration: none;
|
||||
border-radius: 3px;
|
||||
box-shadow: 0 2px 3px rgba(0, 0, 0, 0.16);
|
||||
-webkit-text-size-adjust: none;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
.button--green {
|
||||
background-color: #22BC66;
|
||||
border-top: 10px solid #22BC66;
|
||||
border-right: 18px solid #22BC66;
|
||||
border-bottom: 10px solid #22BC66;
|
||||
border-left: 18px solid #22BC66;
|
||||
}
|
||||
|
||||
.button--red {
|
||||
background-color: #FF6136;
|
||||
border-top: 10px solid #FF6136;
|
||||
border-right: 18px solid #FF6136;
|
||||
border-bottom: 10px solid #FF6136;
|
||||
border-left: 18px solid #FF6136;
|
||||
}
|
||||
|
||||
@media only screen and (max-width: 500px) {
|
||||
.button {
|
||||
width: 100% !important;
|
||||
text-align: center !important;
|
||||
}
|
||||
}
|
||||
/* Attribute list ------------------------------ */
|
||||
|
||||
.attributes {
|
||||
margin: 0 0 21px;
|
||||
}
|
||||
|
||||
.attributes_content {
|
||||
background-color: #F4F4F7;
|
||||
padding: 16px;
|
||||
}
|
||||
|
||||
.attributes_item {
|
||||
padding: 0;
|
||||
}
|
||||
/* Related Items ------------------------------ */
|
||||
|
||||
.related {
|
||||
width: 100%;
|
||||
margin: 0;
|
||||
padding: 25px 0 0 0;
|
||||
-premailer-width: 100%;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;
|
||||
}
|
||||
|
||||
.related_item {
|
||||
padding: 10px 0;
|
||||
color: #CBCCCF;
|
||||
font-size: 15px;
|
||||
line-height: 18px;
|
||||
}
|
||||
|
||||
.related_item-title {
|
||||
display: block;
|
||||
margin: .5em 0 0;
|
||||
}
|
||||
|
||||
.related_item-thumb {
|
||||
display: block;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.related_heading {
|
||||
border-top: 1px solid #CBCCCF;
|
||||
text-align: center;
|
||||
padding: 25px 0 10px;
|
||||
}
|
||||
/* Discount Code ------------------------------ */
|
||||
|
||||
.discount {
|
||||
width: 100%;
|
||||
margin: 0;
|
||||
padding: 24px;
|
||||
-premailer-width: 100%;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;
|
||||
background-color: #F4F4F7;
|
||||
border: 2px dashed #CBCCCF;
|
||||
}
|
||||
|
||||
.discount_heading {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.discount_body {
|
||||
text-align: center;
|
||||
font-size: 15px;
|
||||
}
|
||||
/* Social Icons ------------------------------ */
|
||||
|
||||
.social {
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.social td {
|
||||
padding: 0;
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.social_icon {
|
||||
height: 20px;
|
||||
margin: 0 8px 10px 8px;
|
||||
padding: 0;
|
||||
}
|
||||
/* Data table ------------------------------ */
|
||||
|
||||
.purchase {
|
||||
width: 100%;
|
||||
margin: 0;
|
||||
padding: 35px 0;
|
||||
-premailer-width: 100%;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;
|
||||
}
|
||||
|
||||
.purchase_content {
|
||||
width: 100%;
|
||||
margin: 0;
|
||||
padding: 25px 0 0 0;
|
||||
-premailer-width: 100%;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;
|
||||
}
|
||||
|
||||
.purchase_item {
|
||||
padding: 10px 0;
|
||||
color: #51545E;
|
||||
font-size: 15px;
|
||||
line-height: 18px;
|
||||
}
|
||||
|
||||
.purchase_heading {
|
||||
padding-bottom: 8px;
|
||||
border-bottom: 1px solid #EAEAEC;
|
||||
}
|
||||
|
||||
.purchase_heading p {
|
||||
margin: 0;
|
||||
color: #85878E;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.purchase_footer {
|
||||
padding-top: 15px;
|
||||
border-top: 1px solid #EAEAEC;
|
||||
}
|
||||
|
||||
.purchase_total {
|
||||
margin: 0;
|
||||
text-align: right;
|
||||
font-weight: bold;
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
.purchase_total--label {
|
||||
padding: 0 15px 0 0;
|
||||
}
|
||||
|
||||
body {
|
||||
background-color: #F2F4F6;
|
||||
color: #51545E;
|
||||
}
|
||||
|
||||
p {
|
||||
color: #51545E;
|
||||
}
|
||||
|
||||
.email-wrapper {
|
||||
width: 100%;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
-premailer-width: 100%;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;
|
||||
background-color: #F2F4F6;
|
||||
}
|
||||
|
||||
.email-content {
|
||||
width: 100%;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
-premailer-width: 100%;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;
|
||||
}
|
||||
/* Masthead ----------------------- */
|
||||
|
||||
.email-masthead {
|
||||
padding: 25px 0;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.email-masthead_logo {
|
||||
width: 94px;
|
||||
}
|
||||
|
||||
.email-masthead_name {
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
color: #A8AAAF;
|
||||
text-decoration: none;
|
||||
text-shadow: 0 1px 0 white;
|
||||
}
|
||||
/* Body ------------------------------ */
|
||||
|
||||
.email-body {
|
||||
width: 100%;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
-premailer-width: 100%;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;
|
||||
}
|
||||
|
||||
.email-body_inner {
|
||||
width: 750px;
|
||||
margin: 0 auto;
|
||||
padding: 0;
|
||||
-premailer-width: 750px;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;
|
||||
background-color: #FFFFFF;
|
||||
}
|
||||
|
||||
.email-footer {
|
||||
width: 750px;
|
||||
margin: 0 auto;
|
||||
padding: 0;
|
||||
-premailer-width: 750px;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.email-footer p {
|
||||
color: #A8AAAF;
|
||||
}
|
||||
|
||||
.body-action {
|
||||
width: 100%;
|
||||
margin: 30px auto;
|
||||
padding: 0;
|
||||
-premailer-width: 100%;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.body-sub {
|
||||
margin-top: 25px;
|
||||
padding-top: 25px;
|
||||
border-top: 1px solid #EAEAEC;
|
||||
}
|
||||
|
||||
.content-cell {
|
||||
padding: 30px;
|
||||
}
|
||||
/*Media Queries ------------------------------ */
|
||||
|
||||
@media only screen and (max-width: 600px) {
|
||||
.email-body_inner,
|
||||
.email-footer {
|
||||
width: 100% !important;
|
||||
}
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
body,
|
||||
.email-body,
|
||||
.email-body_inner,
|
||||
.email-content,
|
||||
.email-wrapper,
|
||||
.email-masthead,
|
||||
.email-footer {
|
||||
background-color: #333333 !important;
|
||||
color: #FFF !important;
|
||||
}
|
||||
p,
|
||||
ul,
|
||||
ol,
|
||||
blockquote,
|
||||
h1,
|
||||
h2,
|
||||
h3 {
|
||||
color: #FFF !important;
|
||||
}
|
||||
.attributes_content,
|
||||
.discount {
|
||||
background-color: #222 !important;
|
||||
}
|
||||
.email-masthead_name {
|
||||
text-shadow: none !important;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
<!--[if mso]>
|
||||
<style type="text/css">
|
||||
.f-fallback {
|
||||
font-family: Arial, sans-serif;
|
||||
}
|
||||
</style>
|
||||
<![endif]-->
|
||||
<style type="text/css" rel="stylesheet" media="all">
|
||||
body {
|
||||
width: 100% !important;
|
||||
height: 100%;
|
||||
margin: 0;
|
||||
-webkit-text-size-adjust: none;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: "Nunito Sans", Helvetica, Arial, sans-serif;
|
||||
}
|
||||
|
||||
body {
|
||||
background-color: #F2F4F6;
|
||||
color: #51545E;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body style="width: 100% !important;
|
||||
height: 100%;
|
||||
-webkit-text-size-adjust: none;
|
||||
font-family: Helvetica, Arial, sans-serif;
|
||||
background-color: #F2F4F6;
|
||||
color: #51545E;
|
||||
margin: 0;"
|
||||
bgcolor="#F2F4F6">
|
||||
<span class="preheader"
|
||||
style="display: none !important;
|
||||
visibility: hidden;
|
||||
mso-hide: all;
|
||||
font-size: 1px;
|
||||
line-height: 1px;
|
||||
max-height: 0;
|
||||
max-width: 0;
|
||||
opacity: 0;
|
||||
overflow: hidden;">{{ pre_header }}</span>
|
||||
<table class="email-wrapper"
|
||||
width="100%"
|
||||
cellpadding="0"
|
||||
cellspacing="0"
|
||||
role="presentation"
|
||||
style="width: 100%;
|
||||
-premailer-width: 100%;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;
|
||||
background-color: #F2F4F6;
|
||||
margin: 0;
|
||||
padding: 0;"
|
||||
bgcolor="#F2F4F6">
|
||||
<tr>
|
||||
<td align="center"
|
||||
style="word-break: break-word;
|
||||
font-family: Helvetica, Arial, sans-serif;
|
||||
font-size: 16px;">
|
||||
<table class="email-content"
|
||||
width="100%"
|
||||
cellpadding="0"
|
||||
cellspacing="0"
|
||||
role="presentation"
|
||||
style="width: 100%;
|
||||
-premailer-width: 100%;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;
|
||||
margin: 0;
|
||||
padding: 0;">
|
||||
<tr>
|
||||
<td class="email-masthead"
|
||||
style="word-break: break-word;
|
||||
font-family: Helvetica, Arial, sans-serif;
|
||||
font-size: 16px;
|
||||
text-align: center;
|
||||
padding: 25px 0;"
|
||||
align="center">
|
||||
<a href="{{ LANDING_PAGE_URL }}"
|
||||
class="f-fallback email-masthead_name"
|
||||
style="color: #A8AAAF;
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
text-decoration: none;
|
||||
text-shadow: 0 1px 0 white;">
|
||||
{% block logo %}<img src="{{ URL }}/static/logo.png" style="width: 150px; margin: auto">{% endblock %}
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<!-- Email Body -->
|
||||
<tr>
|
||||
<td class="email-body"
|
||||
width="750"
|
||||
cellpadding="0"
|
||||
cellspacing="0"
|
||||
style="word-break: break-word;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
font-family: Helvetica, Arial, sans-serif;
|
||||
font-size: 16px;
|
||||
width: 100%;
|
||||
-premailer-width: 100%;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;">
|
||||
<table class="email-body_inner"
|
||||
align="center"
|
||||
width="750"
|
||||
cellpadding="0"
|
||||
cellspacing="0"
|
||||
role="presentation"
|
||||
style="width: 750px;
|
||||
-premailer-width: 750px;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;
|
||||
background-color: #FFFFFF;
|
||||
margin: 0 auto;
|
||||
padding: 0;"
|
||||
bgcolor="#FFFFFF">
|
||||
<!-- Body content -->
|
||||
<tr>
|
||||
<td class="content-cell"
|
||||
style="word-break: break-word;
|
||||
font-family: Helvetica, Arial, sans-serif;
|
||||
font-size: 16px;
|
||||
padding: 30px;">
|
||||
<div class="f-fallback">
|
||||
{% block greeting %}{% endblock %}
|
||||
{% block content %}{% endblock %}
|
||||
<!-- Sub copy -->
|
||||
{% block sub_copy %}{% endblock %}
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="word-break: break-word;
|
||||
font-family: Helvetica, Arial, sans-serif;
|
||||
font-size: 16px;">
|
||||
<table class="email-footer"
|
||||
align="center"
|
||||
width="750"
|
||||
cellpadding="0"
|
||||
cellspacing="0"
|
||||
role="presentation"
|
||||
style="width: 750px;
|
||||
-premailer-width: 750px;
|
||||
-premailer-cellpadding: 0;
|
||||
-premailer-cellspacing: 0;
|
||||
text-align: center;
|
||||
margin: 0 auto;
|
||||
padding: 0;">
|
||||
<tr>
|
||||
<td class="content-cell"
|
||||
align="center"
|
||||
style="word-break: break-word;
|
||||
font-family: Helvetica, Arial, sans-serif;
|
||||
font-size: 16px;
|
||||
padding: 30px;">
|
||||
<p class="f-fallback sub align-center"
|
||||
style="font-size: 13px;
|
||||
line-height: 1.625;
|
||||
text-align: center;
|
||||
color: #A8AAAF;
|
||||
margin: .4em 0 1.1875em;"
|
||||
align="center">
|
||||
© {{ YEAR }} SimpleLogin - a Proton product. All rights reserved.
|
||||
<br />
|
||||
{% block footer %}{% endblock %}
|
||||
</p>
|
||||
{% if unsubscribe_oneclick is defined %}
|
||||
|
||||
<p class="f-fallback sub align-center"
|
||||
style="font-size: 13px;
|
||||
line-height: 1.625;
|
||||
text-align: center;
|
||||
margin: .4em 0 1.1875em;">
|
||||
<a href="{{ unsubscribe_oneclick }}">Unsubscribe from our newsletter</a>
|
||||
</p>
|
||||
{% endif %}
|
||||
<p class="f-fallback sub align-center"
|
||||
style="font-size: 13px;
|
||||
line-height: 1.625;
|
||||
text-align: center;
|
||||
color: #A8AAAF;
|
||||
margin: .4em 0 1.1875em;"
|
||||
align="center">
|
||||
<a href="https://app.simplelogin.io/dashboard/support">Do you have a question?</a>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
6
app/templates/emails/base.txt.jinja2
Normal file
6
app/templates/emails/base.txt.jinja2
Normal file
@ -0,0 +1,6 @@
|
||||
{% block content %} {% endblock %}
|
||||
|
||||
Best,
|
||||
SimpleLogin team.
|
||||
|
||||
Do you have a question? Contact us at https://app.simplelogin.io/dashboard/support
|
29
app/templates/emails/com/newsletter/mailbox.html
Normal file
29
app/templates/emails/com/newsletter/mailbox.html
Normal file
@ -0,0 +1,29 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{{ render_text("Hi") }}
|
||||
{{ render_text("Our most requested feature is finally ready: you can now add several <b>real</b> email addresses into SimpleLogin
|
||||
and choose which one to use when creating aliases!") }}
|
||||
{{ render_text("A real email address is called <b>mailbox</b> in SimpleLogin.") }}
|
||||
{{ render_text('This feature is particularly useful if you have several email addresses,
|
||||
maybe for different uses: a Gmail account for social networks & forums, a Prontonmail account for professional emails, etc.') }}
|
||||
<img src="https://simplelogin.io/blog/mailbox-gmail.png"
|
||||
alt="Mailbox Gmail">
|
||||
<img src="https://simplelogin.io/blog/mailbox-protonmail.png"
|
||||
alt="Mailbox Proton Mail">
|
||||
{{ render_text("When creating an alias, you can choose which mailbox that <b>owns</b> this alias, meaning:") }}
|
||||
{{ render_text("1. Emails sent to this alias are *forwarded* to the owning mailbox.") }}
|
||||
{{ render_text("2. The owning mailbox can *send* or reply emails from this alias.") }}
|
||||
{{ render_text("You can also change the owning mailbox for an existing alias.") }}
|
||||
{{ render_text("The mailbox doesn't have to be your personal email: you can also create aliases for your friend by adding his/her email as a mailbox.") }}
|
||||
{{ render_text('Thanks,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{{ render_text('<strong>P.S.</strong> Need immediate help getting started? Just reply to this email, the SimpleLogin support team is always ready to help!.') }}
|
||||
{% endblock %}
|
||||
{% block footer %}
|
||||
|
||||
This email is sent to {{ user.email }}. Unsubscribe on
|
||||
<a href="{{ URL }}/dashboard/setting#notification">Settings</a>
|
||||
{% endblock %}
|
28
app/templates/emails/com/newsletter/mailbox.txt
Normal file
28
app/templates/emails/com/newsletter/mailbox.txt
Normal file
@ -0,0 +1,28 @@
|
||||
This email is sent to {{ user.email }}.
|
||||
Unsubscribe from our emails on {{URL}}/dashboard/setting#notification
|
||||
----------------
|
||||
|
||||
Hi
|
||||
|
||||
Our most requested feature is finally ready: you can now add several *real* email addresses into SimpleLogin
|
||||
and choose which one to use when creating aliases!
|
||||
|
||||
A real email address is called *mailbox* in SimpleLogin.
|
||||
|
||||
This feature is particularly useful if you have several email addresses,
|
||||
maybe for different uses: a Gmail account for social networks & forums, a Prontonmail account for professional emails, etc.
|
||||
|
||||
When creating an alias, you can choose which mailbox that *owns* this alias, meaning:
|
||||
|
||||
- emails sent to this alias are *forwarded* to the owning mailbox.
|
||||
|
||||
- the owning mailbox can *send* or reply emails from this alias.
|
||||
|
||||
You can also change the owning mailbox for an existing alias.
|
||||
|
||||
The mailbox doesn't have to be your personal email: you can also create aliases for your friend by adding his/her email as a mailbox.
|
||||
|
||||
As usual, let us know if you have any question by replying to this email.
|
||||
|
||||
Best regards,
|
||||
SimpleLogin team.
|
134
app/templates/emails/com/newsletter/mobile-darkmode.html
Normal file
134
app/templates/emails/com/newsletter/mobile-darkmode.html
Normal file
@ -0,0 +1,134 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{{ render_text("Hi") }}
|
||||
{% call text() %}
|
||||
Son from SimpleLogin here. I hope you are doing well and are staying at home in this difficult time. By the way I'm
|
||||
writing this newsletter from my couch with my cats proofreading the text :).
|
||||
<br />
|
||||
Please find below some of our latest news.
|
||||
<br />
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
1) <b>Mobile apps</b>
|
||||
<br />
|
||||
<br />
|
||||
<img src="https://simplelogin.io/blog/devices.png" style="max-width: 100%">
|
||||
<br />
|
||||
<br />
|
||||
Now you can quickly create aliases on-the-go with SimpleLogin Android and iOS app,
|
||||
thanks to our mobile guy Thanh-Nhon!
|
||||
<br />
|
||||
Download the Android app on
|
||||
<a href="https://play.google.com/store/apps/details?id=io.simplelogin.android">Play Store</a>
|
||||
and the iOS app on
|
||||
<a href="https://apps.apple.com/app/id1494359858">App Store</a>
|
||||
.
|
||||
<br />
|
||||
With the release of the mobile apps, SimpleLogin now covers most major platforms:
|
||||
<br />
|
||||
- Desktop with SimpleLogin web app or Chrome, Firefox and Safari extension
|
||||
<br />
|
||||
- Mobile with Android and iOS app
|
||||
<br />
|
||||
The code is of course open-source and available on our
|
||||
<a href="https://github.com/simple-login/">Github</a>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
2) <b>Dark mode</b>
|
||||
<br />
|
||||
<br />
|
||||
<img src="https://simplelogin.io/blog/dark-mode.gif" style="width: 100%">
|
||||
<br />
|
||||
<br />
|
||||
You have asked for it and now the dark mode is finally available, kudos to Dung - our full-stack guy.
|
||||
<br />
|
||||
You can finally enjoy using SimpleLogin in the dark.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
3) <b>Alias name, new UI, security page, new policy privacy</b>
|
||||
<br />
|
||||
<br />
|
||||
<img src="https://simplelogin.io/blog/new-ui.gif" style="width: 100%">
|
||||
<br />
|
||||
<br />
|
||||
You might have noticed that the web UI is now more compact: the web app has undergone a remake
|
||||
to make it more responsive for usual actions like enabling/disabling an alias, updating alias note, etc.
|
||||
<br />
|
||||
You can set a name for your alias too: this name is used when you send emails or reply from your alias.
|
||||
<br />
|
||||
We have also created a new
|
||||
<a href="https://simplelogin.io/security/">security page</a>
|
||||
that goes into the technical
|
||||
details of SimpleLogin.
|
||||
Our
|
||||
<a href="https://simplelogin.io/privacy/">privacy page</a>
|
||||
is also rewritten from scratch: nothing changes about
|
||||
your data protection
|
||||
but the page is more clear and detailed now.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
4) <b>Facebook, Google, Github login deprecation</b>
|
||||
<br />
|
||||
We have decided to deprecate those social login options because of several reasons:
|
||||
<br />
|
||||
- Privacy: every time you sign in using one of these methods, the respective company knows and
|
||||
we have no information on what they do with this data.
|
||||
<br />
|
||||
- Not fully open-standard compatible: these platforms enjoy their monopolies and
|
||||
don't play well with open standards like OAuth2/OpenID: in fact, implementations on mobile of these social login
|
||||
require their SDK that we refuse to add because of privacy concern.
|
||||
<br />
|
||||
- Uniform experiences for all users: to have these social login in our iOS app, we need to support "Sign in with
|
||||
Apple" that isn't broadly available for Android users.
|
||||
Again, another big tech enjoying its monopoly.
|
||||
<br />
|
||||
If you happen to use one of these social login options, please create a password for your account on the
|
||||
<a href="{{ URL }}/dashboard/setting">Setting page</a>
|
||||
<br />
|
||||
You can still sign in using these social login until 2020-05-31. After this date, they will be removed.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
5) <b>WebAuthn (Beta)</b>
|
||||
<br />
|
||||
Thanks to Raymond, a user of SimpleLogin, the WebAuthn is now available in Beta.
|
||||
Please reply to this email if you want to try this out.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
<hr style="margin: 10px;">
|
||||
On behalf of the team, I want to say thank you to all users who have helped to improve SimpleLogin code
|
||||
and even contribute important features.
|
||||
That means a lot to us as SimpleLogin is after all an open-source project.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
That's all for today. If you want to follow all our latest features, you can follow our
|
||||
<a href="https://twitter.com/simplelogin">Twitter</a>
|
||||
or join our
|
||||
<a href="https://www.reddit.com/r/Simplelogin/">Reddit</a>
|
||||
or subscribe to our
|
||||
<a href="https://feed43.com/simplelogin.xml">RSS feed</a>
|
||||
.
|
||||
<br />
|
||||
Now back to coding :).
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Best,
|
||||
<br />
|
||||
Son.
|
||||
{% endcall %}
|
||||
|
||||
{% endblock %}
|
||||
{% block footer %}
|
||||
|
||||
This email is sent to {{ user.email }}. Unsubscribe on
|
||||
<a href="{{ URL }}/dashboard/setting#notification">Settings</a>
|
||||
{% endblock %}
|
71
app/templates/emails/com/newsletter/mobile-darkmode.txt
Normal file
71
app/templates/emails/com/newsletter/mobile-darkmode.txt
Normal file
@ -0,0 +1,71 @@
|
||||
This email is sent to {{ user.email }}.
|
||||
Unsubscribe from our emails on {{URL}}/dashboard/setting#notification
|
||||
----------------
|
||||
|
||||
Hi
|
||||
|
||||
Son from SimpleLogin here. I hope you are doing well and are staying at home in this difficult time.
|
||||
By the way I'm writing this newsletter from my couch with my cats proofreading the text :).
|
||||
|
||||
Here are some of our latest news:
|
||||
|
||||
1) Mobile apps
|
||||
|
||||
Now you can quickly create aliases on-the-go with SimpleLogin Android and iOS app, thanks to our mobile guy Thanh-Nhon!
|
||||
Download:
|
||||
- the Android app on Play Store https://play.google.com/store/apps/details?id=io.simplelogin.android
|
||||
- the iOS app on App Store https://apps.apple.com/app/id1494359858
|
||||
|
||||
With the release of the mobile apps, SimpleLogin now covers most major platforms:
|
||||
|
||||
- Desktop with SimpleLogin web app or Chrome, Firefox and Safari extension
|
||||
- Mobile with Android and iOS app
|
||||
|
||||
The apps code is of course open-source and available on our Github http://github.com/simple-login/
|
||||
|
||||
2) Dark mode
|
||||
|
||||
No worries, we are not going to the dark side :).
|
||||
You have asked for it and now the dark mode is finally available, thanks to Dung - our full-stack guy.
|
||||
You can finally enjoy using SimpleLogin in the dark.
|
||||
|
||||
3) Alias name, new UI, security page, new policy privacy
|
||||
|
||||
You might have noticed that the web UI is now more compact: the web app has undergone a remake
|
||||
to make it more responsive for usual actions like enabling/disabling an alias, updating alias note, etc.
|
||||
|
||||
You can set a name for your alias: this name is used when you send emails or reply from your alias.
|
||||
|
||||
We have also created a new security page that goes into the technical details of SimpleLogin.
|
||||
Our privacy page is also rewritten from scratch: nothing changes about your data protection
|
||||
but the page is now much more clear and detailed now.
|
||||
|
||||
4) Facebook, Google, Github login deprecation
|
||||
|
||||
We have decided to deprecate those social login options because of several reasons:
|
||||
|
||||
- Privacy: every time you sign in using one of these methods, the respective company knows and
|
||||
we have no information on what they do with this data.
|
||||
- Not fully open-standard compatible: these platforms enjoy their monopolies and
|
||||
don't play well with open standards like OAuth2/OpenID: in fact, implementations on mobile of these social login
|
||||
require their SDK that we refuse to add because of privacy concern.
|
||||
- Uniform experiences for all users: to have these social login in our iOS app, we need to support "Sign in with Apple"
|
||||
that isn't broadly available for Android users. Again, another big tech enjoying its monopoly.
|
||||
|
||||
If you happen to use one of these social login options, please create a password for your account on the Setting page
|
||||
{{URL}}/dashboard/setting
|
||||
|
||||
You can still sign in using these social login until 2020-05-31. After this date, they will be removed.
|
||||
|
||||
5) WebAuthn (Beta)
|
||||
|
||||
Thanks to one of SimpleLogin users, the WebAuthn is now available in Beta.
|
||||
Please reply to this email if you want to try this out.
|
||||
|
||||
We want to say thank you to all users who have helped to improve SimpleLogin code and even contribute important features.
|
||||
That means a lot to us as SimpleLogin is after all an open-source project.
|
||||
|
||||
We always welcome your feedback. Get in touch on social media, where you can also follow all our latest updates.
|
||||
|
||||
Best regards,
|
||||
Son.
|
33
app/templates/emails/com/newsletter/pgp.html
Normal file
33
app/templates/emails/com/newsletter/pgp.html
Normal file
@ -0,0 +1,33 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{{ render_text("Hi") }}
|
||||
{{ render_text("If you happen to use Gmail, Yahoo, Outlook, etc, do you know these services can read your emails?") }}
|
||||
{{ render_text("If you want to keep your emails only readable by you, Pretty Good Privacy (PGP) is maybe the solution.") }}
|
||||
{{ render_text('Highly recommended, open source and free, PGP is unfortunately not widely supported. However with SimpleLogin most recent PGP support, you can now enable PGP on emails sent to your aliases easily.') }}
|
||||
{{ render_text('Without PGP the emails sent to an alias are forwarded by SimpleLogin as-is to your mailbox, leaving anyone in-between or your email service able to read your emails:') }}
|
||||
<img src="https://simplelogin.io/blog/without-pgp.png"
|
||||
alt="Without PGP"
|
||||
style="max-width: 100%">
|
||||
{{ render_text("With PGP enabled, all emails arrived at SimpleLogin are encrypted with your public key before being forwarded to your mailbox:") }}
|
||||
<img src="https://simplelogin.io/blog/with-pgp.png"
|
||||
alt="Without PGP"
|
||||
style="max-width: 100%">
|
||||
{{ render_text("You can find more info on our announcement post on https://simplelogin.io/blog/introducing-pgp/") }}
|
||||
{{ render_text("You can create and manage your PGP keys when adding or editing your mailboxes. Check it out on your mailbox dashboard.") }}
|
||||
{{ render_button("Add your PGP key", URL ~ "/dashboard/mailbox") }}
|
||||
{{ render_text("Our next important feature is the coming of an iOS app. If you use iPhone or iPad want to help us testing out the app, please reply to this email so we can add you into the TestFlight program.
|
||||
") }}
|
||||
{{ render_text("For Android users, don't worry: the Android version is already in progress.
|
||||
") }}
|
||||
{{ render_text('Thanks,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{{ render_text('<strong>P.S.</strong> Need immediate help getting started? Just reply to this email, the SimpleLogin support team is always ready to help!.') }}
|
||||
{% endblock %}
|
||||
{% block footer %}
|
||||
|
||||
This email is sent to {{ user.email }}. Unsubscribe on
|
||||
<a href="{{ URL }}/dashboard/setting#notification">Settings</a>
|
||||
{% endblock %}
|
32
app/templates/emails/com/newsletter/pgp.txt
Normal file
32
app/templates/emails/com/newsletter/pgp.txt
Normal file
@ -0,0 +1,32 @@
|
||||
This email is sent to {{ user.email }}.
|
||||
Unsubscribe from our emails on {{URL}}/dashboard/setting#notification
|
||||
----------------
|
||||
|
||||
Hi
|
||||
|
||||
If you happen to use Gmail, Yahoo, Outlook, etc, do you know these services can read your emails?
|
||||
|
||||
If you want to keep your emails only readable by you, Pretty Good Privacy (PGP) is maybe the solution.
|
||||
|
||||
Highly recommended, open source and free, PGP is unfortunately not widely supported. However with SimpleLogin most recent PGP support, you can now enable PGP on emails sent to your aliases easily.
|
||||
|
||||
Without PGP the emails sent to an alias are forwarded by SimpleLogin as-is to your mailbox, leaving anyone in-between or your email service able to read your emails:
|
||||
|
||||
https://simplelogin.io/blog/without-pgp.png
|
||||
|
||||
With PGP enabled, all emails arrived at SimpleLogin are encrypted with your public key before being forwarded to your mailbox:
|
||||
|
||||
https://simplelogin.io/blog/with-pgp.png
|
||||
|
||||
You can find more info on our announcement post on https://simplelogin.io/blog/introducing-pgp/
|
||||
|
||||
You can create and manage your PGP keys when adding or editing your mailboxes. Check it out on your mailbox dashboard at {{URL}}/dashboard/mailbox
|
||||
|
||||
Our next important feature is the coming of an iOS app. If you use iPhone or iPad want to help us testing out the app, please reply to this email so we can add you into the TestFlight program.
|
||||
|
||||
For Android users, don't worry: the Android version is already in progress.
|
||||
|
||||
As usual, let us know if you have any question by replying to this email.
|
||||
|
||||
Best regards,
|
||||
SimpleLogin team.
|
43
app/templates/emails/com/newsletter/safari-extension.html
Normal file
43
app/templates/emails/com/newsletter/safari-extension.html
Normal file
@ -0,0 +1,43 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<tr>
|
||||
<td align="left"
|
||||
valign="top"
|
||||
style="border-collapse: collapse;
|
||||
border-spacing: 0;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
padding-left: 6.25%;
|
||||
padding-right: 6.25%;
|
||||
width: 87.5%;
|
||||
font-size: 14px;
|
||||
font-weight: 400;
|
||||
line-height: 160%;
|
||||
padding-top: 25px;
|
||||
color: #000000;
|
||||
font-family: sans-serif;"
|
||||
class="paragraph">
|
||||
This email is sent to {{ user.email }}.
|
||||
Unsubscribe on
|
||||
<a href="{{ URL }}/dashboard/setting#notification">Settings</a>
|
||||
<hr />
|
||||
</td>
|
||||
</tr>
|
||||
{{ render_text("Hi") }}
|
||||
{{ render_text("If you use Safari on a MacBook or iMac, you should check out our new Safari extension.") }}
|
||||
{{ render_text('It can be installed on
|
||||
<a href="https://apps.apple.com/app/id1494051017">App Store</a>
|
||||
. Its code is available on
|
||||
<a href="https://github.com/simple-login/mac-app">GitHub</a>
|
||||
.') }}
|
||||
{{ render_text('
|
||||
<img src="https://static.simplelogin.io/safari-extension.png"
|
||||
style="max-width: 600px">
|
||||
') }}
|
||||
{{ render_text('See our annoucement post for more information on this feature
|
||||
<a href="https://simplelogin.io/blog/safari-extension/">Introducing Safari extension</a>
|
||||
.') }}
|
||||
{{ render_text("As usual, let me know if you have any question by replying to this email.") }}
|
||||
{% endblock %}
|
16
app/templates/emails/com/newsletter/safari-extension.txt
Normal file
16
app/templates/emails/com/newsletter/safari-extension.txt
Normal file
@ -0,0 +1,16 @@
|
||||
This email is sent to {{ user.email }}.
|
||||
Unsubscribe from our emails on {{URL}}/dashboard/setting#notification
|
||||
----------------
|
||||
|
||||
Hi
|
||||
|
||||
If you use Safari on a MacBook or iMac, you should check out our new Safari extension.
|
||||
|
||||
It can be installed on:
|
||||
|
||||
https://apps.apple.com/app/id1494051017
|
||||
|
||||
As usual, let me know if you have any question by replying to this email.
|
||||
|
||||
Best regards,
|
||||
SimpleLogin Team.
|
35
app/templates/emails/com/onboarding/browser-extension.html
Normal file
35
app/templates/emails/com/onboarding/browser-extension.html
Normal file
@ -0,0 +1,35 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>Download SimpleLogin browser extensions and mobile apps to create aliases on-the-fly.</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
If you want to quickly create aliases <b>without</b> going to SimpleLogin website, you can do that with SimpleLogin
|
||||
<a href="https://chrome.google.com/webstore/detail/dphilobhebphkdjbpfohgikllaljmgbn">Chrome</a>
|
||||
(or other Chromium-based browsers like Brave or Vivaldi),
|
||||
<a href="https://addons.mozilla.org/firefox/addon/simplelogin/">Firefox</a>
|
||||
and
|
||||
<a href="https://apps.apple.com/app/id1494051017 ">Safari</a>
|
||||
extension.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
You can also manage your aliases using SimpleLogin
|
||||
<a href="https://play.google.com/store/apps/details?id=io.simplelogin.android">Android App</a>
|
||||
or
|
||||
<a href="https://apps.apple.com/app/id1494359858">iOS app</a>
|
||||
.
|
||||
{% endcall %}
|
||||
|
||||
<img src="https://simplelogin.io/images/everywhere.png"
|
||||
alt="Available Everywhere"
|
||||
style="max-width: 100%;">
|
||||
{% endblock %}
|
||||
{% block footer %}
|
||||
|
||||
This email is sent to {{ to_email }} and is part of our onboarding series. Unsubscribe on
|
||||
<a href="{{ URL }}/dashboard/setting#notification">Settings</a>
|
||||
{% endblock %}
|
23
app/templates/emails/com/onboarding/browser-extension.txt
Normal file
23
app/templates/emails/com/onboarding/browser-extension.txt
Normal file
@ -0,0 +1,23 @@
|
||||
This email is sent to {{ to_email }} and is part of our onboarding series.
|
||||
Unsubscribe from our emails on {{URL}}/dashboard/setting#notification
|
||||
----------------
|
||||
|
||||
Hi
|
||||
|
||||
If you want to quickly create aliases without going to SimpleLogin website, you can do that with
|
||||
SimpleLogin Chrome (or other Chromium-based browsers like Brave or Vivaldi), Firefox and Safari extension.
|
||||
|
||||
Chrome: https://chrome.google.com/webstore/detail/dphilobhebphkdjbpfohgikllaljmgbn
|
||||
|
||||
Firefox: https://addons.mozilla.org/firefox/addon/simplelogin/
|
||||
|
||||
Safari: https://apps.apple.com/app/id1494051017
|
||||
|
||||
You can also manage your aliases using SimpleLogin mobile apps, available at
|
||||
- Play Store https://play.google.com/store/apps/details?id=io.simplelogin.android
|
||||
- App Store https://apps.apple.com/app/id1494359858
|
||||
|
||||
As usual, let us know if you have any question by replying to this email.
|
||||
|
||||
Best regards,
|
||||
SimpleLogin team.
|
37
app/templates/emails/com/onboarding/mailbox.html
Normal file
37
app/templates/emails/com/onboarding/mailbox.html
Normal file
@ -0,0 +1,37 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>Add other mailboxes to SimpleLogin.</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
If you have several email inboxes, say Gmail and Proton Mail,
|
||||
you can add them into SimpleLogin as <b>mailboxes</b>.
|
||||
{% endcall %}
|
||||
|
||||
<img src="https://simplelogin.io/images/multiple-mailboxes.png"
|
||||
alt="Multiple Mailboxes"
|
||||
style="max-width: 100%; margin: auto; border: 1px solid">
|
||||
{% call text() %}
|
||||
When creating an alias, you can choose the mailbox(es) that
|
||||
<b>owns</b> this alias, meaning:
|
||||
<br />
|
||||
1. Emails sent to this alias are forwarded to the owning mailbox(es).
|
||||
<br />
|
||||
2. The owning mailbox(es) can send emails from this alias.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Please note that adding additional mailboxes is only available in the Premium plan.
|
||||
{% endcall %}
|
||||
|
||||
{{ render_button("Create mailbox", URL ~ "/dashboard/mailbox") }}
|
||||
{{ raw_url(URL ~ "/dashboard/mailbox") }}
|
||||
{% endblock %}
|
||||
{% block footer %}
|
||||
|
||||
This email is sent to {{ to_email }} and is part of our onboarding series. Unsubscribe on
|
||||
<a href="{{ URL }}/dashboard/setting#notification">Settings</a>
|
||||
{% endblock %}
|
26
app/templates/emails/com/onboarding/mailbox.txt
Normal file
26
app/templates/emails/com/onboarding/mailbox.txt
Normal file
@ -0,0 +1,26 @@
|
||||
This email is sent to {{ to_email }} and is part of our onboarding series.
|
||||
Unsubscribe from our emails on {{URL}}/dashboard/setting#notification
|
||||
----------------
|
||||
|
||||
Hi
|
||||
|
||||
If you have several email addresses, e.g. Gmail for work and Proton Mail for personal stuffs, you can add them into SimpleLogin and create aliases for them.
|
||||
|
||||
A (real) email address is called *mailbox* in SimpleLogin.
|
||||
|
||||
When creating an alias, you can choose which mailbox that *owns* this alias, meaning:
|
||||
|
||||
- emails sent to this alias are *forwarded* to the owning mailbox.
|
||||
|
||||
- the owning mailbox can *send* or reply emails from this alias.
|
||||
|
||||
You can also change the owning mailbox for an existing alias.
|
||||
|
||||
The mailbox doesn't have to be your personal email: you can also create aliases for your friend by adding his/her email as a mailbox.
|
||||
|
||||
Start create you mailbox on {{URL}}/dashboard/mailbox
|
||||
|
||||
As usual, let us know if you have any question by replying to this email.
|
||||
|
||||
Best regards,
|
||||
SimpleLogin team.
|
37
app/templates/emails/com/onboarding/pgp.html
Normal file
37
app/templates/emails/com/onboarding/pgp.html
Normal file
@ -0,0 +1,37 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>Secure your emails with PGP.</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
If you use Gmail, Yahoo, Outlook, etc, you might want to use
|
||||
<a href="https://en.wikipedia.org/wiki/Pretty_Good_Privacy">PGP</a>
|
||||
(Pretty Good Privacy)
|
||||
to make sure your emails can't be read by these email providers.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Without PGP, emails are stored <b>in plaintext</b> leaving your email service able to read your emails.
|
||||
{% endcall %}
|
||||
|
||||
<img src="https://simplelogin.io/blog/without-pgp.png"
|
||||
alt="Without PGP"
|
||||
style="max-width: 100%; margin-bottom: 10px">
|
||||
{% call text() %}
|
||||
With PGP enabled, SimpleLogin <b>encrypts</b> your emails with your public key before forwarding to your mailbox.
|
||||
{% endcall %}
|
||||
|
||||
<img src="https://simplelogin.io/blog/with-pgp.png"
|
||||
alt="Without PGP"
|
||||
style="max-width: 100%; margin-bottom: 20px">
|
||||
{{ render_button("Enable PGP on your mailbox", URL ~ "/dashboard/mailbox/" ~ user.default_mailbox_id) }}
|
||||
{{ raw_url(URL ~ "/dashboard/mailbox/" ~ user.default_mailbox_id) }}
|
||||
{% endblock %}
|
||||
{% block footer %}
|
||||
|
||||
This email is sent to {{ to_email }} and is part of our onboarding series. Unsubscribe on
|
||||
<a href="{{ URL }}/dashboard/setting#notification">Settings</a>
|
||||
{% endblock %}
|
28
app/templates/emails/com/onboarding/pgp.txt
Normal file
28
app/templates/emails/com/onboarding/pgp.txt
Normal file
@ -0,0 +1,28 @@
|
||||
This email is sent to {{ to_email }} and is part of our onboarding series.
|
||||
Unsubscribe from our emails on {{URL}}/dashboard/setting#notification
|
||||
----------------
|
||||
|
||||
Hi
|
||||
|
||||
If you happen to use Gmail, Yahoo, Outlook, etc, do you know these services can read your emails?
|
||||
|
||||
If you want to keep your emails only readable by you, Pretty Good Privacy (PGP) is maybe the solution.
|
||||
|
||||
Highly recommended, open source and free, PGP is unfortunately not widely supported. However with SimpleLogin most recent PGP support, you can now enable PGP on emails sent to your aliases easily.
|
||||
|
||||
Without PGP the emails sent to an alias are forwarded by SimpleLogin as-is to your mailbox, leaving anyone in-between or your email service able to read your emails:
|
||||
|
||||
https://simplelogin.io/blog/without-pgp.png
|
||||
|
||||
With PGP enabled, all emails arrived at SimpleLogin are encrypted with your public key before being forwarded to your mailbox:
|
||||
|
||||
https://simplelogin.io/blog/with-pgp.png
|
||||
|
||||
You can find more info on our announcement post on https://simplelogin.io/blog/introducing-pgp/
|
||||
|
||||
You can create and manage your PGP keys when adding or editing your mailboxes. Check it out on your mailbox dashboard at {{URL}}/dashboard/mailbox
|
||||
|
||||
As usual, let us know if you have any question by replying to this email.
|
||||
|
||||
Best regards,
|
||||
SimpleLogin team.
|
52
app/templates/emails/com/onboarding/send-from-alias.html
Normal file
52
app/templates/emails/com/onboarding/send-from-alias.html
Normal file
@ -0,0 +1,52 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>Send emails from your alias.</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
If you want to reply to an email, just hit "Reply"
|
||||
and the response will come from your alias. Your personal email address stays hidden.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
To send an email to a <b>new contact</b>, please follow the steps below.
|
||||
You can also watch this
|
||||
<a href="https://youtu.be/GN060XMt6Pc">Youtube video</a>
|
||||
that quickly walks you through the steps.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
1. Click the <b>Contacts</b> button on the alias you want to send emails from
|
||||
<br />
|
||||
<img src="https://simplelogin.io/docs/getting-started/send-email/contacts.png"
|
||||
style="max-width: 500px">
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
2. Enter your contact email, this will create a <b>reverse-alias</b> for the contact.
|
||||
<br />
|
||||
<img src="https://simplelogin.io/docs/getting-started/send-email/new-contact.png"
|
||||
style="max-width: 500px">
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
3. Send the email to this reverse-alias <b>instead of the contact email</b>.
|
||||
<br />
|
||||
<img src="https://simplelogin.io/docs/getting-started/send-email/reverse-alias.png"
|
||||
style="max-width: 500px">
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
And voilà, your contact will receive this email sent from your alias!
|
||||
Your real mailbox address will stay hidden.
|
||||
{% endcall %}
|
||||
|
||||
{% endblock %}
|
||||
{% block footer %}
|
||||
|
||||
This email is sent to {{ to_email }} and is part of our onboarding series. Unsubscribe on
|
||||
<a href="{{ URL }}/dashboard/setting#notification">Settings</a>
|
||||
{% endblock %}
|
21
app/templates/emails/com/onboarding/send-from-alias.txt.j2
Normal file
21
app/templates/emails/com/onboarding/send-from-alias.txt.j2
Normal file
@ -0,0 +1,21 @@
|
||||
This email is sent to {{ to_email }} and is part of our onboarding series.
|
||||
Unsubscribe from our emails on {{URL}}/dashboard/setting#notification
|
||||
----------------
|
||||
|
||||
Hi
|
||||
|
||||
Do you know you can send an email to anyone from your alias?
|
||||
This below Youtube video walks you quickly through the steps:
|
||||
|
||||
https://youtu.be/GN060XMt6Pc
|
||||
|
||||
Here are the steps:
|
||||
1. First click "Contacts" on your alias you want to send email from
|
||||
2. Enter your contact email, create a "reverse-alias"
|
||||
3. Use this reverse-alias instead of your contact email when composing your email
|
||||
|
||||
And voilà, your contact will receive this email sent from your alias!
|
||||
Your real mailbox address will stay hidden.
|
||||
|
||||
Best regards,
|
||||
SimpleLogin Team.
|
62
app/templates/emails/com/onboarding/welcome-proton-user.html
Normal file
62
app/templates/emails/com/onboarding/welcome-proton-user.html
Normal file
@ -0,0 +1,62 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block logo %}<img src="{{ URL }}/static/logo.svg" style="width: 150px; margin: auto">{% endblock %}
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
Welcome to SimpleLogin, a service developed by Proton to protect your email address!
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
This is the first email you receive via your <b>first alias</b> {{ to_address }}
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
This alias is automatically created when you use SimpleLogin for the first time.
|
||||
Emails sent to it are forwarded to your Proton mailbox.
|
||||
If you want to reply to an email, just hit "Reply" and the response will come from your alias.
|
||||
Your personal email address stays hidden.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
To create new aliases, use the SimpleLogin browser extension (recommended) or web dashboard.
|
||||
SimpleLogin is available on
|
||||
<a href="https://chrome.google.com/webstore/detail/dphilobhebphkdjbpfohgikllaljmgbn">Chrome</a>
|
||||
,
|
||||
<a href="https://addons.mozilla.org/firefox/addon/simplelogin/">Firefox</a>
|
||||
and
|
||||
<a href="https://microsoftedge.microsoft.com/addons/detail/simpleloginreceive-sen/diacfpipniklenphgljfkmhinphjlfff">
|
||||
Edge
|
||||
</a>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
SimpleLogin is also available on
|
||||
<a href="https://play.google.com/store/apps/details?id=io.simplelogin.android">Android</a>
|
||||
and
|
||||
<a href="https://apps.apple.com/app/id1494359858">iOS</a>
|
||||
so you can manage your aliases on the go.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Note, if you are a paying Proton Mail user, you automatically receive the premium version of SimpleLogin.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
For any question, feedback or feature request, please join our
|
||||
<a href="https://github.com/simple-login/app/discussions">GitHub forum</a>
|
||||
.
|
||||
You can also join our
|
||||
<a href="https://www.reddit.com/r/Simplelogin/">Reddit</a>
|
||||
or follow our
|
||||
<a href="https://twitter.com/simple_login">Twitter</a>
|
||||
.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Best,
|
||||
<br />
|
||||
SimpleLogin Team.
|
||||
{% endcall %}
|
||||
|
||||
{% endblock %}
|
@ -0,0 +1,33 @@
|
||||
Welcome to SimpleLogin, a service developed by Proton to protect your email address!
|
||||
|
||||
This is the first email you receive via your first alias {{ to_address }}
|
||||
|
||||
This alias is automatically created when you use SimpleLogin for the first time.
|
||||
Emails sent to it are forwarded to your Proton mailbox.
|
||||
If you want to reply to an email, just hit "Reply" and the response will come from your alias.
|
||||
Your personal email address stays hidden.
|
||||
|
||||
To create new aliases, use the SimpleLogin browser extension (recommended) or web dashboard.
|
||||
SimpleLogin is available on Chrome, Firefox, and Edge.
|
||||
SimpleLogin is also available on Android and iOS so you can manage your aliases on the go.
|
||||
|
||||
Note, if you are a paying Proton Mail user, you automatically receive the premium version of SimpleLogin.
|
||||
|
||||
For any question, feedback or feature request, please join our GitHub forum.
|
||||
You can also join our Reddit or follow our Twitter.
|
||||
|
||||
Best,
|
||||
SimpleLogin Team.
|
||||
|
||||
---
|
||||
Links:
|
||||
Chrome: https://chrome.google.com/webstore/detail/dphilobhebphkdjbpfohgikllaljmgbn
|
||||
Firefox: https://addons.mozilla.org/firefox/addon/simplelogin/
|
||||
Edge: https://microsoftedge.microsoft.com/addons/detail/simpleloginreceive-sen/diacfpipniklenphgljfkmhinphjlfff
|
||||
Android: https://play.google.com/store/apps/details?id=io.simplelogin.android
|
||||
iOS: https://apps.apple.com/app/id1494359858
|
||||
Github forum: https://github.com/simple-login/app/discussions
|
||||
Reddit: https://www.reddit.com/r/Simplelogin/
|
||||
Twitter: https://twitter.com/simple_login
|
||||
|
||||
|
84
app/templates/emails/com/welcome.html
Normal file
84
app/templates/emails/com/welcome.html
Normal file
@ -0,0 +1,84 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block greeting %}
|
||||
|
||||
<h1 style="margin-top: 0;
|
||||
color: #333333;
|
||||
font-size: 22px;
|
||||
font-weight: bold;
|
||||
text-align: left;"
|
||||
align="left">
|
||||
Welcome!
|
||||
</h1>
|
||||
{% endblock %}
|
||||
{% block content %}
|
||||
|
||||
{% if alias %}
|
||||
|
||||
{% call text() %}
|
||||
This is the first email you receive via your <b>first alias</b> <em>{{ alias }}</em>.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
This alias is automatically created for receiving SimpleLogin news and tips.
|
||||
<br />
|
||||
In the next coming days, we'll send you 3 emails to help you get the best out of SimpleLogin.
|
||||
<br />
|
||||
Please
|
||||
<a href="{{ URL + '/dashboard/setting#notification' }}">disable</a>
|
||||
it if you don't need this.
|
||||
{% endcall %}
|
||||
|
||||
{% endif %}
|
||||
{% call text() %}
|
||||
If you are using Firefox or a Chromium-browser like Chrome, Edge, Brave, you can
|
||||
install our
|
||||
<a href="https://addons.mozilla.org/firefox/addon/simplelogin/">Firefox add-on</a>
|
||||
or
|
||||
<a href="https://chrome.google.com/webstore/detail/dphilobhebphkdjbpfohgikllaljmgbn">Chrome extension</a>
|
||||
to create aliases in one click (like in the below gif 👇).
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
<img src="https://simplelogin.io/images/one-click-alias.gif"
|
||||
style="max-width: 80%; margin: auto; border: 1px solid">
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
SimpleLogin is also available on
|
||||
<a href="https://play.google.com/store/apps/details?id=io.simplelogin.android">Android</a>
|
||||
and
|
||||
<a href="https://apps.apple.com/app/id1494359858">iOS</a>
|
||||
so you can manage your aliases on the go.
|
||||
{% endcall %}
|
||||
|
||||
{% if user.in_trial() and user.trial_end %}
|
||||
|
||||
{% call text() %}
|
||||
When you signed up, you can use all premium features like
|
||||
<em>custom domain</em>, <em>alias directory</em>,
|
||||
<em>mailbox</em>,
|
||||
<em>PGP</em> without any limit during 7 days (the "trial period").
|
||||
Everything you create during this period will
|
||||
continue to work normally even if you don't upgrade.
|
||||
<br />
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Please note that you can't create more than {{ MAX_NB_EMAIL_FREE_PLAN }} aliases during the trial period.
|
||||
<br />
|
||||
{% endcall %}
|
||||
|
||||
{% endif %}
|
||||
{% call text() %}
|
||||
For any question, feedback or feature request, please join our
|
||||
<a href="https://github.com/simple-login/app/discussions">GitHub forum</a>
|
||||
.
|
||||
You can also join our
|
||||
<a href="https://www.reddit.com/r/Simplelogin/">Reddit</a>
|
||||
or follow our
|
||||
<a href="https://twitter.com/simplelogin">Twitter</a>
|
||||
.
|
||||
{% endcall %}
|
||||
|
||||
{% endblock %}
|
31
app/templates/emails/com/welcome.txt
Normal file
31
app/templates/emails/com/welcome.txt
Normal file
@ -0,0 +1,31 @@
|
||||
Hi!
|
||||
|
||||
{% if alias %}
|
||||
This is the first email you receive via your first alias {{ alias }}.
|
||||
This alias is automatically created for receiving SimpleLogin news and tips -
|
||||
feel free to disable it on {{URL}}/dashboard/setting#notification
|
||||
if you don't need any of these.
|
||||
{% endif %}
|
||||
|
||||
To better secure your account, we recommend enabling Multi-Factor Authentication (MFA) or WebAuthn (Yubikey)
|
||||
on your setting page at {{URL}}/dashboard/setting
|
||||
|
||||
|
||||
If you are using Firefox or a Chromium-browser like Chrome, Edge, Brave, you can
|
||||
install our Firefox add-on or Chrome extension
|
||||
to create aliases in one click (literally).
|
||||
|
||||
Firefox: https://addons.mozilla.org/firefox/addon/simplelogin/
|
||||
Chrome: https://chrome.google.com/webstore/detail/dphilobhebphkdjbpfohgikllaljmgbn
|
||||
|
||||
{% if user.in_trial() and user.trial_end %}
|
||||
When you signed up, you can use all premium features like custom domain, alias directory, mailbox, PGP
|
||||
without any limit during 7 days (the "trial period").
|
||||
No worries: all aliases you create during this period will continue to work normally even if you don't upgrade.
|
||||
{% endif %}
|
||||
|
||||
At any time, you can reach out to us by simply replying to this email.
|
||||
|
||||
For any question, feedback or feature request, please join our GitHub forum at https://github.com/simple-login/app/discussions
|
||||
|
||||
You can also join our Reddit at https://www.reddit.com/r/Simplelogin/ follow our Twitter at https://twitter.com/simplelogin
|
16
app/templates/emails/transactional/account-delete.html
Normal file
16
app/templates/emails/transactional/account-delete.html
Normal file
@ -0,0 +1,16 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>Your SimpleLogin account has been deleted successfully.</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Thank you for having used SimpleLogin.
|
||||
{% endcall %}
|
||||
|
||||
{{ render_text('Best,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{% endblock %}
|
7
app/templates/emails/transactional/account-delete.txt
Normal file
7
app/templates/emails/transactional/account-delete.txt
Normal file
@ -0,0 +1,7 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
Your SimpleLogin account has been deleted successfully.
|
||||
|
||||
Thank you for having used SimpleLogin.
|
||||
{% endblock %}
|
12
app/templates/emails/transactional/activation.html
Normal file
12
app/templates/emails/transactional/activation.html
Normal file
@ -0,0 +1,12 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{{ render_text("Thank you for choosing SimpleLogin.") }}
|
||||
{{ render_text("To get started, please confirm that <b>" + email + "</b> is your email address by clicking on the button below within 1 hour.") }}
|
||||
{{ render_button("Verify email", activation_link) }}
|
||||
{{ render_text('Thanks,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{{ raw_url(activation_link) }}
|
||||
{% endblock %}
|
7
app/templates/emails/transactional/activation.txt
Normal file
7
app/templates/emails/transactional/activation.txt
Normal file
@ -0,0 +1,7 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
Thank you for choosing SimpleLogin.
|
||||
|
||||
To get started, please confirm that {{email}} is your email address using this link {{activation_link}} within 1 hour.
|
||||
{% endblock %}
|
19
app/templates/emails/transactional/alias-transferred.html
Normal file
19
app/templates/emails/transactional/alias-transferred.html
Normal file
@ -0,0 +1,19 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>{{ alias.email }} has been transferred.</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Your (previously) alias {{ alias.email }} has been received by another user.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Best,
|
||||
<br />
|
||||
SimpleLogin Team.
|
||||
{% endcall %}
|
||||
|
||||
{% endblock %}
|
7
app/templates/emails/transactional/alias-transferred.txt
Normal file
7
app/templates/emails/transactional/alias-transferred.txt
Normal file
@ -0,0 +1,7 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
{{ alias.email }} has been transferred.
|
||||
|
||||
Your (previously) alias {{ alias.email }} has been received by another user.
|
||||
{% endblock %}
|
@ -0,0 +1,24 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>{{ alias.email }} is disabled</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
There are several emails sent to your alias {{ alias.email }} that have been bounced
|
||||
by your mailbox {{ mailbox_email }}.
|
||||
{% endcall %}
|
||||
|
||||
{{ render_button("View the refused email", refused_email_url) }}
|
||||
{% call text() %}
|
||||
As security measure, we have disabled the alias.
|
||||
{% endcall %}
|
||||
|
||||
{{ render_text('Please let us know if you have any question.') }}
|
||||
{{ render_text('Thanks,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{{ raw_url(refused_email_url) }}
|
||||
{% endblock %}
|
@ -0,0 +1,13 @@
|
||||
{{alias.email}} is disabled.
|
||||
|
||||
There are several emails sent to your alias {{alias.email}} that have been bounced by your mailbox {{mailbox_email}}.
|
||||
|
||||
You can view this email here:
|
||||
{{ refused_email_url }}
|
||||
|
||||
As security measure, we have disabled the alias {{alias.email}}.
|
||||
|
||||
Please let us know if you have any question.
|
||||
|
||||
Best,
|
||||
SimpleLogin team.
|
@ -0,0 +1,29 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>Email cannot be sent to {{ contact.email }} from your alias {{ alias.email }}</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
This might mean {{ contact.email }}
|
||||
<ul>
|
||||
<li>is not a valid email address, or</li>
|
||||
<li>doesn't exist, or</li>
|
||||
<li>its mail server refuses your email</li>
|
||||
</ul>
|
||||
{% endcall %}
|
||||
|
||||
{{ render_button("View the original email", refused_email_url) }}
|
||||
{% call text() %}
|
||||
This email is automatically deleted in 7 days.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Best,
|
||||
<br />
|
||||
SimpleLogin Team.
|
||||
{% endcall %}
|
||||
|
||||
{% endblock %}
|
@ -0,0 +1,16 @@
|
||||
Email cannot be sent to {{ contact.email }} from your alias {{ alias.email }}
|
||||
|
||||
This might mean {{ contact.email }}
|
||||
- is not a valid address, or
|
||||
- doesn't exist, or
|
||||
- its mail server refuses your email.
|
||||
|
||||
You can view the email at {{refused_email_url}}.
|
||||
This email is automatically deleted in 7 days.
|
||||
|
||||
Best,
|
||||
SimpleLogin Team.
|
||||
|
||||
|
||||
|
||||
|
44
app/templates/emails/transactional/bounce/bounced-email.html
Normal file
44
app/templates/emails/transactional/bounce/bounced-email.html
Normal file
@ -0,0 +1,44 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>
|
||||
An email sent to your alias {{ alias.email }} from {{ website_email }} was <b>bounced</b> by your mailbox
|
||||
{{ mailbox_email }}
|
||||
</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
This is usually because your mailbox service thinks the email is <b>spam</b>.
|
||||
{% endcall %}
|
||||
|
||||
{{ render_button("View the bounced email", refused_email_url) }}
|
||||
{{ render_text('The email is automatically deleted in 7 days.') }}
|
||||
{% call text() %}
|
||||
Please consider the following options:
|
||||
<br />
|
||||
<ol>
|
||||
<li>
|
||||
If the email is not spam, you can create a
|
||||
<a href="https://simplelogin.io/docs/getting-started/troubleshooting/">filter</a>
|
||||
to explicitly allow all emails from SimpleLogin.
|
||||
<br />
|
||||
</li>
|
||||
<li>
|
||||
If this email is indeed spam, it means your alias {{ alias.email }} is now in the hands of a spammer.
|
||||
You can either
|
||||
<a href="{{ disable_alias_link }}">disable the alias</a>
|
||||
or
|
||||
<a href="{{ block_sender_link }}">block the sender</a>
|
||||
if they send too many spams.
|
||||
</li>
|
||||
</ol>
|
||||
<br />
|
||||
Please note that the alias can be automatically disabled if too many emails sent to it are bounced.
|
||||
{% endcall %}
|
||||
|
||||
{{ render_text('Thanks,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{% endblock %}
|
@ -0,0 +1,20 @@
|
||||
An email sent to your alias {{alias.email}} from {{website_email}} was bounced by your mailbox {{mailbox_email}}.
|
||||
|
||||
This is usually because your mailbox service thinks the email is a spam.
|
||||
|
||||
You can view this email on {{ refused_email_url }}
|
||||
The email is automatically deleted in 7 days.
|
||||
|
||||
Please consider the following options:
|
||||
|
||||
1. If the email is not spam at all, you can create a "filter" to explicitly allow all emails from SimpleLogin.
|
||||
We have a small gudie on https://simplelogin.io/docs/getting-started/troubleshooting/
|
||||
|
||||
2. If this email is spam, it means your alias {{alias}} is now in the hands of a spammer.
|
||||
You can either disable the alias on {{disable_alias_link}}
|
||||
or block the sender on {{ block_sender_link }} if they send too many spams.
|
||||
|
||||
Please note that the alias can be automatically disabled if too many emails sent to it are bounced.
|
||||
|
||||
Thanks,
|
||||
SimpleLogin team.
|
@ -0,0 +1,24 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>Cannot create {{ alias }} on-the-fly</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
An email has been sent to the alias <b>{{ alias }}</b> that would be created automatically as you own the directory <b>{{ directory }}</b>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
As <b>on-the-fly alias creation is disabled</b> on this directory, the alias isn't created.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
If you aren't aware of this alias, that probably means someone has discovered about your directory and is abusing it.
|
||||
{% endcall %}
|
||||
|
||||
{{ render_text('Thanks,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{% endblock %}
|
@ -0,0 +1,9 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
An email has been sent to the alias {{alias}} that would be created automatically as you own the directory {{directory}}.
|
||||
|
||||
As the directory has the on-the-fly alias creation disabled, the alias isn't created.
|
||||
|
||||
If you aren't aware of this alias, that probably means someone has discovered about your directory and is abusing it.
|
||||
{% endblock %}
|
@ -0,0 +1,15 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>Cannot create alias {{ alias }} on-the-fly</h1>
|
||||
{% endcall %}
|
||||
|
||||
{{ render_text("An email has been sent to the alias <b>" + alias + "</b> that would be created automatically as you own the directory <b>" + directory + "</b>.") }}
|
||||
{{ render_text("However you have reached the alias limit in your current plan, this creation cannot happen.") }}
|
||||
{{ render_text('Please upgrade to premium plan in order to use this feature.') }}
|
||||
{{ render_text('Thanks,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{% endblock %}
|
@ -0,0 +1,9 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
An email has been sent to the alias {{alias}} that would be created automatically as you own the directory {{directory}}.
|
||||
|
||||
However you have reached the alias limit in your current plan, this creation cannot happen.
|
||||
|
||||
Please upgrade to premium plan in order to use this feature.
|
||||
{% endblock %}
|
@ -0,0 +1,15 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>Cannot create {{ alias }} on-the-fly</h1>
|
||||
{% endcall %}
|
||||
|
||||
{{ render_text("An email has been sent to the alias <b>" + alias + "</b> that would be created automatically as you own the domain <b>" + domain + "</b>.") }}
|
||||
{{ render_text("However you have reached the alias limit in your current plan, this creation cannot happen.") }}
|
||||
{{ render_text('Please upgrade to premium plan in order to use this feature.') }}
|
||||
{{ render_text('Thanks,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{% endblock %}
|
@ -0,0 +1,9 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
An email has been sent to the alias {{alias}} that would be created automatically as you own the domain {{domain}}.
|
||||
|
||||
However you have reached the alias limit in your current plan, this creation cannot happen.
|
||||
|
||||
Please upgrade to premium plan in order to use this feature.
|
||||
{% endblock %}
|
13
app/templates/emails/transactional/change-email.html
Normal file
13
app/templates/emails/transactional/change-email.html
Normal file
@ -0,0 +1,13 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{{ render_text("You recently requested to change your email on SimpleLogin to <b>"+ new_email +"</b>.") }}
|
||||
{{ render_text("Your current email is " + current_email + ".") }}
|
||||
{{ render_text("Use the button below to confirm within the next 12 hours.") }}
|
||||
{{ render_button("Change email", link) }}
|
||||
{{ render_text('Thanks,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{{ raw_url(link) }}
|
||||
{% endblock %}
|
11
app/templates/emails/transactional/change-email.txt
Normal file
11
app/templates/emails/transactional/change-email.txt
Normal file
@ -0,0 +1,11 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
You have asked to change your email to {{new_email}}.
|
||||
|
||||
Your current email is {{current_email}}.
|
||||
|
||||
To confirm, please click on this link:
|
||||
|
||||
{{link}}
|
||||
{% endblock %}
|
14
app/templates/emails/transactional/code-activation.html
Normal file
14
app/templates/emails/transactional/code-activation.html
Normal file
@ -0,0 +1,14 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{{ render_text("Hi") }}
|
||||
{{ render_text("Thank you for choosing SimpleLogin.") }}
|
||||
{{ render_text("To get started, please activate your account by entering the following code into the application:") }}
|
||||
{{ render_text("
|
||||
<h1>" + code + "</h1>
|
||||
")}}
|
||||
{{ render_text('Thanks,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{% endblock %}
|
@ -0,0 +1,11 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
Hi,
|
||||
|
||||
Thank you for choosing SimpleLogin.
|
||||
|
||||
To get started, please activate your account by entering the following code into the application:
|
||||
|
||||
{{code}}
|
||||
{% endblock %}
|
@ -0,0 +1,23 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>Your subscription has been extended!</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Your payment with cryptocurrency has been successfully processed.
|
||||
<br />
|
||||
Your subscription has been extended to
|
||||
<b>{{ coinbase_subscription.end_at.format("YYYY-MM-DD") }}</b>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Thank you a lot for your support!
|
||||
{% endcall %}
|
||||
|
||||
{{ render_text('Best,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{% endblock %}
|
@ -0,0 +1,11 @@
|
||||
Your subscription has been extended!
|
||||
|
||||
Your payment with cryptocurrency has been successfully processed.
|
||||
|
||||
Your subscription has been extended to
|
||||
{{ coinbase_subscription.end_at.format("YYYY-MM-DD") }}
|
||||
|
||||
Thank you a lot for your support!
|
||||
|
||||
Best,
|
||||
SimpleLogin team.
|
@ -0,0 +1,23 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>Your account has been upgraded!</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Your payment with cryptocurrency has been successfully processed.
|
||||
<br />
|
||||
Your account has been upgraded to the premium plan until
|
||||
<b>{{ coinbase_subscription.end_at.format("YYYY-MM-DD") }}</b>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Thank you a lot for your support!
|
||||
{% endcall %}
|
||||
|
||||
{{ render_text('Best,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{% endblock %}
|
@ -0,0 +1,11 @@
|
||||
Your account has been upgraded!
|
||||
|
||||
Your payment with cryptocurrency has been successfully processed.
|
||||
|
||||
Your account has been upgraded to premium plan until
|
||||
{{ coinbase_subscription.end_at.format("YYYY-MM-DD") }}
|
||||
|
||||
Thank you a lot for your support!
|
||||
|
||||
Best,
|
||||
SimpleLogin team.
|
@ -0,0 +1,18 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>Your subscription is ending soon.</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Your subscription ends on
|
||||
<b>{{ coinbase_subscription.end_at.format("YYYY-MM-DD") }}</b>
|
||||
{% endcall %}
|
||||
|
||||
{{ render_button("Extend your subscription", extend_subscription_url) }}
|
||||
{{ render_text('Best,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{% endblock %}
|
@ -0,0 +1,7 @@
|
||||
Your subscription ends on {{ coinbase_subscription.end_at.format("YYYY-MM-DD") }}
|
||||
|
||||
You can extend your subscription on
|
||||
{{ extend_subscription_url }}
|
||||
|
||||
Best,
|
||||
SimpleLogin team.
|
@ -0,0 +1,10 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
We have detected that your domain {{ custom_domain.domain }} doesn't have the DNS MX records correctly set up.
|
||||
|
||||
Please re-run the MX check on {{ domain_dns_url }} and update them if needed.
|
||||
|
||||
Without the MX records correctly set up, emails sent to the {{ custom_domain.domain }}'s aliases
|
||||
aren't properly and reliably handled.
|
||||
{% endblock %}
|
26
app/templates/emails/transactional/cycle-email.html
Normal file
26
app/templates/emails/transactional/cycle-email.html
Normal file
@ -0,0 +1,26 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>
|
||||
An email was sent to your alias <b>{{ alias.email }}</b> from its own mailbox
|
||||
<b>{{ from_addr }}</b>.
|
||||
</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
SimpleLogin doesn't send this email <b>back</b> to your mailbox as it would be refused or hidden anyway by your email service.
|
||||
<br />
|
||||
So no worries, there's nothing you need to do :).
|
||||
{% endcall %}
|
||||
|
||||
{{ render_button("View the email", refused_email_url) }}
|
||||
{% call text() %}
|
||||
The email is automatically deleted in 7 days.
|
||||
{% endcall %}
|
||||
|
||||
{{ render_text('Thanks,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{% endblock %}
|
16
app/templates/emails/transactional/cycle-email.txt.jinja2
Normal file
16
app/templates/emails/transactional/cycle-email.txt.jinja2
Normal file
@ -0,0 +1,16 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
An email was sent to your alias {{ alias.email }} from its own mailbox {{ from_addr }}.
|
||||
|
||||
SimpleLogin doesn't send this email back to your mailbox as it would be refused or hidden anyway by your email service.
|
||||
|
||||
So no worries, there's nothing you need to do :).
|
||||
|
||||
You can view this email here:
|
||||
{{ refused_email_url }}
|
||||
|
||||
The email is automatically deleted in 7 days.
|
||||
|
||||
Please let us know if you have any question.
|
||||
{% endblock %}
|
@ -0,0 +1,29 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>Issues with {{ mailbox.email }}.</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
We have detected that your mailbox can't reliably receive emails from SimpleLogin for a consecutive period of time.
|
||||
<br />
|
||||
The mailbox will be disabled in 5 days if the problem isn't solved by then.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Please note that a mailbox can't be a disposable or forwarding email address.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
If you have any question, you can reach out to us by replying to this email.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Best,
|
||||
<br />
|
||||
SimpleLogin Team.
|
||||
{% endcall %}
|
||||
|
||||
{% endblock %}
|
@ -0,0 +1,10 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
Issues with {{ mailbox.email }}.
|
||||
|
||||
We have detected that your mailbox cannot reliably receive emails from SimpleLogin for a consecutive period of time.
|
||||
The mailbox will be disabled in 5 days if the problem isn't solved by then.
|
||||
|
||||
Please note that a mailbox can't be a disposable or forwarding email address.
|
||||
{% endblock %}
|
29
app/templates/emails/transactional/disable-mailbox.html
Normal file
29
app/templates/emails/transactional/disable-mailbox.html
Normal file
@ -0,0 +1,29 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>{{ mailbox.email }} is disabled.</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
We have detected that your mailbox can't reliably receive emails from SimpleLogin for a consecutive period of time.
|
||||
<br />
|
||||
The mailbox has been therefore disabled.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Please note that a mailbox can't be a disposable or forwarding email address.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
If you have any question, you can reach out to us by replying to this email.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Best,
|
||||
<br />
|
||||
SimpleLogin Team.
|
||||
{% endcall %}
|
||||
|
||||
{% endblock %}
|
@ -0,0 +1,11 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
{{ mailbox.email }} is disabled.
|
||||
|
||||
We have detected that your mailbox cannot reliably receive emails from SimpleLogin for a consecutive period of time.
|
||||
The mailbox has been therefore disabled.
|
||||
You can re-enable it by going to the mailbox page.
|
||||
|
||||
Please note that a mailbox can't be a disposable or forwarding email address.
|
||||
{% endblock %}
|
@ -0,0 +1,16 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
We have detected that SimpleLogin is probably used along with another forwarding email service.
|
||||
|
||||
Please note that the following use cases aren't supported by SimpleLogin:
|
||||
|
||||
- your mailbox is an email alias (i.e. not a "final" email address)
|
||||
- your mailbox automatic forwarding enabled
|
||||
- your alias receives automatic forwarding email from another mailbox
|
||||
|
||||
As different email forwarding systems are usually incompatible, using several forwarding services can cause issue
|
||||
with email delivery.
|
||||
|
||||
Please let us know if you have any question.
|
||||
{% endblock %}
|
47
app/templates/emails/transactional/hibp-new-breaches.html
Normal file
47
app/templates/emails/transactional/hibp-new-breaches.html
Normal file
@ -0,0 +1,47 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>{{ breached_aliases|count }} of your aliases are found in data breaches.</h1>
|
||||
{% endcall %}
|
||||
|
||||
<ol>
|
||||
{%- for alias in breached_aliases[:10] %}
|
||||
<li>
|
||||
{% call text() %}
|
||||
<b>{{ alias.email }}</b> was found in {{ alias.hibp_breaches|count }} data breaches.
|
||||
<br />
|
||||
<ul>
|
||||
{% set breaches = alias.hibp_breaches|sort(attribute='date', reverse=True) %}
|
||||
{%- for breach in breaches[:4] %}
|
||||
<li>
|
||||
<b>{{ breach.name }}</b>
|
||||
{% if breach.date %}({{ breach.date.format('YYYY-MM-DD') }}){% endif %}
|
||||
{{ breach.description }}
|
||||
</li>
|
||||
{%- endfor %}
|
||||
</ul>
|
||||
{% if breaches|length > 4 %}And {{ breaches|length - 4 }} more data breaches...{% endif %}
|
||||
{% endcall %}
|
||||
|
||||
</li>
|
||||
{%- endfor %}
|
||||
</ol>
|
||||
{% if breached_aliases|length > 10 %}
|
||||
|
||||
{% call text() %}
|
||||
And {{ breached_aliases|length - 10 }} more aliases...
|
||||
{% endcall %}
|
||||
|
||||
{% endif %}
|
||||
{% call text() %}
|
||||
For more information, check
|
||||
<a href='https://haveibeenpwned.com/'>HaveIBeenPwned.com</a>
|
||||
.
|
||||
{% endcall %}
|
||||
|
||||
{{ render_text('Best,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{% endblock %}
|
@ -0,0 +1,24 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
{{ breached_aliases|count }} of your aliases are found in data breaches.
|
||||
|
||||
{% for alias in breached_aliases[:10] %}
|
||||
{{ loop.index }} ) {{ alias.email }} was found in {{ alias.hibp_breaches|count }} data breaches.
|
||||
|
||||
{%- set breaches = alias.hibp_breaches|sort(attribute='date', reverse=True) %}
|
||||
{% for breach in breaches[:4] %}
|
||||
- {{ breach.name }} {% if breach.date %}({{ breach.date.format('YYYY-MM-DD') }}){% endif %}
|
||||
{%- endfor %}
|
||||
|
||||
{%- if breaches|length > 4 %}
|
||||
And {{ breaches|length - 4 }} more data breaches...
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
|
||||
{%- if breached_aliases|length > 10 %}
|
||||
And {{ breached_aliases|length - 10 }} more aliases...
|
||||
{%- endif %}
|
||||
|
||||
For more information, please check https://haveibeenpwned.com/.
|
||||
{% endblock %}
|
@ -0,0 +1,11 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
We have detected that your mailbox {{ mailbox.email }}'s PGP key is invalid.
|
||||
|
||||
A potential cause is the PGP key is already expired.
|
||||
|
||||
Please update your PGP key on {{URL}}/dashboard/mailbox/{{ mailbox.id }}/ so forwarded emails can be properly encrypted.
|
||||
|
||||
{% endblock %}
|
13
app/templates/emails/transactional/invalid-totp-login.html
Normal file
13
app/templates/emails/transactional/invalid-totp-login.html
Normal file
@ -0,0 +1,13 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{{ render_text("There has been an unsuccessful attempt to login to your SimpleLogin account.") }}
|
||||
{{ render_text("An invalid " ~ type ~ " code was provided <b>but the email and password were correct.</b>") }}
|
||||
{{ render_text("This request has been blocked. However, if this was <b>not</b> you, please <b>change your password immediately.</b>") }}
|
||||
{{ render_button("Change your password", URL ~ "/dashboard/setting#change_password") }}
|
||||
{{ render_text('Thanks,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{{ raw_url(URL ~ "/dashboard/setting#change_password") }}
|
||||
{% endblock %}
|
@ -0,0 +1,9 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
There has been an unsuccessful attempt to login to your SimpleLogin account.
|
||||
An invalid {{type}} code was provided but the email and password were correct.
|
||||
|
||||
This request has been blocked. However, if this was not you, please change your password immediately.
|
||||
{{URL}}/dashboard/setting#change_password
|
||||
{% endblock %}
|
37
app/templates/emails/transactional/mailbox-invalid.html
Normal file
37
app/templates/emails/transactional/mailbox-invalid.html
Normal file
@ -0,0 +1,37 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>
|
||||
Your mailbox {{ mailbox.email }} and alias {{ alias.email }} <b>cannot</b> have the same domain.
|
||||
</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
The alias domain should point to SimpleLogin servers so emails sent to it are forwarded by SimpleLogin.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
The mailbox domain should be your "final" email address that can receive emails from SimpleLogin
|
||||
and cannot point to SimpleLogin.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Please either:
|
||||
<br />
|
||||
<ul>
|
||||
<li>update the mailbox to a final email address on {{ mailbox_url }}</li>
|
||||
<li>remove {{ alias.email }} domain from your custom domains</li>
|
||||
</ul>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Feel free reply to this email if you have any question.
|
||||
<br />
|
||||
Best,
|
||||
<br />
|
||||
SimpleLogin team.
|
||||
{% endcall %}
|
||||
|
||||
{% endblock %}
|
@ -0,0 +1,14 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
Your mailbox {{ mailbox.email }} and alias {{alias.email}} cannot have the same domain.
|
||||
|
||||
The alias domain should point to SimpleLogin servers so emails sent to it are forwarded by SimpleLogin.
|
||||
|
||||
The mailbox domain should be your "final" email address that can receive emails from SimpleLogin
|
||||
and cannot point to SimpleLogin.
|
||||
|
||||
Please either
|
||||
- update the mailbox to a final email address on {{ mailbox_url }}
|
||||
- remove {{alias.email}} domain from your custom domains
|
||||
{% endblock %}
|
@ -0,0 +1,20 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>
|
||||
Your subscription will end on <b>{{ manual_sub.end_at.format("YYYY-MM-DD") }}</b>
|
||||
</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Please contact us at
|
||||
<a href="mailto:hi@simplelogin.io">hi@simplelogin.io</a>
|
||||
to renew your subscription.
|
||||
{% endcall %}
|
||||
|
||||
{{ render_text('Thanks,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{% endblock %}
|
@ -0,0 +1,5 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
Your subscription will end on {{ manual_sub.end_at.format("YYYY-MM-DD") }}
|
||||
{% endblock %}
|
@ -0,0 +1,26 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>An email from {{ from_header }} to {{ alias.email }} is put into Quarantine</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
An email from {{ from_header }} to {{ alias.email }} is put into Quarantine as it fails
|
||||
<a href="https://simplelogin.io/docs/getting-started/anti-phishing/">anti-phishing measure</a>
|
||||
check.
|
||||
{% endcall %}
|
||||
|
||||
{{ render_button("View the original email", refused_email_url) }}
|
||||
{% call text() %}
|
||||
This email is automatically deleted in 7 days.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Best,
|
||||
<br />
|
||||
SimpleLogin Team.
|
||||
{% endcall %}
|
||||
|
||||
{% endblock %}
|
@ -0,0 +1,11 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
An email from {{ from_header }} to {{ alias.email }} is put into Quarantine as it fails anti-phishing check.
|
||||
|
||||
|
||||
You can view the email at {{ refused_email_url }}.
|
||||
This email is automatically deleted in 7 days.
|
||||
|
||||
More info about the anti-phishing measure on https://simplelogin.io/docs/getting-started/anti-phishing/
|
||||
{% endblock %}
|
@ -0,0 +1,19 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
Hi
|
||||
|
||||
Your email sent to {{ destination }} from {{ alias }} ({{ subject }}) contains an address
|
||||
which isn't a reverse-alias in the To: or Cc: field.
|
||||
|
||||
The email was then directly sent to this recipient and doesn't pass by SimpleLogin.
|
||||
Unfortunately, it reveals your real mailbox address to the recipient.
|
||||
Please create a reverse alias for each recipient to make sure your mailbox stays hidden and re-send the email.
|
||||
|
||||
In case some reverse aliases are also present in To: or Cc:, SimpleLogin won't deliver this email to the
|
||||
corresponding contacts to avoid any potential side effect. Please remove the non reverse-alias addresses and
|
||||
re-send the email.
|
||||
|
||||
More info about reverse-alias can be found on https://simplelogin.io/docs/getting-started/reverse-alias/
|
||||
and how to send an email from your alias on https://simplelogin.io/docs/getting-started/send-email/
|
||||
{% endblock %}
|
8
app/templates/emails/transactional/noreply.text.jinja2
Normal file
8
app/templates/emails/transactional/noreply.text.jinja2
Normal file
@ -0,0 +1,8 @@
|
||||
Hi!
|
||||
|
||||
Thanks for getting in touch. This mailbox cannot receive any emails.
|
||||
|
||||
If you need help, please go to https://app.simplelogin.io/dashboard/support to contact us.
|
||||
|
||||
Best!
|
||||
SimpleLogin team
|
@ -0,0 +1,40 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
This is SimpleLogin team.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
{{ provider }} has informed us about an email sent to <b>{{ email }}</b> that might have been considered as spam,
|
||||
either by you or by {{ provider }} spam filter.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Please note that explicitly marking a SimpleLogin's forwarded email as Spam affects SimpleLogin email delivery,
|
||||
has a negative effect for all users and is a violation of our terms and condition.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
If somehow {{ provider }} considers a forwarded email as Spam, it helps us if you can move the email
|
||||
out of the Spam folder. You can also set up a filter to avoid this
|
||||
from happening in the future using this guide at
|
||||
https://simplelogin.io/docs/getting-started/troubleshooting/
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Please don't put our emails into the Spam folder. This can end up in your account being disabled on SimpleLogin.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Don't hesitate to get in touch with us if you need more information.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Best,
|
||||
<br />
|
||||
SimpleLogin Team.
|
||||
{% endcall %}
|
||||
|
||||
{% endblock %}
|
@ -0,0 +1,21 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
Hi,
|
||||
|
||||
This is SimpleLogin team.
|
||||
|
||||
{{ provider }} has informed us about an email sent to {{ email }} that might have been considered as spam,
|
||||
either by you or by {{ provider }}.
|
||||
|
||||
Please note that explicitly marking a SimpleLogin's forwarded email as Spam
|
||||
affects SimpleLogin email delivery,
|
||||
has a negative effect for all users and is a violation of our terms and condition.
|
||||
|
||||
If somehow {{ provider }} considers a forwarded email as Spam, it helps us if you can move the email
|
||||
out of the Spam folder. You can also set up a filter to avoid this
|
||||
from happening in the future using this guide at
|
||||
https://simplelogin.io/docs/getting-started/troubleshooting/
|
||||
|
||||
Please don't put our emails into the Spam folder. This can end up in your account being disabled on SimpleLogin.
|
||||
{% endblock %}
|
@ -0,0 +1,15 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
Hi,
|
||||
|
||||
This is SimpleLogin team.
|
||||
|
||||
We have received a report from {{ provider }} informing us about an email sent from your alias {{ alias.email }} to {{ destination }} that might have been considered as spam, either by the recipient or by their spam filter.
|
||||
|
||||
Please note that sending non-solicited email from a SimpleLogin alias infringes our terms and condition as it severely affects SimpleLogin email delivery.
|
||||
|
||||
If somehow the recipient's provider considers a forwarded email as Spam, it helps us a lot if you can ask them to move the email out of their Spam folder.
|
||||
|
||||
Don't hesitate to get in touch with us if you need more information.
|
||||
{% endblock %}
|
@ -0,0 +1,37 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
This is SimpleLogin team.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
{{ provider }} has informed us about an email sent to <b>{{ user.email }}</b> that might have been marked as spam.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Please note that explicitly marking a SimpleLogin's forwarded email as Spam affects SimpleLogin email delivery,
|
||||
has a negative effect for all users and
|
||||
is a violation of our terms and condition.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
If that’s the case, please disable the alias instead if you don't want to receive the emails sent to this alias.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
If SimpleLogin isn’t useful for you, please know that you can simply delete your account on the Settings page.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Don't hesitate to get in touch with us if you need more information.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Best,
|
||||
<br />
|
||||
SimpleLogin Team.
|
||||
{% endcall %}
|
||||
|
||||
{% endblock %}
|
@ -0,0 +1,18 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
Hi,
|
||||
|
||||
This is SimpleLogin team.
|
||||
|
||||
{{ provider }} has informed us about an email sent to {{ user.email }} that might have been marked as spam.
|
||||
|
||||
Please note that explicitly marking a SimpleLogin's forwarded email as Spam affects SimpleLogin email delivery,
|
||||
has a negative effect for all users and is a violation of our terms and condition.
|
||||
|
||||
If that’s the case, please disable the alias instead if you don't want to receive the emails sent to this alias.
|
||||
|
||||
If SimpleLogin isn’t useful for you, please know that you can simply delete your account on the Settings page.
|
||||
|
||||
Don't hesitate to get in touch with us if you need more information.
|
||||
{% endblock %}
|
30
app/templates/emails/transactional/reply-error.html
Normal file
30
app/templates/emails/transactional/reply-error.html
Normal file
@ -0,0 +1,30 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{{ render_text("Hi") }}
|
||||
{% call text() %}
|
||||
Your email cannot be sent to <b>{{ contact.email }}</b> from your alias <b>{{ alias.email }}</b>.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Can you please verify <b>{{ contact.email }}</b> is a valid address?
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Usually this is because the DNS record of <b>{{ contact_domain }}</b> does not exist.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
You can check its DNS record on any DNS checker websites, for example https://mxtoolbox.com/SuperTool.aspx
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Please let us know if you have any question.
|
||||
<br />
|
||||
Best,
|
||||
<br />
|
||||
SimpleLogin team.
|
||||
{% endcall %}
|
||||
|
||||
{% endblock %}
|
13
app/templates/emails/transactional/reply-error.txt.jinja2
Normal file
13
app/templates/emails/transactional/reply-error.txt.jinja2
Normal file
@ -0,0 +1,13 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
Hi
|
||||
|
||||
Your email cannot be sent to {{contact.email}} from your alias {{alias.email}}.
|
||||
|
||||
Can you please verify {{contact.email}} is a valid address?
|
||||
|
||||
Usually this is because the DNS record of {{contact_domain}} does not exist.
|
||||
|
||||
You can check its DNS record on any DNS checker websites, for example https://mxtoolbox.com/SuperTool.aspx
|
||||
{% endblock %}
|
@ -0,0 +1,32 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>
|
||||
An attempt to send an email from your alias <b>{{ alias.email }}</b> using <b>{{ sender }}</b> is blocked.
|
||||
</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
As a measure to protect against <b>email spoofing</b>, we have blocked an attempt to send an email from your alias <b>{{ alias.email }}</b> using <b>{{ sender }}</b>.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Please note that sending from this alias only works from alias's owning mailboxes, that are
|
||||
{{ mailbox_emails|join(", ") }}
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
If {{ sender }} can indeed send emails from your alias, you can add it to the allow list:
|
||||
{% endcall %}
|
||||
|
||||
{{ render_button("Allow " + sender, authorize_address_link) }}
|
||||
{% call text() %}
|
||||
Best,
|
||||
<br />
|
||||
SimpleLogin Team.
|
||||
{% endcall %}
|
||||
|
||||
{{ raw_url(authorize_address_link) }}
|
||||
{% endblock %}
|
@ -0,0 +1,11 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
We have recorded an attempt to send an email from your alias {{ alias.email }} using {{ sender }}.
|
||||
|
||||
Please note that sending from this alias only works from alias's owning mailboxes, that are
|
||||
{{ mailbox_emails|join(", ") }}
|
||||
|
||||
This is to protect against "email spoofing", i.e. someone else sending emails from your mailbox.
|
||||
If {{ sender }} can indeed send emails from your alias, you can add it to the allow list on {{authorize_address_link}}
|
||||
{% endblock %}
|
14
app/templates/emails/transactional/reset-password.html
Normal file
14
app/templates/emails/transactional/reset-password.html
Normal file
@ -0,0 +1,14 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{{ render_text("You recently requested to reset your password on SimpleLogin.") }}
|
||||
{{ render_text("Use the button below to reset it. <b>This password reset is only valid for the next hour.</b>") }}
|
||||
{{ render_button("Reset your password", reset_password_link) }}
|
||||
{{ render_text("If the button has expired, you can request a new link by following the same process as before.") }}
|
||||
{{ render_text("If you did not request a password reset, no further action is required.") }}
|
||||
{{ render_text('Thanks,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{{ raw_url(reset_password_link) }}
|
||||
{% endblock %}
|
8
app/templates/emails/transactional/reset-password.txt
Normal file
8
app/templates/emails/transactional/reset-password.txt
Normal file
@ -0,0 +1,8 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
To reset or change your password, please click on this link:
|
||||
|
||||
{{reset_password_link}}
|
||||
|
||||
{% endblock %}
|
@ -0,0 +1,13 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{{ render_text('This is an automated email from SimpleLogin.') }}
|
||||
{{ render_text("We have recorded an attempt to send an email from your email <b>" + sender + "</b> to <b>" + reply_email + "</b>.") }}
|
||||
{{ render_text(reply_email + ' is a special email address that only receives emails from its authorized user.') }}
|
||||
{{ render_text('This user has been also informed of this incident.') }}
|
||||
{{ render_text('If you have any question, you can contact us by replying to this email or consult our website at ' ~ LANDING_PAGE_URL ~ '.') }}
|
||||
{{ render_text('Regards,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{% endblock %}
|
@ -0,0 +1,15 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
Hi,
|
||||
|
||||
This is an automated email from SimpleLogin.
|
||||
|
||||
We have recorded an attempt to send an email from your email ({{sender}}) to {{reply_email}}.
|
||||
|
||||
{{reply_email}} is a special email address that only receives emails from its authorized user.
|
||||
This user has been also informed of this incident.
|
||||
|
||||
If you have any question, you can contact us by replying to this email or consult our website at {{LANDING_PAGE_URL}}.
|
||||
|
||||
{% endblock %}
|
@ -0,0 +1,30 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>An email sent from your alias {{ alias.email }} to {{ website_email }} is detected as spam.</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
An email sent from your alias {{ alias.email }} to {{ website_email }} is detected as spam by our Spam Detection Engine (SpamAssassin).
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
In most of the cases, the email will be refused by your contact.
|
||||
{% endcall %}
|
||||
|
||||
{{ render_button("View the email", refused_email_url) }}
|
||||
{% call text() %}
|
||||
The email is automatically deleted in 7 days.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Please let us know if you have any question by replying to this email.
|
||||
{% endcall %}
|
||||
|
||||
{{ render_text('Thanks,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{{ raw_url(disable_alias_link) }}
|
||||
{% endblock %}
|
@ -0,0 +1,15 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
An email sent from your alias {{alias.email}} to {{website_email}} is detected as spam by our Spam Detection Engine (SpamAssassin).
|
||||
|
||||
In most of the cases, the email will be refused by your contact.
|
||||
|
||||
You can view this email here:
|
||||
{{ refused_email_url }}
|
||||
|
||||
The email is automatically deleted in 7 days.
|
||||
|
||||
Please let us know if you have any question by replying to this email.
|
||||
|
||||
{% endblock %}
|
32
app/templates/emails/transactional/spam-email.html
Normal file
32
app/templates/emails/transactional/spam-email.html
Normal file
@ -0,0 +1,32 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>An email sent to your alias {{ alias.email }} from {{ website_email }} is detected as spam</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
An email sent to your alias {{ alias.email }} from {{ website_email }} is detected as spam by our Spam Detection Engine (SpamAssassin).
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
In most of the cases, the email will be refused by your email provider.
|
||||
{% endcall %}
|
||||
|
||||
{{ render_button("View the email", refused_email_url) }}
|
||||
{% call text() %}
|
||||
The email is automatically deleted in 7 days.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Your alias {{ alias.email }} is probably in the hands of a spammer now. In this case, you should disable or delete the alias immediately.
|
||||
{% endcall %}
|
||||
|
||||
{{ render_button("Disable alias", disable_alias_link) }}
|
||||
{{ render_text('Please let us know if you have any question by replying to this email.') }}
|
||||
{{ render_text('Thanks,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{{ raw_url(disable_alias_link) }}
|
||||
{% endblock %}
|
19
app/templates/emails/transactional/spam-email.txt
Normal file
19
app/templates/emails/transactional/spam-email.txt
Normal file
@ -0,0 +1,19 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
An email sent to your alias {{alias.email}} from {{website_email}} is detected as spam by our Spam Detection Engine (SpamAssassin).
|
||||
|
||||
In most of the cases, the email will be refused by your email provider.
|
||||
|
||||
You can view this email here:
|
||||
{{ refused_email_url }}
|
||||
|
||||
The email is automatically deleted in 7 days.
|
||||
|
||||
Your alias {{alias}} is probably in the hands of a spammer now. In this case, you should disable or delete the alias immediately.
|
||||
|
||||
{{disable_alias_link}}
|
||||
|
||||
Please let us know if you have any question by replying to this email.
|
||||
|
||||
{% endblock %}
|
43
app/templates/emails/transactional/spf-fail.html
Normal file
43
app/templates/emails/transactional/spf-fail.html
Normal file
@ -0,0 +1,43 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>
|
||||
Attempt to send an email from your alias <b>{{ alias }}</b> from an unknown IP address
|
||||
</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
We have recorded an attempt to send the following email from your alias <b>{{ alias }}</b> from an unknown IP
|
||||
address
|
||||
<b>{{ ip }}</b>.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
- From: <b>{{ alias }}</b>
|
||||
<br />
|
||||
- To: <b>{{ to_email }}</b>
|
||||
<br />
|
||||
- Subject: <b>{{ subject }}</b>
|
||||
<br />
|
||||
- Time: <b>{{ time.humanize() }}</b>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
To prevent email-spoofing, SimpleLogin enforces the SPF (Sender Policy Framework).
|
||||
Emails sent from an IP address that is <b>unknown</b> by your email service are refused by default.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
However you can turn off this option by going to {{ mailbox_url }}.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Please only turn this protection off this if you know what you're doing :).
|
||||
{% endcall %}
|
||||
|
||||
{{ render_text('Thanks,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{% endblock %}
|
17
app/templates/emails/transactional/spf-fail.txt
Normal file
17
app/templates/emails/transactional/spf-fail.txt
Normal file
@ -0,0 +1,17 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
We have recorded an attempt to send the following email from your alias {{ alias }} from an unknown IP address {{ ip }}.
|
||||
|
||||
- From: {{alias}}
|
||||
- To: {{to_email}}
|
||||
- Subject: {{subject}}
|
||||
- Time: {{ time.humanize() }}
|
||||
|
||||
To prevent email-spoofing, SimpleLogin enforces the SPF (Sender Policy Framework).
|
||||
Emails sent from an IP address that is unknown by your email service are refused by default.
|
||||
|
||||
However you can turn off this option by going to {{mailbox_url}}.
|
||||
|
||||
Please only turn this protection off this if you know what you're doing :).
|
||||
{% endblock %}
|
23
app/templates/emails/transactional/spoof-reply.html
Normal file
23
app/templates/emails/transactional/spoof-reply.html
Normal file
@ -0,0 +1,23 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>
|
||||
Unauthorized attempt to send an email to {{ contact.email }} from your alias <b>{{ alias.email }}</b> using
|
||||
<b>{{ sender }}</b> has been blocked.
|
||||
</h1>
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
To protect against <b>email spoofing</b>, only your mailbox can send emails on behalf of your alias.
|
||||
SimpleLogin also refuses emails that claim to come from your mailbox but fail DMARC.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
Best,
|
||||
<br />
|
||||
SimpleLogin Team.
|
||||
{% endcall %}
|
||||
|
||||
{% endblock %}
|
10
app/templates/emails/transactional/spoof-reply.txt.jinja2
Normal file
10
app/templates/emails/transactional/spoof-reply.txt.jinja2
Normal file
@ -0,0 +1,10 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
Unauthorized attempt to send an email to {{ contact.email }} from your alias {{ alias.email }} using
|
||||
{{ sender }} has been blocked.
|
||||
|
||||
To protect against email spoofing, only your mailbox can send emails on behalf of your alias.
|
||||
SimpleLogin also refuses emails that claim to come from your mailbox but fail DMARC.
|
||||
{% endblock %}
|
||||
|
@ -0,0 +1,9 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
Your subscription will end at {{end_date}}.
|
||||
|
||||
Thanks for giving SimpleLogin a try!
|
||||
|
||||
{% endblock %}
|
30
app/templates/emails/transactional/subscription-end.html
Normal file
30
app/templates/emails/transactional/subscription-end.html
Normal file
@ -0,0 +1,30 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{{ render_text("Hi") }}
|
||||
{{ render_text("Your subscription will end on " + next_bill_date + ".") }}
|
||||
{{ render_text("When the subscription ends:") }}
|
||||
{{ render_text("- All aliases/domains/directories you have created are <b>kept</b> and continue working normally.") }}
|
||||
{% call text() %}
|
||||
- You cannot create new aliases if you exceed the free plan limit, i.e. have more than {{ MAX_NB_EMAIL_FREE_PLAN }} aliases.
|
||||
{% endcall %}
|
||||
|
||||
{% call text() %}
|
||||
- As features like <b>catch-all</b> or <b>directory</b> allow you to create aliases on-the-fly,
|
||||
those aliases cannot be automatically created if you have more than {{ MAX_NB_EMAIL_FREE_PLAN }} aliases.
|
||||
{% endcall %}
|
||||
|
||||
{{ render_text("- You cannot add new domain or directory.") }}
|
||||
{{ render_text('You can upgrade today to continue using all these Premium features (and much more coming).') }}
|
||||
{{ render_button("Upgrade your account", URL ~ "/dashboard/pricing") }}
|
||||
{{ render_text('Regardless of your choice, we want to say thank you for trying SimpleLogin. We know the product
|
||||
requires an investment of your time, and we appreciate you giving us a chance.') }}
|
||||
{{ render_text('Thanks,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{{ render_text('P.S. If you have any questions or need any help, please don\'t hesitate to
|
||||
<a href="https://app.simplelogin.io/dashboard/support">reach out</a>
|
||||
') }}
|
||||
{{ raw_url(URL ~ "/dashboard/pricing") }}
|
||||
{% endblock %}
|
17
app/templates/emails/transactional/subscription-end.txt
Normal file
17
app/templates/emails/transactional/subscription-end.txt
Normal file
@ -0,0 +1,17 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
Hi
|
||||
|
||||
Your subscription will end on {{ next_bill_date }}.
|
||||
|
||||
When the subscription ends:
|
||||
|
||||
- All aliases/domains/directories you have created are kept and continue working.
|
||||
- You cannot create new aliases if you exceed the free plan limit, i.e. have more than {{MAX_NB_EMAIL_FREE_PLAN}} aliases.
|
||||
- As features like "catch-all" or "directory" allow you to create aliases on-the-fly,
|
||||
those aliases cannot be automatically created if you have more than {{MAX_NB_EMAIL_FREE_PLAN}} aliases.
|
||||
- You cannot add new domain or directory.
|
||||
|
||||
You can upgrade today to continue using all these Premium features (and much more coming).
|
||||
{% endblock %}
|
7
app/templates/emails/transactional/test-email.html
Normal file
7
app/templates/emails/transactional/test-email.html
Normal file
@ -0,0 +1,7 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{{ render_text("Hi " + name) }}
|
||||
{{ render_text("This is a test to make sure that you receive emails sent to your alias <b>" + alias + "</b>.") }}
|
||||
{% endblock %}
|
9
app/templates/emails/transactional/test-email.txt
Normal file
9
app/templates/emails/transactional/test-email.txt
Normal file
@ -0,0 +1,9 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
Hi {{name}}
|
||||
|
||||
This is a test to make sure that you receive emails sent to your alias {{alias}}.
|
||||
|
||||
{% endblock %}
|
||||
|
37
app/templates/emails/transactional/trial-end.html
Normal file
37
app/templates/emails/transactional/trial-end.html
Normal file
@ -0,0 +1,37 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% call text() %}
|
||||
<h1>Your trial will end {{ user.trial_end.humanize() }}</h1>
|
||||
{% endcall %}
|
||||
|
||||
{{ render_text("When the trial ends:") }}
|
||||
{{ render_text("- All aliases/domains/directories you have created are <b>kept</b> and continue working normally.") }}
|
||||
{% call text() %}
|
||||
- You cannot create new aliases if you exceed the free plan limit, i.e. have more than {{ MAX_NB_EMAIL_FREE_PLAN }} aliases.
|
||||
{% endcall %}
|
||||
|
||||
{{ render_text("- You cannot add new domain or directory.") }}
|
||||
{{ render_text("- You cannot add new mailbox.") }}
|
||||
{{ render_text("- If you enable PGP Encryption, forwarded emails are not encrypted anymore.") }}
|
||||
{{ render_text('You can upgrade today to continue using all these Premium features (and much more coming).') }}
|
||||
{{ render_button("Upgrade your account", URL ~ "/dashboard/pricing") }}
|
||||
{{ render_text("If you're not ready to upgrade to a paying account, you have a few other options available to you:") }}
|
||||
{{ grey_section([
|
||||
"<b>Continue with the Free Plan</b> - In the free plan you are limited to " ~ MAX_NB_EMAIL_FREE_PLAN ~ " aliases but there's no cap on bandwidth or
|
||||
number of emails forwarded/sent.",
|
||||
"<b>Share feedback</b> - If SimpleLogin isn't right for you, let us know what you were looking for and we might be able to suggest some alternatives that might be a better fit.",
|
||||
"<b>Export your data</b> - If SimpleLogin wasn't a good fit, you can export your data for use elsewhere. ",
|
||||
"<b>Close your account</b> - You can close your account and delete your data if SimpleLogin is not useful to you."
|
||||
]) }}
|
||||
{{ render_text('Regardless of your choice, we want to say thank you for trying SimpleLogin. We know the product
|
||||
requires an investment of your time, and we appreciate you giving us a chance.') }}
|
||||
{{ render_text('Thanks,
|
||||
<br />
|
||||
SimpleLogin Team.') }}
|
||||
{{ render_text('P.S. If you have any questions or need any help, please don\'t hesitate to
|
||||
<a href="https://app.simplelogin.io/dashboard/support">reach out</a>
|
||||
') }}
|
||||
{{ raw_url(URL ~ "/dashboard/pricing") }}
|
||||
{% endblock %}
|
17
app/templates/emails/transactional/trial-end.txt.jinja2
Normal file
17
app/templates/emails/transactional/trial-end.txt.jinja2
Normal file
@ -0,0 +1,17 @@
|
||||
{% extends "base.txt.jinja2" %}
|
||||
|
||||
{% block content %}
|
||||
Your trial will end {{ user.trial_end.humanize() }}.
|
||||
|
||||
When the trial ends:
|
||||
|
||||
- All aliases/domains/directories you have created are kept and continue working.
|
||||
- You cannot create new aliases if you exceed the free plan limit, i.e. have more than {{MAX_NB_EMAIL_FREE_PLAN}} aliases.
|
||||
- You cannot add new domain or directory.
|
||||
- You cannot add new mailbox.
|
||||
- If you enable PGP Encryption, forwarded emails are not encrypted anymore.
|
||||
|
||||
You can upgrade today to continue using all these Premium features (and much more coming).
|
||||
|
||||
Let me know if you need to extend your trial period.
|
||||
{% endblock %}
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user