Merge pull request #206 from SamR1/email-translations
Improve Email Internationalization
This commit is contained in:
commit
c50c3c1f92
@ -17,13 +17,22 @@ First off, thank you for your interest in contributing!
|
|||||||
|
|
||||||
The **GitHub** repository contains:
|
The **GitHub** repository contains:
|
||||||
- source code (note that the repository also includes client build),
|
- source code (note that the repository also includes client build),
|
||||||
|
- translations,
|
||||||
- tests,
|
- tests,
|
||||||
- documentation (source and build).
|
- documentation (source and build).
|
||||||
|
|
||||||
Translations can be updated through [Weblate](https://hosted.weblate.org/engage/fittrackee/).
|
|
||||||
|
|
||||||
Continuous integration workflows run on **Github Actions** platform (on **push** and **pull requests**).
|
Continuous integration workflows run on **Github Actions** platform (on **push** and **pull requests**).
|
||||||
|
|
||||||
|
### Translations
|
||||||
|
|
||||||
|
The available languages are:
|
||||||
|
[![Translation status](https://hosted.weblate.org/widgets/fittrackee/-/multi-auto.svg)](https://hosted.weblate.org/engage/fittrackee/)
|
||||||
|
|
||||||
|
Translations files are located:
|
||||||
|
- on API side (emails): `fittrackee/emails/translations/` (implemented with [Babel](https://babel.pocoo.org/en/latest/))
|
||||||
|
- on client side: `fittrackee_client/src/locales` (implemented with [Vue I18n](https://vue-i18n.intlify.dev/))
|
||||||
|
|
||||||
|
Translations can be updated through [Weblate](https://hosted.weblate.org/engage/fittrackee/).
|
||||||
|
|
||||||
### How to install FitTrackee
|
### How to install FitTrackee
|
||||||
|
|
||||||
@ -62,14 +71,30 @@ Please make your changes from the development branch (`dev`).
|
|||||||
$ make test-e2e
|
$ make test-e2e
|
||||||
```
|
```
|
||||||
|
|
||||||
|
* If needed, update translations.
|
||||||
|
* On client side, update files in `fittrackee_client/src/locales` folder.
|
||||||
|
* On API side (emails), to extract new strings into `messages.pot`:
|
||||||
|
```shell
|
||||||
|
$ make babel-extract
|
||||||
|
```
|
||||||
|
To add new strings in translations files (`fittrackee/emails/translations/<LANG>/LC_MESSAGES/messages.po`):
|
||||||
|
```shell
|
||||||
|
$ make babel-update
|
||||||
|
```
|
||||||
|
After updating strings in `messages.po`, compile the translations:
|
||||||
|
```shell
|
||||||
|
$ make babel-compile
|
||||||
|
```
|
||||||
|
|
||||||
* If needed, add or update tests.
|
* If needed, add or update tests.
|
||||||
|
|
||||||
* If needed, update documentation (no need to build documentation, it will be done when releasing).
|
* If needed, update documentation (no need to build documentation, it will be done when releasing).
|
||||||
|
|
||||||
* If updated code contains client-side changes, you can generate a build, in a **separate commit** to ease code review (or to easily drop it in case of conflicts when updating your branch).
|
* If updated code contains client-side changes, you can generate javascript assets to check **FitTrackee** whithout starting client dev server:
|
||||||
```shell
|
```shell
|
||||||
$ make build-client
|
$ make build-client
|
||||||
```
|
```
|
||||||
|
No need to commit these files, dist files will be generated before merging or when releasing.
|
||||||
|
|
||||||
* Create your pull request to merge on `dev` branch.
|
* Create your pull request to merge on `dev` branch.
|
||||||
|
|
||||||
|
12
Makefile
12
Makefile
@ -6,6 +6,18 @@ make-p:
|
|||||||
# Launch all P targets in parallel and exit as soon as one exits.
|
# Launch all P targets in parallel and exit as soon as one exits.
|
||||||
set -m; (for p in $(P); do ($(MAKE) $$p || kill 0)& done; wait)
|
set -m; (for p in $(P); do ($(MAKE) $$p || kill 0)& done; wait)
|
||||||
|
|
||||||
|
babel-extract:
|
||||||
|
$(PYBABEL) extract -F babel.cfg -k lazy_gettext -o messages.pot .
|
||||||
|
|
||||||
|
babel-init:
|
||||||
|
$(PYBABEL) init -i messages.pot -d fittrackee/emails/translations -l $(LANG)
|
||||||
|
|
||||||
|
babel-compile:
|
||||||
|
$(PYBABEL) compile -d fittrackee/emails/translations
|
||||||
|
|
||||||
|
babel-update:
|
||||||
|
$(PYBABEL) update -i messages.pot -d fittrackee/emails/translations
|
||||||
|
|
||||||
bandit:
|
bandit:
|
||||||
$(BANDIT) -r fittrackee -c pyproject.toml
|
$(BANDIT) -r fittrackee -c pyproject.toml
|
||||||
|
|
||||||
|
@ -24,6 +24,7 @@ GUNICORN = $(VENV)/bin/gunicorn
|
|||||||
BLACK = $(VENV)/bin/black
|
BLACK = $(VENV)/bin/black
|
||||||
MYPY = $(VENV)/bin/mypy
|
MYPY = $(VENV)/bin/mypy
|
||||||
BANDIT = $(VENV)/bin/bandit
|
BANDIT = $(VENV)/bin/bandit
|
||||||
|
PYBABEL = $(VENV)/bin/pybabel
|
||||||
FTCLI = $(VENV)/bin/ftcli
|
FTCLI = $(VENV)/bin/ftcli
|
||||||
|
|
||||||
# Node env
|
# Node env
|
||||||
|
5
babel.cfg
Normal file
5
babel.cfg
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
[jinja2: fittrackee/emails/templates/**.html]
|
||||||
|
silent=False
|
||||||
|
|
||||||
|
[jinja2: fittrackee/emails/templates/**.txt]
|
||||||
|
silent=False
|
@ -119,7 +119,9 @@ Administration
|
|||||||
|
|
||||||
Translations
|
Translations
|
||||||
^^^^^^^^^^^^
|
^^^^^^^^^^^^
|
||||||
FitTrackee is available in English and French (which can be saved in the user preferences).
|
FitTrackee is available in the following languages (which can be saved in the user preferences):
|
||||||
|
|
||||||
|
.. figure:: https://hosted.weblate.org/widgets/fittrackee/-/multi-auto.svg
|
||||||
|
|
||||||
|
|
||||||
Screenshots
|
Screenshots
|
||||||
|
@ -313,7 +313,9 @@ A user with an inactive account cannot log in. (<em>new in 0.6.0</em>)</p></li>
|
|||||||
</section>
|
</section>
|
||||||
<section id="translations">
|
<section id="translations">
|
||||||
<h2>Translations<a class="headerlink" href="#translations" title="Permalink to this heading">¶</a></h2>
|
<h2>Translations<a class="headerlink" href="#translations" title="Permalink to this heading">¶</a></h2>
|
||||||
<p>FitTrackee is available in English and French (which can be saved in the user preferences).</p>
|
<p>FitTrackee is available in the following languages (which can be saved in the user preferences):</p>
|
||||||
|
<figure class="align-default">
|
||||||
|
<img alt="https://hosted.weblate.org/widgets/fittrackee/-/multi-auto.svg" src="https://hosted.weblate.org/widgets/fittrackee/-/multi-auto.svg" /></figure>
|
||||||
</section>
|
</section>
|
||||||
<section id="screenshots">
|
<section id="screenshots">
|
||||||
<h2>Screenshots<a class="headerlink" href="#screenshots" title="Permalink to this heading">¶</a></h2>
|
<h2>Screenshots<a class="headerlink" href="#screenshots" title="Permalink to this heading">¶</a></h2>
|
||||||
|
File diff suppressed because one or more lines are too long
@ -119,7 +119,9 @@ Administration
|
|||||||
|
|
||||||
Translations
|
Translations
|
||||||
^^^^^^^^^^^^
|
^^^^^^^^^^^^
|
||||||
FitTrackee is available in English and French (which can be saved in the user preferences).
|
FitTrackee is available in the following languages (which can be saved in the user preferences):
|
||||||
|
|
||||||
|
.. figure:: https://hosted.weblate.org/widgets/fittrackee/-/multi-auto.svg
|
||||||
|
|
||||||
|
|
||||||
Screenshots
|
Screenshots
|
||||||
|
@ -46,6 +46,10 @@ class BaseConfig:
|
|||||||
os.environ.get('DEFAULT_STATICMAP', 'False') == 'True'
|
os.environ.get('DEFAULT_STATICMAP', 'False') == 'True'
|
||||||
),
|
),
|
||||||
}
|
}
|
||||||
|
TRANSLATIONS_FOLDER = os.path.join(
|
||||||
|
current_app.root_path, 'emails/translations'
|
||||||
|
)
|
||||||
|
LANGUAGES = ['en', 'fr', 'de']
|
||||||
|
|
||||||
|
|
||||||
class DevelopmentConfig(BaseConfig):
|
class DevelopmentConfig(BaseConfig):
|
||||||
|
@ -3,8 +3,9 @@ import smtplib
|
|||||||
import ssl
|
import ssl
|
||||||
from email.mime.multipart import MIMEMultipart
|
from email.mime.multipart import MIMEMultipart
|
||||||
from email.mime.text import MIMEText
|
from email.mime.text import MIMEText
|
||||||
from typing import Dict, Optional, Type, Union
|
from typing import Dict, List, Optional, Type, Union
|
||||||
|
|
||||||
|
from babel.support import Translations
|
||||||
from flask import Flask
|
from flask import Flask
|
||||||
from jinja2 import Environment, FileSystemLoader, select_autoescape
|
from jinja2 import Environment, FileSystemLoader, select_autoescape
|
||||||
from urllib3.util import parse_url
|
from urllib3.util import parse_url
|
||||||
@ -38,16 +39,43 @@ class EmailMessage:
|
|||||||
|
|
||||||
|
|
||||||
class EmailTemplate:
|
class EmailTemplate:
|
||||||
def __init__(self, template_directory: str) -> None:
|
def __init__(
|
||||||
|
self,
|
||||||
|
template_directory: str,
|
||||||
|
translations_directory: str,
|
||||||
|
languages: List[str],
|
||||||
|
) -> None:
|
||||||
|
self._translations = self._get_translations(
|
||||||
|
translations_directory, languages
|
||||||
|
)
|
||||||
self._env = Environment(
|
self._env = Environment(
|
||||||
autoescape=select_autoescape(['html', 'htm', 'xml']),
|
autoescape=select_autoescape(['html', 'htm', 'xml']),
|
||||||
loader=FileSystemLoader(template_directory),
|
loader=FileSystemLoader(template_directory),
|
||||||
|
extensions=['jinja2.ext.i18n'],
|
||||||
|
)
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def _get_translations(
|
||||||
|
translations_directory: str, languages: List[str]
|
||||||
|
) -> Dict:
|
||||||
|
translations = {}
|
||||||
|
for language in languages:
|
||||||
|
translations[language] = Translations.load(
|
||||||
|
dirname=translations_directory, locales=[language]
|
||||||
|
)
|
||||||
|
return translations
|
||||||
|
|
||||||
|
def _load_translation(self, lang: str) -> None:
|
||||||
|
self._env.install_gettext_translations( # type: ignore
|
||||||
|
self._translations[lang],
|
||||||
|
newstyle=True,
|
||||||
)
|
)
|
||||||
|
|
||||||
def get_content(
|
def get_content(
|
||||||
self, template_name: str, lang: str, part: str, data: Dict
|
self, template_name: str, lang: str, part: str, data: Dict
|
||||||
) -> str:
|
) -> str:
|
||||||
template = self._env.get_template(f'{template_name}/{lang}/{part}')
|
self._load_translation(lang)
|
||||||
|
template = self._env.get_template(f'{template_name}/{part}')
|
||||||
return template.render(data)
|
return template.render(data)
|
||||||
|
|
||||||
def get_all_contents(self, template: str, lang: str, data: Dict) -> Dict:
|
def get_all_contents(self, template: str, lang: str, data: Dict) -> Dict:
|
||||||
@ -92,7 +120,11 @@ class EmailService:
|
|||||||
self.username = parsed_url['username']
|
self.username = parsed_url['username']
|
||||||
self.password = parsed_url['password']
|
self.password = parsed_url['password']
|
||||||
self.sender_email = app.config['SENDER_EMAIL']
|
self.sender_email = app.config['SENDER_EMAIL']
|
||||||
self.email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
self.email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES'],
|
||||||
|
)
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def parse_email_url(email_url: str) -> Dict:
|
def parse_email_url(email_url: str) -> Dict:
|
||||||
|
@ -1,31 +1,25 @@
|
|||||||
{% extends "layout.html" %}
|
{% extends "layout.html" %}
|
||||||
{% block title %}Confirm your account{% endblock %}
|
{% block title %}{{ _('Confirm your account') }}{% endblock %}
|
||||||
{% block preheader %}Use this link to confirm your account.{% endblock %}
|
{% block preheader %}{{ _('Use this link to confirm your account.') }}{% endblock %}
|
||||||
{% block content %}<h1>Hi {{username}},</h1>
|
{% block content %}<p>{{ _('You have created an account on FitTrackee.') }} {{ _('Use the button below to confirm your address email.') }}</p>
|
||||||
<p>You have created an account on FitTrackee. Use the button below to confirm your address email.</p>
|
|
||||||
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
||||||
<tr>
|
<tr>
|
||||||
<td align="center">
|
<td align="center">
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0" role="presentation">
|
<table width="100%" border="0" cellspacing="0" cellpadding="0" role="presentation">
|
||||||
<tr>
|
<tr>
|
||||||
<td align="center">
|
<td align="center">
|
||||||
<a href="{{account_confirmation_url}}" class="f-fallback button button--green" target="_blank">Verify your email</a>
|
<a href="{{account_confirmation_url}}" class="f-fallback button button--green" target="_blank">{{ _('Verify your email') }}</a>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>{% endblock %}
|
||||||
<p>
|
{% block not_initiated %}{{ _("If this account creation wasn't initiated by you, please ignore this email.") }}{% endblock %}
|
||||||
{% if operating_system and browser_name %}For security, this request was received from a {{operating_system}} device using {{browser_name}}.
|
{% block url_to_paste %}<table class="body-sub" role="presentation">
|
||||||
{% endif %}If this account creation wasn't initiated by you, please ignore this email.
|
|
||||||
</p>
|
|
||||||
<p>Thanks,
|
|
||||||
<br>The FitTrackee Team</p>
|
|
||||||
<table class="body-sub" role="presentation">
|
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<p class="f-fallback sub">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">{{ _("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">{{account_confirmation_url}}</p>
|
<p class="f-fallback sub">{{account_confirmation_url}}</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
@ -0,0 +1,7 @@
|
|||||||
|
{% extends "layout.txt" %}{% block content %}{{ _('You have created an account on FitTrackee.') }}
|
||||||
|
{{ _('Use the link below to confirm your address email.') }}
|
||||||
|
|
||||||
|
{{ _('Verify your email') }}: {{ account_confirmation_url }}
|
||||||
|
|
||||||
|
{% if operating_system and browser_name %}{{ _('For security, this request was received from a %(operating_system)s device using %(browser_name)s.', operating_system=operating_system, browser_name=browser_name) }}
|
||||||
|
{% endif %}{{ _("If this account creation wasn't initiated by you, please ignore this email.") }}{% endblock %}
|
@ -1,32 +0,0 @@
|
|||||||
{% extends "layout.html" %}
|
|
||||||
{% block title %}Bestätige Dein Konto{% endblock %}
|
|
||||||
{% block preheader %}Verwendet diesen Link um Dein Konto zu bestätigen.{% endblock %}
|
|
||||||
{% block content %}<h1>Hallo {{username}},</h1>
|
|
||||||
<p>Du hast ein Konto bei FitTrackee angelegt. Verwende den unteren Button um Deine E-Mail Adresse zu bestätigen.</p>
|
|
||||||
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<a href="{{account_confirmation_url}}" class="f-fallback button button--green" target="_blank">Bestätige Deine E-Mail</a>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<p>
|
|
||||||
{% if operating_system and browser_name %}Zur Sicherheit: Diese Anfrage wurde von einem {{operating_system}} Gerät mit {{browser_name}} ausgelöst.
|
|
||||||
{% endif %}Falls die Kontoerstellung nicht von Dir initiiert wurde, ignoriere diese E-Mail bitte.
|
|
||||||
</p>
|
|
||||||
<p>Danke
|
|
||||||
<br>Dein FitTrackee Team</p>
|
|
||||||
<table class="body-sub" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<p class="f-fallback sub">Falls Du Probleme mit dem oberen Button hast, kopiere diese URL und gebe sie in Deinen Webbrowser ein.</p>
|
|
||||||
<p class="f-fallback sub">{{account_confirmation_url}}</p>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>{% endblock %}
|
|
@ -1,12 +0,0 @@
|
|||||||
Hallo {{username}},
|
|
||||||
|
|
||||||
Du hast ein Konto bei FitTrackee angelegt. Verwende den unteren Link um Deine E-Mail Adresse zu bestätigen.
|
|
||||||
|
|
||||||
Bestätige Deine E-Mail: {{ account_confirmation_url }}
|
|
||||||
|
|
||||||
{% if operating_system and browser_name %}Zur Sicherheit: Diese Anfrage wurde von einem {{operating_system}} Gerät mit {{browser_name}} ausgelöst..
|
|
||||||
{% endif %}Falls die Kontoerstellung nicht von Dir initiiert wurde, ignoriere diese E-Mail bitte.
|
|
||||||
|
|
||||||
Danke
|
|
||||||
Dein FitTrackee Team
|
|
||||||
{{fittrackee_url}}
|
|
@ -1 +0,0 @@
|
|||||||
FitTrackee - Bestätige Dein Konto
|
|
@ -1,12 +0,0 @@
|
|||||||
Hi {{username}},
|
|
||||||
|
|
||||||
You have created an account on FitTrackee. Use the link below to confirm your address email.
|
|
||||||
|
|
||||||
Verify your email: {{ account_confirmation_url }}
|
|
||||||
|
|
||||||
{% if operating_system and browser_name %}For security, this request was received from a {{operating_system}} device using {{browser_name}}.
|
|
||||||
{% endif %}If this account creation wasn't initiated by you, please ignore this email.
|
|
||||||
|
|
||||||
Thanks,
|
|
||||||
The FitTrackee Team
|
|
||||||
{{fittrackee_url}}
|
|
@ -1 +0,0 @@
|
|||||||
FitTrackee - Confirm your account
|
|
@ -1,34 +0,0 @@
|
|||||||
{% extends "layout.html" %}
|
|
||||||
{% block title %}Confirmer votre inscription{% endblock %}
|
|
||||||
{% block preheader %}Utiliser ce lien pour confirmer votre inscription.{% endblock %}
|
|
||||||
{% block content %}<h1>Bonjour {{username}},</h1>
|
|
||||||
<p>Vous avez créé un compte sur FitTrackee.
|
|
||||||
Cliquez sur le lien ci-dessous pour confirmer votre adresse email.
|
|
||||||
</p>
|
|
||||||
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<a href="{{account_confirmation_url}}" class="f-fallback button button--green" target="_blank">Vérifier l'adresse email</a>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<p>
|
|
||||||
{% if operating_system and browser_name %}Pour vérification, cette demande a été reçue à partir d'un appareil sous {{operating_system}}, utilisant le navigateur {{browser_name}}.
|
|
||||||
{% endif %}Si vous n'êtes pas à l'origine de la création de ce compte, vous pouvez ignorer cet e-mail.
|
|
||||||
</p>
|
|
||||||
<p>Merci,
|
|
||||||
<br>L'équipe FitTrackee</p>
|
|
||||||
<table class="body-sub" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<p class="f-fallback sub">Si vous avez des problèmes avec le bouton, vous pouvez copier et coller le lien suivant dans votre navigateur</p>
|
|
||||||
<p class="f-fallback sub">{{account_confirmation_url}}</p>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>{% endblock %}
|
|
@ -1,13 +0,0 @@
|
|||||||
Bonjour {{username}},
|
|
||||||
|
|
||||||
Vous avez créé un compte sur FitTrackee.
|
|
||||||
Cliquez sur le lien ci-dessous pour confirmer votre adresse email.
|
|
||||||
|
|
||||||
Vérifier l'adresse email : {{ account_confirmation_url }}
|
|
||||||
|
|
||||||
{% if operating_system and browser_name %}Pour vérification, cette demande a été reçue à partir d'un appareil sous {{operating_system}}, utilisant le navigateur {{browser_name}}.
|
|
||||||
{% endif %}Si vous n'êtes pas à l'origine de la création de ce compte, vous pouvez ignorer cet e-mail.
|
|
||||||
|
|
||||||
Merci,
|
|
||||||
L'équipe FitTrackee
|
|
||||||
{{fittrackee_url}}
|
|
@ -1 +0,0 @@
|
|||||||
FitTrackee - Confirmer votre inscription
|
|
@ -0,0 +1 @@
|
|||||||
|
FitTrackee - {{ _('Confirm your account') }}
|
@ -0,0 +1,18 @@
|
|||||||
|
{% extends "layout.html" %}
|
||||||
|
{% block title %}{{ _('Email changed') }}{% endblock %}
|
||||||
|
{% block preheader %}{{ _('Your email is being updated.') }}{% endblock %}
|
||||||
|
{% block content %}<p>{{ _('You recently requested to change your email address for your FitTrackee account to:') }}</p>
|
||||||
|
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
||||||
|
<tr>
|
||||||
|
<td align="center">
|
||||||
|
<table width="100%" border="0" cellspacing="0" cellpadding="0" role="presentation">
|
||||||
|
<tr>
|
||||||
|
<td align="center">
|
||||||
|
{{new_email_address}}
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>{% endblock %}
|
||||||
|
{% block not_initiated %}{{ _("If this email change wasn't initiated by you, please change your password immediately or contact your administrator if your account is locked.") }}{% endblock %}
|
@ -0,0 +1,4 @@
|
|||||||
|
{% extends "layout.txt" %}{% block content %}{{ _('You recently requested to change your email address for your FitTrackee account to:') }} {{ new_email_address }}
|
||||||
|
|
||||||
|
{{ _('For security, this request was received from a %(operating_system)s device using %(browser_name)s.', operating_system=operating_system, browser_name=browser_name) }}
|
||||||
|
{{ _("If this email change wasn't initiated by you, please change your password immediately or contact your administrator if your account is locked.") }}{% endblock %}
|
@ -1,26 +0,0 @@
|
|||||||
{% extends "layout.html" %}
|
|
||||||
{% block title %}E-Mail Adresse geändert{% endblock %}
|
|
||||||
{% block preheader %}Deine E-Mail Adresse wure aktualisiert.{% endblock %}
|
|
||||||
{% block content %}<h1>Hallo {{username}},</h1>
|
|
||||||
<p>Du hast kürzlich beantragt, die E-Mail Adresse Deines FitTrackee Kontos zu ändern. Neue Adresse:</p>
|
|
||||||
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
{{new_email_address}}
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<p>
|
|
||||||
Zur Sicherheit: Diese Anfrage wurde von einem {{operating_system}} Gerät mit {{browser_name}} ausgelöst.
|
|
||||||
Falls die Änderung der E-Mail Adresse nicht von Dir initiiert wurde, ändere bitte sofort Dein Passwort oder kontaktiere den Administrator, falls Dein Konto gesperrt ist.
|
|
||||||
</p>
|
|
||||||
<p>Danke
|
|
||||||
<br>
|
|
||||||
Dein FitTrackee Team
|
|
||||||
</p>{% endblock %}
|
|
@ -1,10 +0,0 @@
|
|||||||
Hallo {{username}},
|
|
||||||
|
|
||||||
Du hast kürzlich beantragt, die E-Mail Adresse Deines FitTrackee Kontos nach {{ new_email_address }} zu ändern.
|
|
||||||
|
|
||||||
Zur Sicherheit: Diese Anfrage wurde von einem {{operating_system}} Gerät mit {{browser_name}} ausgelöst.
|
|
||||||
Falls die Änderung der E-Mail Adresse nicht von Dir initiiert wurde, ändere bitte sofort Dein Passwort oder kontaktiere den Administrator, falls Dein Konto gesperrt ist.
|
|
||||||
|
|
||||||
Danke
|
|
||||||
Dein FitTrackee Team
|
|
||||||
{{fittrackee_url}}
|
|
@ -1 +0,0 @@
|
|||||||
FitTrackee - E-Mail Adresse geändert
|
|
@ -1,26 +0,0 @@
|
|||||||
{% extends "layout.html" %}
|
|
||||||
{% block title %}Email changed{% endblock %}
|
|
||||||
{% block preheader %}Your email is being updated.{% endblock %}
|
|
||||||
{% block content %}<h1>Hi {{username}},</h1>
|
|
||||||
<p>You recently requested to change your email address for your FitTrackee account to: </p>
|
|
||||||
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
{{new_email_address}}
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<p>
|
|
||||||
For security, this request was received from a {{operating_system}} device using {{browser_name}}.
|
|
||||||
If this email change wasn't initiated by you, please change your password immediately or contact your administrator if your account is locked.
|
|
||||||
</p>
|
|
||||||
<p>Thanks,
|
|
||||||
<br>
|
|
||||||
The FitTrackee Team
|
|
||||||
</p>{% endblock %}
|
|
@ -1,10 +0,0 @@
|
|||||||
Hi {{username}},
|
|
||||||
|
|
||||||
You recently requested to change your email address for your FitTrackee account to: {{ new_email_address }}
|
|
||||||
|
|
||||||
For security, this request was received from a {{operating_system}} device using {{browser_name}}.
|
|
||||||
If this email change wasn't initiated by you, please change your password immediately or contact your administrator if your account is locked.
|
|
||||||
|
|
||||||
Thanks,
|
|
||||||
The FitTrackee Team
|
|
||||||
{{fittrackee_url}}
|
|
@ -1 +0,0 @@
|
|||||||
FitTrackee - Email changed
|
|
@ -1,26 +0,0 @@
|
|||||||
{% extends "layout.html" %}
|
|
||||||
{% block title %}Adresse email modifiée{% endblock %}
|
|
||||||
{% block preheader %}Votre adresse email est en cours de mise à jour.{% endblock %}
|
|
||||||
{% block content %}<h1>Bonjour {{username}},</h1>
|
|
||||||
<p>Vous avez récemment demandé la modification de l'adresse email associée à votre compte sur FitTrackee vers :</p>
|
|
||||||
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
{{ new_email_address }}
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<p>
|
|
||||||
Pour vérification, cette demande a été reçue à partir d'un appareil sous {{operating_system}}, utilisant le navigateur {{browser_name}}.
|
|
||||||
Si vous n'êtes pas à l'origine de cette modification, veuillez changer votre mot de passe immédiatement ou contacter l'administrateur si votre compte est bloqué.
|
|
||||||
</p>
|
|
||||||
<p>Merci,
|
|
||||||
<br>
|
|
||||||
L'équipe FitTrackee
|
|
||||||
</p>{% endblock %}
|
|
@ -1,10 +0,0 @@
|
|||||||
Bonjour {{username}},
|
|
||||||
|
|
||||||
Vous avez récemment demandé la modification de l'adresse email associée à votre compte sur FitTrackee vers : {{ new_email_address }}
|
|
||||||
|
|
||||||
Pour vérification, cette demande a été reçue à partir d'un appareil sous {{operating_system}}, utilisant le navigateur {{browser_name}}.
|
|
||||||
Si vous n'êtes pas à l'origine de cette modification, veuillez changer votre mot de passe immédiatement ou contacter l'administrateur si votre compte est bloqué.
|
|
||||||
|
|
||||||
Merci,
|
|
||||||
L'équipe FitTrackee
|
|
||||||
{{fittrackee_url}}
|
|
@ -1 +0,0 @@
|
|||||||
FitTrackee - Adresse email modifiée
|
|
@ -0,0 +1 @@
|
|||||||
|
FitTrackee - {{ _('Email changed') }}
|
@ -0,0 +1,26 @@
|
|||||||
|
{% extends "layout.html" %}
|
||||||
|
{% block title %}{{ _('Confirm email change') }}{% endblock %}
|
||||||
|
{% block preheader %}{{ _('Use this link to confirm email change.') }}{% endblock %}
|
||||||
|
{% block content %}<p>{{ _('You recently requested to change your email address for your FitTrackee account.') }} {{ _('Use the button below to confirm this address.') }}</p>
|
||||||
|
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
||||||
|
<tr>
|
||||||
|
<td align="center">
|
||||||
|
<table width="100%" border="0" cellspacing="0" cellpadding="0" role="presentation">
|
||||||
|
<tr>
|
||||||
|
<td align="center">
|
||||||
|
<a href="{{email_confirmation_url}}" class="f-fallback button button--green" target="_blank">{{ _('Verify your email') }}</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>{% endblock %}
|
||||||
|
{% block not_initiated %}{{ _("If this email change wasn't initiated by you, please ignore this email.") }}{% endblock %}
|
||||||
|
{% block url_to_paste %}<table class="body-sub" role="presentation">
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p class="f-fallback sub">{{ _("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">{{email_confirmation_url}}</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>{% endblock %}
|
@ -0,0 +1,7 @@
|
|||||||
|
{% extends "layout.txt" %}{% block content %}{{ _('You recently requested to change your email address for your FitTrackee account.') }}
|
||||||
|
{{ _('Use the link below to confirm this address.') }}
|
||||||
|
|
||||||
|
{{ _('Verify your email') }}: {{ email_confirmation_url }}
|
||||||
|
|
||||||
|
{% if operating_system and browser_name %}{{ _('For security, this request was received from a %(operating_system)s device using %(browser_name)s.', operating_system=operating_system, browser_name=browser_name) }}
|
||||||
|
{% endif %}{{ _("If this email change wasn't initiated by you, please ignore this email.") }}{% endblock %}
|
@ -1,32 +0,0 @@
|
|||||||
{% extends "layout.html" %}
|
|
||||||
{% block title %}Bestätige E-Mail Änderung{% endblock %}
|
|
||||||
{% block preheader %}Verwende den Link um die Änderung Deiner E-Mail Adresse zu bestätigen.{% endblock %}
|
|
||||||
{% block content %}<h1>Hallo {{username}},</h1>
|
|
||||||
<p>Du hast kürzlich beantragt, die E-Mail Adresse Deines FitTrackee Kontos zu ändern. Verwende den unteren Button um Deine Adresse zu bestätigen.</p>
|
|
||||||
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<a href="{{email_confirmation_url}}" class="f-fallback button button--green" target="_blank">Bestätige Deine E-Mail</a>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<p>
|
|
||||||
{% if operating_system and browser_name %}Zur Sicherheit: Diese Anfrage wurde von einem {{operating_system}} Gerät mit {{browser_name}} ausgelöst.
|
|
||||||
{% endif %}Falls die Änderung der E-Mail Adresse nicht von Dir initiiert wurde, ignoriere diese E-Mail bitte.
|
|
||||||
</p>
|
|
||||||
<p>Danke
|
|
||||||
<br>Dein FitTrackee Team</p>
|
|
||||||
<table class="body-sub" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<p class="f-fallback sub">Falls Du Probleme mit dem oberen Button hast, kopiere diese URL und gebe sie in Deinen Webbrowser ein.</p>
|
|
||||||
<p class="f-fallback sub">{{email_confirmation_url}}</p>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>{% endblock %}
|
|
@ -1,12 +0,0 @@
|
|||||||
Hallo {{username}},
|
|
||||||
|
|
||||||
Du hast kürzlich beantragt, die E-Mail Adresse Deines FitTrackee Kontos zu ändern. Verwende den unteren Link um Deine Adresse zu bestätigen.
|
|
||||||
|
|
||||||
Bestätige Deine E-Mail: {{ email_confirmation_url }}
|
|
||||||
|
|
||||||
{% if operating_system and browser_name %}Zur Sicherheit: Diese Anfrage wurde von einem {{operating_system}} Gerät mit {{browser_name}} ausgelöst.
|
|
||||||
{% endif %}Falls die Änderung der E-Mail Adresse nicht von Dir initiiert wurde, ignoriere diese E-Mail bitte.
|
|
||||||
|
|
||||||
Danke
|
|
||||||
Dein FitTrackee Team
|
|
||||||
{{fittrackee_url}}
|
|
@ -1 +0,0 @@
|
|||||||
FitTrackee - Bestätige E-Mail Änderung
|
|
@ -1,32 +0,0 @@
|
|||||||
{% extends "layout.html" %}
|
|
||||||
{% block title %}Confirm email change{% endblock %}
|
|
||||||
{% block preheader %}Use this link to confirm email change.{% endblock %}
|
|
||||||
{% block content %}<h1>Hi {{username}},</h1>
|
|
||||||
<p>You recently requested to change your email address for your FitTrackee account. Use the button below to confirm this address.</p>
|
|
||||||
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<a href="{{email_confirmation_url}}" class="f-fallback button button--green" target="_blank">Verify your email</a>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<p>
|
|
||||||
{% if operating_system and browser_name %}For security, this request was received from a {{operating_system}} device using {{browser_name}}.
|
|
||||||
{% endif %}If this email change wasn't initiated by you, please ignore this email.
|
|
||||||
</p>
|
|
||||||
<p>Thanks,
|
|
||||||
<br>The FitTrackee Team</p>
|
|
||||||
<table class="body-sub" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<p class="f-fallback sub">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">{{email_confirmation_url}}</p>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>{% endblock %}
|
|
@ -1,12 +0,0 @@
|
|||||||
Hi {{username}},
|
|
||||||
|
|
||||||
You recently requested to change your email address for your FitTrackee account. Use the link below to confirm this address.
|
|
||||||
|
|
||||||
Verify your email: {{ email_confirmation_url }}
|
|
||||||
|
|
||||||
{% if operating_system and browser_name %}For security, this request was received from a {{operating_system}} device using {{browser_name}}.
|
|
||||||
{% endif %}If this email change wasn't initiated by you, please ignore this email.
|
|
||||||
|
|
||||||
Thanks,
|
|
||||||
The FitTrackee Team
|
|
||||||
{{fittrackee_url}}
|
|
@ -1 +0,0 @@
|
|||||||
FitTrackee - Confirm email change
|
|
@ -1,34 +0,0 @@
|
|||||||
{% extends "layout.html" %}
|
|
||||||
{% block title %}Confirmer le changement d'adresse email{% endblock %}
|
|
||||||
{% block preheader %}Utiliser ce lien pour confirmer cette adresse email.{% endblock %}
|
|
||||||
{% block content %}<h1>Bonjour {{username}},</h1>
|
|
||||||
<p>Vous avez récemment demandé la modification de l'adresse email associée à votre compte sur FitTrackee.
|
|
||||||
Cliquez sur le bouton ci-dessous pour confirmer cette adresse email.
|
|
||||||
</p>
|
|
||||||
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<a href="{{email_confirmation_url}}" class="f-fallback button button--green" target="_blank">Vérifier l'adresse email</a>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<p>
|
|
||||||
{% if operating_system and browser_name %}Pour vérification, cette demande a été reçue à partir d'un appareil sous {{operating_system}}, utilisant le navigateur {{browser_name}}.
|
|
||||||
{% endif %}Si vous n'êtes pas à l'origine de cette modification, vous pouvez ignorer cet e-mail.
|
|
||||||
</p>
|
|
||||||
<p>Merci,
|
|
||||||
<br>L'équipe FitTrackee</p>
|
|
||||||
<table class="body-sub" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<p class="f-fallback sub">Si vous avez des problèmes avec le bouton, vous pouvez copier et coller le lien suivant dans votre navigateur</p>
|
|
||||||
<p class="f-fallback sub">{{email_confirmation_url}}</p>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>{% endblock %}
|
|
@ -1,13 +0,0 @@
|
|||||||
Bonjour {{username}},
|
|
||||||
|
|
||||||
Vous avez récemment demandé la modification de l'adresse email associée à votre compte sur FitTrackee.
|
|
||||||
Cliquez sur le lien ci-dessous pour confirmer cette adresse email.
|
|
||||||
|
|
||||||
Vérifier l'adresse email : {{ email_confirmation_url }}
|
|
||||||
|
|
||||||
{% if operating_system and browser_name %}Pour vérification, cette demande a été reçue à partir d'un appareil sous {{operating_system}}, utilisant le navigateur {{browser_name}}.
|
|
||||||
{% endif %}Si vous n'êtes pas à l'origine de cette modification, vous pouvez ignorer cet e-mail.
|
|
||||||
|
|
||||||
Merci,
|
|
||||||
L'équipe FitTrackee
|
|
||||||
{{fittrackee_url}}
|
|
@ -1 +0,0 @@
|
|||||||
FitTrackee - Confirmer le changement d'adresse email
|
|
@ -0,0 +1 @@
|
|||||||
|
FitTrackee - {{ _('Confirm email change') }}
|
@ -212,7 +212,15 @@
|
|||||||
<tr>
|
<tr>
|
||||||
<td class="content-cell">
|
<td class="content-cell">
|
||||||
<div class="f-fallback">
|
<div class="f-fallback">
|
||||||
|
<h1>{{ _('Hi %(username)s,', username=username) }}</h1>
|
||||||
{% block content %}{% endblock %}
|
{% block content %}{% endblock %}
|
||||||
|
<p>
|
||||||
|
{% if operating_system and browser_name %}{{ _('For security, this request was received from a %(operating_system)s device using %(browser_name)s.', operating_system=operating_system, browser_name=browser_name) }}
|
||||||
|
{% endif %}{% block not_initiated %}{% endblock %}
|
||||||
|
</p>
|
||||||
|
<p>{{ _('Thanks,') }}
|
||||||
|
<br>{{ _('The FitTrackee Team') }}</p>
|
||||||
|
{% block url_to_paste %}{% endblock %}
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
7
fittrackee/emails/templates/layout.txt
Normal file
7
fittrackee/emails/templates/layout.txt
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
{{ _('Hi %(username)s,', username=username) }}
|
||||||
|
|
||||||
|
{% block content %}{% endblock %}
|
||||||
|
|
||||||
|
{{ _('Thanks,') }}
|
||||||
|
{{ _('The FitTrackee Team') }}
|
||||||
|
{{fittrackee_url}}
|
5
fittrackee/emails/templates/password_change/body.html
Normal file
5
fittrackee/emails/templates/password_change/body.html
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
{% extends "layout.html" %}
|
||||||
|
{% block title %}{{ _('Password changed') }}{% endblock %}
|
||||||
|
{% block preheader %}{{ _('Your password has been changed.') }}{% endblock %}
|
||||||
|
{% block content %}<p>{{ _('The password for your FitTrackee account has been changed.') }}</p>{% endblock %}
|
||||||
|
{% block not_initiated %}{{ _("If this password change wasn't initiated by you, please change your password immediately or contact your administrator if your account is locked.") }}{% endblock %}
|
4
fittrackee/emails/templates/password_change/body.txt
Normal file
4
fittrackee/emails/templates/password_change/body.txt
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
{% extends "layout.txt" %}{% block content %}{{ _('The password for your FitTrackee account has been changed.') }}
|
||||||
|
|
||||||
|
{% if operating_system and browser_name %}{{ _('For security, this request was received from a %(operating_system)s device using %(browser_name)s.', operating_system=operating_system, browser_name=browser_name) }}
|
||||||
|
{% endif %}{{ _("If this password change wasn't initiated by you, please change your password immediately or contact your administrator if your account is locked.") }}{% endblock %}
|
@ -1,13 +0,0 @@
|
|||||||
{% extends "layout.html" %}
|
|
||||||
{% block title %}Passwort geändert{% endblock %}
|
|
||||||
{% block preheader %}Dein Passwort wurde geändert.{% endblock %}
|
|
||||||
{% block content %}<h1>Hallo {{username}},</h1>
|
|
||||||
<p>Das Passwort Deines FitTrackee Kontos wurde geändert.</p>
|
|
||||||
<p>
|
|
||||||
{% if operating_system and browser_name %}Zur Sicherheit: Diese Anfrage wurde von einem {{operating_system}} Gerät mit {{browser_name}} ausgelöst.
|
|
||||||
{% endif %}Falls die Änderung des Passworts nicht von Dir initiiert wurde, ändere bitte sofort Dein Passwort oder kontaktiere den Administrator, falls Dein Konto gesperrt ist.
|
|
||||||
</p>
|
|
||||||
<p>Danke
|
|
||||||
<br>
|
|
||||||
Dein FitTrackee Team
|
|
||||||
</p>{% endblock %}
|
|
@ -1,10 +0,0 @@
|
|||||||
Hallo {{username}},
|
|
||||||
|
|
||||||
Das Passwort Deines FitTrackee Kontos wurde geändert.
|
|
||||||
|
|
||||||
{% if operating_system and browser_name %}Zur Sicherheit: Diese Anfrage wurde von einem {{operating_system}} Gerät mit {{browser_name}} ausgelöst.
|
|
||||||
{% endif %}Falls die Änderung des Passworts nicht von Dir initiiert wurde, ändere bitte sofort Dein Passwort oder kontaktiere den Administrator, falls Dein Konto gesperrt ist.
|
|
||||||
|
|
||||||
Danke
|
|
||||||
Dein FitTrackee Team
|
|
||||||
{{fittrackee_url}}
|
|
@ -1 +0,0 @@
|
|||||||
FitTrackee - Passwort geändert
|
|
@ -1,13 +0,0 @@
|
|||||||
{% extends "layout.html" %}
|
|
||||||
{% block title %}Password changed{% endblock %}
|
|
||||||
{% block preheader %}Your password has been changed.{% endblock %}
|
|
||||||
{% block content %}<h1>Hi {{username}},</h1>
|
|
||||||
<p>The password for your FitTrackee account has been changed.</p>
|
|
||||||
<p>
|
|
||||||
{% if operating_system and browser_name %}For security, this request was received from a {{operating_system}} device using {{browser_name}}.
|
|
||||||
{% endif %}If this password change wasn't initiated by you, please change your password immediately or contact your administrator if your account is locked.
|
|
||||||
</p>
|
|
||||||
<p>Thanks,
|
|
||||||
<br>
|
|
||||||
The FitTrackee Team
|
|
||||||
</p>{% endblock %}
|
|
@ -1,10 +0,0 @@
|
|||||||
Hi {{username}},
|
|
||||||
|
|
||||||
The password for your FitTrackee account has been changed.
|
|
||||||
|
|
||||||
{% if operating_system and browser_name %}For security, this request was received from a {{operating_system}} device using {{browser_name}}.
|
|
||||||
{% endif %}If this password change wasn't initiated by you, please change your password immediately or contact your administrator if your account is locked.
|
|
||||||
|
|
||||||
Thanks,
|
|
||||||
The FitTrackee Team
|
|
||||||
{{fittrackee_url}}
|
|
@ -1 +0,0 @@
|
|||||||
FitTrackee - Password changed
|
|
@ -1,13 +0,0 @@
|
|||||||
{% extends "layout.html" %}
|
|
||||||
{% block title %}FitTrackee - Mot de passe modifié{% endblock %}
|
|
||||||
{% block preheader %}Votre mot de passe a été modifié.{% endblock %}
|
|
||||||
{% block content %}<h1>Bonjour {{username}},</h1>
|
|
||||||
<p>Le mot de passe de votre compte FitTrackee a été modifié.</p>
|
|
||||||
<p>
|
|
||||||
{% if operating_system and browser_name %}Pour vérification, cette demande a été reçue à partir d'un appareil sous {{operating_system}}, utilisant le navigateur {{browser_name}}.
|
|
||||||
{% endif %}Si vous n'êtes pas à l'origine de cette modification, veuillez changer votre mot de passe immédiatement ou contacter l'administrateur si votre compte est bloqué.
|
|
||||||
</p>
|
|
||||||
<p>Merci,
|
|
||||||
<br>
|
|
||||||
L'équipe FitTrackee
|
|
||||||
</p>{% endblock %}
|
|
@ -1,10 +0,0 @@
|
|||||||
Bonjour {{username}},
|
|
||||||
|
|
||||||
Le mot de passe de votre compte FitTrackee a été modifié.
|
|
||||||
|
|
||||||
{% if operating_system and browser_name %}Pour vérification, cette demande a été reçue à partir d'un appareil sous {{operating_system}}, utilisant le navigateur {{browser_name}}.
|
|
||||||
{% endif %}Si vous n'êtes pas à l'origine de cette modification, veuillez changer votre mot de passe immédiatement ou contacter l'administrateur si votre compte est bloqué.
|
|
||||||
|
|
||||||
Merci,
|
|
||||||
L'équipe FitTrackee
|
|
||||||
{{fittrackee_url}}
|
|
@ -1 +0,0 @@
|
|||||||
FitTrackee - Mot de passe modifié
|
|
1
fittrackee/emails/templates/password_change/subject.txt
Normal file
1
fittrackee/emails/templates/password_change/subject.txt
Normal file
@ -0,0 +1 @@
|
|||||||
|
FitTrackee - {{ _('Password changed') }}
|
28
fittrackee/emails/templates/password_reset_request/body.html
Normal file
28
fittrackee/emails/templates/password_reset_request/body.html
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
{% extends "layout.html" %}
|
||||||
|
{% block title %}{{ _('Password reset request') }}{% endblock %}
|
||||||
|
{% block preheader %}{{ _('Use this link to reset your password. The link is only valid for %(expiration_delay)s.', expiration_delay=expiration_delay) }}{% endblock %}
|
||||||
|
{% block content %}<p>{{ _('You recently requested to reset your password for your FitTrackee account.') }} {{ _('Use the button below to reset it.') }}
|
||||||
|
<strong>{{ _('This password reset link is only valid for %(expiration_delay)s.', expiration_delay=expiration_delay) }}</strong>
|
||||||
|
</p>
|
||||||
|
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
||||||
|
<tr>
|
||||||
|
<td align="center">
|
||||||
|
<table width="100%" border="0" cellspacing="0" cellpadding="0" role="presentation">
|
||||||
|
<tr>
|
||||||
|
<td align="center">
|
||||||
|
<a href="{{password_reset_url}}" class="f-fallback button button--green" target="_blank">{{ _('Reset your password') }}</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>{% endblock %}
|
||||||
|
{% block not_initiated %}{{ _('If you did not request a password reset, please ignore this email.') }}{% endblock %}
|
||||||
|
{% block url_to_paste %}<table class="body-sub" role="presentation">
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p class="f-fallback sub">{{ _("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">{{password_reset_url}}</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>{% endblock %}
|
@ -0,0 +1,7 @@
|
|||||||
|
{% extends "layout.txt" %}{% block content %}{{ _('You recently requested to reset your password for your FitTrackee account.') }} {{ _('Use the link below to reset it.') }}
|
||||||
|
{{ _('This password reset link is only valid for %(expiration_delay)s.', expiration_delay=expiration_delay) }}
|
||||||
|
|
||||||
|
{{ _('Reset your password') }}: {{ password_reset_url }}
|
||||||
|
|
||||||
|
{% if operating_system and browser_name %}{{ _('For security, this request was received from a %(operating_system)s device using %(browser_name)s.', operating_system=operating_system, browser_name=browser_name) }}
|
||||||
|
{% endif %}{{ _('If you did not request a password reset, please ignore this email.') }}{% endblock %}
|
@ -1,34 +0,0 @@
|
|||||||
{% extends "layout.html" %}
|
|
||||||
{% block title %}Anfrage zum Zurücksetzen des Passworts{% endblock %}
|
|
||||||
{% block preheader %}Verwende den unteren Link um Dein Passwort zurückzusetzen. Der Link ist nur für {{ expiration_delay }} gültig.{% endblock %}
|
|
||||||
{% block content %}<h1>Hallo {{username}},</h1>
|
|
||||||
<p>Du hast kürzlich beantragt, das Passwort Deines FitTrackee Kontos zurückzusetzen. Verwende den unteren Button um es zurückzusetzen.
|
|
||||||
<strong>Der Link ist nur für {{ expiration_delay }} gültig.</strong>
|
|
||||||
</p>
|
|
||||||
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<a href="{{password_reset_url}}" class="f-fallback button button--green" target="_blank">Setze Dein Passwort zurück</a>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<p>
|
|
||||||
{% if operating_system and browser_name %}Zur Sicherheit: Diese Anfrage wurde von einem {{operating_system}} Gerät mit {{browser_name}} ausgelöst.
|
|
||||||
{% endif %}Falls Du das Zurücksetzen des Passworts nicht angefordert hast, igoniere diese E-Mail bitte.
|
|
||||||
</p>
|
|
||||||
<p>Danke
|
|
||||||
<br>Dein FitTrackee Team</p>
|
|
||||||
<table class="body-sub" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<p class="f-fallback sub">Falls Du Probleme mit dem oberen Button hast, kopiere diese URL und gebe sie in Deinen Webbrowser ein.</p>
|
|
||||||
<p class="f-fallback sub">{{password_reset_url}}</p>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>{% endblock %}
|
|
@ -1,12 +0,0 @@
|
|||||||
Hallo {{username}},
|
|
||||||
|
|
||||||
Du hast kürzlich beantragt, das Passwort Deines FitTrackee Kontos zurückzusetzen. Verwende den unteren Link um es zurückzusetzen. Der Link ist nur für {{ expiration_delay }} gültig.
|
|
||||||
|
|
||||||
Setze Dein Passwort zurück: {{ password_reset_url }}
|
|
||||||
|
|
||||||
{% if operating_system and browser_name %}Zur Sicherheit: Diese Anfrage wurde von einem {{operating_system}} Gerät mit {{browser_name}} ausgelöst.
|
|
||||||
{% endif %}Falls Du das Zurücksetzen des Passworts nicht angefordert hast, igoniere diese E-Mail bitte.
|
|
||||||
|
|
||||||
Danke
|
|
||||||
Dein FitTrackee Team
|
|
||||||
{{fittrackee_url}}
|
|
@ -1 +0,0 @@
|
|||||||
FitTrackee - Anfrage zum Zurücksetzen des Passworts
|
|
@ -1,34 +0,0 @@
|
|||||||
{% extends "layout.html" %}
|
|
||||||
{% block title %}Password reset request{% endblock %}
|
|
||||||
{% block preheader %}Use this link to reset your password. The link is only valid for {{ expiration_delay }}.{% endblock %}
|
|
||||||
{% block content %}<h1>Hi {{username}},</h1>
|
|
||||||
<p>You recently requested to reset your password for your account. Use the button below to reset it.
|
|
||||||
<strong>This password reset link is only valid for {{ expiration_delay }}.</strong>
|
|
||||||
</p>
|
|
||||||
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<a href="{{password_reset_url}}" class="f-fallback button button--green" target="_blank">Reset your password</a>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<p>
|
|
||||||
{% if operating_system and browser_name %}For security, this request was received from a {{operating_system}} device using {{browser_name}}.
|
|
||||||
{% endif %}If you did not request a password reset, please ignore this email.
|
|
||||||
</p>
|
|
||||||
<p>Thanks,
|
|
||||||
<br>The FitTrackee Team</p>
|
|
||||||
<table class="body-sub" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<p class="f-fallback sub">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">{{password_reset_url}}</p>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>{% endblock %}
|
|
@ -1,12 +0,0 @@
|
|||||||
Hi {{username}},
|
|
||||||
|
|
||||||
You recently requested to reset your password for your FitTrackee account. Use the link below to reset it. This password reset link is only valid for {{ expiration_delay }}.
|
|
||||||
|
|
||||||
Reset your password: {{ password_reset_url }}
|
|
||||||
|
|
||||||
{% if operating_system and browser_name %}For security, this request was received from a {{operating_system}} device using {{browser_name}}.
|
|
||||||
{% endif %}If you did not request a password reset, please ignore this email.
|
|
||||||
|
|
||||||
Thanks,
|
|
||||||
The FitTrackee Team
|
|
||||||
{{fittrackee_url}}
|
|
@ -1 +0,0 @@
|
|||||||
FitTrackee - Password reset request
|
|
@ -1,35 +0,0 @@
|
|||||||
{% extends "layout.html" %}
|
|
||||||
{% block title %}Réinitialiser le mot de passe{% endblock %}
|
|
||||||
{% block preheader %}Utiliser ce lien pour réinitialiser le mot de passe. Ce lien n'est valide que pendant {{ expiration_delay }}.{% endblock %}
|
|
||||||
{% block content %}<h1>Bonjour {{username}},</h1>
|
|
||||||
<p>Vous avez récemment demandé la réinitialisation du mot de passe de votre compte sur FitTrackee.
|
|
||||||
Cliquez sur le bouton ci-dessous pour le réinitialiser.
|
|
||||||
<strong>Cette réinitialisation n'est valide que pendant {{ expiration_delay }}.</strong>
|
|
||||||
</p>
|
|
||||||
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<table width="100%" border="0" cellspacing="0" cellpadding="0" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td align="center">
|
|
||||||
<a href="{{password_reset_url}}" class="f-fallback button button--green" target="_blank">Réinitialiser le mot de passe</a>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<p>
|
|
||||||
{% if operating_system and browser_name %}Pour vérification, cette demande a été reçue à partir d'un appareil sous {{operating_system}}, utilisant le navigateur {{browser_name}}.
|
|
||||||
{% endif %}Si vous n'avez pas demandé de réinitialisation, vous pouvez ignorer cet e-mail.
|
|
||||||
</p>
|
|
||||||
<p>Merci,
|
|
||||||
<br>L'équipe FitTrackee</p>
|
|
||||||
<table class="body-sub" role="presentation">
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<p class="f-fallback sub">Si vous avez des problèmes avec le bouton, vous pouvez copier et coller le lien suivant dans votre navigateur</p>
|
|
||||||
<p class="f-fallback sub">{{password_reset_url}}</p>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>{% endblock %}
|
|
@ -1,13 +0,0 @@
|
|||||||
Bonjour {{username}},
|
|
||||||
|
|
||||||
Vous avez récemment demandé la réinitialisation du mot de passe de votre compte sur FitTrackee.
|
|
||||||
Cliquez sur le lien ci-dessous pour le réinitialiser. Ce lien n'est valide que pendant {{ expiration_delay }}.
|
|
||||||
|
|
||||||
Réinitialiser le mot de passe : {{ password_reset_url }}
|
|
||||||
|
|
||||||
{% if operating_system and browser_name %}Pour vérification, cette demande a été reçue à partir d'un appareil sous {{operating_system}}, utilisant le navigateur {{browser_name}}.
|
|
||||||
{% endif %}Si vous n'avez pas demandé de réinitialisation, vous pouvez ignorer cet e-mail.
|
|
||||||
|
|
||||||
Merci,
|
|
||||||
L'équipe FitTrackee
|
|
||||||
{{fittrackee_url}}
|
|
@ -1 +0,0 @@
|
|||||||
FitTrackee - Réinitialiser votre mot de passe
|
|
@ -0,0 +1 @@
|
|||||||
|
FitTrackee - {{ _('Password reset request') }}
|
BIN
fittrackee/emails/translations/de/LC_MESSAGES/messages.mo
Normal file
BIN
fittrackee/emails/translations/de/LC_MESSAGES/messages.mo
Normal file
Binary file not shown.
231
fittrackee/emails/translations/de/LC_MESSAGES/messages.po
Normal file
231
fittrackee/emails/translations/de/LC_MESSAGES/messages.po
Normal file
@ -0,0 +1,231 @@
|
|||||||
|
# German translations for PROJECT.
|
||||||
|
# Copyright (C) 2022 ORGANIZATION
|
||||||
|
# This file is distributed under the same license as the PROJECT project.
|
||||||
|
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: PROJECT VERSION\n"
|
||||||
|
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||||
|
"POT-Creation-Date: 2022-07-03 07:58+0200\n"
|
||||||
|
"PO-Revision-Date: 2022-07-02 18:25+0200\n"
|
||||||
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
|
"Language: de\n"
|
||||||
|
"Language-Team: de <LL@li.org>\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Generated-By: Babel 2.10.3\n"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/layout.html:215
|
||||||
|
#: fittrackee/emails/templates/layout.txt:1
|
||||||
|
#, python-format
|
||||||
|
msgid "Hi %(username)s,"
|
||||||
|
msgstr "Hallo %(username)s,"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:6
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.txt:3
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:6
|
||||||
|
#: fittrackee/emails/templates/layout.html:218
|
||||||
|
#: fittrackee/emails/templates/password_change/body.txt:3
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:6
|
||||||
|
#, python-format
|
||||||
|
msgid ""
|
||||||
|
"For security, this request was received from a %(operating_system)s "
|
||||||
|
"device using %(browser_name)s."
|
||||||
|
msgstr ""
|
||||||
|
"Zur Sicherheit: Diese Anfrage wurde von einem %(operating_system)s Gerät "
|
||||||
|
"mit %(browser_name)s ausgelöst."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/layout.html:221
|
||||||
|
#: fittrackee/emails/templates/layout.txt:5
|
||||||
|
msgid "Thanks,"
|
||||||
|
msgstr "Danke"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/layout.html:222
|
||||||
|
#: fittrackee/emails/templates/layout.txt:6
|
||||||
|
msgid "The FitTrackee Team"
|
||||||
|
msgstr "Dein FitTrackee Team"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:2
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/subject.txt:1
|
||||||
|
msgid "Confirm your account"
|
||||||
|
msgstr "Bestätige Dein Konto"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:3
|
||||||
|
msgid "Use this link to confirm your account."
|
||||||
|
msgstr "Verwendet diesen Link um Dein Konto zu bestätigen."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:4
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:1
|
||||||
|
msgid "You have created an account on FitTrackee."
|
||||||
|
msgstr "Du hast ein Konto bei FitTrackee angelegt."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:4
|
||||||
|
msgid "Use the button below to confirm your address email."
|
||||||
|
msgstr "Verwende den unteren Button um Deine E-Mail Adresse zu bestätigen."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:11
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:4
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:11
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:4
|
||||||
|
msgid "Verify your email"
|
||||||
|
msgstr "Bestätige Deine E-Mail"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:18
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:7
|
||||||
|
msgid ""
|
||||||
|
"If this account creation wasn't initiated by you, please ignore this "
|
||||||
|
"email."
|
||||||
|
msgstr ""
|
||||||
|
"Falls die Kontoerstellung nicht von Dir initiiert wurde, ignoriere diese "
|
||||||
|
"E-Mail bitte."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:22
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:22
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:24
|
||||||
|
msgid ""
|
||||||
|
"If you're having trouble with the button above, copy and paste the URL "
|
||||||
|
"below into your web browser."
|
||||||
|
msgstr ""
|
||||||
|
"Falls Du Probleme mit dem oberen Button hast, kopiere diese URL und gebe "
|
||||||
|
"sie in Deinen Webbrowser ein."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:2
|
||||||
|
msgid "Use the link below to confirm your address email."
|
||||||
|
msgstr "Verwende den unteren Link um Deine E-Mail Adresse zu bestätigen."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.html:2
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/subject.txt:1
|
||||||
|
msgid "Email changed"
|
||||||
|
msgstr "E-Mail Adresse geändert"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.html:3
|
||||||
|
msgid "Your email is being updated."
|
||||||
|
msgstr "Deine E-Mail Adresse wure aktualisiert."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.html:4
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.txt:1
|
||||||
|
msgid ""
|
||||||
|
"You recently requested to change your email address for your FitTrackee "
|
||||||
|
"account to:"
|
||||||
|
msgstr ""
|
||||||
|
"Du hast kürzlich beantragt, die E-Mail Adresse Deines FitTrackee Kontos "
|
||||||
|
"zu ändern. Neue Adresse:"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.html:18
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.txt:4
|
||||||
|
msgid ""
|
||||||
|
"If this email change wasn't initiated by you, please change your password"
|
||||||
|
" immediately or contact your administrator if your account is locked."
|
||||||
|
msgstr ""
|
||||||
|
"Falls die Änderung der E-Mail Adresse nicht von Dir initiiert wurde, "
|
||||||
|
"ändere bitte sofort Dein Passwort oder kontaktiere den Administrator, "
|
||||||
|
"falls Dein Konto gesperrt ist."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:2
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/subject.txt:1
|
||||||
|
msgid "Confirm email change"
|
||||||
|
msgstr "Bestätige E-Mail Änderung"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:3
|
||||||
|
msgid "Use this link to confirm email change."
|
||||||
|
msgstr "Verwende den unteren Link um Deine Adresse zu bestätigen."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:4
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:1
|
||||||
|
msgid ""
|
||||||
|
"You recently requested to change your email address for your FitTrackee "
|
||||||
|
"account."
|
||||||
|
msgstr ""
|
||||||
|
"Du hast kürzlich beantragt, die E-Mail Adresse Deines FitTrackee Kontos "
|
||||||
|
"zu ändern."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:4
|
||||||
|
msgid "Use the button below to confirm this address."
|
||||||
|
msgstr "Verwende den unteren Button um Deine Adresse zu bestätigen."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:18
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:7
|
||||||
|
msgid "If this email change wasn't initiated by you, please ignore this email."
|
||||||
|
msgstr ""
|
||||||
|
"Falls die Änderung der E-Mail Adresse nicht von Dir initiiert wurde, "
|
||||||
|
"ignoriere diese E-Mail bitte."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:2
|
||||||
|
msgid "Use the link below to confirm this address."
|
||||||
|
msgstr "Verwende den unteren Link um Deine Adresse zu bestätigen."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_change/body.html:2
|
||||||
|
#: fittrackee/emails/templates/password_change/subject.txt:1
|
||||||
|
msgid "Password changed"
|
||||||
|
msgstr "Passwort geändert"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_change/body.html:3
|
||||||
|
msgid "Your password has been changed."
|
||||||
|
msgstr "Dein Passwort wurde geändert."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_change/body.html:4
|
||||||
|
#: fittrackee/emails/templates/password_change/body.txt:1
|
||||||
|
msgid "The password for your FitTrackee account has been changed."
|
||||||
|
msgstr "Das Passwort Deines FitTrackee Kontos wurde geändert."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_change/body.html:5
|
||||||
|
#: fittrackee/emails/templates/password_change/body.txt:4
|
||||||
|
msgid ""
|
||||||
|
"If this password change wasn't initiated by you, please change your "
|
||||||
|
"password immediately or contact your administrator if your account is "
|
||||||
|
"locked."
|
||||||
|
msgstr ""
|
||||||
|
"Falls die Änderung des Passworts nicht von Dir initiiert wurde, ändere "
|
||||||
|
"bitte sofort Dein Passwort oder kontaktiere den Administrator, falls Dein"
|
||||||
|
" Konto gesperrt ist."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:2
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/subject.txt:1
|
||||||
|
msgid "Password reset request"
|
||||||
|
msgstr "Anfrage zum Zurücksetzen des Passworts"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:3
|
||||||
|
#, python-format
|
||||||
|
msgid ""
|
||||||
|
"Use this link to reset your password. The link is only valid for "
|
||||||
|
"%(expiration_delay)s."
|
||||||
|
msgstr ""
|
||||||
|
"Verwende den unteren Link um Dein Passwort zurückzusetzen. Der Link ist "
|
||||||
|
"nur für %(expiration_delay)s gültig."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:4
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:1
|
||||||
|
msgid "You recently requested to reset your password for your FitTrackee account."
|
||||||
|
msgstr ""
|
||||||
|
"Du hast kürzlich beantragt, das Passwort Deines FitTrackee Kontos "
|
||||||
|
"zurückzusetzen."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:4
|
||||||
|
msgid "Use the button below to reset it."
|
||||||
|
msgstr "Verwende den unteren Button um es zurückzusetzen."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:5
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:2
|
||||||
|
#, python-format
|
||||||
|
msgid "This password reset link is only valid for %(expiration_delay)s."
|
||||||
|
msgstr "Der Link ist nur für %(expiration_delay)s gültig."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:13
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:4
|
||||||
|
msgid "Reset your password"
|
||||||
|
msgstr "Setze Dein Passwort zurück"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:20
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:7
|
||||||
|
msgid "If you did not request a password reset, please ignore this email."
|
||||||
|
msgstr ""
|
||||||
|
"Falls Du das Zurücksetzen des Passworts nicht angefordert hast, igoniere "
|
||||||
|
"diese E-Mail bitte."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:1
|
||||||
|
msgid "Use the link below to reset it."
|
||||||
|
msgstr "Verwende den unteren Link um es zurückzusetzen."
|
||||||
|
|
BIN
fittrackee/emails/translations/en/LC_MESSAGES/messages.mo
Normal file
BIN
fittrackee/emails/translations/en/LC_MESSAGES/messages.mo
Normal file
Binary file not shown.
224
fittrackee/emails/translations/en/LC_MESSAGES/messages.po
Normal file
224
fittrackee/emails/translations/en/LC_MESSAGES/messages.po
Normal file
@ -0,0 +1,224 @@
|
|||||||
|
# English translations for PROJECT.
|
||||||
|
# Copyright (C) 2022 ORGANIZATION
|
||||||
|
# This file is distributed under the same license as the PROJECT project.
|
||||||
|
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: PROJECT VERSION\n"
|
||||||
|
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||||
|
"POT-Creation-Date: 2022-07-03 07:58+0200\n"
|
||||||
|
"PO-Revision-Date: 2022-07-02 18:25+0200\n"
|
||||||
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
|
"Language: en\n"
|
||||||
|
"Language-Team: en <LL@li.org>\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Generated-By: Babel 2.10.3\n"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/layout.html:215
|
||||||
|
#: fittrackee/emails/templates/layout.txt:1
|
||||||
|
#, python-format
|
||||||
|
msgid "Hi %(username)s,"
|
||||||
|
msgstr "Hi %(username)s,"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:6
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.txt:3
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:6
|
||||||
|
#: fittrackee/emails/templates/layout.html:218
|
||||||
|
#: fittrackee/emails/templates/password_change/body.txt:3
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:6
|
||||||
|
#, python-format
|
||||||
|
msgid ""
|
||||||
|
"For security, this request was received from a %(operating_system)s "
|
||||||
|
"device using %(browser_name)s."
|
||||||
|
msgstr ""
|
||||||
|
"For security, this request was received from a %(operating_system)s "
|
||||||
|
"device using %(browser_name)s."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/layout.html:221
|
||||||
|
#: fittrackee/emails/templates/layout.txt:5
|
||||||
|
msgid "Thanks,"
|
||||||
|
msgstr "Thanks,"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/layout.html:222
|
||||||
|
#: fittrackee/emails/templates/layout.txt:6
|
||||||
|
msgid "The FitTrackee Team"
|
||||||
|
msgstr "The FitTrackee Team"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:2
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/subject.txt:1
|
||||||
|
msgid "Confirm your account"
|
||||||
|
msgstr "Confirm your account"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:3
|
||||||
|
msgid "Use this link to confirm your account."
|
||||||
|
msgstr "Use this link to confirm your account."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:4
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:1
|
||||||
|
msgid "You have created an account on FitTrackee."
|
||||||
|
msgstr "You have created an account on FitTrackee."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:4
|
||||||
|
msgid "Use the button below to confirm your address email."
|
||||||
|
msgstr "Use the button below to confirm your address email."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:11
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:4
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:11
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:4
|
||||||
|
msgid "Verify your email"
|
||||||
|
msgstr "Verify your email"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:18
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:7
|
||||||
|
msgid ""
|
||||||
|
"If this account creation wasn't initiated by you, please ignore this "
|
||||||
|
"email."
|
||||||
|
msgstr ""
|
||||||
|
"If this account creation wasn't initiated by you, please ignore this "
|
||||||
|
"email."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:22
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:22
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:24
|
||||||
|
msgid ""
|
||||||
|
"If you're having trouble with the button above, copy and paste the URL "
|
||||||
|
"below into your web browser."
|
||||||
|
msgstr ""
|
||||||
|
"If you're having trouble with the button above, copy and paste the URL "
|
||||||
|
"below into your web browser."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:2
|
||||||
|
msgid "Use the link below to confirm your address email."
|
||||||
|
msgstr "Use the link below to confirm your address email."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.html:2
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/subject.txt:1
|
||||||
|
msgid "Email changed"
|
||||||
|
msgstr "Email changed"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.html:3
|
||||||
|
msgid "Your email is being updated."
|
||||||
|
msgstr "Your email is being updated."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.html:4
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.txt:1
|
||||||
|
msgid ""
|
||||||
|
"You recently requested to change your email address for your FitTrackee "
|
||||||
|
"account to:"
|
||||||
|
msgstr ""
|
||||||
|
"You recently requested to change your email address for your FitTrackee "
|
||||||
|
"account to:"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.html:18
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.txt:4
|
||||||
|
msgid ""
|
||||||
|
"If this email change wasn't initiated by you, please change your password"
|
||||||
|
" immediately or contact your administrator if your account is locked."
|
||||||
|
msgstr ""
|
||||||
|
"If this email change wasn't initiated by you, please change your password"
|
||||||
|
" immediately or contact your administrator if your account is locked."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:2
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/subject.txt:1
|
||||||
|
msgid "Confirm email change"
|
||||||
|
msgstr "Confirm email change"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:3
|
||||||
|
msgid "Use this link to confirm email change."
|
||||||
|
msgstr "Use this link to confirm email change."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:4
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:1
|
||||||
|
msgid ""
|
||||||
|
"You recently requested to change your email address for your FitTrackee "
|
||||||
|
"account."
|
||||||
|
msgstr ""
|
||||||
|
"You recently requested to change your email address for your FitTrackee "
|
||||||
|
"account."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:4
|
||||||
|
msgid "Use the button below to confirm this address."
|
||||||
|
msgstr "Use the button below to confirm this address."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:18
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:7
|
||||||
|
msgid "If this email change wasn't initiated by you, please ignore this email."
|
||||||
|
msgstr "If this email change wasn't initiated by you, please ignore this email."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:2
|
||||||
|
msgid "Use the link below to confirm this address."
|
||||||
|
msgstr "Use the link below to confirm this address."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_change/body.html:2
|
||||||
|
#: fittrackee/emails/templates/password_change/subject.txt:1
|
||||||
|
msgid "Password changed"
|
||||||
|
msgstr "Password changed"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_change/body.html:3
|
||||||
|
msgid "Your password has been changed."
|
||||||
|
msgstr "Your password has been changed."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_change/body.html:4
|
||||||
|
#: fittrackee/emails/templates/password_change/body.txt:1
|
||||||
|
msgid "The password for your FitTrackee account has been changed."
|
||||||
|
msgstr "The password for your FitTrackee account has been changed."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_change/body.html:5
|
||||||
|
#: fittrackee/emails/templates/password_change/body.txt:4
|
||||||
|
msgid ""
|
||||||
|
"If this password change wasn't initiated by you, please change your "
|
||||||
|
"password immediately or contact your administrator if your account is "
|
||||||
|
"locked."
|
||||||
|
msgstr ""
|
||||||
|
"If this password change wasn't initiated by you, please change your "
|
||||||
|
"password immediately or contact your administrator if your account is "
|
||||||
|
"locked."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:2
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/subject.txt:1
|
||||||
|
msgid "Password reset request"
|
||||||
|
msgstr "Password reset request"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:3
|
||||||
|
#, python-format
|
||||||
|
msgid ""
|
||||||
|
"Use this link to reset your password. The link is only valid for "
|
||||||
|
"%(expiration_delay)s."
|
||||||
|
msgstr ""
|
||||||
|
"Use this link to reset your password. The link is only valid for "
|
||||||
|
"%(expiration_delay)s."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:4
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:1
|
||||||
|
msgid "You recently requested to reset your password for your FitTrackee account."
|
||||||
|
msgstr "You recently requested to reset your password for your FitTrackee account."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:4
|
||||||
|
msgid "Use the button below to reset it."
|
||||||
|
msgstr "Use the button below to reset it."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:5
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:2
|
||||||
|
#, python-format
|
||||||
|
msgid "This password reset link is only valid for %(expiration_delay)s."
|
||||||
|
msgstr "This password reset link is only valid for %(expiration_delay)s."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:13
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:4
|
||||||
|
msgid "Reset your password"
|
||||||
|
msgstr "Reset your password"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:20
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:7
|
||||||
|
msgid "If you did not request a password reset, please ignore this email."
|
||||||
|
msgstr "If you did not request a password reset, please ignore this email."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:1
|
||||||
|
msgid "Use the link below to reset it."
|
||||||
|
msgstr "Use the link below to reset it."
|
||||||
|
|
BIN
fittrackee/emails/translations/fr/LC_MESSAGES/messages.mo
Normal file
BIN
fittrackee/emails/translations/fr/LC_MESSAGES/messages.mo
Normal file
Binary file not shown.
231
fittrackee/emails/translations/fr/LC_MESSAGES/messages.po
Normal file
231
fittrackee/emails/translations/fr/LC_MESSAGES/messages.po
Normal file
@ -0,0 +1,231 @@
|
|||||||
|
# French translations for PROJECT.
|
||||||
|
# Copyright (C) 2022 ORGANIZATION
|
||||||
|
# This file is distributed under the same license as the PROJECT project.
|
||||||
|
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: PROJECT VERSION\n"
|
||||||
|
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||||
|
"POT-Creation-Date: 2022-07-03 07:58+0200\n"
|
||||||
|
"PO-Revision-Date: 2022-07-02 17:27+0200\n"
|
||||||
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
|
"Language: fr\n"
|
||||||
|
"Language-Team: fr <LL@li.org>\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Generated-By: Babel 2.10.3\n"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/layout.html:215
|
||||||
|
#: fittrackee/emails/templates/layout.txt:1
|
||||||
|
#, python-format
|
||||||
|
msgid "Hi %(username)s,"
|
||||||
|
msgstr "Bonjour %(username)s,"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:6
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.txt:3
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:6
|
||||||
|
#: fittrackee/emails/templates/layout.html:218
|
||||||
|
#: fittrackee/emails/templates/password_change/body.txt:3
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:6
|
||||||
|
#, python-format
|
||||||
|
msgid ""
|
||||||
|
"For security, this request was received from a %(operating_system)s "
|
||||||
|
"device using %(browser_name)s."
|
||||||
|
msgstr ""
|
||||||
|
"Pour vérification, cette demande a été reçue à partir d'un appareil sous "
|
||||||
|
"%(operating_system)s, utilisant le navigateur %(browser_name)s."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/layout.html:221
|
||||||
|
#: fittrackee/emails/templates/layout.txt:5
|
||||||
|
msgid "Thanks,"
|
||||||
|
msgstr "Merci,"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/layout.html:222
|
||||||
|
#: fittrackee/emails/templates/layout.txt:6
|
||||||
|
msgid "The FitTrackee Team"
|
||||||
|
msgstr "L'équipe FitTrackee"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:2
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/subject.txt:1
|
||||||
|
msgid "Confirm your account"
|
||||||
|
msgstr "Confirmer votre inscription"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:3
|
||||||
|
msgid "Use this link to confirm your account."
|
||||||
|
msgstr "Utiliser ce lien pour confirmer votre inscription."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:4
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:1
|
||||||
|
msgid "You have created an account on FitTrackee."
|
||||||
|
msgstr "Vous avez créé un compte sur FitTrackee."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:4
|
||||||
|
msgid "Use the button below to confirm your address email."
|
||||||
|
msgstr "Cliquez sur le bouton pour confirmer votre adresse email."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:11
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:4
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:11
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:4
|
||||||
|
msgid "Verify your email"
|
||||||
|
msgstr "Vérifier l'adresse email"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:18
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:7
|
||||||
|
msgid ""
|
||||||
|
"If this account creation wasn't initiated by you, please ignore this "
|
||||||
|
"email."
|
||||||
|
msgstr ""
|
||||||
|
"Si vous n'êtes pas à l'origine de la création de ce compte, vous pouvez "
|
||||||
|
"ignorer cet e-mail."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:22
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:22
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:24
|
||||||
|
msgid ""
|
||||||
|
"If you're having trouble with the button above, copy and paste the URL "
|
||||||
|
"below into your web browser."
|
||||||
|
msgstr ""
|
||||||
|
"Si vous avez des problèmes avec le bouton, vous pouvez copier et coller "
|
||||||
|
"le lien suivant dans votre navigateur."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:2
|
||||||
|
msgid "Use the link below to confirm your address email."
|
||||||
|
msgstr "Cliquez sur le lien ci-dessous pour confirmer votre adresse email."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.html:2
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/subject.txt:1
|
||||||
|
msgid "Email changed"
|
||||||
|
msgstr "Adresse email modifiée"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.html:3
|
||||||
|
msgid "Your email is being updated."
|
||||||
|
msgstr "Votre adresse email est en cours de mise à jour."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.html:4
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.txt:1
|
||||||
|
msgid ""
|
||||||
|
"You recently requested to change your email address for your FitTrackee "
|
||||||
|
"account to:"
|
||||||
|
msgstr ""
|
||||||
|
"Vous avez récemment demandé la modification de l'adresse email associée à"
|
||||||
|
" votre compte sur FitTrackee vers :"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.html:18
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.txt:4
|
||||||
|
msgid ""
|
||||||
|
"If this email change wasn't initiated by you, please change your password"
|
||||||
|
" immediately or contact your administrator if your account is locked."
|
||||||
|
msgstr ""
|
||||||
|
"Si vous n'êtes pas à l'origine de cette modification, veuillez changer "
|
||||||
|
"votre mot de passe immédiatement ou contacter l'administrateur si votre "
|
||||||
|
"compte est bloqué."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:2
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/subject.txt:1
|
||||||
|
msgid "Confirm email change"
|
||||||
|
msgstr "Confirmer le changement d'adresse email"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:3
|
||||||
|
msgid "Use this link to confirm email change."
|
||||||
|
msgstr "Confirmer le changement d'adresse email."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:4
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:1
|
||||||
|
msgid ""
|
||||||
|
"You recently requested to change your email address for your FitTrackee "
|
||||||
|
"account."
|
||||||
|
msgstr ""
|
||||||
|
"Vous avez récemment demandé la modification de l'adresse email associée à"
|
||||||
|
" votre compte sur FitTrackee."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:4
|
||||||
|
msgid "Use the button below to confirm this address."
|
||||||
|
msgstr "Cliquez sur le bouton ci-dessous pour confirmer cette adresse email."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:18
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:7
|
||||||
|
msgid "If this email change wasn't initiated by you, please ignore this email."
|
||||||
|
msgstr ""
|
||||||
|
"Si vous n'êtes pas à l'origine de cette modification, vous pouvez ignorer"
|
||||||
|
" cet e-mail."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:2
|
||||||
|
msgid "Use the link below to confirm this address."
|
||||||
|
msgstr "Cliquez sur le lien ci-dessous pour confirmer cette adresse email."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_change/body.html:2
|
||||||
|
#: fittrackee/emails/templates/password_change/subject.txt:1
|
||||||
|
msgid "Password changed"
|
||||||
|
msgstr "Mot de passe modifié"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_change/body.html:3
|
||||||
|
msgid "Your password has been changed."
|
||||||
|
msgstr "Votre mot de passe a été modifié."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_change/body.html:4
|
||||||
|
#: fittrackee/emails/templates/password_change/body.txt:1
|
||||||
|
msgid "The password for your FitTrackee account has been changed."
|
||||||
|
msgstr "Le mot de passe de votre compte FitTrackee a été modifié."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_change/body.html:5
|
||||||
|
#: fittrackee/emails/templates/password_change/body.txt:4
|
||||||
|
msgid ""
|
||||||
|
"If this password change wasn't initiated by you, please change your "
|
||||||
|
"password immediately or contact your administrator if your account is "
|
||||||
|
"locked."
|
||||||
|
msgstr ""
|
||||||
|
"Si vous n'êtes pas à l'origine de cette modification, veuillez changer "
|
||||||
|
"votre mot de passe immédiatement ou contacter l'administrateur si votre "
|
||||||
|
"compte est bloqué."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:2
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/subject.txt:1
|
||||||
|
msgid "Password reset request"
|
||||||
|
msgstr "Réinitialiser votre mot de passe"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:3
|
||||||
|
#, python-format
|
||||||
|
msgid ""
|
||||||
|
"Use this link to reset your password. The link is only valid for "
|
||||||
|
"%(expiration_delay)s."
|
||||||
|
msgstr ""
|
||||||
|
"Utiliser ce lien pour réinitialiser le mot de passe. Ce lien n'est valide"
|
||||||
|
" que pendant %(expiration_delay)s."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:4
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:1
|
||||||
|
msgid "You recently requested to reset your password for your FitTrackee account."
|
||||||
|
msgstr ""
|
||||||
|
"Vous avez récemment demandé la réinitialisation du mot de passe de votre "
|
||||||
|
"compte sur FitTrackee."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:4
|
||||||
|
msgid "Use the button below to reset it."
|
||||||
|
msgstr "Cliquez sur le bouton pour le réinitialiser."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:5
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:2
|
||||||
|
#, python-format
|
||||||
|
msgid "This password reset link is only valid for %(expiration_delay)s."
|
||||||
|
msgstr "Ce lien n'est valide que pendant %(expiration_delay)s."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:13
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:4
|
||||||
|
msgid "Reset your password"
|
||||||
|
msgstr "Réinitialiser le mot de passe"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:20
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:7
|
||||||
|
msgid "If you did not request a password reset, please ignore this email."
|
||||||
|
msgstr ""
|
||||||
|
"Si vous n'avez pas demandé de réinitialisation, vous pouvez ignorer cet "
|
||||||
|
"e-mail."
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:1
|
||||||
|
msgid "Use the link below to reset it."
|
||||||
|
msgstr "Cliquez sur le lien ci-dessous pour le réinitialiser."
|
||||||
|
|
@ -2,7 +2,8 @@
|
|||||||
|
|
||||||
expected_en_text_body = """Hi test,
|
expected_en_text_body = """Hi test,
|
||||||
|
|
||||||
You have created an account on FitTrackee. Use the link below to confirm your address email.
|
You have created an account on FitTrackee.
|
||||||
|
Use the link below to confirm your address email.
|
||||||
|
|
||||||
Verify your email: http://localhost/account-confirmation?token=xxx
|
Verify your email: http://localhost/account-confirmation?token=xxx
|
||||||
|
|
||||||
@ -18,7 +19,7 @@ expected_fr_text_body = """Bonjour test,
|
|||||||
Vous avez créé un compte sur FitTrackee.
|
Vous avez créé un compte sur FitTrackee.
|
||||||
Cliquez sur le lien ci-dessous pour confirmer votre adresse email.
|
Cliquez sur le lien ci-dessous pour confirmer votre adresse email.
|
||||||
|
|
||||||
Vérifier l'adresse email : http://localhost/account-confirmation?token=xxx
|
Vérifier l'adresse email: http://localhost/account-confirmation?token=xxx
|
||||||
|
|
||||||
Pour vérification, cette demande a été reçue à partir d'un appareil sous Linux, utilisant le navigateur Firefox.
|
Pour vérification, cette demande a été reçue à partir d'un appareil sous Linux, utilisant le navigateur Firefox.
|
||||||
Si vous n'êtes pas à l'origine de la création de ce compte, vous pouvez ignorer cet e-mail.
|
Si vous n'êtes pas à l'origine de la création de ce compte, vous pouvez ignorer cet e-mail.
|
||||||
@ -70,7 +71,7 @@ expected_en_html_body = """ <body>
|
|||||||
<table class="body-sub" role="presentation">
|
<table class="body-sub" role="presentation">
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<p class="f-fallback sub">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">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">http://localhost/account-confirmation?token=xxx</p>
|
<p class="f-fallback sub">http://localhost/account-confirmation?token=xxx</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -119,9 +120,7 @@ expected_fr_html_body = """ <body>
|
|||||||
<td class="content-cell">
|
<td class="content-cell">
|
||||||
<div class="f-fallback">
|
<div class="f-fallback">
|
||||||
<h1>Bonjour test,</h1>
|
<h1>Bonjour test,</h1>
|
||||||
<p>Vous avez créé un compte sur FitTrackee.
|
<p>Vous avez créé un compte sur FitTrackee. Cliquez sur le bouton pour confirmer votre adresse email.</p>
|
||||||
Cliquez sur le lien ci-dessous pour confirmer votre adresse email.
|
|
||||||
</p>
|
|
||||||
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
||||||
<tr>
|
<tr>
|
||||||
<td align="center">
|
<td align="center">
|
||||||
@ -144,7 +143,7 @@ expected_fr_html_body = """ <body>
|
|||||||
<table class="body-sub" role="presentation">
|
<table class="body-sub" role="presentation">
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<p class="f-fallback sub">Si vous avez des problèmes avec le bouton, vous pouvez copier et coller le lien suivant dans votre navigateur</p>
|
<p class="f-fallback sub">Si vous avez des problèmes avec le bouton, vous pouvez copier et coller le lien suivant dans votre navigateur.</p>
|
||||||
<p class="f-fallback sub">http://localhost/account-confirmation?token=xxx</p>
|
<p class="f-fallback sub">http://localhost/account-confirmation?token=xxx</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -42,7 +42,7 @@ expected_en_html_body = """ <body>
|
|||||||
<td class="content-cell">
|
<td class="content-cell">
|
||||||
<div class="f-fallback">
|
<div class="f-fallback">
|
||||||
<h1>Hi test,</h1>
|
<h1>Hi test,</h1>
|
||||||
<p>You recently requested to change your email address for your FitTrackee account to: </p>
|
<p>You recently requested to change your email address for your FitTrackee account to:</p>
|
||||||
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
||||||
<tr>
|
<tr>
|
||||||
<td align="center">
|
<td align="center">
|
||||||
@ -61,9 +61,8 @@ expected_en_html_body = """ <body>
|
|||||||
If this email change wasn't initiated by you, please change your password immediately or contact your administrator if your account is locked.
|
If this email change wasn't initiated by you, please change your password immediately or contact your administrator if your account is locked.
|
||||||
</p>
|
</p>
|
||||||
<p>Thanks,
|
<p>Thanks,
|
||||||
<br>
|
<br>The FitTrackee Team</p>
|
||||||
The FitTrackee Team
|
|
||||||
</p>
|
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -127,9 +126,8 @@ expected_fr_html_body = """ <body>
|
|||||||
Si vous n'êtes pas à l'origine de cette modification, veuillez changer votre mot de passe immédiatement ou contacter l'administrateur si votre compte est bloqué.
|
Si vous n'êtes pas à l'origine de cette modification, veuillez changer votre mot de passe immédiatement ou contacter l'administrateur si votre compte est bloqué.
|
||||||
</p>
|
</p>
|
||||||
<p>Merci,
|
<p>Merci,
|
||||||
<br>
|
<br>L'équipe FitTrackee</p>
|
||||||
L'équipe FitTrackee
|
|
||||||
</p>
|
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -2,7 +2,8 @@
|
|||||||
|
|
||||||
expected_en_text_body = """Hi test,
|
expected_en_text_body = """Hi test,
|
||||||
|
|
||||||
You recently requested to change your email address for your FitTrackee account. Use the link below to confirm this address.
|
You recently requested to change your email address for your FitTrackee account.
|
||||||
|
Use the link below to confirm this address.
|
||||||
|
|
||||||
Verify your email: http://localhost/email-update?token=xxx
|
Verify your email: http://localhost/email-update?token=xxx
|
||||||
|
|
||||||
@ -15,7 +16,8 @@ http://localhost"""
|
|||||||
|
|
||||||
expected_en_text_body_without_security = """Hi test,
|
expected_en_text_body_without_security = """Hi test,
|
||||||
|
|
||||||
You recently requested to change your email address for your FitTrackee account. Use the link below to confirm this address.
|
You recently requested to change your email address for your FitTrackee account.
|
||||||
|
Use the link below to confirm this address.
|
||||||
|
|
||||||
Verify your email: http://localhost/email-update?token=xxx
|
Verify your email: http://localhost/email-update?token=xxx
|
||||||
|
|
||||||
@ -30,7 +32,7 @@ expected_fr_text_body = """Bonjour test,
|
|||||||
Vous avez récemment demandé la modification de l'adresse email associée à votre compte sur FitTrackee.
|
Vous avez récemment demandé la modification de l'adresse email associée à votre compte sur FitTrackee.
|
||||||
Cliquez sur le lien ci-dessous pour confirmer cette adresse email.
|
Cliquez sur le lien ci-dessous pour confirmer cette adresse email.
|
||||||
|
|
||||||
Vérifier l'adresse email : http://localhost/email-update?token=xxx
|
Vérifier l'adresse email: http://localhost/email-update?token=xxx
|
||||||
|
|
||||||
Pour vérification, cette demande a été reçue à partir d'un appareil sous Linux, utilisant le navigateur Firefox.
|
Pour vérification, cette demande a été reçue à partir d'un appareil sous Linux, utilisant le navigateur Firefox.
|
||||||
Si vous n'êtes pas à l'origine de cette modification, vous pouvez ignorer cet e-mail.
|
Si vous n'êtes pas à l'origine de cette modification, vous pouvez ignorer cet e-mail.
|
||||||
@ -44,7 +46,7 @@ expected_fr_text_body_without_security = """Bonjour test,
|
|||||||
Vous avez récemment demandé la modification de l'adresse email associée à votre compte sur FitTrackee.
|
Vous avez récemment demandé la modification de l'adresse email associée à votre compte sur FitTrackee.
|
||||||
Cliquez sur le lien ci-dessous pour confirmer cette adresse email.
|
Cliquez sur le lien ci-dessous pour confirmer cette adresse email.
|
||||||
|
|
||||||
Vérifier l'adresse email : http://localhost/email-update?token=xxx
|
Vérifier l'adresse email: http://localhost/email-update?token=xxx
|
||||||
|
|
||||||
Si vous n'êtes pas à l'origine de cette modification, vous pouvez ignorer cet e-mail.
|
Si vous n'êtes pas à l'origine de cette modification, vous pouvez ignorer cet e-mail.
|
||||||
|
|
||||||
@ -95,7 +97,7 @@ expected_en_html_body = """ <body>
|
|||||||
<table class="body-sub" role="presentation">
|
<table class="body-sub" role="presentation">
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<p class="f-fallback sub">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">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">http://localhost/email-update?token=xxx</p>
|
<p class="f-fallback sub">http://localhost/email-update?token=xxx</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -166,7 +168,7 @@ expected_en_html_body_without_security = """ <body>
|
|||||||
<table class="body-sub" role="presentation">
|
<table class="body-sub" role="presentation">
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<p class="f-fallback sub">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">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">http://localhost/email-update?token=xxx</p>
|
<p class="f-fallback sub">http://localhost/email-update?token=xxx</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -196,7 +198,7 @@ expected_en_html_body_without_security = """ <body>
|
|||||||
</html>"""
|
</html>"""
|
||||||
|
|
||||||
expected_fr_html_body = """ <body>
|
expected_fr_html_body = """ <body>
|
||||||
<span class="preheader">Utiliser ce lien pour confirmer cette adresse email.</span>
|
<span class="preheader">Confirmer le changement d'adresse email.</span>
|
||||||
<table class="email-wrapper" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
<table class="email-wrapper" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
||||||
<tr>
|
<tr>
|
||||||
<td align="center">
|
<td align="center">
|
||||||
@ -215,9 +217,7 @@ expected_fr_html_body = """ <body>
|
|||||||
<td class="content-cell">
|
<td class="content-cell">
|
||||||
<div class="f-fallback">
|
<div class="f-fallback">
|
||||||
<h1>Bonjour test,</h1>
|
<h1>Bonjour test,</h1>
|
||||||
<p>Vous avez récemment demandé la modification de l'adresse email associée à votre compte sur FitTrackee.
|
<p>Vous avez récemment demandé la modification de l'adresse email associée à votre compte sur FitTrackee. Cliquez sur le bouton ci-dessous pour confirmer cette adresse email.</p>
|
||||||
Cliquez sur le bouton ci-dessous pour confirmer cette adresse email.
|
|
||||||
</p>
|
|
||||||
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
||||||
<tr>
|
<tr>
|
||||||
<td align="center">
|
<td align="center">
|
||||||
@ -240,7 +240,7 @@ expected_fr_html_body = """ <body>
|
|||||||
<table class="body-sub" role="presentation">
|
<table class="body-sub" role="presentation">
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<p class="f-fallback sub">Si vous avez des problèmes avec le bouton, vous pouvez copier et coller le lien suivant dans votre navigateur</p>
|
<p class="f-fallback sub">Si vous avez des problèmes avec le bouton, vous pouvez copier et coller le lien suivant dans votre navigateur.</p>
|
||||||
<p class="f-fallback sub">http://localhost/email-update?token=xxx</p>
|
<p class="f-fallback sub">http://localhost/email-update?token=xxx</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -270,7 +270,7 @@ expected_fr_html_body = """ <body>
|
|||||||
</html>"""
|
</html>"""
|
||||||
|
|
||||||
expected_fr_html_body_without_security = """ <body>
|
expected_fr_html_body_without_security = """ <body>
|
||||||
<span class="preheader">Utiliser ce lien pour confirmer cette adresse email.</span>
|
<span class="preheader">Confirmer le changement d'adresse email.</span>
|
||||||
<table class="email-wrapper" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
<table class="email-wrapper" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
||||||
<tr>
|
<tr>
|
||||||
<td align="center">
|
<td align="center">
|
||||||
@ -289,9 +289,7 @@ expected_fr_html_body_without_security = """ <body>
|
|||||||
<td class="content-cell">
|
<td class="content-cell">
|
||||||
<div class="f-fallback">
|
<div class="f-fallback">
|
||||||
<h1>Bonjour test,</h1>
|
<h1>Bonjour test,</h1>
|
||||||
<p>Vous avez récemment demandé la modification de l'adresse email associée à votre compte sur FitTrackee.
|
<p>Vous avez récemment demandé la modification de l'adresse email associée à votre compte sur FitTrackee. Cliquez sur le bouton ci-dessous pour confirmer cette adresse email.</p>
|
||||||
Cliquez sur le bouton ci-dessous pour confirmer cette adresse email.
|
|
||||||
</p>
|
|
||||||
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
||||||
<tr>
|
<tr>
|
||||||
<td align="center">
|
<td align="center">
|
||||||
@ -313,7 +311,7 @@ expected_fr_html_body_without_security = """ <body>
|
|||||||
<table class="body-sub" role="presentation">
|
<table class="body-sub" role="presentation">
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<p class="f-fallback sub">Si vous avez des problèmes avec le bouton, vous pouvez copier et coller le lien suivant dans votre navigateur</p>
|
<p class="f-fallback sub">Si vous avez des problèmes avec le bouton, vous pouvez copier et coller le lien suivant dans votre navigateur.</p>
|
||||||
<p class="f-fallback sub">http://localhost/email-update?token=xxx</p>
|
<p class="f-fallback sub">http://localhost/email-update?token=xxx</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -68,9 +68,8 @@ expected_en_html_body = """ <body>
|
|||||||
If this password change wasn't initiated by you, please change your password immediately or contact your administrator if your account is locked.
|
If this password change wasn't initiated by you, please change your password immediately or contact your administrator if your account is locked.
|
||||||
</p>
|
</p>
|
||||||
<p>Thanks,
|
<p>Thanks,
|
||||||
<br>
|
<br>The FitTrackee Team</p>
|
||||||
The FitTrackee Team
|
|
||||||
</p>
|
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -120,9 +119,8 @@ expected_en_html_body_without_security = """ <body>
|
|||||||
If this password change wasn't initiated by you, please change your password immediately or contact your administrator if your account is locked.
|
If this password change wasn't initiated by you, please change your password immediately or contact your administrator if your account is locked.
|
||||||
</p>
|
</p>
|
||||||
<p>Thanks,
|
<p>Thanks,
|
||||||
<br>
|
<br>The FitTrackee Team</p>
|
||||||
The FitTrackee Team
|
|
||||||
</p>
|
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -173,9 +171,8 @@ expected_fr_html_body = """ <body>
|
|||||||
Si vous n'êtes pas à l'origine de cette modification, veuillez changer votre mot de passe immédiatement ou contacter l'administrateur si votre compte est bloqué.
|
Si vous n'êtes pas à l'origine de cette modification, veuillez changer votre mot de passe immédiatement ou contacter l'administrateur si votre compte est bloqué.
|
||||||
</p>
|
</p>
|
||||||
<p>Merci,
|
<p>Merci,
|
||||||
<br>
|
<br>L'équipe FitTrackee</p>
|
||||||
L'équipe FitTrackee
|
|
||||||
</p>
|
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -225,9 +222,8 @@ expected_fr_html_body_without_security = """ <body>
|
|||||||
Si vous n'êtes pas à l'origine de cette modification, veuillez changer votre mot de passe immédiatement ou contacter l'administrateur si votre compte est bloqué.
|
Si vous n'êtes pas à l'origine de cette modification, veuillez changer votre mot de passe immédiatement ou contacter l'administrateur si votre compte est bloqué.
|
||||||
</p>
|
</p>
|
||||||
<p>Merci,
|
<p>Merci,
|
||||||
<br>
|
<br>L'équipe FitTrackee</p>
|
||||||
L'équipe FitTrackee
|
|
||||||
</p>
|
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -2,7 +2,8 @@
|
|||||||
|
|
||||||
expected_en_text_body = """Hi test,
|
expected_en_text_body = """Hi test,
|
||||||
|
|
||||||
You recently requested to reset your password for your FitTrackee account. Use the link below to reset it. This password reset link is only valid for 3 seconds.
|
You recently requested to reset your password for your FitTrackee account. Use the link below to reset it.
|
||||||
|
This password reset link is only valid for 3 seconds.
|
||||||
|
|
||||||
Reset your password: http://localhost/password-reset?token=xxx
|
Reset your password: http://localhost/password-reset?token=xxx
|
||||||
|
|
||||||
@ -15,7 +16,8 @@ http://localhost"""
|
|||||||
|
|
||||||
expected_en_text_body_without_security = """Hi test,
|
expected_en_text_body_without_security = """Hi test,
|
||||||
|
|
||||||
You recently requested to reset your password for your FitTrackee account. Use the link below to reset it. This password reset link is only valid for 3 seconds.
|
You recently requested to reset your password for your FitTrackee account. Use the link below to reset it.
|
||||||
|
This password reset link is only valid for 3 seconds.
|
||||||
|
|
||||||
Reset your password: http://localhost/password-reset?token=xxx
|
Reset your password: http://localhost/password-reset?token=xxx
|
||||||
|
|
||||||
@ -27,10 +29,10 @@ http://localhost"""
|
|||||||
|
|
||||||
expected_fr_text_body = """Bonjour test,
|
expected_fr_text_body = """Bonjour test,
|
||||||
|
|
||||||
Vous avez récemment demandé la réinitialisation du mot de passe de votre compte sur FitTrackee.
|
Vous avez récemment demandé la réinitialisation du mot de passe de votre compte sur FitTrackee. Cliquez sur le lien ci-dessous pour le réinitialiser.
|
||||||
Cliquez sur le lien ci-dessous pour le réinitialiser. Ce lien n'est valide que pendant 3 secondes.
|
Ce lien n'est valide que pendant 3 secondes.
|
||||||
|
|
||||||
Réinitialiser le mot de passe : http://localhost/password-reset?token=xxx
|
Réinitialiser le mot de passe: http://localhost/password-reset?token=xxx
|
||||||
|
|
||||||
Pour vérification, cette demande a été reçue à partir d'un appareil sous Linux, utilisant le navigateur Firefox.
|
Pour vérification, cette demande a été reçue à partir d'un appareil sous Linux, utilisant le navigateur Firefox.
|
||||||
Si vous n'avez pas demandé de réinitialisation, vous pouvez ignorer cet e-mail.
|
Si vous n'avez pas demandé de réinitialisation, vous pouvez ignorer cet e-mail.
|
||||||
@ -41,10 +43,10 @@ http://localhost"""
|
|||||||
|
|
||||||
expected_fr_text_body_without_security = """Bonjour test,
|
expected_fr_text_body_without_security = """Bonjour test,
|
||||||
|
|
||||||
Vous avez récemment demandé la réinitialisation du mot de passe de votre compte sur FitTrackee.
|
Vous avez récemment demandé la réinitialisation du mot de passe de votre compte sur FitTrackee. Cliquez sur le lien ci-dessous pour le réinitialiser.
|
||||||
Cliquez sur le lien ci-dessous pour le réinitialiser. Ce lien n'est valide que pendant 3 secondes.
|
Ce lien n'est valide que pendant 3 secondes.
|
||||||
|
|
||||||
Réinitialiser le mot de passe : http://localhost/password-reset?token=xxx
|
Réinitialiser le mot de passe: http://localhost/password-reset?token=xxx
|
||||||
|
|
||||||
Si vous n'avez pas demandé de réinitialisation, vous pouvez ignorer cet e-mail.
|
Si vous n'avez pas demandé de réinitialisation, vous pouvez ignorer cet e-mail.
|
||||||
|
|
||||||
@ -72,7 +74,7 @@ expected_en_html_body = """ <body>
|
|||||||
<td class="content-cell">
|
<td class="content-cell">
|
||||||
<div class="f-fallback">
|
<div class="f-fallback">
|
||||||
<h1>Hi test,</h1>
|
<h1>Hi test,</h1>
|
||||||
<p>You recently requested to reset your password for your account. Use the button below to reset it.
|
<p>You recently requested to reset your password for your FitTrackee account. Use the button below to reset it.
|
||||||
<strong>This password reset link is only valid for 3 seconds.</strong>
|
<strong>This password reset link is only valid for 3 seconds.</strong>
|
||||||
</p>
|
</p>
|
||||||
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
||||||
@ -97,7 +99,7 @@ expected_en_html_body = """ <body>
|
|||||||
<table class="body-sub" role="presentation">
|
<table class="body-sub" role="presentation">
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<p class="f-fallback sub">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">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">http://localhost/password-reset?token=xxx</p>
|
<p class="f-fallback sub">http://localhost/password-reset?token=xxx</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -146,7 +148,7 @@ expected_en_html_body_without_security = """ <body>
|
|||||||
<td class="content-cell">
|
<td class="content-cell">
|
||||||
<div class="f-fallback">
|
<div class="f-fallback">
|
||||||
<h1>Hi test,</h1>
|
<h1>Hi test,</h1>
|
||||||
<p>You recently requested to reset your password for your account. Use the button below to reset it.
|
<p>You recently requested to reset your password for your FitTrackee account. Use the button below to reset it.
|
||||||
<strong>This password reset link is only valid for 3 seconds.</strong>
|
<strong>This password reset link is only valid for 3 seconds.</strong>
|
||||||
</p>
|
</p>
|
||||||
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
||||||
@ -170,7 +172,7 @@ expected_en_html_body_without_security = """ <body>
|
|||||||
<table class="body-sub" role="presentation">
|
<table class="body-sub" role="presentation">
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<p class="f-fallback sub">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">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">http://localhost/password-reset?token=xxx</p>
|
<p class="f-fallback sub">http://localhost/password-reset?token=xxx</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -218,10 +220,9 @@ expected_fr_html_body = """ <body>
|
|||||||
<tr>
|
<tr>
|
||||||
<td class="content-cell">
|
<td class="content-cell">
|
||||||
<div class="f-fallback">
|
<div class="f-fallback">
|
||||||
<h1>Bonjour test,</h1>
|
<h1>Bonjour test,</h1>
|
||||||
<p>Vous avez récemment demandé la réinitialisation du mot de passe de votre compte sur FitTrackee.
|
<p>Vous avez récemment demandé la réinitialisation du mot de passe de votre compte sur FitTrackee. Cliquez sur le bouton pour le réinitialiser.
|
||||||
Cliquez sur le bouton ci-dessous pour le réinitialiser.
|
<strong>Ce lien n'est valide que pendant 3 secondes.</strong>
|
||||||
<strong>Cette réinitialisation n'est valide que pendant 3 secondes.</strong>
|
|
||||||
</p>
|
</p>
|
||||||
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
||||||
<tr>
|
<tr>
|
||||||
@ -245,7 +246,7 @@ expected_fr_html_body = """ <body>
|
|||||||
<table class="body-sub" role="presentation">
|
<table class="body-sub" role="presentation">
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<p class="f-fallback sub">Si vous avez des problèmes avec le bouton, vous pouvez copier et coller le lien suivant dans votre navigateur</p>
|
<p class="f-fallback sub">Si vous avez des problèmes avec le bouton, vous pouvez copier et coller le lien suivant dans votre navigateur.</p>
|
||||||
<p class="f-fallback sub">http://localhost/password-reset?token=xxx</p>
|
<p class="f-fallback sub">http://localhost/password-reset?token=xxx</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -294,10 +295,9 @@ expected_fr_html_body_without_security = """ <body>
|
|||||||
<tr>
|
<tr>
|
||||||
<td class="content-cell">
|
<td class="content-cell">
|
||||||
<div class="f-fallback">
|
<div class="f-fallback">
|
||||||
<h1>Bonjour test,</h1>
|
<h1>Bonjour test,</h1>
|
||||||
<p>Vous avez récemment demandé la réinitialisation du mot de passe de votre compte sur FitTrackee.
|
<p>Vous avez récemment demandé la réinitialisation du mot de passe de votre compte sur FitTrackee. Cliquez sur le bouton pour le réinitialiser.
|
||||||
Cliquez sur le bouton ci-dessous pour le réinitialiser.
|
<strong>Ce lien n'est valide que pendant 3 secondes.</strong>
|
||||||
<strong>Cette réinitialisation n'est valide que pendant 3 secondes.</strong>
|
|
||||||
</p>
|
</p>
|
||||||
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
||||||
<tr>
|
<tr>
|
||||||
@ -320,7 +320,7 @@ expected_fr_html_body_without_security = """ <body>
|
|||||||
<table class="body-sub" role="presentation">
|
<table class="body-sub" role="presentation">
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<p class="f-fallback sub">Si vous avez des problèmes avec le bouton, vous pouvez copier et coller le lien suivant dans votre navigateur</p>
|
<p class="f-fallback sub">Si vous avez des problèmes avec le bouton, vous pouvez copier et coller le lien suivant dans votre navigateur.</p>
|
||||||
<p class="f-fallback sub">http://localhost/password-reset?token=xxx</p>
|
<p class="f-fallback sub">http://localhost/password-reset?token=xxx</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -32,7 +32,11 @@ class TestEmailTemplateForAccountConfirmation:
|
|||||||
def test_it_gets_subject(
|
def test_it_gets_subject(
|
||||||
self, app: Flask, lang: str, expected_subject: str
|
self, app: Flask, lang: str, expected_subject: str
|
||||||
) -> None:
|
) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES'],
|
||||||
|
)
|
||||||
|
|
||||||
subject = email_template.get_content(
|
subject = email_template.get_content(
|
||||||
'account_confirmation', lang, 'subject.txt', {}
|
'account_confirmation', lang, 'subject.txt', {}
|
||||||
@ -50,7 +54,11 @@ class TestEmailTemplateForAccountConfirmation:
|
|||||||
def test_it_gets_text_body(
|
def test_it_gets_text_body(
|
||||||
self, app: Flask, lang: str, expected_text_body: str
|
self, app: Flask, lang: str, expected_text_body: str
|
||||||
) -> None:
|
) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES'],
|
||||||
|
)
|
||||||
|
|
||||||
text_body = email_template.get_content(
|
text_body = email_template.get_content(
|
||||||
'account_confirmation', lang, 'body.txt', self.EMAIL_DATA
|
'account_confirmation', lang, 'body.txt', self.EMAIL_DATA
|
||||||
@ -59,7 +67,11 @@ class TestEmailTemplateForAccountConfirmation:
|
|||||||
assert text_body == expected_text_body
|
assert text_body == expected_text_body
|
||||||
|
|
||||||
def test_it_gets_en_html_body(self, app: Flask) -> None:
|
def test_it_gets_en_html_body(self, app: Flask) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES'],
|
||||||
|
)
|
||||||
|
|
||||||
text_body = email_template.get_content(
|
text_body = email_template.get_content(
|
||||||
'account_confirmation', 'en', 'body.html', self.EMAIL_DATA
|
'account_confirmation', 'en', 'body.html', self.EMAIL_DATA
|
||||||
@ -68,7 +80,11 @@ class TestEmailTemplateForAccountConfirmation:
|
|||||||
assert expected_en_html_body in text_body
|
assert expected_en_html_body in text_body
|
||||||
|
|
||||||
def test_it_gets_fr_html_body(self, app: Flask) -> None:
|
def test_it_gets_fr_html_body(self, app: Flask) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES'],
|
||||||
|
)
|
||||||
|
|
||||||
text_body = email_template.get_content(
|
text_body = email_template.get_content(
|
||||||
'account_confirmation', 'fr', 'body.html', self.EMAIL_DATA
|
'account_confirmation', 'fr', 'body.html', self.EMAIL_DATA
|
||||||
|
@ -47,7 +47,11 @@ class TestEmailTemplateForEmailUpdateToCurrentEmail:
|
|||||||
def test_it_gets_subject(
|
def test_it_gets_subject(
|
||||||
self, app: Flask, lang: str, expected_subject: str
|
self, app: Flask, lang: str, expected_subject: str
|
||||||
) -> None:
|
) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES']
|
||||||
|
)
|
||||||
|
|
||||||
subject = email_template.get_content(
|
subject = email_template.get_content(
|
||||||
'email_update_to_current_email', lang, 'subject.txt', {}
|
'email_update_to_current_email', lang, 'subject.txt', {}
|
||||||
@ -65,7 +69,11 @@ class TestEmailTemplateForEmailUpdateToCurrentEmail:
|
|||||||
def test_it_gets_text_body(
|
def test_it_gets_text_body(
|
||||||
self, app: Flask, lang: str, expected_text_body: str
|
self, app: Flask, lang: str, expected_text_body: str
|
||||||
) -> None:
|
) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES']
|
||||||
|
)
|
||||||
|
|
||||||
text_body = email_template.get_content(
|
text_body = email_template.get_content(
|
||||||
'email_update_to_current_email', lang, 'body.txt', self.EMAIL_DATA
|
'email_update_to_current_email', lang, 'body.txt', self.EMAIL_DATA
|
||||||
@ -74,7 +82,11 @@ class TestEmailTemplateForEmailUpdateToCurrentEmail:
|
|||||||
assert text_body == expected_text_body
|
assert text_body == expected_text_body
|
||||||
|
|
||||||
def test_it_gets_en_html_body(self, app: Flask) -> None:
|
def test_it_gets_en_html_body(self, app: Flask) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES']
|
||||||
|
)
|
||||||
|
|
||||||
text_body = email_template.get_content(
|
text_body = email_template.get_content(
|
||||||
'email_update_to_current_email', 'en', 'body.html', self.EMAIL_DATA
|
'email_update_to_current_email', 'en', 'body.html', self.EMAIL_DATA
|
||||||
@ -83,7 +95,11 @@ class TestEmailTemplateForEmailUpdateToCurrentEmail:
|
|||||||
assert expected_en_current_email_html_body in text_body
|
assert expected_en_current_email_html_body in text_body
|
||||||
|
|
||||||
def test_it_gets_fr_html_body(self, app: Flask) -> None:
|
def test_it_gets_fr_html_body(self, app: Flask) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES']
|
||||||
|
)
|
||||||
|
|
||||||
text_body = email_template.get_content(
|
text_body = email_template.get_content(
|
||||||
'email_update_to_current_email', 'fr', 'body.html', self.EMAIL_DATA
|
'email_update_to_current_email', 'fr', 'body.html', self.EMAIL_DATA
|
||||||
@ -111,7 +127,11 @@ class TestEmailTemplateForEmailUpdateToNewEmail:
|
|||||||
def test_it_gets_subject(
|
def test_it_gets_subject(
|
||||||
self, app: Flask, lang: str, expected_subject: str
|
self, app: Flask, lang: str, expected_subject: str
|
||||||
) -> None:
|
) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES']
|
||||||
|
)
|
||||||
|
|
||||||
subject = email_template.get_content(
|
subject = email_template.get_content(
|
||||||
'email_update_to_new_email', lang, 'subject.txt', {}
|
'email_update_to_new_email', lang, 'subject.txt', {}
|
||||||
@ -129,7 +149,11 @@ class TestEmailTemplateForEmailUpdateToNewEmail:
|
|||||||
def test_it_gets_text_body(
|
def test_it_gets_text_body(
|
||||||
self, app: Flask, lang: str, expected_text_body: str
|
self, app: Flask, lang: str, expected_text_body: str
|
||||||
) -> None:
|
) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES']
|
||||||
|
)
|
||||||
|
|
||||||
text_body = email_template.get_content(
|
text_body = email_template.get_content(
|
||||||
'email_update_to_new_email', lang, 'body.txt', self.EMAIL_DATA
|
'email_update_to_new_email', lang, 'body.txt', self.EMAIL_DATA
|
||||||
@ -138,7 +162,11 @@ class TestEmailTemplateForEmailUpdateToNewEmail:
|
|||||||
assert text_body == expected_text_body
|
assert text_body == expected_text_body
|
||||||
|
|
||||||
def test_it_gets_en_html_body(self, app: Flask) -> None:
|
def test_it_gets_en_html_body(self, app: Flask) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES']
|
||||||
|
)
|
||||||
|
|
||||||
text_body = email_template.get_content(
|
text_body = email_template.get_content(
|
||||||
'email_update_to_new_email', 'en', 'body.html', self.EMAIL_DATA
|
'email_update_to_new_email', 'en', 'body.html', self.EMAIL_DATA
|
||||||
@ -147,7 +175,11 @@ class TestEmailTemplateForEmailUpdateToNewEmail:
|
|||||||
assert expected_en_new_email_html_body in text_body
|
assert expected_en_new_email_html_body in text_body
|
||||||
|
|
||||||
def test_it_gets_fr_html_body(self, app: Flask) -> None:
|
def test_it_gets_fr_html_body(self, app: Flask) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES']
|
||||||
|
)
|
||||||
|
|
||||||
text_body = email_template.get_content(
|
text_body = email_template.get_content(
|
||||||
'email_update_to_new_email', 'fr', 'body.html', self.EMAIL_DATA
|
'email_update_to_new_email', 'fr', 'body.html', self.EMAIL_DATA
|
||||||
@ -173,7 +205,11 @@ class TestEmailTemplateForEmailUpdateToNewEmailWithoutSecurityInfos:
|
|||||||
def test_it_gets_subject(
|
def test_it_gets_subject(
|
||||||
self, app: Flask, lang: str, expected_subject: str
|
self, app: Flask, lang: str, expected_subject: str
|
||||||
) -> None:
|
) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES']
|
||||||
|
)
|
||||||
|
|
||||||
subject = email_template.get_content(
|
subject = email_template.get_content(
|
||||||
'email_update_to_new_email', lang, 'subject.txt', {}
|
'email_update_to_new_email', lang, 'subject.txt', {}
|
||||||
@ -191,7 +227,11 @@ class TestEmailTemplateForEmailUpdateToNewEmailWithoutSecurityInfos:
|
|||||||
def test_it_gets_text_body(
|
def test_it_gets_text_body(
|
||||||
self, app: Flask, lang: str, expected_text_body: str
|
self, app: Flask, lang: str, expected_text_body: str
|
||||||
) -> None:
|
) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES']
|
||||||
|
)
|
||||||
|
|
||||||
text_body = email_template.get_content(
|
text_body = email_template.get_content(
|
||||||
'email_update_to_new_email', lang, 'body.txt', self.EMAIL_DATA
|
'email_update_to_new_email', lang, 'body.txt', self.EMAIL_DATA
|
||||||
@ -200,7 +240,11 @@ class TestEmailTemplateForEmailUpdateToNewEmailWithoutSecurityInfos:
|
|||||||
assert text_body == expected_text_body
|
assert text_body == expected_text_body
|
||||||
|
|
||||||
def test_it_gets_en_html_body(self, app: Flask) -> None:
|
def test_it_gets_en_html_body(self, app: Flask) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES']
|
||||||
|
)
|
||||||
|
|
||||||
text_body = email_template.get_content(
|
text_body = email_template.get_content(
|
||||||
'email_update_to_new_email', 'en', 'body.html', self.EMAIL_DATA
|
'email_update_to_new_email', 'en', 'body.html', self.EMAIL_DATA
|
||||||
@ -209,7 +253,11 @@ class TestEmailTemplateForEmailUpdateToNewEmailWithoutSecurityInfos:
|
|||||||
assert expected_en_new_email_html_body_without_security in text_body
|
assert expected_en_new_email_html_body_without_security in text_body
|
||||||
|
|
||||||
def test_it_gets_fr_html_body(self, app: Flask) -> None:
|
def test_it_gets_fr_html_body(self, app: Flask) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES']
|
||||||
|
)
|
||||||
|
|
||||||
text_body = email_template.get_content(
|
text_body = email_template.get_content(
|
||||||
'email_update_to_new_email', 'fr', 'body.html', self.EMAIL_DATA
|
'email_update_to_new_email', 'fr', 'body.html', self.EMAIL_DATA
|
||||||
|
@ -33,7 +33,11 @@ class TestEmailTemplateForPasswordChange:
|
|||||||
def test_it_gets_subject(
|
def test_it_gets_subject(
|
||||||
self, app: Flask, lang: str, expected_subject: str
|
self, app: Flask, lang: str, expected_subject: str
|
||||||
) -> None:
|
) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES'],
|
||||||
|
)
|
||||||
|
|
||||||
subject = email_template.get_content(
|
subject = email_template.get_content(
|
||||||
'password_change', lang, 'subject.txt', {}
|
'password_change', lang, 'subject.txt', {}
|
||||||
@ -51,7 +55,11 @@ class TestEmailTemplateForPasswordChange:
|
|||||||
def test_it_gets_text_body(
|
def test_it_gets_text_body(
|
||||||
self, app: Flask, lang: str, expected_text_body: str
|
self, app: Flask, lang: str, expected_text_body: str
|
||||||
) -> None:
|
) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES'],
|
||||||
|
)
|
||||||
|
|
||||||
text_body = email_template.get_content(
|
text_body = email_template.get_content(
|
||||||
'password_change', lang, 'body.txt', self.EMAIL_DATA
|
'password_change', lang, 'body.txt', self.EMAIL_DATA
|
||||||
@ -60,7 +68,11 @@ class TestEmailTemplateForPasswordChange:
|
|||||||
assert text_body == expected_text_body
|
assert text_body == expected_text_body
|
||||||
|
|
||||||
def test_it_gets_en_html_body(self, app: Flask) -> None:
|
def test_it_gets_en_html_body(self, app: Flask) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES'],
|
||||||
|
)
|
||||||
|
|
||||||
text_body = email_template.get_content(
|
text_body = email_template.get_content(
|
||||||
'password_change', 'en', 'body.html', self.EMAIL_DATA
|
'password_change', 'en', 'body.html', self.EMAIL_DATA
|
||||||
@ -69,7 +81,11 @@ class TestEmailTemplateForPasswordChange:
|
|||||||
assert expected_en_html_body in text_body
|
assert expected_en_html_body in text_body
|
||||||
|
|
||||||
def test_it_gets_fr_html_body(self, app: Flask) -> None:
|
def test_it_gets_fr_html_body(self, app: Flask) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES'],
|
||||||
|
)
|
||||||
|
|
||||||
text_body = email_template.get_content(
|
text_body = email_template.get_content(
|
||||||
'password_change', 'fr', 'body.html', self.EMAIL_DATA
|
'password_change', 'fr', 'body.html', self.EMAIL_DATA
|
||||||
@ -94,7 +110,11 @@ class TestEmailTemplateForPasswordChangeWithSecurityInfos:
|
|||||||
def test_it_gets_subject(
|
def test_it_gets_subject(
|
||||||
self, app: Flask, lang: str, expected_subject: str
|
self, app: Flask, lang: str, expected_subject: str
|
||||||
) -> None:
|
) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES'],
|
||||||
|
)
|
||||||
|
|
||||||
subject = email_template.get_content(
|
subject = email_template.get_content(
|
||||||
'password_change', lang, 'subject.txt', {}
|
'password_change', lang, 'subject.txt', {}
|
||||||
@ -112,7 +132,11 @@ class TestEmailTemplateForPasswordChangeWithSecurityInfos:
|
|||||||
def test_it_gets_text_body(
|
def test_it_gets_text_body(
|
||||||
self, app: Flask, lang: str, expected_text_body: str
|
self, app: Flask, lang: str, expected_text_body: str
|
||||||
) -> None:
|
) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES'],
|
||||||
|
)
|
||||||
|
|
||||||
text_body = email_template.get_content(
|
text_body = email_template.get_content(
|
||||||
'password_change', lang, 'body.txt', self.EMAIL_DATA
|
'password_change', lang, 'body.txt', self.EMAIL_DATA
|
||||||
@ -121,7 +145,11 @@ class TestEmailTemplateForPasswordChangeWithSecurityInfos:
|
|||||||
assert text_body == expected_text_body
|
assert text_body == expected_text_body
|
||||||
|
|
||||||
def test_it_gets_en_html_body(self, app: Flask) -> None:
|
def test_it_gets_en_html_body(self, app: Flask) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES'],
|
||||||
|
)
|
||||||
|
|
||||||
text_body = email_template.get_content(
|
text_body = email_template.get_content(
|
||||||
'password_change', 'en', 'body.html', self.EMAIL_DATA
|
'password_change', 'en', 'body.html', self.EMAIL_DATA
|
||||||
@ -130,7 +158,11 @@ class TestEmailTemplateForPasswordChangeWithSecurityInfos:
|
|||||||
assert expected_en_html_body_without_security in text_body
|
assert expected_en_html_body_without_security in text_body
|
||||||
|
|
||||||
def test_it_gets_fr_html_body(self, app: Flask) -> None:
|
def test_it_gets_fr_html_body(self, app: Flask) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES'],
|
||||||
|
)
|
||||||
|
|
||||||
text_body = email_template.get_content(
|
text_body = email_template.get_content(
|
||||||
'password_change', 'fr', 'body.html', self.EMAIL_DATA
|
'password_change', 'fr', 'body.html', self.EMAIL_DATA
|
||||||
|
@ -26,7 +26,11 @@ class TestEmailTemplateForPasswordRequest:
|
|||||||
def test_it_gets_subject(
|
def test_it_gets_subject(
|
||||||
self, app: Flask, lang: str, expected_subject: str
|
self, app: Flask, lang: str, expected_subject: str
|
||||||
) -> None:
|
) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES'],
|
||||||
|
)
|
||||||
|
|
||||||
subject = email_template.get_content(
|
subject = email_template.get_content(
|
||||||
'password_reset_request', lang, 'subject.txt', {}
|
'password_reset_request', lang, 'subject.txt', {}
|
||||||
@ -41,7 +45,11 @@ class TestEmailTemplateForPasswordRequest:
|
|||||||
def test_it_gets_text_body(
|
def test_it_gets_text_body(
|
||||||
self, app: Flask, lang: str, expected_text_body: str
|
self, app: Flask, lang: str, expected_text_body: str
|
||||||
) -> None:
|
) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES'],
|
||||||
|
)
|
||||||
email_data = {
|
email_data = {
|
||||||
'expiration_delay': '3 seconds' if lang == 'en' else '3 secondes',
|
'expiration_delay': '3 seconds' if lang == 'en' else '3 secondes',
|
||||||
'username': 'test',
|
'username': 'test',
|
||||||
@ -58,7 +66,11 @@ class TestEmailTemplateForPasswordRequest:
|
|||||||
assert text_body == expected_text_body
|
assert text_body == expected_text_body
|
||||||
|
|
||||||
def test_it_gets_en_html_body(self, app: Flask) -> None:
|
def test_it_gets_en_html_body(self, app: Flask) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES'],
|
||||||
|
)
|
||||||
email_data = {
|
email_data = {
|
||||||
'expiration_delay': '3 seconds',
|
'expiration_delay': '3 seconds',
|
||||||
'username': 'test',
|
'username': 'test',
|
||||||
@ -75,7 +87,11 @@ class TestEmailTemplateForPasswordRequest:
|
|||||||
assert expected_en_html_body in text_body
|
assert expected_en_html_body in text_body
|
||||||
|
|
||||||
def test_it_gets_fr_html_body(self, app: Flask) -> None:
|
def test_it_gets_fr_html_body(self, app: Flask) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES'],
|
||||||
|
)
|
||||||
email_data = {
|
email_data = {
|
||||||
'expiration_delay': '3 secondes',
|
'expiration_delay': '3 secondes',
|
||||||
'username': 'test',
|
'username': 'test',
|
||||||
@ -103,7 +119,11 @@ class TestEmailTemplateForPasswordRequestWithoutSecurityInfos:
|
|||||||
def test_it_gets_subject(
|
def test_it_gets_subject(
|
||||||
self, app: Flask, lang: str, expected_subject: str
|
self, app: Flask, lang: str, expected_subject: str
|
||||||
) -> None:
|
) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES'],
|
||||||
|
)
|
||||||
|
|
||||||
subject = email_template.get_content(
|
subject = email_template.get_content(
|
||||||
'password_reset_request', lang, 'subject.txt', {}
|
'password_reset_request', lang, 'subject.txt', {}
|
||||||
@ -121,7 +141,11 @@ class TestEmailTemplateForPasswordRequestWithoutSecurityInfos:
|
|||||||
def test_it_gets_text_body(
|
def test_it_gets_text_body(
|
||||||
self, app: Flask, lang: str, expected_text_body: str
|
self, app: Flask, lang: str, expected_text_body: str
|
||||||
) -> None:
|
) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES'],
|
||||||
|
)
|
||||||
email_data = {
|
email_data = {
|
||||||
'expiration_delay': '3 seconds' if lang == 'en' else '3 secondes',
|
'expiration_delay': '3 seconds' if lang == 'en' else '3 secondes',
|
||||||
'username': 'test',
|
'username': 'test',
|
||||||
@ -136,7 +160,11 @@ class TestEmailTemplateForPasswordRequestWithoutSecurityInfos:
|
|||||||
assert text_body == expected_text_body
|
assert text_body == expected_text_body
|
||||||
|
|
||||||
def test_it_gets_en_html_body(self, app: Flask) -> None:
|
def test_it_gets_en_html_body(self, app: Flask) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES'],
|
||||||
|
)
|
||||||
email_data = {
|
email_data = {
|
||||||
'expiration_delay': '3 seconds',
|
'expiration_delay': '3 seconds',
|
||||||
'username': 'test',
|
'username': 'test',
|
||||||
@ -151,7 +179,11 @@ class TestEmailTemplateForPasswordRequestWithoutSecurityInfos:
|
|||||||
assert expected_en_html_body_without_security in text_body
|
assert expected_en_html_body_without_security in text_body
|
||||||
|
|
||||||
def test_it_gets_fr_html_body(self, app: Flask) -> None:
|
def test_it_gets_fr_html_body(self, app: Flask) -> None:
|
||||||
email_template = EmailTemplate(app.config['TEMPLATES_FOLDER'])
|
email_template = EmailTemplate(
|
||||||
|
app.config['TEMPLATES_FOLDER'],
|
||||||
|
app.config['TRANSLATIONS_FOLDER'],
|
||||||
|
app.config['LANGUAGES'],
|
||||||
|
)
|
||||||
email_data = {
|
email_data = {
|
||||||
'expiration_delay': '3 secondes',
|
'expiration_delay': '3 secondes',
|
||||||
'username': 'test',
|
'username': 'test',
|
||||||
|
206
messages.pot
Normal file
206
messages.pot
Normal file
@ -0,0 +1,206 @@
|
|||||||
|
# Translations template for PROJECT.
|
||||||
|
# Copyright (C) 2022 ORGANIZATION
|
||||||
|
# This file is distributed under the same license as the PROJECT project.
|
||||||
|
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
|
||||||
|
#
|
||||||
|
#, fuzzy
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: PROJECT VERSION\n"
|
||||||
|
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||||
|
"POT-Creation-Date: 2022-07-03 07:58+0200\n"
|
||||||
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Generated-By: Babel 2.10.3\n"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/layout.html:215
|
||||||
|
#: fittrackee/emails/templates/layout.txt:1
|
||||||
|
#, python-format
|
||||||
|
msgid "Hi %(username)s,"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:6
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.txt:3
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:6
|
||||||
|
#: fittrackee/emails/templates/layout.html:218
|
||||||
|
#: fittrackee/emails/templates/password_change/body.txt:3
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:6
|
||||||
|
#, python-format
|
||||||
|
msgid ""
|
||||||
|
"For security, this request was received from a %(operating_system)s "
|
||||||
|
"device using %(browser_name)s."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/layout.html:221
|
||||||
|
#: fittrackee/emails/templates/layout.txt:5
|
||||||
|
msgid "Thanks,"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/layout.html:222
|
||||||
|
#: fittrackee/emails/templates/layout.txt:6
|
||||||
|
msgid "The FitTrackee Team"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:2
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/subject.txt:1
|
||||||
|
msgid "Confirm your account"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:3
|
||||||
|
msgid "Use this link to confirm your account."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:4
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:1
|
||||||
|
msgid "You have created an account on FitTrackee."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:4
|
||||||
|
msgid "Use the button below to confirm your address email."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:11
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:4
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:11
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:4
|
||||||
|
msgid "Verify your email"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:18
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:7
|
||||||
|
msgid ""
|
||||||
|
"If this account creation wasn't initiated by you, please ignore this "
|
||||||
|
"email."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:22
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:22
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:24
|
||||||
|
msgid ""
|
||||||
|
"If you're having trouble with the button above, copy and paste the URL "
|
||||||
|
"below into your web browser."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:2
|
||||||
|
msgid "Use the link below to confirm your address email."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.html:2
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/subject.txt:1
|
||||||
|
msgid "Email changed"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.html:3
|
||||||
|
msgid "Your email is being updated."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.html:4
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.txt:1
|
||||||
|
msgid ""
|
||||||
|
"You recently requested to change your email address for your FitTrackee "
|
||||||
|
"account to:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.html:18
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.txt:4
|
||||||
|
msgid ""
|
||||||
|
"If this email change wasn't initiated by you, please change your password"
|
||||||
|
" immediately or contact your administrator if your account is locked."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:2
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/subject.txt:1
|
||||||
|
msgid "Confirm email change"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:3
|
||||||
|
msgid "Use this link to confirm email change."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:4
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:1
|
||||||
|
msgid ""
|
||||||
|
"You recently requested to change your email address for your FitTrackee "
|
||||||
|
"account."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:4
|
||||||
|
msgid "Use the button below to confirm this address."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:18
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:7
|
||||||
|
msgid "If this email change wasn't initiated by you, please ignore this email."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:2
|
||||||
|
msgid "Use the link below to confirm this address."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_change/body.html:2
|
||||||
|
#: fittrackee/emails/templates/password_change/subject.txt:1
|
||||||
|
msgid "Password changed"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_change/body.html:3
|
||||||
|
msgid "Your password has been changed."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_change/body.html:4
|
||||||
|
#: fittrackee/emails/templates/password_change/body.txt:1
|
||||||
|
msgid "The password for your FitTrackee account has been changed."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_change/body.html:5
|
||||||
|
#: fittrackee/emails/templates/password_change/body.txt:4
|
||||||
|
msgid ""
|
||||||
|
"If this password change wasn't initiated by you, please change your "
|
||||||
|
"password immediately or contact your administrator if your account is "
|
||||||
|
"locked."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:2
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/subject.txt:1
|
||||||
|
msgid "Password reset request"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:3
|
||||||
|
#, python-format
|
||||||
|
msgid ""
|
||||||
|
"Use this link to reset your password. The link is only valid for "
|
||||||
|
"%(expiration_delay)s."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:4
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:1
|
||||||
|
msgid "You recently requested to reset your password for your FitTrackee account."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:4
|
||||||
|
msgid "Use the button below to reset it."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:5
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:2
|
||||||
|
#, python-format
|
||||||
|
msgid "This password reset link is only valid for %(expiration_delay)s."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:13
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:4
|
||||||
|
msgid "Reset your password"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:20
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:7
|
||||||
|
msgid "If you did not request a password reset, please ignore this email."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:1
|
||||||
|
msgid "Use the link below to reset it."
|
||||||
|
msgstr ""
|
||||||
|
|
4
poetry.lock
generated
4
poetry.lock
generated
@ -68,7 +68,7 @@ tests_no_zope = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>
|
|||||||
name = "babel"
|
name = "babel"
|
||||||
version = "2.10.3"
|
version = "2.10.3"
|
||||||
description = "Internationalization utilities"
|
description = "Internationalization utilities"
|
||||||
category = "dev"
|
category = "main"
|
||||||
optional = false
|
optional = false
|
||||||
python-versions = ">=3.6"
|
python-versions = ">=3.6"
|
||||||
|
|
||||||
@ -1466,7 +1466,7 @@ testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "pytest-
|
|||||||
[metadata]
|
[metadata]
|
||||||
lock-version = "1.1"
|
lock-version = "1.1"
|
||||||
python-versions = "^3.7"
|
python-versions = "^3.7"
|
||||||
content-hash = "327d5c6a151cd6c0130a2e1f980fd5e8259ea59a9972407947c9a64124033c0a"
|
content-hash = "fabbeac65ba304e8051b1453c13f872ef5fc8ed1a6ea7cc236a6d8ede34d9600"
|
||||||
|
|
||||||
[metadata.files]
|
[metadata.files]
|
||||||
alabaster = [
|
alabaster = [
|
||||||
|
@ -41,6 +41,7 @@ staticmap = "^0.5.4"
|
|||||||
SQLAlchemy = "1.4.37"
|
SQLAlchemy = "1.4.37"
|
||||||
pyOpenSSL = "^22.0"
|
pyOpenSSL = "^22.0"
|
||||||
ua-parser = "^0.10.0"
|
ua-parser = "^0.10.0"
|
||||||
|
Babel = "^2.10.3"
|
||||||
|
|
||||||
[tool.poetry.dev-dependencies]
|
[tool.poetry.dev-dependencies]
|
||||||
black = "^22.3"
|
black = "^22.3"
|
||||||
|
Loading…
Reference in New Issue
Block a user