✨(email) white brand email
The email was branded "La Suite Numérique", we updated the template to make it generic, we will use settings env variables to customize the email for each brand.
This commit is contained in:
@@ -12,6 +12,7 @@ and this project adheres to
|
|||||||
## Added
|
## Added
|
||||||
|
|
||||||
- ✨(backend) add server-to-server API endpoint to create documents #467
|
- ✨(backend) add server-to-server API endpoint to create documents #467
|
||||||
|
- ✨(email) white brand email #412
|
||||||
|
|
||||||
|
|
||||||
## [1.9.0] - 2024-12-11
|
## [1.9.0] - 2024-12-11
|
||||||
|
|||||||
@@ -16,7 +16,9 @@ PYTHONPATH=/app
|
|||||||
# impress settings
|
# impress settings
|
||||||
|
|
||||||
# Mail
|
# Mail
|
||||||
|
DJANGO_EMAIL_BRAND_NAME="La Suite Numérique"
|
||||||
DJANGO_EMAIL_HOST="mailcatcher"
|
DJANGO_EMAIL_HOST="mailcatcher"
|
||||||
|
DJANGO_EMAIL_LOGO_IMG="http://localhost:3000/assets/logo-suite-numerique.png"
|
||||||
DJANGO_EMAIL_PORT=1025
|
DJANGO_EMAIL_PORT=1025
|
||||||
|
|
||||||
# Backend url
|
# Backend url
|
||||||
|
|||||||
@@ -552,9 +552,11 @@ class Document(BaseModel):
|
|||||||
language = language or get_language()
|
language = language or get_language()
|
||||||
context.update(
|
context.update(
|
||||||
{
|
{
|
||||||
|
"brandname": settings.EMAIL_BRAND_NAME,
|
||||||
|
"document": self,
|
||||||
"domain": domain,
|
"domain": domain,
|
||||||
"link": f"{domain}/docs/{self.id}/",
|
"link": f"{domain}/docs/{self.id}/",
|
||||||
"document": self,
|
"logo_img": settings.EMAIL_LOGO_IMG,
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ from datetime import timedelta
|
|||||||
from unittest import mock
|
from unittest import mock
|
||||||
|
|
||||||
from django.core import mail
|
from django.core import mail
|
||||||
|
from django.test import override_settings
|
||||||
from django.utils import timezone
|
from django.utils import timezone
|
||||||
|
|
||||||
import pytest
|
import pytest
|
||||||
@@ -339,6 +340,7 @@ def test_api_document_invitations_create_authenticated_outsider():
|
|||||||
assert response.status_code == 403
|
assert response.status_code == 403
|
||||||
|
|
||||||
|
|
||||||
|
@override_settings(EMAIL_BRAND_NAME="My brand name", EMAIL_LOGO_IMG="my-img.jpg")
|
||||||
@pytest.mark.parametrize(
|
@pytest.mark.parametrize(
|
||||||
"inviting,invited,response_code",
|
"inviting,invited,response_code",
|
||||||
(
|
(
|
||||||
@@ -407,6 +409,8 @@ def test_api_document_invitations_create_privileged_members(
|
|||||||
f"{user.full_name} ({user.email}) invited you with the role ``{invited}`` "
|
f"{user.full_name} ({user.email}) invited you with the role ``{invited}`` "
|
||||||
f"on the following document: {document.title}"
|
f"on the following document: {document.title}"
|
||||||
) in email_content
|
) in email_content
|
||||||
|
assert "My brand name" in email_content
|
||||||
|
assert "my-img.jpg" in email_content
|
||||||
else:
|
else:
|
||||||
assert models.Invitation.objects.exists() is False
|
assert models.Invitation.objects.exists() is False
|
||||||
|
|
||||||
@@ -453,7 +457,7 @@ def test_api_document_invitations_create_email_from_content_language():
|
|||||||
assert email.to == ["guest@example.com"]
|
assert email.to == ["guest@example.com"]
|
||||||
|
|
||||||
email_content = " ".join(email.body.split())
|
email_content = " ".join(email.body.split())
|
||||||
assert f"{user.full_name} a partagé un document avec vous !" in email_content
|
assert f"{user.full_name} a partagé un document avec vous!" in email_content
|
||||||
|
|
||||||
|
|
||||||
def test_api_document_invitations_create_email_from_content_language_not_supported():
|
def test_api_document_invitations_create_email_from_content_language_not_supported():
|
||||||
|
|||||||
@@ -352,9 +352,11 @@ class Base(Configuration):
|
|||||||
|
|
||||||
# Mail
|
# Mail
|
||||||
EMAIL_BACKEND = values.Value("django.core.mail.backends.smtp.EmailBackend")
|
EMAIL_BACKEND = values.Value("django.core.mail.backends.smtp.EmailBackend")
|
||||||
|
EMAIL_BRAND_NAME = values.Value(None)
|
||||||
EMAIL_HOST = values.Value(None)
|
EMAIL_HOST = values.Value(None)
|
||||||
EMAIL_HOST_USER = values.Value(None)
|
EMAIL_HOST_USER = values.Value(None)
|
||||||
EMAIL_HOST_PASSWORD = values.Value(None)
|
EMAIL_HOST_PASSWORD = values.Value(None)
|
||||||
|
EMAIL_LOGO_IMG = values.Value(None)
|
||||||
EMAIL_PORT = values.PositiveIntegerValue(None)
|
EMAIL_PORT = values.PositiveIntegerValue(None)
|
||||||
EMAIL_USE_TLS = values.BooleanValue(False)
|
EMAIL_USE_TLS = values.BooleanValue(False)
|
||||||
EMAIL_USE_SSL = values.BooleanValue(False)
|
EMAIL_USE_SSL = values.BooleanValue(False)
|
||||||
|
|||||||
Binary file not shown.
@@ -2,46 +2,66 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: lasuite-people\n"
|
"Project-Id-Version: lasuite-people\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2024-09-25 10:15+0000\n"
|
"POT-Creation-Date: 2024-12-13 15:17+0000\n"
|
||||||
"PO-Revision-Date: 2024-09-25 10:21\n"
|
"PO-Revision-Date: 2024-12-13 15:22\n"
|
||||||
"Last-Translator: \n"
|
"Last-Translator: \n"
|
||||||
"Language-Team: German\n"
|
"Language-Team: German\n"
|
||||||
"Language: de_DE\n"
|
"Language: de_DE\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Crowdin-Project: lasuite-people\n"
|
"X-Crowdin-Project: lasuite-people\n"
|
||||||
"X-Crowdin-Project-ID: 637934\n"
|
"X-Crowdin-Project-ID: 637934\n"
|
||||||
"X-Crowdin-Language: de\n"
|
"X-Crowdin-Language: de\n"
|
||||||
"X-Crowdin-File: backend-impress.pot\n"
|
"X-Crowdin-File: backend-impress.pot\n"
|
||||||
"X-Crowdin-File-ID: 8\n"
|
"X-Crowdin-File-ID: 8\n"
|
||||||
|
|
||||||
#: core/admin.py:32
|
#: core/admin.py:33
|
||||||
msgid "Personal info"
|
msgid "Personal info"
|
||||||
msgstr "Persönliche Angaben"
|
msgstr "Persönliche Daten"
|
||||||
|
|
||||||
#: core/admin.py:34
|
#: core/admin.py:46
|
||||||
msgid "Permissions"
|
msgid "Permissions"
|
||||||
msgstr "Berechtigungen"
|
msgstr "Berechtigungen"
|
||||||
|
|
||||||
#: core/admin.py:46
|
#: core/admin.py:58
|
||||||
msgid "Important dates"
|
msgid "Important dates"
|
||||||
msgstr "Wichtige Termine"
|
msgstr "Wichtige Daten"
|
||||||
|
|
||||||
#: core/api/serializers.py:253
|
#: core/api/filters.py:16
|
||||||
|
msgid "Creator is me"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/api/filters.py:19
|
||||||
|
msgid "Favorite"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/api/filters.py:22
|
||||||
|
msgid "Title"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/api/serializers.py:307
|
||||||
|
msgid "A new document was created on your behalf!"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/api/serializers.py:311
|
||||||
|
msgid "You have been granted ownership of a new document:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/api/serializers.py:414
|
||||||
msgid "Body"
|
msgid "Body"
|
||||||
msgstr ""
|
msgstr "Inhalt"
|
||||||
|
|
||||||
#: core/api/serializers.py:256
|
#: core/api/serializers.py:417
|
||||||
msgid "Body type"
|
msgid "Body type"
|
||||||
msgstr ""
|
msgstr "Typ"
|
||||||
|
|
||||||
#: core/api/serializers.py:262
|
#: core/api/serializers.py:423
|
||||||
msgid "Format"
|
msgid "Format"
|
||||||
msgstr ""
|
msgstr "Format"
|
||||||
|
|
||||||
#: core/authentication/backends.py:56
|
#: core/authentication/backends.py:57
|
||||||
msgid "Invalid response format or token verification failed"
|
msgid "Invalid response format or token verification failed"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -49,17 +69,17 @@ msgstr ""
|
|||||||
msgid "User info contained no recognizable user identification"
|
msgid "User info contained no recognizable user identification"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/authentication/backends.py:101
|
#: core/authentication/backends.py:88
|
||||||
msgid "Claims contained no recognizable user identification"
|
msgid "User account is disabled"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:62 core/models.py:69
|
#: core/models.py:62 core/models.py:69
|
||||||
msgid "Reader"
|
msgid "Reader"
|
||||||
msgstr "Leser"
|
msgstr "Lesen"
|
||||||
|
|
||||||
#: core/models.py:63 core/models.py:70
|
#: core/models.py:63 core/models.py:70
|
||||||
msgid "Editor"
|
msgid "Editor"
|
||||||
msgstr "Bearbeiter"
|
msgstr "Bearbeiten"
|
||||||
|
|
||||||
#: core/models.py:71
|
#: core/models.py:71
|
||||||
msgid "Administrator"
|
msgid "Administrator"
|
||||||
@@ -67,283 +87,308 @@ msgstr "Administrator"
|
|||||||
|
|
||||||
#: core/models.py:72
|
#: core/models.py:72
|
||||||
msgid "Owner"
|
msgid "Owner"
|
||||||
msgstr "Eigentümer"
|
msgstr "Besitzer"
|
||||||
|
|
||||||
#: core/models.py:80
|
#: core/models.py:83
|
||||||
msgid "Restricted"
|
msgid "Restricted"
|
||||||
msgstr "Eingeschränkt"
|
msgstr "Beschränkt"
|
||||||
|
|
||||||
#: core/models.py:84
|
#: core/models.py:87
|
||||||
msgid "Authenticated"
|
msgid "Authenticated"
|
||||||
msgstr "Authentifiziert"
|
msgstr "Authentifiziert"
|
||||||
|
|
||||||
#: core/models.py:86
|
#: core/models.py:89
|
||||||
msgid "Public"
|
msgid "Public"
|
||||||
msgstr "Öffentlich"
|
msgstr "Öffentlich"
|
||||||
|
|
||||||
#: core/models.py:98
|
#: core/models.py:101
|
||||||
msgid "id"
|
msgid "id"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:99
|
#: core/models.py:102
|
||||||
msgid "primary key for the record as UUID"
|
msgid "primary key for the record as UUID"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:105
|
#: core/models.py:108
|
||||||
msgid "created on"
|
msgid "created on"
|
||||||
msgstr ""
|
msgstr "Erstellt"
|
||||||
|
|
||||||
#: core/models.py:106
|
#: core/models.py:109
|
||||||
msgid "date and time at which a record was created"
|
msgid "date and time at which a record was created"
|
||||||
msgstr ""
|
msgstr "Datum und Uhrzeit, an dem ein Datensatz erstellt wurde"
|
||||||
|
|
||||||
#: core/models.py:111
|
#: core/models.py:114
|
||||||
msgid "updated on"
|
msgid "updated on"
|
||||||
msgstr ""
|
msgstr "Aktualisiert"
|
||||||
|
|
||||||
#: core/models.py:112
|
#: core/models.py:115
|
||||||
msgid "date and time at which a record was last updated"
|
msgid "date and time at which a record was last updated"
|
||||||
|
msgstr "Datum und Uhrzeit, an dem zuletzt aktualisiert wurde"
|
||||||
|
|
||||||
|
#: core/models.py:135
|
||||||
|
msgid "Enter a valid sub. This value may contain only letters, numbers, and @/./+/-/_/: characters."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:132
|
#: core/models.py:141
|
||||||
msgid "Enter a valid sub. This value may contain only letters, numbers, and @/./+/-/_ characters."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: core/models.py:138
|
|
||||||
msgid "sub"
|
msgid "sub"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:140
|
#: core/models.py:143
|
||||||
msgid "Required. 255 characters or fewer. Letters, numbers, and @/./+/-/_ characters only."
|
msgid "Required. 255 characters or fewer. Letters, numbers, and @/./+/-/_/: characters only."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:148
|
#: core/models.py:152
|
||||||
msgid "identity email address"
|
msgid "full name"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:153
|
#: core/models.py:153
|
||||||
msgid "admin email address"
|
msgid "short name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/models.py:155
|
||||||
|
msgid "identity email address"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:160
|
#: core/models.py:160
|
||||||
msgid "language"
|
msgid "admin email address"
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: core/models.py:161
|
|
||||||
msgid "The language in which the user wants to see the interface."
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:167
|
#: core/models.py:167
|
||||||
|
msgid "language"
|
||||||
|
msgstr "Sprache"
|
||||||
|
|
||||||
|
#: core/models.py:168
|
||||||
|
msgid "The language in which the user wants to see the interface."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/models.py:174
|
||||||
msgid "The timezone in which the user wants to see times."
|
msgid "The timezone in which the user wants to see times."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:170
|
#: core/models.py:177
|
||||||
msgid "device"
|
msgid "device"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:172
|
#: core/models.py:179
|
||||||
msgid "Whether the user is a device or a real user."
|
msgid "Whether the user is a device or a real user."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:175
|
#: core/models.py:182
|
||||||
msgid "staff status"
|
msgid "staff status"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:177
|
#: core/models.py:184
|
||||||
msgid "Whether the user can log into this admin site."
|
msgid "Whether the user can log into this admin site."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:180
|
#: core/models.py:187
|
||||||
msgid "active"
|
msgid "active"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:183
|
#: core/models.py:190
|
||||||
msgid "Whether this user should be treated as active. Unselect this instead of deleting accounts."
|
msgid "Whether this user should be treated as active. Unselect this instead of deleting accounts."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:195
|
#: core/models.py:202
|
||||||
msgid "user"
|
msgid "user"
|
||||||
msgstr ""
|
msgstr "Benutzer"
|
||||||
|
|
||||||
#: core/models.py:196
|
#: core/models.py:203
|
||||||
msgid "users"
|
msgid "users"
|
||||||
msgstr ""
|
msgstr "Benutzer"
|
||||||
|
|
||||||
#: core/models.py:328 core/models.py:644
|
#: core/models.py:342 core/models.py:718
|
||||||
msgid "title"
|
msgid "title"
|
||||||
msgstr ""
|
msgstr "Titel"
|
||||||
|
|
||||||
#: core/models.py:343
|
#: core/models.py:364
|
||||||
msgid "Document"
|
msgid "Document"
|
||||||
msgstr ""
|
msgstr "Dokument"
|
||||||
|
|
||||||
#: core/models.py:344
|
#: core/models.py:365
|
||||||
msgid "Documents"
|
msgid "Documents"
|
||||||
msgstr ""
|
msgstr "Dokumente"
|
||||||
|
|
||||||
#: core/models.py:347
|
#: core/models.py:368
|
||||||
msgid "Untitled Document"
|
msgid "Untitled Document"
|
||||||
|
msgstr "Unbenanntes Dokument"
|
||||||
|
|
||||||
|
#: core/models.py:593
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "{name} shared a document with you!"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:537
|
#: core/models.py:597
|
||||||
#, python-format
|
#, python-brace-format
|
||||||
msgid "%(username)s shared a document with you: %(document)s"
|
msgid "{name} invited you with the role ``{role}`` on the following document:"
|
||||||
msgstr "%(username)s hat ein Dokument mit Ihnen geteilt: %(document)s"
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:580
|
#: core/models.py:600
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "{name} shared a document with you: {title}"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/models.py:623
|
||||||
msgid "Document/user link trace"
|
msgid "Document/user link trace"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:581
|
#: core/models.py:624
|
||||||
msgid "Document/user link traces"
|
msgid "Document/user link traces"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:587
|
#: core/models.py:630
|
||||||
msgid "A link trace already exists for this document/user."
|
msgid "A link trace already exists for this document/user."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:608
|
#: core/models.py:653
|
||||||
|
msgid "Document favorite"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/models.py:654
|
||||||
|
msgid "Document favorites"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/models.py:660
|
||||||
|
msgid "This document is already targeted by a favorite relation instance for the same user."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/models.py:682
|
||||||
msgid "Document/user relation"
|
msgid "Document/user relation"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:609
|
#: core/models.py:683
|
||||||
msgid "Document/user relations"
|
msgid "Document/user relations"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:615
|
#: core/models.py:689
|
||||||
msgid "This user is already in this document."
|
msgid "This user is already in this document."
|
||||||
msgstr ""
|
msgstr "Dieser Benutzer befindet sich bereits in diesem Dokument."
|
||||||
|
|
||||||
#: core/models.py:621
|
#: core/models.py:695
|
||||||
msgid "This team is already in this document."
|
msgid "This team is already in this document."
|
||||||
msgstr ""
|
msgstr "Dieses Team befindet sich bereits in diesem Dokument."
|
||||||
|
|
||||||
#: core/models.py:627 core/models.py:816
|
#: core/models.py:701 core/models.py:890
|
||||||
msgid "Either user or team must be set, not both."
|
msgid "Either user or team must be set, not both."
|
||||||
msgstr ""
|
msgstr "Benutzer oder Team müssen gesetzt werden, nicht beides."
|
||||||
|
|
||||||
#: core/models.py:645
|
#: core/models.py:719
|
||||||
msgid "description"
|
msgid "description"
|
||||||
msgstr ""
|
msgstr "Beschreibung"
|
||||||
|
|
||||||
#: core/models.py:646
|
#: core/models.py:720
|
||||||
msgid "code"
|
msgid "code"
|
||||||
msgstr ""
|
msgstr "Code"
|
||||||
|
|
||||||
#: core/models.py:647
|
#: core/models.py:721
|
||||||
msgid "css"
|
msgid "css"
|
||||||
msgstr ""
|
msgstr "CSS"
|
||||||
|
|
||||||
#: core/models.py:649
|
#: core/models.py:723
|
||||||
msgid "public"
|
msgid "public"
|
||||||
msgstr ""
|
msgstr "öffentlich"
|
||||||
|
|
||||||
#: core/models.py:651
|
#: core/models.py:725
|
||||||
msgid "Whether this template is public for anyone to use."
|
msgid "Whether this template is public for anyone to use."
|
||||||
msgstr ""
|
msgstr "Ob diese Vorlage für jedermann öffentlich ist."
|
||||||
|
|
||||||
#: core/models.py:657
|
#: core/models.py:731
|
||||||
msgid "Template"
|
msgid "Template"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:658
|
#: core/models.py:732
|
||||||
msgid "Templates"
|
msgid "Templates"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:797
|
#: core/models.py:871
|
||||||
msgid "Template/user relation"
|
msgid "Template/user relation"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:798
|
#: core/models.py:872
|
||||||
msgid "Template/user relations"
|
msgid "Template/user relations"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:804
|
#: core/models.py:878
|
||||||
msgid "This user is already in this template."
|
msgid "This user is already in this template."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:810
|
#: core/models.py:884
|
||||||
msgid "This team is already in this template."
|
msgid "This team is already in this template."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:833
|
#: core/models.py:907
|
||||||
msgid "email address"
|
msgid "email address"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:850
|
#: core/models.py:926
|
||||||
msgid "Document invitation"
|
msgid "Document invitation"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:851
|
#: core/models.py:927
|
||||||
msgid "Document invitations"
|
msgid "Document invitations"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:868
|
#: core/models.py:944
|
||||||
msgid "This email is already associated to a registered user."
|
msgid "This email is already associated to a registered user."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/templates/mail/html/invitation.html:160
|
#: core/templates/mail/html/hello.html:159 core/templates/mail/text/hello.txt:3
|
||||||
#: core/templates/mail/html/invitation2.html:160
|
msgid "Company logo"
|
||||||
#: core/templates/mail/text/invitation.txt:3
|
|
||||||
#: core/templates/mail/text/invitation2.txt:3
|
|
||||||
msgid "La Suite Numérique"
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/templates/mail/html/invitation.html:190
|
#: core/templates/mail/html/hello.html:188 core/templates/mail/text/hello.txt:5
|
||||||
#: core/templates/mail/text/invitation.txt:6
|
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid " %(username)s shared a document with you ! "
|
msgid "Hello %(name)s"
|
||||||
msgstr " %(username)s hat ein Dokument mit Ihnen geteilt! "
|
msgstr ""
|
||||||
|
|
||||||
#: core/templates/mail/html/invitation.html:197
|
#: core/templates/mail/html/hello.html:188 core/templates/mail/text/hello.txt:5
|
||||||
#: core/templates/mail/text/invitation.txt:8
|
msgid "Hello"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/templates/mail/html/hello.html:189 core/templates/mail/text/hello.txt:6
|
||||||
|
msgid "Thank you very much for your visit!"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/templates/mail/html/hello.html:221
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid " %(username)s invited you as an %(role)s on the following document : "
|
msgid "This mail has been sent to %(email)s by <a href=\"%(href)s\">%(name)s</a>"
|
||||||
msgstr " %(username)s hat Sie als %(role)s zum folgenden Dokument eingeladen: "
|
msgstr ""
|
||||||
|
|
||||||
#: core/templates/mail/html/invitation.html:206
|
#: core/templates/mail/html/invitation.html:162
|
||||||
#: core/templates/mail/html/invitation2.html:211
|
#: core/templates/mail/text/invitation.txt:3
|
||||||
|
msgid "Logo email"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/templates/mail/html/invitation.html:209
|
||||||
#: core/templates/mail/text/invitation.txt:10
|
#: core/templates/mail/text/invitation.txt:10
|
||||||
#: core/templates/mail/text/invitation2.txt:11
|
|
||||||
msgid "Open"
|
msgid "Open"
|
||||||
msgstr "Öffnen"
|
msgstr ""
|
||||||
|
|
||||||
#: core/templates/mail/html/invitation.html:223
|
#: core/templates/mail/html/invitation.html:226
|
||||||
#: core/templates/mail/text/invitation.txt:14
|
#: core/templates/mail/text/invitation.txt:14
|
||||||
msgid " Docs, your new essential tool for organizing, sharing and collaborate on your documents as a team. "
|
msgid " Docs, your new essential tool for organizing, sharing and collaborating on your documents as a team. "
|
||||||
msgstr " Docs, Ihr neues unverzichtbares Werkzeug zum Organisieren, Teilen und Zusammenarbeiten an Dokumenten im Team. "
|
msgstr ""
|
||||||
|
|
||||||
#: core/templates/mail/html/invitation.html:230
|
#: core/templates/mail/html/invitation.html:233
|
||||||
#: core/templates/mail/html/invitation2.html:235
|
|
||||||
#: core/templates/mail/text/invitation.txt:16
|
#: core/templates/mail/text/invitation.txt:16
|
||||||
#: core/templates/mail/text/invitation2.txt:17
|
|
||||||
msgid "Brought to you by La Suite Numérique"
|
|
||||||
msgstr "Bereitgestellt von La Suite Numérique"
|
|
||||||
|
|
||||||
#: core/templates/mail/html/invitation2.html:190
|
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "%(username)s shared a document with you"
|
msgid " Brought to you by %(brandname)s "
|
||||||
msgstr "%(username)s hat ein Dokument mit Ihnen geteilt"
|
msgstr ""
|
||||||
|
|
||||||
#: core/templates/mail/html/invitation2.html:197
|
#: core/templates/mail/text/hello.txt:8
|
||||||
#: core/templates/mail/text/invitation2.txt:8
|
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "%(username)s invited you as an %(role)s on the following document :"
|
msgid "This mail has been sent to %(email)s by %(name)s [%(href)s]"
|
||||||
msgstr "%(username)s hat Sie als %(role)s zum folgenden Dokument eingeladen:"
|
msgstr ""
|
||||||
|
|
||||||
#: core/templates/mail/html/invitation2.html:228
|
#: impress/settings.py:236
|
||||||
#: core/templates/mail/text/invitation2.txt:15
|
|
||||||
msgid "Docs, your new essential tool for organizing, sharing and collaborate on your document as a team."
|
|
||||||
msgstr "Docs, Ihr neues unverzichtbares Werkzeug zum Organisieren, Teilen und gemeinsamen Arbeiten an Dokumenten im Team."
|
|
||||||
|
|
||||||
#: impress/settings.py:177
|
|
||||||
msgid "English"
|
msgid "English"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: impress/settings.py:178
|
#: impress/settings.py:237
|
||||||
msgid "French"
|
msgid "French"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: impress/settings.py:176
|
#: impress/settings.py:238
|
||||||
msgid "German"
|
msgid "German"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
@@ -2,8 +2,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: lasuite-people\n"
|
"Project-Id-Version: lasuite-people\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2024-10-15 07:19+0000\n"
|
"POT-Creation-Date: 2024-12-13 15:17+0000\n"
|
||||||
"PO-Revision-Date: 2024-10-15 07:23\n"
|
"PO-Revision-Date: 2024-12-13 15:22\n"
|
||||||
"Last-Translator: \n"
|
"Last-Translator: \n"
|
||||||
"Language-Team: English\n"
|
"Language-Team: English\n"
|
||||||
"Language: en_US\n"
|
"Language: en_US\n"
|
||||||
@@ -29,15 +29,35 @@ msgstr ""
|
|||||||
msgid "Important dates"
|
msgid "Important dates"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/api/serializers.py:253
|
#: core/api/filters.py:16
|
||||||
|
msgid "Creator is me"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/api/filters.py:19
|
||||||
|
msgid "Favorite"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/api/filters.py:22
|
||||||
|
msgid "Title"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/api/serializers.py:307
|
||||||
|
msgid "A new document was created on your behalf!"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/api/serializers.py:311
|
||||||
|
msgid "You have been granted ownership of a new document:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/api/serializers.py:414
|
||||||
msgid "Body"
|
msgid "Body"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/api/serializers.py:256
|
#: core/api/serializers.py:417
|
||||||
msgid "Body type"
|
msgid "Body type"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/api/serializers.py:262
|
#: core/api/serializers.py:423
|
||||||
msgid "Format"
|
msgid "Format"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -49,6 +69,10 @@ msgstr ""
|
|||||||
msgid "User info contained no recognizable user identification"
|
msgid "User info contained no recognizable user identification"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/authentication/backends.py:88
|
||||||
|
msgid "User account is disabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:62 core/models.py:69
|
#: core/models.py:62 core/models.py:69
|
||||||
msgid "Reader"
|
msgid "Reader"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -65,224 +89,246 @@ msgstr ""
|
|||||||
msgid "Owner"
|
msgid "Owner"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:80
|
#: core/models.py:83
|
||||||
msgid "Restricted"
|
msgid "Restricted"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:84
|
#: core/models.py:87
|
||||||
msgid "Authenticated"
|
msgid "Authenticated"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:86
|
#: core/models.py:89
|
||||||
msgid "Public"
|
msgid "Public"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:98
|
#: core/models.py:101
|
||||||
msgid "id"
|
msgid "id"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:99
|
#: core/models.py:102
|
||||||
msgid "primary key for the record as UUID"
|
msgid "primary key for the record as UUID"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:105
|
#: core/models.py:108
|
||||||
msgid "created on"
|
msgid "created on"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:106
|
#: core/models.py:109
|
||||||
msgid "date and time at which a record was created"
|
msgid "date and time at which a record was created"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:111
|
#: core/models.py:114
|
||||||
msgid "updated on"
|
msgid "updated on"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:112
|
#: core/models.py:115
|
||||||
msgid "date and time at which a record was last updated"
|
msgid "date and time at which a record was last updated"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:132
|
#: core/models.py:135
|
||||||
msgid "Enter a valid sub. This value may contain only letters, numbers, and @/./+/-/_ characters."
|
msgid "Enter a valid sub. This value may contain only letters, numbers, and @/./+/-/_/: characters."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:138
|
#: core/models.py:141
|
||||||
msgid "sub"
|
msgid "sub"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:140
|
#: core/models.py:143
|
||||||
msgid "Required. 255 characters or fewer. Letters, numbers, and @/./+/-/_ characters only."
|
msgid "Required. 255 characters or fewer. Letters, numbers, and @/./+/-/_/: characters only."
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: core/models.py:149
|
|
||||||
msgid "full name"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: core/models.py:150
|
|
||||||
msgid "short name"
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:152
|
#: core/models.py:152
|
||||||
|
msgid "full name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/models.py:153
|
||||||
|
msgid "short name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/models.py:155
|
||||||
msgid "identity email address"
|
msgid "identity email address"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:157
|
#: core/models.py:160
|
||||||
msgid "admin email address"
|
msgid "admin email address"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:164
|
#: core/models.py:167
|
||||||
msgid "language"
|
msgid "language"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:165
|
#: core/models.py:168
|
||||||
msgid "The language in which the user wants to see the interface."
|
msgid "The language in which the user wants to see the interface."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:171
|
#: core/models.py:174
|
||||||
msgid "The timezone in which the user wants to see times."
|
msgid "The timezone in which the user wants to see times."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:174
|
#: core/models.py:177
|
||||||
msgid "device"
|
msgid "device"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:176
|
#: core/models.py:179
|
||||||
msgid "Whether the user is a device or a real user."
|
msgid "Whether the user is a device or a real user."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:179
|
#: core/models.py:182
|
||||||
msgid "staff status"
|
msgid "staff status"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:181
|
#: core/models.py:184
|
||||||
msgid "Whether the user can log into this admin site."
|
msgid "Whether the user can log into this admin site."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:184
|
#: core/models.py:187
|
||||||
msgid "active"
|
msgid "active"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:187
|
#: core/models.py:190
|
||||||
msgid "Whether this user should be treated as active. Unselect this instead of deleting accounts."
|
msgid "Whether this user should be treated as active. Unselect this instead of deleting accounts."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:199
|
#: core/models.py:202
|
||||||
msgid "user"
|
msgid "user"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:200
|
#: core/models.py:203
|
||||||
msgid "users"
|
msgid "users"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:332 core/models.py:638
|
#: core/models.py:342 core/models.py:718
|
||||||
msgid "title"
|
msgid "title"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:347
|
#: core/models.py:364
|
||||||
msgid "Document"
|
msgid "Document"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:348
|
#: core/models.py:365
|
||||||
msgid "Documents"
|
msgid "Documents"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:351
|
#: core/models.py:368
|
||||||
msgid "Untitled Document"
|
msgid "Untitled Document"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:530
|
#: core/models.py:593
|
||||||
#, python-format
|
#, python-brace-format
|
||||||
msgid "%(sender_name)s shared a document with you: %(document)s"
|
msgid "{name} shared a document with you!"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:574
|
#: core/models.py:597
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "{name} invited you with the role ``{role}`` on the following document:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/models.py:600
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "{name} shared a document with you: {title}"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/models.py:623
|
||||||
msgid "Document/user link trace"
|
msgid "Document/user link trace"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:575
|
#: core/models.py:624
|
||||||
msgid "Document/user link traces"
|
msgid "Document/user link traces"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:581
|
#: core/models.py:630
|
||||||
msgid "A link trace already exists for this document/user."
|
msgid "A link trace already exists for this document/user."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:602
|
#: core/models.py:653
|
||||||
|
msgid "Document favorite"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/models.py:654
|
||||||
|
msgid "Document favorites"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/models.py:660
|
||||||
|
msgid "This document is already targeted by a favorite relation instance for the same user."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/models.py:682
|
||||||
msgid "Document/user relation"
|
msgid "Document/user relation"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:603
|
#: core/models.py:683
|
||||||
msgid "Document/user relations"
|
msgid "Document/user relations"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:609
|
#: core/models.py:689
|
||||||
msgid "This user is already in this document."
|
msgid "This user is already in this document."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:615
|
#: core/models.py:695
|
||||||
msgid "This team is already in this document."
|
msgid "This team is already in this document."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:621 core/models.py:810
|
#: core/models.py:701 core/models.py:890
|
||||||
msgid "Either user or team must be set, not both."
|
msgid "Either user or team must be set, not both."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:639
|
#: core/models.py:719
|
||||||
msgid "description"
|
msgid "description"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:640
|
#: core/models.py:720
|
||||||
msgid "code"
|
msgid "code"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:641
|
#: core/models.py:721
|
||||||
msgid "css"
|
msgid "css"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:643
|
#: core/models.py:723
|
||||||
msgid "public"
|
msgid "public"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:645
|
#: core/models.py:725
|
||||||
msgid "Whether this template is public for anyone to use."
|
msgid "Whether this template is public for anyone to use."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:651
|
#: core/models.py:731
|
||||||
msgid "Template"
|
msgid "Template"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:652
|
#: core/models.py:732
|
||||||
msgid "Templates"
|
msgid "Templates"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:791
|
#: core/models.py:871
|
||||||
msgid "Template/user relation"
|
msgid "Template/user relation"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:792
|
#: core/models.py:872
|
||||||
msgid "Template/user relations"
|
msgid "Template/user relations"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:798
|
#: core/models.py:878
|
||||||
msgid "This user is already in this template."
|
msgid "This user is already in this template."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:804
|
#: core/models.py:884
|
||||||
msgid "This team is already in this template."
|
msgid "This team is already in this template."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:827
|
#: core/models.py:907
|
||||||
msgid "email address"
|
msgid "email address"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:844
|
#: core/models.py:926
|
||||||
msgid "Document invitation"
|
msgid "Document invitation"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:845
|
#: core/models.py:927
|
||||||
msgid "Document invitations"
|
msgid "Document invitations"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:862
|
#: core/models.py:944
|
||||||
msgid "This email is already associated to a registered user."
|
msgid "This email is already associated to a registered user."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -308,36 +354,25 @@ msgstr ""
|
|||||||
msgid "This mail has been sent to %(email)s by <a href=\"%(href)s\">%(name)s</a>"
|
msgid "This mail has been sent to %(email)s by <a href=\"%(href)s\">%(name)s</a>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/templates/mail/html/invitation.html:159
|
#: core/templates/mail/html/invitation.html:162
|
||||||
#: core/templates/mail/text/invitation.txt:3
|
#: core/templates/mail/text/invitation.txt:3
|
||||||
msgid "La Suite Numérique"
|
msgid "Logo email"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/templates/mail/html/invitation.html:189
|
#: core/templates/mail/html/invitation.html:209
|
||||||
#: core/templates/mail/text/invitation.txt:6
|
|
||||||
#, python-format
|
|
||||||
msgid " %(sender_name)s shared a document with you ! "
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: core/templates/mail/html/invitation.html:196
|
|
||||||
#: core/templates/mail/text/invitation.txt:8
|
|
||||||
#, python-format
|
|
||||||
msgid " %(sender_name_email)s invited you with the role \"%(role)s\" on the following document : "
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: core/templates/mail/html/invitation.html:205
|
|
||||||
#: core/templates/mail/text/invitation.txt:10
|
#: core/templates/mail/text/invitation.txt:10
|
||||||
msgid "Open"
|
msgid "Open"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/templates/mail/html/invitation.html:222
|
#: core/templates/mail/html/invitation.html:226
|
||||||
#: core/templates/mail/text/invitation.txt:14
|
#: core/templates/mail/text/invitation.txt:14
|
||||||
msgid " Docs, your new essential tool for organizing, sharing and collaborating on your documents as a team. "
|
msgid " Docs, your new essential tool for organizing, sharing and collaborating on your documents as a team. "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/templates/mail/html/invitation.html:229
|
#: core/templates/mail/html/invitation.html:233
|
||||||
#: core/templates/mail/text/invitation.txt:16
|
#: core/templates/mail/text/invitation.txt:16
|
||||||
msgid "Brought to you by La Suite Numérique"
|
#, python-format
|
||||||
|
msgid " Brought to you by %(brandname)s "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/templates/mail/text/hello.txt:8
|
#: core/templates/mail/text/hello.txt:8
|
||||||
@@ -345,14 +380,15 @@ msgstr ""
|
|||||||
msgid "This mail has been sent to %(email)s by %(name)s [%(href)s]"
|
msgid "This mail has been sent to %(email)s by %(name)s [%(href)s]"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: impress/settings.py:177
|
#: impress/settings.py:236
|
||||||
msgid "English"
|
msgid "English"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: impress/settings.py:178
|
#: impress/settings.py:237
|
||||||
msgid "French"
|
msgid "French"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: impress/settings.py:176
|
#: impress/settings.py:238
|
||||||
msgid "German"
|
msgid "German"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
@@ -2,8 +2,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: lasuite-people\n"
|
"Project-Id-Version: lasuite-people\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2024-12-01 08:22+0000\n"
|
"POT-Creation-Date: 2024-12-13 15:17+0000\n"
|
||||||
"PO-Revision-Date: 2024-10-15 07:23\n"
|
"PO-Revision-Date: 2024-12-13 16:47\n"
|
||||||
"Last-Translator: \n"
|
"Last-Translator: \n"
|
||||||
"Language-Team: French\n"
|
"Language-Team: French\n"
|
||||||
"Language: fr_FR\n"
|
"Language: fr_FR\n"
|
||||||
@@ -41,23 +41,23 @@ msgstr ""
|
|||||||
msgid "Title"
|
msgid "Title"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/api/serializers.py:284
|
#: core/api/serializers.py:307
|
||||||
msgid "A new document was created on your behalf!"
|
msgid "A new document was created on your behalf!"
|
||||||
msgstr "Un nouveau document a été créé pour vous !"
|
msgstr "Un nouveau document a été créé pour vous !"
|
||||||
|
|
||||||
#: core/api/serializers.py:287
|
#: core/api/serializers.py:311
|
||||||
msgid "You have been granted ownership of a new document:"
|
msgid "You have been granted ownership of a new document:"
|
||||||
msgstr "Vous avez été déclaré propriétaire d'un nouveau document :"
|
msgstr "Vous avez été déclaré propriétaire d'un nouveau document :"
|
||||||
|
|
||||||
#: core/api/serializers.py:390
|
#: core/api/serializers.py:414
|
||||||
msgid "Body"
|
msgid "Body"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/api/serializers.py:393
|
#: core/api/serializers.py:417
|
||||||
msgid "Body type"
|
msgid "Body type"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/api/serializers.py:399
|
#: core/api/serializers.py:423
|
||||||
msgid "Format"
|
msgid "Format"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -126,9 +126,7 @@ msgid "date and time at which a record was last updated"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:135
|
#: core/models.py:135
|
||||||
msgid ""
|
msgid "Enter a valid sub. This value may contain only letters, numbers, and @/./+/-/_/: characters."
|
||||||
"Enter a valid sub. This value may contain only letters, numbers, and @/./+/-/"
|
|
||||||
"_/: characters."
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:141
|
#: core/models.py:141
|
||||||
@@ -136,9 +134,7 @@ msgid "sub"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:143
|
#: core/models.py:143
|
||||||
msgid ""
|
msgid "Required. 255 characters or fewer. Letters, numbers, and @/./+/-/_/: characters only."
|
||||||
"Required. 255 characters or fewer. Letters, numbers, and @/./+/-/_/: "
|
|
||||||
"characters only."
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:152
|
#: core/models.py:152
|
||||||
@@ -190,9 +186,7 @@ msgid "active"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:190
|
#: core/models.py:190
|
||||||
msgid ""
|
msgid "Whether this user should be treated as active. Unselect this instead of deleting accounts."
|
||||||
"Whether this user should be treated as active. Unselect this instead of "
|
|
||||||
"deleting accounts."
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:202
|
#: core/models.py:202
|
||||||
@@ -203,166 +197,188 @@ msgstr ""
|
|||||||
msgid "users"
|
msgid "users"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:340 core/models.py:701
|
#: core/models.py:342 core/models.py:718
|
||||||
msgid "title"
|
msgid "title"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:358
|
#: core/models.py:364
|
||||||
msgid "Document"
|
msgid "Document"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:359
|
#: core/models.py:365
|
||||||
msgid "Documents"
|
msgid "Documents"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:362
|
#: core/models.py:368
|
||||||
msgid "Untitled Document"
|
msgid "Untitled Document"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:578
|
#: core/models.py:593
|
||||||
#, python-brace-format
|
#, python-brace-format
|
||||||
msgid "{name} shared a document with you!"
|
msgid "{name} shared a document with you!"
|
||||||
msgstr "{name} a partagé un document avec vous !"
|
msgstr "{name} a partagé un document avec vous!"
|
||||||
|
|
||||||
#: core/models.py:580
|
#: core/models.py:597
|
||||||
#, python-brace-format
|
#, python-brace-format
|
||||||
msgid "{name} invited you with the role ``{role}`` on the following document:"
|
msgid "{name} invited you with the role ``{role}`` on the following document:"
|
||||||
msgstr "{name} vous a invité avec le rôle ``{role}`` sur le document suivant :"
|
msgstr "{name} vous a invité avec le rôle ``{role}`` sur le document suivant :"
|
||||||
|
|
||||||
#: core/models.py:583
|
#: core/models.py:600
|
||||||
#, python-brace-format
|
#, python-brace-format
|
||||||
msgid "{name} shared a document with you: {title}"
|
msgid "{name} shared a document with you: {title}"
|
||||||
msgstr "{name} a partagé un document avec vous: {title}"
|
msgstr "{name} a partagé un document avec vous: {title}"
|
||||||
|
|
||||||
#: core/models.py:606
|
#: core/models.py:623
|
||||||
msgid "Document/user link trace"
|
msgid "Document/user link trace"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:607
|
#: core/models.py:624
|
||||||
msgid "Document/user link traces"
|
msgid "Document/user link traces"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:613
|
#: core/models.py:630
|
||||||
msgid "A link trace already exists for this document/user."
|
msgid "A link trace already exists for this document/user."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:636
|
#: core/models.py:653
|
||||||
msgid "Document favorite"
|
msgid "Document favorite"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:637
|
#: core/models.py:654
|
||||||
msgid "Document favorites"
|
msgid "Document favorites"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:643
|
#: core/models.py:660
|
||||||
msgid ""
|
msgid "This document is already targeted by a favorite relation instance for the same user."
|
||||||
"This document is already targeted by a favorite relation instance for the "
|
|
||||||
"same user."
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:665
|
#: core/models.py:682
|
||||||
msgid "Document/user relation"
|
msgid "Document/user relation"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:666
|
#: core/models.py:683
|
||||||
msgid "Document/user relations"
|
msgid "Document/user relations"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:672
|
#: core/models.py:689
|
||||||
msgid "This user is already in this document."
|
msgid "This user is already in this document."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:678
|
#: core/models.py:695
|
||||||
msgid "This team is already in this document."
|
msgid "This team is already in this document."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:684 core/models.py:873
|
#: core/models.py:701 core/models.py:890
|
||||||
msgid "Either user or team must be set, not both."
|
msgid "Either user or team must be set, not both."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:702
|
#: core/models.py:719
|
||||||
msgid "description"
|
msgid "description"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:703
|
#: core/models.py:720
|
||||||
msgid "code"
|
msgid "code"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:704
|
#: core/models.py:721
|
||||||
msgid "css"
|
msgid "css"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:706
|
#: core/models.py:723
|
||||||
msgid "public"
|
msgid "public"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:708
|
#: core/models.py:725
|
||||||
msgid "Whether this template is public for anyone to use."
|
msgid "Whether this template is public for anyone to use."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:714
|
#: core/models.py:731
|
||||||
msgid "Template"
|
msgid "Template"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:715
|
#: core/models.py:732
|
||||||
msgid "Templates"
|
msgid "Templates"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:854
|
#: core/models.py:871
|
||||||
msgid "Template/user relation"
|
msgid "Template/user relation"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:855
|
#: core/models.py:872
|
||||||
msgid "Template/user relations"
|
msgid "Template/user relations"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:861
|
#: core/models.py:878
|
||||||
msgid "This user is already in this template."
|
msgid "This user is already in this template."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:867
|
#: core/models.py:884
|
||||||
msgid "This team is already in this template."
|
msgid "This team is already in this template."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:890
|
#: core/models.py:907
|
||||||
msgid "email address"
|
msgid "email address"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:908
|
#: core/models.py:926
|
||||||
msgid "Document invitation"
|
msgid "Document invitation"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:909
|
#: core/models.py:927
|
||||||
msgid "Document invitations"
|
msgid "Document invitations"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/models.py:926
|
#: core/models.py:944
|
||||||
msgid "This email is already associated to a registered user."
|
msgid "This email is already associated to a registered user."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/templates/mail/html/invitation.html:159
|
#: core/templates/mail/html/hello.html:159 core/templates/mail/text/hello.txt:3
|
||||||
#: core/templates/mail/text/invitation.txt:3
|
msgid "Company logo"
|
||||||
msgid "La Suite Numérique"
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: core/templates/mail/html/invitation.html:207
|
#: core/templates/mail/html/hello.html:188 core/templates/mail/text/hello.txt:5
|
||||||
|
#, python-format
|
||||||
|
msgid "Hello %(name)s"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/templates/mail/html/hello.html:188 core/templates/mail/text/hello.txt:5
|
||||||
|
msgid "Hello"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/templates/mail/html/hello.html:189 core/templates/mail/text/hello.txt:6
|
||||||
|
msgid "Thank you very much for your visit!"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/templates/mail/html/hello.html:221
|
||||||
|
#, python-format
|
||||||
|
msgid "This mail has been sent to %(email)s by <a href=\"%(href)s\">%(name)s</a>"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/templates/mail/html/invitation.html:162
|
||||||
|
#: core/templates/mail/text/invitation.txt:3
|
||||||
|
msgid "Logo email"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: core/templates/mail/html/invitation.html:209
|
||||||
#: core/templates/mail/text/invitation.txt:10
|
#: core/templates/mail/text/invitation.txt:10
|
||||||
msgid "Open"
|
msgid "Open"
|
||||||
msgstr "Ouvrir"
|
msgstr "Ouvrir"
|
||||||
|
|
||||||
#: core/templates/mail/html/invitation.html:224
|
#: core/templates/mail/html/invitation.html:226
|
||||||
#: core/templates/mail/text/invitation.txt:14
|
#: core/templates/mail/text/invitation.txt:14
|
||||||
msgid ""
|
msgid " Docs, your new essential tool for organizing, sharing and collaborating on your documents as a team. "
|
||||||
" Docs, your new essential tool for organizing, sharing and collaborating on "
|
msgstr " Docs, votre nouvel outil incontournable pour organiser, partager et collaborer sur vos documents en équipe. "
|
||||||
"your documents as a team. "
|
|
||||||
msgstr ""
|
|
||||||
" Docs, votre nouvel outil incontournable pour organiser, partager et "
|
|
||||||
"collaborer sur vos documents en équipe. "
|
|
||||||
|
|
||||||
#: core/templates/mail/html/invitation.html:231
|
#: core/templates/mail/html/invitation.html:233
|
||||||
#: core/templates/mail/text/invitation.txt:16
|
#: core/templates/mail/text/invitation.txt:16
|
||||||
msgid "Brought to you by La Suite Numérique"
|
#, python-format
|
||||||
msgstr "Proposé par La Suite Numérique"
|
msgid " Brought to you by %(brandname)s "
|
||||||
|
msgstr " Proposé par %(brandname)s "
|
||||||
|
|
||||||
|
#: core/templates/mail/text/hello.txt:8
|
||||||
|
#, python-format
|
||||||
|
msgid "This mail has been sent to %(email)s by %(name)s [%(href)s]"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: impress/settings.py:236
|
#: impress/settings.py:236
|
||||||
msgid "English"
|
msgid "English"
|
||||||
@@ -376,6 +392,3 @@ msgstr ""
|
|||||||
msgid "German"
|
msgid "German"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, python-format
|
|
||||||
#~ msgid " %(sender_name)s shared a document with you! "
|
|
||||||
#~ msgstr "%(sender_name)s a partagé un document avec vous !"
|
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 11 KiB |
@@ -3,19 +3,14 @@
|
|||||||
|
|
||||||
<mj-body mj-class="bg--blue-100">
|
<mj-body mj-class="bg--blue-100">
|
||||||
<mj-wrapper css-class="wrapper" padding="0 25px 0px 25px">
|
<mj-wrapper css-class="wrapper" padding="0 25px 0px 25px">
|
||||||
<mj-section
|
<mj-section css-class="wrapper-logo">
|
||||||
background-url="{{domain}}/assets/mail-header-background.png"
|
|
||||||
background-size="cover"
|
|
||||||
background-repeat="no-repeat"
|
|
||||||
background-position="0 -30px"
|
|
||||||
>
|
|
||||||
<mj-column>
|
<mj-column>
|
||||||
<mj-image
|
<mj-image
|
||||||
align="center"
|
align="center"
|
||||||
src="{{domain}}/assets/logo-suite-numerique.png"
|
src="{{logo_img}}"
|
||||||
width="250px"
|
width="320px"
|
||||||
align="left"
|
align="left"
|
||||||
alt="{%trans 'La Suite Numérique' %}"
|
alt="{%trans 'Logo email' %}"
|
||||||
/>
|
/>
|
||||||
</mj-column>
|
</mj-column>
|
||||||
</mj-section>
|
</mj-section>
|
||||||
@@ -51,7 +46,11 @@
|
|||||||
</mj-text>
|
</mj-text>
|
||||||
<!-- Signature -->
|
<!-- Signature -->
|
||||||
<mj-text>
|
<mj-text>
|
||||||
<p>{% trans "Brought to you by La Suite Numérique" %}</p>
|
<p>
|
||||||
|
{% blocktrans %}
|
||||||
|
Brought to you by {{brandname}}
|
||||||
|
{% endblocktrans %}
|
||||||
|
</p>
|
||||||
</mj-text>
|
</mj-text>
|
||||||
</mj-column>
|
</mj-column>
|
||||||
</mj-section>
|
</mj-section>
|
||||||
|
|||||||
@@ -11,10 +11,10 @@
|
|||||||
<mj-attributes>
|
<mj-attributes>
|
||||||
<mj-font name="Roboto" href="https://fonts.googleapis.com/css2?family=Roboto:wght@400;700;900&display=swap" />
|
<mj-font name="Roboto" href="https://fonts.googleapis.com/css2?family=Roboto:wght@400;700;900&display=swap" />
|
||||||
<mj-all
|
<mj-all
|
||||||
font-family="Roboto, -apple-system, BlinkMacSystemFont, 'Segoe UI', Oxygen, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif"
|
font-family="Roboto, -apple-system, BlinkMacSystemFont, 'Segoe UI', Oxygen, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif"
|
||||||
font-size="16px"
|
font-size="16px"
|
||||||
line-height="1.5em"
|
line-height="1.5em"
|
||||||
color="#3A3A3A"
|
color="#3A3A3A"
|
||||||
/>
|
/>
|
||||||
</mj-attributes>
|
</mj-attributes>
|
||||||
<mj-style>
|
<mj-style>
|
||||||
@@ -41,5 +41,9 @@
|
|||||||
border-radius: 0 0 6px 6px;
|
border-radius: 0 0 6px 6px;
|
||||||
box-shadow: 0 0 6px rgba(2 117 180 / 0.3);
|
box-shadow: 0 0 6px rgba(2 117 180 / 0.3);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.wrapper-logo td{
|
||||||
|
padding: 0!important;
|
||||||
|
}
|
||||||
</mj-style>
|
</mj-style>
|
||||||
</mj-head>
|
</mj-head>
|
||||||
|
|||||||
Reference in New Issue
Block a user