4.49.7
Some checks failed
Build-Release-Image / Build-Image (linux/arm64) (push) Successful in 3m21s
Build-Release-Image / Build-Image (linux/amd64) (push) Has been cancelled
Build-Release-Image / Merge-Images (push) Has been cancelled
Build-Release-Image / Create-Release (push) Has been cancelled
Build-Release-Image / Notify (push) Has been cancelled

This commit is contained in:
2024-09-03 12:00:06 +01:00
parent 63ac89e952
commit 14f4829fab
114 changed files with 2011 additions and 2308 deletions

View File

@ -2,14 +2,14 @@
<p style="font-size: 16px;
line-height: 1.625;
color: #51545E;
margin: .4em 0 1.1875em;">{{ text }}</p>
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>
margin: .4em 0 1.1875em">{{ caller() }}</p>
{% endmacro %}
{% macro render_button(button_text, link) %}
<!-- Action -->
@ -25,12 +25,12 @@
-premailer-cellspacing: 0;
text-align: center;
margin: 30px auto;
padding: 0;">
padding: 0">
<tr>
<td align="center"
style="word-break: break-word;
font-family: Helvetica, Arial, sans-serif;
font-size: 16px;">
font-size: 16px">
<!-- Border based button
https://litmus.com/blog/a-guide-to-bulletproof-buttons-in-email-design -->
<table width="100%"
@ -42,7 +42,7 @@ https://litmus.com/blog/a-guide-to-bulletproof-buttons-in-email-design -->
<td align="center"
style="word-break: break-word;
font-family: Helvetica, Arial, sans-serif;
font-size: 16px;">
font-size: 16px">
<a href="{{ link }}"
class="f-fallback button"
target="_blank"
@ -57,9 +57,7 @@ https://litmus.com/blog/a-guide-to-bulletproof-buttons-in-email-design -->
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>
box-sizing: border-box">{{ button_text }}</a>
</td>
</tr>
</table>
@ -75,25 +73,23 @@ https://litmus.com/blog/a-guide-to-bulletproof-buttons-in-email-design -->
padding-top: 25px;
border-top-width: 1px;
border-top-color: #EAEAEC;
border-top-style: solid;">
border-top-style: solid">
<tr>
<td style="word-break: break-word;
font-family: Helvetica, Arial, sans-serif;
font-size: 16px;">
font-size: 16px">
<p class="f-fallback sub"
style="font-size: 13px;
line-height: 1.625;
color: #51545E;
margin: .4em 0 1.1875em;">
margin: .4em 0 1.1875em">
If youre 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>
margin: .4em 0 1.1875em">{{ link }}</p>
</td>
</tr>
</table>
@ -104,14 +100,14 @@ https://litmus.com/blog/a-guide-to-bulletproof-buttons-in-email-design -->
cellpadding="0"
cellspacing="0"
role="presentation"
style="margin: 0 0 21px;">
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;"
padding: 16px"
bgcolor="#F4F4F7">
<table width="100%" cellpadding="0" cellspacing="0" role="presentation">
{% for part in parts %}
@ -121,7 +117,7 @@ https://litmus.com/blog/a-guide-to-bulletproof-buttons-in-email-design -->
style="word-break: break-word;
font-family: Helvetica, Arial, sans-serif;
font-size: 16px;
padding: 0;">
padding: 0">
<div class="f-fallback">
{{ part }}
<br />

View File

@ -1,5 +1,5 @@
{% from "_emailhelpers.html" import render_text, text, render_button, raw_url, grey_section, section %}
<!doctype html>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office">
@ -8,7 +8,7 @@
<!--[if gte mso 15]>
<xml>
<o:OfficeDocumentSettings>
<o:AllowPNG/>
<o:AllowPNG />
<o:PixelsPerInch>96</o:PixelsPerInch>
</o:OfficeDocumentSettings>
</xml>
@ -504,7 +504,7 @@
padding: 0;
width: 100%;
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;">
-webkit-text-size-adjust: 100%">
<!--[if !gte mso 9]><!----><span class="mcnPreviewText"
style="display:none;
font-size:0px;
@ -514,7 +514,7 @@
opacity:0;
overflow:hidden;
visibility:hidden;
mso-hide:all;"></span><!--<![endif]-->
mso-hide:all"></span><!--<![endif]-->
<center>
<table align="center"
border="0"
@ -531,7 +531,7 @@
height: 100%;
margin: 0;
padding: 0;
width: 100%;">
width: 100%">
<tr>
<td align="center"
valign="top"
@ -542,7 +542,7 @@
height: 100%;
margin: 0;
padding: 8px;
width: 100%;">
width: 100%">
<!-- BEGIN TEMPLATE // -->
<!--[if (gte mso 9)|(IE)]>
<table align="center" border="0" cellspacing="0" cellpadding="0" width="600" style="width:600px;"><tr><td align="center" valign="top" width="600" style="width:600px;">
@ -557,13 +557,13 @@
mso-table-rspace: 0pt;
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
max-width: 600px !important;">
max-width: 600px !important">
<tr>
<td valign="top"
id="templateHeader"
style="mso-line-height-rule: exactly;
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;">
-webkit-text-size-adjust: 100%">
<table border="0"
cellpadding="0"
cellspacing="0"
@ -574,14 +574,14 @@
mso-table-lspace: 0pt;
mso-table-rspace: 0pt;
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;">
-webkit-text-size-adjust: 100%">
<tbody class="mcnImageBlockOuter">
<tr>
<td valign="top"
style="padding: 16px;
mso-line-height-rule: exactly;
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;"
-webkit-text-size-adjust: 100%"
class="mcnImageBlockInner">
<table align="left"
width="100%"
@ -594,7 +594,7 @@
mso-table-lspace: 0pt;
mso-table-rspace: 0pt;
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;">
-webkit-text-size-adjust: 100%">
<tbody>
<tr>
<td class="mcnImageContent"
@ -603,13 +603,22 @@
text-align: center;
mso-line-height-rule: exactly;
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;">
-webkit-text-size-adjust: 100%">
<a href="https://proton.me/" target="_blank" style="">
<img align="center"
alt="Proton"
src="{{ URL }}/static/logo-proton.png"
width="190"
style="width:35.4477%; max-width: 380px; padding-bottom: 0; display: inline !important; vertical-align: bottom; border: 0; height: auto; outline: none; text-decoration: none; -ms-interpolation-mode: bicubic; ">
style="width:35.4477%;
max-width: 380px;
padding-bottom: 0;
display: inline !important;
vertical-align: bottom;
border: 0;
height: auto;
outline: none;
text-decoration: none;
-ms-interpolation-mode: bicubic">
</a>
</td>
</tr>
@ -624,7 +633,9 @@
<tr>
<td valign="top"
id="templateBody"
style="mso-line-height-rule: exactly; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; ">
style="mso-line-height-rule: exactly;
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%">
{% block greeting %}{% endblock %}
{% block content %}{% endblock %}
<!-- Sub copy -->

View File

@ -423,7 +423,7 @@
.f-fallback {
font-family: Arial, sans-serif;
}
</style>
</style>
<![endif]-->
<style type="text/css" rel="stylesheet" media="all">
body {
@ -449,7 +449,7 @@
font-family: Helvetica, Arial, sans-serif;
background-color: #F2F4F6;
color: #51545E;
margin: 0;"
margin: 0"
bgcolor="#F2F4F6">
<span class="preheader"
style="display: none !important;
@ -460,7 +460,7 @@
max-height: 0;
max-width: 0;
opacity: 0;
overflow: hidden;">{{ pre_header }}</span>
overflow: hidden">{{ pre_header }}</span>
<table class="email-wrapper"
width="100%"
cellpadding="0"
@ -472,13 +472,13 @@
-premailer-cellspacing: 0;
background-color: #F2F4F6;
margin: 0;
padding: 0;"
padding: 0"
bgcolor="#F2F4F6">
<tr>
<td align="center"
style="word-break: break-word;
font-family: Helvetica, Arial, sans-serif;
font-size: 16px;">
font-size: 16px">
<table class="email-content"
width="100%"
cellpadding="0"
@ -489,14 +489,14 @@
-premailer-cellpadding: 0;
-premailer-cellspacing: 0;
margin: 0;
padding: 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;"
padding: 25px 0"
align="center">
<a href="{{ LANDING_PAGE_URL }}"
class="f-fallback email-masthead_name"
@ -504,7 +504,7 @@
font-size: 16px;
font-weight: bold;
text-decoration: none;
text-shadow: 0 1px 0 white;">
text-shadow: 0 1px 0 white">
{% block logo %}<img src="{{ URL }}/static/logo.png" style="width: 150px; margin: auto">{% endblock %}
</a>
</td>
@ -523,7 +523,7 @@
width: 100%;
-premailer-width: 100%;
-premailer-cellpadding: 0;
-premailer-cellspacing: 0;">
-premailer-cellspacing: 0">
<table class="email-body_inner"
align="center"
width="750"
@ -536,7 +536,7 @@
-premailer-cellspacing: 0;
background-color: #FFFFFF;
margin: 0 auto;
padding: 0;"
padding: 0"
bgcolor="#FFFFFF">
<!-- Body content -->
<tr>
@ -544,7 +544,7 @@
style="word-break: break-word;
font-family: Helvetica, Arial, sans-serif;
font-size: 16px;
padding: 30px;">
padding: 30px">
<div class="f-fallback">
{% block greeting %}{% endblock %}
{% block content %}{% endblock %}
@ -559,7 +559,7 @@
<tr>
<td style="word-break: break-word;
font-family: Helvetica, Arial, sans-serif;
font-size: 16px;">
font-size: 16px">
<table class="email-footer"
align="center"
width="750"
@ -572,20 +572,20 @@
-premailer-cellspacing: 0;
text-align: center;
margin: 0 auto;
padding: 0;">
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;">
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;"
margin: .4em 0 1.1875em"
align="center">
© {{ YEAR }} SimpleLogin - a Proton product. All rights reserved.
<br />
@ -597,7 +597,7 @@
style="font-size: 13px;
line-height: 1.625;
text-align: center;
margin: .4em 0 1.1875em;">
margin: .4em 0 1.1875em">
<a href="{{ unsubscribe_oneclick }}">Unsubscribe from our newsletter</a>
</p>
{% endif %}
@ -606,7 +606,7 @@
line-height: 1.625;
text-align: center;
color: #A8AAAF;
margin: .4em 0 1.1875em;"
margin: .4em 0 1.1875em"
align="center">
<a href="https://app.simplelogin.io/dashboard/support">Do you have a question?</a>
</p>

View File

@ -4,10 +4,10 @@
{{ 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!") }}
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.') }}
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"
@ -18,9 +18,9 @@
{{ 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!.') }}
<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 %}

View File

@ -4,127 +4,127 @@
{{ 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 %}
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() %}
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() %}
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() %}
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() %}
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() %}
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() %}
<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() %}
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 %}
{% call text() %}
Best,
<br />
Son.
{% endcall %}
{% endblock %}
{% block footer %}

View File

@ -5,8 +5,8 @@
{{ 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:') }}
{{ 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%">
@ -18,13 +18,13 @@
{{ 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!.') }}
<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 %}

View File

@ -17,7 +17,7 @@
line-height: 160%;
padding-top: 25px;
color: #000000;
font-family: sans-serif;"
font-family: sans-serif"
class="paragraph">
This email is sent to {{ user.email }}.
Unsubscribe on
@ -28,16 +28,16 @@
{{ 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/id6475835429">App Store</a>
. Its code is available on
<a href="https://github.com/simple-login/mac-app">GitHub</a>
.') }}
<a href="https://apps.apple.com/app/id6475835429">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">
') }}
<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>
.') }}
<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 %}

View File

@ -3,30 +3,30 @@
{% block content %}
{% call text() %}
<h1>Download SimpleLogin browser extensions and mobile apps to create aliases on-the-fly.</h1>
{% endcall %}
<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/id6475835429 ">Safari</a>
extension.
{% 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/id6475835429 ">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 %}
{% 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%;">
<img src="https://simplelogin.io/images/everywhere.png"
alt="Available Everywhere"
style="max-width: 100%">
{% endblock %}
{% block footer %}

View File

@ -3,32 +3,34 @@
{% block content %}
{% call text() %}
<h1>Add other mailboxes to SimpleLogin.</h1>
{% endcall %}
<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 %}
{% 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 %}
<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 %}
{% 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") }}
{{ render_button("Create mailbox", URL ~ "/dashboard/mailbox") }}
{{ raw_url(URL ~ "/dashboard/mailbox") }}
{% endblock %}
{% block footer %}

View File

@ -3,32 +3,34 @@
{% block content %}
{% call text() %}
<h1>Secure your emails with PGP.</h1>
{% endcall %}
<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() %}
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 %}
{% 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/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) }}
<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 %}

View File

@ -3,46 +3,46 @@
{% block content %}
{% call text() %}
<h1>Send emails from your alias.</h1>
{% endcall %}
<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() %}
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() %}
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() %}
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() %}
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() %}
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 %}
{% 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 %}

View File

@ -4,57 +4,57 @@
{% block content %}
{% call text() %}
Welcome to SimpleLogin, a service developed by Proton to protect your email address!
{% endcall %}
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 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() %}
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() %}
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() %}
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() %}
Note, if you are a paying Proton Mail user, you automatically receive the premium version of SimpleLogin.
{% endcall %}
{% call text() %}
For any question or if you want to request a feature, please submit it on our <a href="https://github.com/simple-login/app/discussions">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() %}
For any question or if you want to request a feature, please submit it on our <a href="https://github.com/simple-login/app/discussions">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 %}
{% call text() %}
Best,
<br />
SimpleLogin Team.
{% endcall %}
{% endblock %}

View File

@ -6,78 +6,78 @@
color: #333333;
font-size: 22px;
font-weight: bold;
text-align: left;"
align="left">
Welcome!
</h1>
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>.
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() %}
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 %}
<img src="https://simplelogin.io/images/one-click-alias.gif"
style="max-width: 80%;
margin: auto;
border: 1px solid">
{% endcall %}
{% 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 %}
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() %}
Please note that you can't create more than {{ MAX_NB_EMAIL_FREE_PLAN }} aliases during the trial period.
<br />
{% endcall %}
{% if user.in_trial() and user.trial_end %}
{% endif %}
{% call text() %}
For any question or if you want to request a feature,
please submit it on our <a href="https://github.com/simple-login/app/discussions">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 %}
{% 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 or if you want to request a feature,
please submit it on our <a href="https://github.com/simple-login/app/discussions">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 %}

View File

@ -3,14 +3,14 @@
{% block content %}
{% call text() %}
<h1>Your SimpleLogin account has been deleted successfully.</h1>
{% endcall %}
<h1>Your SimpleLogin account has been deleted successfully.</h1>
{% endcall %}
{% call text() %}
Thank you for having used SimpleLogin.
{% endcall %}
{% call text() %}
Thank you for having used SimpleLogin.
{% endcall %}
{{ render_text('Best,
<br />
SimpleLogin Team.') }}
{{ render_text('Best,
<br />
SimpleLogin Team.') }}
{% endblock %}

View File

@ -7,7 +7,7 @@
{{ render_text("If it wasn't you, maybe someone entered your email by mistake. In this case you can ignore this mail.") }}
{{ render_button("Verify email", activation_link) }}
{{ render_text('Thanks,
<br />
SimpleLogin Team.') }}
<br />
SimpleLogin Team.') }}
{{ raw_url(activation_link) }}
{% endblock %}

View File

@ -3,17 +3,17 @@
{% block content %}
{% call text() %}
<h1>{{ alias.email }} has been transferred.</h1>
{% endcall %}
<h1>{{ alias.email }} has been transferred.</h1>
{% endcall %}
{% call text() %}
Your (previously) alias {{ alias.email }} has been received by another user.
{% endcall %}
{% call text() %}
Your (previously) alias {{ alias.email }} has been received by another user.
{% endcall %}
{% call text() %}
Best,
<br />
SimpleLogin Team.
{% endcall %}
{% call text() %}
Best,
<br />
SimpleLogin Team.
{% endcall %}
{% endblock %}

View File

@ -3,22 +3,22 @@
{% block content %}
{% call text() %}
<h1>{{ alias.email }} is disabled</h1>
{% endcall %}
<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 %}
{% 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_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) }}
{{ render_text("Please let us know if you have any question.") }}
{{ render_text('Thanks,
<br />
SimpleLogin Team.') }}
{{ raw_url(refused_email_url) }}
{% endblock %}

View File

@ -3,27 +3,27 @@
{% block content %}
{% call text() %}
<h1>Email cannot be sent to {{ contact.email }} from your alias {{ alias.email }}</h1>
{% endcall %}
<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 %}
{% 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 %}
{{ 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 %}
{% call text() %}
Best,
<br />
SimpleLogin Team.
{% endcall %}
{% endblock %}

View File

@ -3,42 +3,42 @@
{% 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 %}
<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 %}
{% 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.
{{ 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 />
</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 spam emails.
</li>
</ol>
<br />
Please note that the alias can be automatically disabled if too many emails sent to it are bounced.
{% endcall %}
<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 spam emails.
</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.') }}
{{ render_text('Thanks,
<br />
SimpleLogin Team.') }}
{% endblock %}

View File

@ -3,22 +3,22 @@
{% block content %}
{% call text() %}
<h1>Cannot create {{ alias }} on-the-fly</h1>
{% endcall %}
<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() %}
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() %}
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 %}
{% 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.') }}
{{ render_text('Thanks,
<br />
SimpleLogin Team.') }}
{% endblock %}

View File

@ -3,13 +3,13 @@
{% block content %}
{% call text() %}
<h1>Cannot create alias {{ alias }} on-the-fly</h1>
{% endcall %}
<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.') }}
{{ 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 %}

View File

@ -3,13 +3,13 @@
{% block content %}
{% call text() %}
<h1>Cannot create {{ alias }} on-the-fly</h1>
{% endcall %}
<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.') }}
{{ 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 %}

View File

@ -7,7 +7,7 @@
{{ render_text("Use the button below to confirm within the next 12 hours.") }}
{{ render_button("Change email", link) }}
{{ render_text('Thanks,
<br />
SimpleLogin Team.') }}
<br />
SimpleLogin Team.') }}
{{ raw_url(link) }}
{% endblock %}

View File

@ -6,9 +6,9 @@
{{ 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>
")}}
<h1>" + code + "</h1>
") }}
{{ render_text('Thanks,
<br />
SimpleLogin Team.') }}
<br />
SimpleLogin Team.') }}
{% endblock %}

View File

@ -3,21 +3,21 @@
{% block content %}
{% call text() %}
<h1>Your subscription has been extended!</h1>
{% endcall %}
<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() %}
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 %}
{% call text() %}
Thank you a lot for your support!
{% endcall %}
{{ render_text('Best,
<br />
SimpleLogin Team.') }}
{{ render_text('Best,
<br />
SimpleLogin Team.') }}
{% endblock %}

View File

@ -3,21 +3,21 @@
{% block content %}
{% call text() %}
<h1>Your account has been upgraded!</h1>
{% endcall %}
<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() %}
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 %}
{% call text() %}
Thank you a lot for your support!
{% endcall %}
{{ render_text('Best,
<br />
SimpleLogin Team.') }}
{{ render_text('Best,
<br />
SimpleLogin Team.') }}
{% endblock %}

View File

@ -3,16 +3,16 @@
{% block content %}
{% call text() %}
<h1>Your subscription is ending soon.</h1>
{% endcall %}
<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 %}
{% 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.') }}
{{ render_button("Extend your subscription", extend_subscription_url) }}
{{ render_text('Best,
<br />
SimpleLogin Team.') }}
{% endblock %}

View File

@ -3,24 +3,24 @@
{% 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 %}
<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 %}
{% 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_button("View the email", refused_email_url) }}
{% call text() %}
The email is automatically deleted in 7 days.
{% endcall %}
{{ render_text('Thanks,
<br />
SimpleLogin Team.') }}
{{ render_text('Thanks,
<br />
SimpleLogin Team.') }}
{% endblock %}

View File

@ -3,27 +3,27 @@
{% block content %}
{% call text() %}
<h1>Issues with {{ mailbox.email }}.</h1>
{% endcall %}
<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() %}
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() %}
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() %}
If you have any question, you can reach out to us by replying to this email.
{% endcall %}
{% call text() %}
Best,
<br />
SimpleLogin Team.
{% endcall %}
{% call text() %}
Best,
<br />
SimpleLogin Team.
{% endcall %}
{% endblock %}

View File

@ -3,27 +3,27 @@
{% block content %}
{% call text() %}
<h1>{{ mailbox.email }} is disabled.</h1>
{% endcall %}
<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() %}
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() %}
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() %}
If you have any question, you can reach out to us by replying to this email.
{% endcall %}
{% call text() %}
Best,
<br />
SimpleLogin Team.
{% endcall %}
{% call text() %}
Best,
<br />
SimpleLogin Team.
{% endcall %}
{% endblock %}

View File

@ -3,45 +3,45 @@
{% block content %}
{% call text() %}
<h1>{{ breached_aliases|count }} of your aliases are found in data breaches.</h1>
{% endcall %}
<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 %}
<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 %}
</li>
{%- endfor %}
</ol>
{% if breached_aliases|length > 10 %}
{% endif %}
{% call text() %}
And {{ breached_aliases|length - 10 }} more aliases...
{% endcall %}
For more information, check
<a href='https://haveibeenpwned.com/'>HaveIBeenPwned.com</a>
.
{% endcall %}
{% endif %}
{% call text() %}
For more information, check
<a href='https://haveibeenpwned.com/'>HaveIBeenPwned.com</a>
.
{% endcall %}
{{ render_text('Best,
<br />
SimpleLogin Team.') }}
{{ render_text('Best,
<br />
SimpleLogin Team.') }}
{% endblock %}

View File

@ -7,7 +7,7 @@
{{ 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.') }}
<br />
SimpleLogin Team.') }}
{{ raw_url(URL ~ "/dashboard/setting#change_password") }}
{% endblock %}

View File

@ -3,35 +3,35 @@
{% block content %}
{% call text() %}
<h1>
Your mailbox {{ mailbox.email }} and alias {{ alias.email }} <b>cannot</b> have the same domain.
</h1>
{% endcall %}
<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 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() %}
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() %}
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 %}
{% call text() %}
Feel free reply to this email if you have any question.
<br />
Best,
<br />
SimpleLogin team.
{% endcall %}
{% endblock %}

View File

@ -3,17 +3,17 @@
{% block content %}
{% call text() %}
<h1>
Your subscription will end on <b>{{ manual_sub.end_at.format("YYYY-MM-DD") }}</b>
</h1>
{% endcall %}
<h1>
Your subscription will end on <b>{{ manual_sub.end_at.format("YYYY-MM-DD") }}</b>
</h1>
{% endcall %}
{% call text() %}
Please <a href="https://app.simplelogin.io/dashboard/support">contact us</a>
to renew your subscription.
{% endcall %}
{% call text() %}
Please <a href="https://app.simplelogin.io/dashboard/support">contact us</a>
to renew your subscription.
{% endcall %}
{{ render_text('Thanks,
<br />
SimpleLogin Team.') }}
{{ render_text('Thanks,
<br />
SimpleLogin Team.') }}
{% endblock %}

View File

@ -3,24 +3,24 @@
{% block content %}
{% call text() %}
<h1>An email from {{ from_header }} to {{ alias.email }} is put into Quarantine</h1>
{% endcall %}
<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 %}
{% 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 %}
{{ 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 %}
{% call text() %}
Best,
<br />
SimpleLogin Team.
{% endcall %}
{% endblock %}

View File

@ -3,38 +3,38 @@
{% block content %}
{% call text() %}
This is SimpleLogin team.
{% endcall %}
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() %}
{{ 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() %}
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() %}
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() %}
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() %}
Don't hesitate to get in touch with us if you need more information.
{% endcall %}
{% call text() %}
Best,
<br />
SimpleLogin Team.
{% endcall %}
{% call text() %}
Best,
<br />
SimpleLogin Team.
{% endcall %}
{% endblock %}

View File

@ -3,35 +3,35 @@
{% block content %}
{% call text() %}
This is SimpleLogin team.
{% endcall %}
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() %}
{{ 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() %}
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 thats the case, please disable the alias instead if you don't want to receive the emails sent to this alias.
{% endcall %}
{% call text() %}
If thats 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 isnt useful for you, please know that you can simply delete your account on the Settings page.
{% endcall %}
{% call text() %}
If SimpleLogin isnt 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() %}
Don't hesitate to get in touch with us if you need more information.
{% endcall %}
{% call text() %}
Best,
<br />
SimpleLogin Team.
{% endcall %}
{% call text() %}
Best,
<br />
SimpleLogin Team.
{% endcall %}
{% endblock %}

View File

@ -4,27 +4,27 @@
{{ render_text("Hi") }}
{% call text() %}
Your email cannot be sent to <b>{{ contact.email }}</b> from your alias <b>{{ alias.email }}</b>.
{% endcall %}
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() %}
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() %}
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() %}
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 %}
{% call text() %}
Please let us know if you have any question.
<br />
Best,
<br />
SimpleLogin team.
{% endcall %}
{% endblock %}

View File

@ -3,30 +3,30 @@
{% 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 %}
<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() %}
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() %}
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 %}
{% 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 %}
{{ render_button("Allow " + sender, authorize_address_link) }}
{% call text() %}
Best,
<br />
SimpleLogin Team.
{% endcall %}
{{ raw_url(authorize_address_link) }}
{{ raw_url(authorize_address_link) }}
{% endblock %}

View File

@ -8,7 +8,7 @@
{{ 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.') }}
<br />
SimpleLogin Team.') }}
{{ raw_url(reset_password_link) }}
{% endblock %}

View File

@ -2,12 +2,12 @@
{% block content %}
{{ render_text('This is an automated email from SimpleLogin.') }}
{{ 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("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.') }}
<br />
SimpleLogin Team.') }}
{% endblock %}

View File

@ -3,28 +3,28 @@
{% block content %}
{% call text() %}
<h1>An email sent from your alias {{ alias.email }} to {{ website_email }} is detected as spam.</h1>
{% endcall %}
<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() %}
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 %}
{% 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 %}
{{ 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 %}
{% 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) }}
{{ render_text('Thanks,
<br />
SimpleLogin Team.') }}
{{ raw_url(disable_alias_link) }}
{% endblock %}

View File

@ -3,30 +3,30 @@
{% block content %}
{% call text() %}
<h1>An email sent to your alias {{ alias.email }} from {{ website_email }} is detected as spam</h1>
{% endcall %}
<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() %}
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 %}
{% 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 %}
{{ 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 %}
{% 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) }}
{{ 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 %}

View File

@ -3,41 +3,41 @@
{% block content %}
{% call text() %}
<h1>
Attempt to send an email from your alias <b>{{ alias }}</b> from an unknown IP address
</h1>
{% endcall %}
<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() %}
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() %}
- 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() %}
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() %}
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 %}
{% call text() %}
Please only turn this protection off this if you know what you're doing :).
{% endcall %}
{{ render_text('Thanks,
<br />
SimpleLogin Team.') }}
{{ render_text('Thanks,
<br />
SimpleLogin Team.') }}
{% endblock %}

View File

@ -3,21 +3,21 @@
{% 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 %}
<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() %}
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 %}
{% call text() %}
Best,
<br />
SimpleLogin Team.
{% endcall %}
{% endblock %}

View File

@ -8,24 +8,24 @@
{{ render_text("- All aliases/domains/directories you have created are <b>kept</b> and continue working normally.") }}
{{ render_text("- You cannot create new reverse aliases.") }}
{% 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 %}
- 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 %}
{% 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") }}
{{ 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 %}

View File

@ -3,36 +3,36 @@
{% block content %}
{% call text() %}
<h1>Your trial will end {{ user.trial_end.humanize() }}</h1>
{% endcall %}
<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("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("- You cannot create new reverse aliases.") }}
{{ 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") }}
{{ render_text("- You cannot add new domain or directory.") }}
{{ render_text("- You cannot add new mailbox.") }}
{{ render_text("- You cannot create new reverse aliases.") }}
{{ 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 %}

View File

@ -3,22 +3,22 @@
{% block content %}
{% call text() %}
<h1>{{ alias }} has been disabled successfully.</h1>
{% endcall %}
<h1>{{ alias }} has been disabled successfully.</h1>
{% endcall %}
{% call text() %}
The alias has been disabled thanks to the "One-click unsubscribe” provided by your mailbox service.
<br />
When you click on this button on a forwarded email, the alias will be disabled automatically.
{% endcall %}
{% call text() %}
The alias has been disabled thanks to the "One-click unsubscribe” provided by your mailbox service.
<br />
When you click on this button on a forwarded email, the alias will be disabled automatically.
{% endcall %}
{% call text() %}
If this is a mistake, you can re-enable the alias on the dashboard.
{% endcall %}
{% call text() %}
If this is a mistake, you can re-enable the alias on the dashboard.
{% endcall %}
{{ render_button("Enable Alias", enable_alias_url) }}
{{ render_text('Thanks,
<br />
SimpleLogin Team.') }}
{{ raw_url(enable_alias_url) }}
{{ render_button("Enable Alias", enable_alias_url) }}
{{ render_text('Thanks,
<br />
SimpleLogin Team.') }}
{{ raw_url(enable_alias_url) }}
{% endblock %}

View File

@ -3,18 +3,18 @@
{% block content %}
{% call text() %}
<h1>You have been unsubscribed from SimpleLogin newsletter.</h1>
{% endcall %}
<h1>You have been unsubscribed from SimpleLogin newsletter.</h1>
{% endcall %}
{% call text() %}
We would love to know why do you want to unsubscribe from our communication.
Please let us know by replying to this email.
{% endcall %}
{% call text() %}
We would love to know why do you want to unsubscribe from our communication.
Please let us know by replying to this email.
{% endcall %}
{% call text() %}
Best,
<br />
SimpleLogin Team.
{% endcall %}
{% call text() %}
Best,
<br />
SimpleLogin Team.
{% endcall %}
{% endblock %}

View File

@ -5,6 +5,6 @@
{{ render_text("Hi") }}
{{ render_text("Please find in the attached zip file a copy of your data which are stored on SimpleLogin. ") }}
{{ render_text('Best,
<br />
SimpleLogin Team.') }}
<br />
SimpleLogin Team.') }}
{% endblock %}

View File

@ -8,7 +8,7 @@
{{ render_button("Confirm mailbox change", link) }}
{{ render_text("This email will only be valid for the next 15 minutes.") }}
{{ render_text('Thanks,
<br />
SimpleLogin Team.') }}
<br />
SimpleLogin Team.') }}
{{ raw_url(link) }}
{% endblock %}

View File

@ -13,7 +13,7 @@
{% endif %}
{{ render_text("This email will only be valid for the next 15 minutes.") }}
{{ render_text('Thanks,
<br />
SimpleLogin Team.') }}
<br />
SimpleLogin Team.') }}
{{ raw_url(link) }}
{% endblock %}

View File

@ -3,15 +3,15 @@
{% block content %}
{% call text() %}
Hello,
{% endcall %}
Hello,
{% endcall %}
{% call text() %}
You have tried to register multiple times to {{ service }}, and this is against the terms of service of SimpleLogin. Please don't do that anymore.
{% endcall %}
{% call text() %}
You have tried to register multiple times to {{ service }}, and this is against the terms of service of SimpleLogin. Please don't do that anymore.
{% endcall %}
{% call text() %}
If you continue registering multiple accounts to a single service we will have to disable your account.
{% endcall %}
{% call text() %}
If you continue registering multiple accounts to a single service we will have to disable your account.
{% endcall %}
{% endblock %}