From 10e7544d59ef25f5bb0802b191c4db2068c547b9 Mon Sep 17 00:00:00 2001 From: Valentin Deniaud Date: Tue, 27 Jul 2021 10:13:19 +0200 Subject: [PATCH 2/2] translation update (#55822) --- .../locale/fr/LC_MESSAGES/django.po | 2566 ++++++++--------- .../locale/fr/LC_MESSAGES/django.po | 67 +- .../locale/fr/LC_MESSAGES/django.po | 142 +- .../locale/fr/LC_MESSAGES/django.po | 12 +- .../locale/fr/LC_MESSAGES/django.po | 49 +- .../locale/fr/LC_MESSAGES/django.po | 188 +- .../locale/fr/LC_MESSAGES/django.po | 55 +- 7 files changed, 1489 insertions(+), 1590 deletions(-) diff --git a/src/authentic2/locale/fr/LC_MESSAGES/django.po b/src/authentic2/locale/fr/LC_MESSAGES/django.po index 68715baf..ae06495a 100644 --- a/src/authentic2/locale/fr/LC_MESSAGES/django.po +++ b/src/authentic2/locale/fr/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Authentic\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-07-23 16:53+0200\n" +"POT-Creation-Date: 2021-07-27 10:13+0200\n" "PO-Revision-Date: 2021-07-23 17:13+0200\n" "Last-Translator: Mikaël Ates \n" "Language-Team: None\n" @@ -17,120 +17,115 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n>1;\n" -#: debian/multitenant/debian_config.py:43 src/authentic2/forms/passwords.py:42 -#: src/authentic2/forms/registration.py:41 src/authentic2/manager/forms.py:651 -#: src/authentic2/manager/templates/authentic2/manager/user_create_registration_email_body.txt:4 -#: src/authentic2/saml/models.py:145 -#: src/authentic2/templates/authentic2/api_user_create_registration_email_body.txt:4 +#: debian/multitenant/debian_config.py src/authentic2/forms/passwords.py +#: src/authentic2/forms/registration.py src/authentic2/manager/forms.py +#: src/authentic2/manager/templates/authentic2/manager/user_create_registration_email_body.txt +#: src/authentic2/saml/models.py +#: src/authentic2/templates/authentic2/api_user_create_registration_email_body.txt msgid "Email" msgstr "Courriel" -#: src/authentic2/a2_rbac/admin.py:94 src/authentic2/a2_rbac/models.py:413 -#: src/authentic2/apps/journal/models.py:181 -#: src/authentic2/manager/tables.py:224 src/authentic2/models.py:139 -#: src/authentic2/models.py:368 src/authentic2/saml/models.py:230 -#: src/authentic2/saml/models.py:322 +#: src/authentic2/a2_rbac/admin.py src/authentic2/a2_rbac/models.py +#: src/authentic2/apps/journal/models.py src/authentic2/manager/tables.py +#: src/authentic2/models.py src/authentic2/saml/models.py msgid "name" msgstr "nom" -#: src/authentic2/a2_rbac/management.py:81 +#: src/authentic2/a2_rbac/management.py msgid "Manager of roles" msgstr "Administrateur des rôles" -#: src/authentic2/a2_rbac/management.py:82 +#: src/authentic2/a2_rbac/management.py #, python-brace-format msgid "Roles - {ou}" msgstr "Rôles - {ou}" -#: src/authentic2/a2_rbac/management.py:86 +#: src/authentic2/a2_rbac/management.py msgid "Manager of organizational units" msgstr "Administrateur des entités" -#: src/authentic2/a2_rbac/management.py:87 +#: src/authentic2/a2_rbac/management.py #, python-brace-format msgid "Organizational unit - {ou}" msgstr "Entités - {ou}" -#: src/authentic2/a2_rbac/management.py:90 +#: src/authentic2/a2_rbac/management.py msgid "Manager of users" msgstr "Administrateur des utilisateurs" -#: src/authentic2/a2_rbac/management.py:91 +#: src/authentic2/a2_rbac/management.py #, python-brace-format msgid "Users - {ou}" msgstr "Utilisateurs - {ou}" -#: src/authentic2/a2_rbac/management.py:95 +#: src/authentic2/a2_rbac/management.py msgid "Manager of services" msgstr "Administrateur des services" -#: src/authentic2/a2_rbac/management.py:96 +#: src/authentic2/a2_rbac/management.py #, python-brace-format msgid "Services - {ou}" msgstr "Services - {ou}" -#: src/authentic2/a2_rbac/management.py:114 -#: src/authentic2/a2_rbac/management.py:116 -#: src/authentic2/a2_rbac/management.py:117 +#: src/authentic2/a2_rbac/management.py msgid "Manager" msgstr "Administrateur" -#: src/authentic2/a2_rbac/models.py:55 +#: src/authentic2/a2_rbac/models.py msgid "Send reset link" msgstr "Envoyer un lien de réinitialisation" -#: src/authentic2/a2_rbac/models.py:56 +#: src/authentic2/a2_rbac/models.py msgid "Manual password definition" msgstr "Définition manuelle du mot de passe" -#: src/authentic2/a2_rbac/models.py:60 +#: src/authentic2/a2_rbac/models.py msgid "System default" msgstr "Valeur par défaut du système" -#: src/authentic2/a2_rbac/models.py:61 src/authentic2/admin.py:156 -#: src/authentic2/forms/mixins.py:43 +#: src/authentic2/a2_rbac/models.py src/authentic2/admin.py +#: src/authentic2/forms/mixins.py msgid "Yes" msgstr "Oui" -#: src/authentic2/a2_rbac/models.py:62 src/authentic2/admin.py:156 -#: src/authentic2/forms/mixins.py:43 +#: src/authentic2/a2_rbac/models.py src/authentic2/admin.py +#: src/authentic2/forms/mixins.py msgid "No" msgstr "Non" -#: src/authentic2/a2_rbac/models.py:75 +#: src/authentic2/a2_rbac/models.py msgid "Username is unique" msgstr "L’identifiant doit être unique" -#: src/authentic2/a2_rbac/models.py:76 +#: src/authentic2/a2_rbac/models.py msgid "Email is unique" msgstr "Le courriel doit être unique" -#: src/authentic2/a2_rbac/models.py:77 -#: src/authentic2/a2_rbac/signal_handlers.py:41 +#: src/authentic2/a2_rbac/models.py src/authentic2/a2_rbac/signal_handlers.py msgid "Default organizational unit" msgstr "Collectivité par défaut" -#: src/authentic2/a2_rbac/models.py:79 +#: src/authentic2/a2_rbac/models.py msgid "Validate emails" msgstr "Validation des adresses de courriel" -#: src/authentic2/a2_rbac/models.py:81 +#: src/authentic2/a2_rbac/models.py msgid "Show username" msgstr "Afficher l’identifiant de l’utilisateur" -#: src/authentic2/a2_rbac/models.py:88 +#: src/authentic2/a2_rbac/models.py msgid "Users can reset password" msgstr "Les utilisateurs peuvent réinitialiser le mot de passe" -#: src/authentic2/a2_rbac/models.py:92 +#: src/authentic2/a2_rbac/models.py msgid "User creation password policy" msgstr "Politique de création de mot de passe des utilisateurs" -#: src/authentic2/a2_rbac/models.py:96 +#: src/authentic2/a2_rbac/models.py msgid "Days after which the user receives an account deletion alert" msgstr "Nombre de jours avant l’alerte de suppression de compte" -#: src/authentic2/a2_rbac/models.py:99 src/authentic2/a2_rbac/models.py:110 +#: src/authentic2/a2_rbac/models.py msgid "" "Ensure that this value is greater than 30 days, or leave blank for " "deactivating." @@ -138,20 +133,20 @@ msgstr "" "Assurez-vous que cette valeur est supérieure à 30 jours, ou laissez vide " "pour désactiver." -#: src/authentic2/a2_rbac/models.py:107 +#: src/authentic2/a2_rbac/models.py msgid "Delay in days before cleaning unused accounts" msgstr "Nombre de jours avant la suppression des comptes inutilisés" -#: src/authentic2/a2_rbac/models.py:120 -#: src/authentic2/custom_user/models.py:166 src/authentic2/models.py:371 +#: src/authentic2/a2_rbac/models.py src/authentic2/custom_user/models.py +#: src/authentic2/models.py msgid "organizational unit" msgstr "collectivité" -#: src/authentic2/a2_rbac/models.py:121 +#: src/authentic2/a2_rbac/models.py msgid "organizational units" msgstr "collectivités" -#: src/authentic2/a2_rbac/models.py:139 +#: src/authentic2/a2_rbac/models.py msgid "" "You cannot unset this organizational unit as the default, but you can set " "another one as the default." @@ -159,168 +154,165 @@ msgstr "" "Vous ne pouvez pas enlever le drapeau défaut de cette collectivité, mais " "vous pouvez le poser sur une autre collectivité." -#: src/authentic2/a2_rbac/models.py:145 +#: src/authentic2/a2_rbac/models.py msgid "Deletion and alert delays must be set together." msgstr "" "Les délais de suppression et d’alerte doivent être remplis simultanément." -#: src/authentic2/a2_rbac/models.py:150 +#: src/authentic2/a2_rbac/models.py msgid "Deletion alert delay must be less than actual deletion delay." msgstr "Le délai d’alerte doit être inférieur au délai de suppression." -#: src/authentic2/a2_rbac/models.py:157 +#: src/authentic2/a2_rbac/models.py #, python-brace-format msgid "Managers of \"{ou}\"" msgstr "Administrateur de la collectivité « {ou} »" -#: src/authentic2/a2_rbac/models.py:202 +#: src/authentic2/a2_rbac/models.py msgid "permission" msgstr "permission" -#: src/authentic2/a2_rbac/models.py:203 +#: src/authentic2/a2_rbac/models.py msgid "permissions" msgstr "permissions" -#: src/authentic2/a2_rbac/models.py:223 +#: src/authentic2/a2_rbac/models.py msgid "administrative scope content type" msgstr "type d’objet administré" -#: src/authentic2/a2_rbac/models.py:227 +#: src/authentic2/a2_rbac/models.py msgid "administrative scope id" msgstr "identifiant de l’objet administré" -#: src/authentic2/a2_rbac/models.py:232 +#: src/authentic2/a2_rbac/models.py msgid "service" msgstr "service" -#: src/authentic2/a2_rbac/models.py:238 src/authentic2/models.py:54 +#: src/authentic2/a2_rbac/models.py src/authentic2/models.py msgid "external id" msgstr "identifiant externe" -#: src/authentic2/a2_rbac/models.py:245 +#: src/authentic2/a2_rbac/models.py msgid "Allow adding or deleting role members" msgstr "Autoriser l’ajout ou la suppression de membres" -#: src/authentic2/a2_rbac/models.py:258 +#: src/authentic2/a2_rbac/models.py #, python-brace-format msgid "Managers of role \"{role}\"" msgstr "Administrateur du rôle « {role} »" -#: src/authentic2/a2_rbac/models.py:282 +#: src/authentic2/a2_rbac/models.py msgid "Name already used" msgstr "Ce nom est déjà utilisé." -#: src/authentic2/a2_rbac/models.py:289 +#: src/authentic2/a2_rbac/models.py msgid "Slug already used" msgstr "Ce slug est déjà utilisé." -#: src/authentic2/a2_rbac/models.py:333 src/authentic2/a2_rbac/models.py:411 +#: src/authentic2/a2_rbac/models.py msgid "role" msgstr "rôle" -#: src/authentic2/a2_rbac/models.py:334 +#: src/authentic2/a2_rbac/models.py msgid "roles" msgstr "rôles" -#: src/authentic2/a2_rbac/models.py:401 +#: src/authentic2/a2_rbac/models.py msgid "role parenting relation" msgstr "relation de parenté entre rôles" -#: src/authentic2/a2_rbac/models.py:402 +#: src/authentic2/a2_rbac/models.py msgid "role parenting relations" msgstr "relations de parenté entre rôles" -#: src/authentic2/a2_rbac/models.py:409 src/authentic2/attribute_kinds.py:261 +#: src/authentic2/a2_rbac/models.py src/authentic2/attribute_kinds.py msgid "string" msgstr "chaîne de caractère" -#: src/authentic2/a2_rbac/models.py:414 src/authentic2/models.py:147 +#: src/authentic2/a2_rbac/models.py src/authentic2/models.py msgid "kind" msgstr "type" -#: src/authentic2/a2_rbac/models.py:415 +#: src/authentic2/a2_rbac/models.py msgid "value" msgstr "valeur" -#: src/authentic2/a2_rbac/models.py:419 +#: src/authentic2/a2_rbac/models.py msgid "role attributes" msgstr "attributs de rôle" -#: src/authentic2/a2_rbac/models.py:431 +#: src/authentic2/a2_rbac/models.py msgid "Change password" msgstr "Modification de mot de passe" -#: src/authentic2/a2_rbac/models.py:432 src/authentic2/views.py:705 +#: src/authentic2/a2_rbac/models.py src/authentic2/views.py msgid "Password reset" msgstr "Mot de passe oublié" -#: src/authentic2/a2_rbac/models.py:433 +#: src/authentic2/a2_rbac/models.py msgid "Activation" msgstr "Activation" -#: src/authentic2/a2_rbac/models.py:434 +#: src/authentic2/a2_rbac/models.py msgctxt "operation" msgid "Change email" msgstr "Modification de l’adresse de courriel" -#: src/authentic2/a2_rbac/models.py:435 +#: src/authentic2/a2_rbac/models.py msgid "Manage role members" msgstr "Gestion des membres d’un rôle" -#: src/authentic2/a2_rbac/models.py:436 +#: src/authentic2/a2_rbac/models.py msgid "Manage service consents" msgstr "Gestion des consentements" -#: src/authentic2/admin.py:43 +#: src/authentic2/admin.py msgid "Cleanup expired objects" msgstr "Nettoyer les objets qui ont expiré" -#: src/authentic2/admin.py:108 +#: src/authentic2/admin.py msgid "session data" msgstr "données de session" -#: src/authentic2/admin.py:120 +#: src/authentic2/admin.py msgid "IP adresses" msgstr "adresses IP" -#: src/authentic2/admin.py:137 +#: src/authentic2/admin.py #, python-format msgid "deleted user %r" msgstr "utilisateur supprimé %r" -#: src/authentic2/admin.py:140 src/authentic2/apps/journal/models.py:296 -#: src/authentic2/custom_user/models.py:195 src/authentic2/models.py:52 -#: src/authentic2/models.py:351 +#: src/authentic2/admin.py src/authentic2/apps/journal/models.py +#: src/authentic2/custom_user/models.py src/authentic2/models.py msgid "user" msgstr "utilisateur" -#: src/authentic2/admin.py:145 +#: src/authentic2/admin.py msgid "clear expired sessions" msgstr "Supprimer les sessions expirées" -#: src/authentic2/admin.py:151 +#: src/authentic2/admin.py msgid "external" msgstr "identifiant externe" -#: src/authentic2/admin.py:174 +#: src/authentic2/admin.py msgid "realm" msgstr "domaine" -#: src/authentic2/admin.py:202 src/authentic2/admin.py:249 +#: src/authentic2/admin.py msgid "You must at least give a username or an email to your user" msgstr "Un utilisateur doit au minimum posséder un courriel ou un identifiant." -#: src/authentic2/admin.py:206 src/authentic2/admin.py:251 -#: src/authentic2/authenticators.py:70 -#: src/authentic2/forms/authentication.py:39 src/authentic2/forms/profile.py:32 -#: src/authentic2/forms/profile.py:54 src/authentic2/forms/registration.py:154 -#: src/authentic2/manager/forms.py:272 -#: src/authentic2/manager/journal_views.py:90 -#: src/authentic2/templates/authentic2/login_password_profile.html:4 +#: src/authentic2/admin.py src/authentic2/authenticators.py +#: src/authentic2/forms/authentication.py src/authentic2/forms/profile.py +#: src/authentic2/forms/registration.py src/authentic2/manager/forms.py +#: src/authentic2/manager/journal_views.py +#: src/authentic2/templates/authentic2/login_password_profile.html msgid "Password" msgstr "Mot de passe" -#: src/authentic2/admin.py:208 +#: src/authentic2/admin.py msgid "" "Raw passwords are not stored, so there is no way to see this user's " "password, but you can change the password using this " @@ -331,277 +323,271 @@ msgstr "" "modifier le mot de passe de l’utilisateur en utilisant ce formulaire." -#: src/authentic2/admin.py:248 src/authentic2/forms/registration.py:166 -#: src/authentic2/manager/forms.py:207 +#: src/authentic2/admin.py src/authentic2/forms/registration.py +#: src/authentic2/manager/forms.py msgid "The two password fields didn't match." msgstr "Les deux champs mot de passe ne correspondent pas l’un à l’autre." -#: src/authentic2/admin.py:253 +#: src/authentic2/admin.py msgid "Password confirmation" msgstr "Confirmation du mot de passe" -#: src/authentic2/admin.py:255 +#: src/authentic2/admin.py msgid "Enter the same password as above, for verification." msgstr "Entrez le même mot de passe qu’au dessus, pour validation." -#: src/authentic2/admin.py:290 +#: src/authentic2/admin.py msgid "Personal info" msgstr "Informations personnelles" -#: src/authentic2/admin.py:291 src/authentic2/manager/role_views.py:306 -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:41 -#: src/authentic2/manager/templates/authentic2/manager/role_permissions.html:7 +#: src/authentic2/admin.py src/authentic2/manager/role_views.py +#: src/authentic2/manager/templates/authentic2/manager/role_members.html +#: src/authentic2/manager/templates/authentic2/manager/role_permissions.html msgid "Permissions" msgstr "Permissions" -#: src/authentic2/admin.py:292 +#: src/authentic2/admin.py msgid "Important dates" msgstr "Dates importantes" -#: src/authentic2/admin.py:323 -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:66 +#: src/authentic2/admin.py +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Attributes" msgstr "Attributs" -#: src/authentic2/admin.py:357 +#: src/authentic2/admin.py msgid "Mark as inactive" msgstr "Désactiver" -#: src/authentic2/api_mixins.py:27 +#: src/authentic2/api_mixins.py msgid "Cannot process request because of conflicting resources." msgstr "" "Impossible de traiter la requête à cause d’un conflit sur les ressources." -#: src/authentic2/api_views.py:156 +#: src/authentic2/api_views.py msgid "you are not authorized to create users in this ou" msgstr "Vous n’êtes pas autorisé à vous inscrire dans cette collectivité." -#: src/authentic2/api_views.py:162 +#: src/authentic2/api_views.py msgid "Email is required" msgstr "Le courriel est obligatoire" -#: src/authentic2/api_views.py:164 src/authentic2/api_views.py:176 -#: tests/test_all.py:516 tests/test_all.py:626 +#: src/authentic2/api_views.py tests/test_all.py msgid "Account already exists" msgstr "Le compte existe déjà" -#: src/authentic2/api_views.py:168 +#: src/authentic2/api_views.py msgid "Email is required in this ou" msgstr "Le courriel est obligatoire dans cette collectivité." -#: src/authentic2/api_views.py:170 src/authentic2/api_views.py:182 -#: tests/test_all.py:493 tests/test_all.py:603 +#: src/authentic2/api_views.py tests/test_all.py msgid "Account already exists in this ou" msgstr "Le compte existe déjà dans cette collectivité" -#: src/authentic2/api_views.py:174 tests/test_all.py:504 tests/test_all.py:614 +#: src/authentic2/api_views.py tests/test_all.py msgid "Username is required" msgstr "L’identifiant est obligatoire" -#: src/authentic2/api_views.py:180 +#: src/authentic2/api_views.py msgid "Username is required in this ou" msgstr "L’identifiant est obligatoire dans cette collectivité." -#: src/authentic2/api_views.py:956 +#: src/authentic2/api_views.py msgid "User successfully added to role" msgstr "Utilisateur ajouté au rôle" -#: src/authentic2/api_views.py:967 +#: src/authentic2/api_views.py msgid "User successfully removed from role" msgstr "Utilisateur retiré du rôle" -#: src/authentic2/api_views.py:991 +#: src/authentic2/api_views.py msgid "Payload must be a dictionary" msgstr "Le contenu de l’appel doit être un dictionnaire" -#: src/authentic2/api_views.py:994 +#: src/authentic2/api_views.py msgid "Invalid payload (missing 'data' key)" msgstr "Le contenu de l’appel est invalide (clé « data » absente)" -#: src/authentic2/api_views.py:1000 +#: src/authentic2/api_views.py msgid "List elements of the 'data' dict entry must be dictionaries" msgstr "Les éléments de la liste « data » doivent être des dictionnaires" -#: src/authentic2/api_views.py:1003 +#: src/authentic2/api_views.py #, python-format msgid "Missing 'uuid' key for dict entry %s of the 'data' payload" msgstr "Clé « uuid » manquante pour l’entrée dict %s de « data »" -#: src/authentic2/api_views.py:1008 +#: src/authentic2/api_views.py #, python-format msgid "No known user for UUID %s" msgstr "Aucun utilisateur connu pour l’UUID %s" -#: src/authentic2/api_views.py:1011 +#: src/authentic2/api_views.py msgid "No valid user UUID" msgstr "Aucun UUID d’utilisateur valide" -#: src/authentic2/api_views.py:1018 +#: src/authentic2/api_views.py msgid "Users successfully added to role" msgstr "Utilisateurs ajoutés au rôle avec succès" -#: src/authentic2/api_views.py:1026 +#: src/authentic2/api_views.py msgid "Users successfully removed from role" msgstr "Utilisateurs retirés du rôle avec succès" -#: src/authentic2/api_views.py:1037 +#: src/authentic2/api_views.py msgid "Users successfully assigned to role" msgstr "Utilisateurs assignés au rôle avec succès" -#: src/authentic2/api_views.py:1167 +#: src/authentic2/api_views.py msgid "Day" msgstr "Jour" -#: src/authentic2/api_views.py:1167 +#: src/authentic2/api_views.py msgid "Month" msgstr "Mois" -#: src/authentic2/api_views.py:1167 +#: src/authentic2/api_views.py msgid "Year" msgstr "Année" -#: src/authentic2/api_views.py:1213 +#: src/authentic2/api_views.py msgid "Time interval" msgstr "Période" -#: src/authentic2/api_views.py:1225 +#: src/authentic2/api_views.py msgid "Service" msgstr "Service" -#: src/authentic2/api_views.py:1228 +#: src/authentic2/api_views.py msgid "Services organizational unit" msgstr "Collectivité des services" -#: src/authentic2/api_views.py:1232 +#: src/authentic2/api_views.py msgid "Users organizational unit" msgstr "Collectivité des utilisateurs" -#: src/authentic2/api_views.py:1283 +#: src/authentic2/api_views.py msgid "Login count by authentication type" msgstr "Nombre de connexions par type d’authentification" -#: src/authentic2/api_views.py:1287 +#: src/authentic2/api_views.py msgid "Login count by service" msgstr "Nombre de connexions par service" -#: src/authentic2/api_views.py:1291 +#: src/authentic2/api_views.py msgid "Login count by organizational unit" msgstr "Nombre de connexion par collectivité" -#: src/authentic2/api_views.py:1295 +#: src/authentic2/api_views.py msgid "Registration count by type" msgstr "Nombre d’inscriptions par type" -#: src/authentic2/api_views.py:1299 +#: src/authentic2/api_views.py msgid "Registration count by service" msgstr "Nombre d’inscriptions par service" -#: src/authentic2/api_views.py:1303 +#: src/authentic2/api_views.py msgid "Registration count by organizational unit" msgstr "Nombre d’inscriptions par collectivité" -#: src/authentic2/app_settings.py:147 +#: src/authentic2/app_settings.py msgid "Required. At most 30 characters. Letters, digits, and @/./+/-/_ only." msgstr "" "Requis. 30 caractères maximum. Uniquement des lettres, nombres et les " "caractères « @ », « . », « + », « - » et « _ »." -#: src/authentic2/app_settings.py:149 -#: src/authentic2/forms/authentication.py:147 -#: src/authentic2/manager/templates/authentic2/manager/user_create_registration_email_body.txt:3 -#: src/authentic2/templates/authentic2/api_user_create_registration_email_body.txt:3 +#: src/authentic2/app_settings.py src/authentic2/forms/authentication.py +#: src/authentic2/manager/templates/authentic2/manager/user_create_registration_email_body.txt +#: src/authentic2/templates/authentic2/api_user_create_registration_email_body.txt msgid "Username" msgstr "Identifiant" -#: src/authentic2/apps/journal/app.py:24 -#: src/authentic2/manager/journal_views.py:137 -#: src/authentic2/manager/role_views.py:742 -#: src/authentic2/manager/role_views.py:760 -#: src/authentic2/manager/templates/authentic2/manager/homepage.html:18 -#: src/authentic2/manager/templates/authentic2/manager/journal.html:4 -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:44 -#: src/authentic2/manager/templates/authentic2/manager/roles.html:18 -#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:25 -#: src/authentic2/manager/user_views.py:990 +#: src/authentic2/apps/journal/app.py src/authentic2/manager/journal_views.py +#: src/authentic2/manager/role_views.py +#: src/authentic2/manager/templates/authentic2/manager/homepage.html +#: src/authentic2/manager/templates/authentic2/manager/journal.html +#: src/authentic2/manager/templates/authentic2/manager/role_members.html +#: src/authentic2/manager/templates/authentic2/manager/roles.html +#: src/authentic2/manager/templates/authentic2/manager/user_detail.html +#: src/authentic2/manager/user_views.py msgid "Journal" msgstr "Journal des évènements" -#: src/authentic2/apps/journal/forms.py:93 -#: src/authentic2/apps/journal/forms.py:106 +#: src/authentic2/apps/journal/forms.py msgid "Journal - All dates" msgstr "Journal - Toutes les dates" -#: src/authentic2/apps/journal/forms.py:142 +#: src/authentic2/apps/journal/forms.py #, python-format msgid "Days of %s" msgstr "Jours de %s" -#: src/authentic2/apps/journal/forms.py:144 +#: src/authentic2/apps/journal/forms.py #, python-format msgid "Months of %s" msgstr "Mois de %s" -#: src/authentic2/apps/journal/forms.py:146 +#: src/authentic2/apps/journal/forms.py msgid "Years" msgstr "Années" -#: src/authentic2/apps/journal/forms.py:154 +#: src/authentic2/apps/journal/forms.py msgid "year" msgstr "année" -#: src/authentic2/apps/journal/forms.py:156 +#: src/authentic2/apps/journal/forms.py msgid "month" msgstr "mois" -#: src/authentic2/apps/journal/forms.py:158 +#: src/authentic2/apps/journal/forms.py msgid "day" msgstr "jour" -#: src/authentic2/apps/journal/models.py:197 +#: src/authentic2/apps/journal/models.py msgid "event type" msgstr "type d’évènement" -#: src/authentic2/apps/journal/models.py:198 +#: src/authentic2/apps/journal/models.py msgid "event types" msgstr "types d’évènement" -#: src/authentic2/apps/journal/models.py:293 +#: src/authentic2/apps/journal/models.py msgid "timestamp" msgstr "date" -#: src/authentic2/apps/journal/models.py:305 +#: src/authentic2/apps/journal/models.py msgid "session" msgstr "session" -#: src/authentic2/apps/journal/models.py:313 +#: src/authentic2/apps/journal/models.py msgid "type" msgstr "type" -#: src/authentic2/apps/journal/models.py:316 +#: src/authentic2/apps/journal/models.py msgid "reference ids" msgstr "références aux objets" -#: src/authentic2/apps/journal/models.py:322 +#: src/authentic2/apps/journal/models.py msgid "reference ct ids" msgstr "références aux types d’objets" -#: src/authentic2/apps/journal/models.py:327 +#: src/authentic2/apps/journal/models.py msgid "data" msgstr "donnée" -#: src/authentic2/apps/journal/models.py:329 +#: src/authentic2/apps/journal/models.py msgid "API" msgstr "API" -#: src/authentic2/apps/journal/models.py:428 +#: src/authentic2/apps/journal/models.py msgid "event" msgstr "évènement" -#: src/authentic2/apps/journal/models.py:429 +#: src/authentic2/apps/journal/models.py msgid "events" msgstr "évènements" -#: src/authentic2/apps/journal/search_engine.py:88 +#: src/authentic2/apps/journal/search_engine.py msgid "" "You can use colon terminated prefixes to make special searches, and you can " "use quote around the suffix to preserve spaces." @@ -611,7 +597,7 @@ msgstr "" "entourée par des guillemets pour en préserver les espaces, ex. : prefix:" "\"valeur espacée\"." -#: src/authentic2/apps/journal/search_engine.py:102 +#: src/authentic2/apps/journal/search_engine.py msgid "" "You can use session:abcd to find all events related to the session " "whose key starts with abcd." @@ -619,14 +605,14 @@ msgstr "" "Utilisez session:abcd pour chercher tous les évènements relatifs à " "la session dont l’identifiant commence par abcd." -#: src/authentic2/apps/journal/search_engine.py:113 +#: src/authentic2/apps/journal/search_engine.py msgid "" "You can use event:login to find all events of type login." msgstr "" "Utilisez event:login pour trouver tous les évènements du type " "login." -#: src/authentic2/apps/journal/search_engine.py:125 +#: src/authentic2/apps/journal/search_engine.py msgid "" "You can use email:john.doe@example.com to find all events related " "to users with this email address.." @@ -634,7 +620,7 @@ msgstr "" "Utilisez email:jean.dupond@example.com pour trouver tous les " "évènements relatifs aux utilisateurs ayant cette adresse de courriel." -#: src/authentic2/apps/journal/search_engine.py:135 +#: src/authentic2/apps/journal/search_engine.py msgid "" "You can use username:john to find all events related to users whose " "username is john." @@ -642,206 +628,203 @@ msgstr "" "Utilisez username:jean pour trouver tous les évènements relatifs " "aux utilisateurs dont l’identifiant est jean." -#: src/authentic2/apps/journal/search_engine.py:144 +#: src/authentic2/apps/journal/search_engine.py msgid "You can use api:true to find all events related to API calls." msgstr "" "Utilisez api:true pour trouver les évènements relatifs aux appels " "aux API." -#: src/authentic2/apps/journal/templates/journal/event_list.html:8 +#: src/authentic2/apps/journal/templates/journal/event_list.html msgid "Timestamp" msgstr "Date" -#: src/authentic2/apps/journal/templates/journal/event_list.html:9 -#: src/authentic2/manager/tables.py:71 +#: src/authentic2/apps/journal/templates/journal/event_list.html +#: src/authentic2/manager/tables.py msgid "User" msgstr "Utilisateur" -#: src/authentic2/apps/journal/templates/journal/event_list.html:10 +#: src/authentic2/apps/journal/templates/journal/event_list.html msgid "Session" msgstr "Session" -#: src/authentic2/apps/journal/templates/journal/event_list.html:11 +#: src/authentic2/apps/journal/templates/journal/event_list.html msgid "Message" msgstr "Description" -#: src/authentic2/apps/journal/templates/journal/event_list.html:29 +#: src/authentic2/apps/journal/templates/journal/event_list.html msgid "Journal is empty." msgstr "Le journal est vide." -#: src/authentic2/apps/journal/templates/journal/pagination.html:4 +#: src/authentic2/apps/journal/templates/journal/pagination.html msgid "First page" msgstr "Premiers évènements" -#: src/authentic2/apps/journal/templates/journal/pagination.html:5 +#: src/authentic2/apps/journal/templates/journal/pagination.html msgid "Previous page" msgstr "Évènements précédents" -#: src/authentic2/apps/journal/templates/journal/pagination.html:11 +#: src/authentic2/apps/journal/templates/journal/pagination.html msgid "Next page" msgstr "Évènements suivants" -#: src/authentic2/apps/journal/templates/journal/pagination.html:12 +#: src/authentic2/apps/journal/templates/journal/pagination.html msgid "Last page" msgstr "Derniers évènements" -#: src/authentic2/attribute_kinds.py:51 +#: src/authentic2/attribute_kinds.py msgctxt "title" msgid "Mrs" msgstr "Madame" -#: src/authentic2/attribute_kinds.py:52 +#: src/authentic2/attribute_kinds.py msgctxt "title" msgid "Mr" msgstr "Monsieur" -#: src/authentic2/attribute_kinds.py:57 +#: src/authentic2/attribute_kinds.py msgid "Format: yyyy-mm-dd" msgstr "Format : jj/mm/aaaa" -#: src/authentic2/attribute_kinds.py:66 +#: src/authentic2/attribute_kinds.py msgid "This field may not be blank." msgstr "Le champ ne peut pas être vide." -#: src/authentic2/attribute_kinds.py:98 +#: src/authentic2/attribute_kinds.py msgid "birthdate must be in the past and greater or equal than 1900-01-01." msgstr "" "Une date de naissance doit être dans le passé et après le 1er janvier 1900." -#: src/authentic2/attribute_kinds.py:145 +#: src/authentic2/attribute_kinds.py msgid "Phone number can start with a + and must contain only digits." msgstr "" "Un numéro de téléphone peut commencer par un + et ne doit contenir que des " "chiffres." -#: src/authentic2/attribute_kinds.py:160 +#: src/authentic2/attribute_kinds.py msgid "ex.: 0699999999, +33 6 99 99 99 99" msgstr "ex.: 0699999999" -#: src/authentic2/attribute_kinds.py:176 +#: src/authentic2/attribute_kinds.py msgid "The value must be a valid french postcode" msgstr "Vous devez entrer un code postal" -#: src/authentic2/attribute_kinds.py:181 +#: src/authentic2/attribute_kinds.py msgid "ex.: 13260" msgstr "ex : 13260" -#: src/authentic2/attribute_kinds.py:269 +#: src/authentic2/attribute_kinds.py msgid "title" msgstr "civilité" -#: src/authentic2/attribute_kinds.py:278 +#: src/authentic2/attribute_kinds.py msgid "boolean" msgstr "booléen" -#: src/authentic2/attribute_kinds.py:286 +#: src/authentic2/attribute_kinds.py msgid "date" msgstr "date" -#: src/authentic2/attribute_kinds.py:294 +#: src/authentic2/attribute_kinds.py msgid "birthdate" msgstr "date de naissance" -#: src/authentic2/attribute_kinds.py:303 +#: src/authentic2/attribute_kinds.py msgid "address (autocomplete)" msgstr "adresse (autocomplétion)" -#: src/authentic2/attribute_kinds.py:308 +#: src/authentic2/attribute_kinds.py msgid "french postcode" msgstr "code postal" -#: src/authentic2/attribute_kinds.py:314 +#: src/authentic2/attribute_kinds.py msgid "phone number" msgstr "numéro de téléphone" -#: src/authentic2/attribute_kinds.py:320 +#: src/authentic2/attribute_kinds.py msgid "profile image" msgstr "image de profil" -#: src/authentic2/attribute_kinds.py:363 +#: src/authentic2/attribute_kinds.py msgid "SIRET number must contain 14 digits" msgstr "Le SIRET doit contenir 14 chiffres" -#: src/authentic2/attribute_kinds.py:366 +#: src/authentic2/attribute_kinds.py msgid "SIRET validation code does not match" msgstr "Les clé de validation de votre SIRET sont inexactes" -#: src/authentic2/attributes_ng/engine.py:125 -#: src/authentic2/journal_event_types.py:96 src/authentic2/manager/tables.py:85 -#: src/authentic2/manager/tables.py:130 src/authentic2/manager/tables.py:141 -#: src/authentic2/manager/tables.py:179 src/authentic2/manager/tables.py:206 -#: src/authentic2/manager/tables.py:219 -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:50 -#: src/authentic2/saml/models.py:124 +#: src/authentic2/attributes_ng/engine.py src/authentic2/journal_event_types.py +#: src/authentic2/manager/tables.py +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html +#: src/authentic2/saml/models.py msgid "None" msgstr "Aucun·e" -#: src/authentic2/attributes_ng/engine.py:127 +#: src/authentic2/attributes_ng/engine.py msgid "List of verified attributes" msgstr "Liste des attributés vérifiés" -#: src/authentic2/attributes_ng/sources/django_user.py:44 +#: src/authentic2/attributes_ng/sources/django_user.py msgid "OU UUIDs" msgstr "Identifiants uniques des entités" -#: src/authentic2/attributes_ng/sources/django_user.py:45 +#: src/authentic2/attributes_ng/sources/django_user.py msgid "OU slug" msgstr "identifiant court de l’entité" -#: src/authentic2/attributes_ng/sources/django_user.py:46 +#: src/authentic2/attributes_ng/sources/django_user.py msgid "OU name" msgstr "Nom de l’entité" -#: src/authentic2/attributes_ng/sources/django_user.py:55 +#: src/authentic2/attributes_ng/sources/django_user.py msgid "User domain" msgstr "Domaine de l’utilisateur." -#: src/authentic2/attributes_ng/sources/django_user.py:56 +#: src/authentic2/attributes_ng/sources/django_user.py msgid "User identifier" msgstr "Identifiant de l’utilisateur" -#: src/authentic2/attributes_ng/sources/django_user.py:57 +#: src/authentic2/attributes_ng/sources/django_user.py msgid "Full name" msgstr "Nom complet" -#: src/authentic2/attributes_ng/sources/django_user.py:58 +#: src/authentic2/attributes_ng/sources/django_user.py msgid "Role slugs" msgstr "Identifiants courts du rôle" -#: src/authentic2/attributes_ng/sources/django_user.py:59 +#: src/authentic2/attributes_ng/sources/django_user.py msgid "Role names" msgstr "Noms des rôles" -#: src/authentic2/attributes_ng/sources/django_user.py:60 +#: src/authentic2/attributes_ng/sources/django_user.py msgid "Role UUIDs" msgstr "Identifiants uniques des rôles" -#: src/authentic2/attributes_ng/sources/django_user.py:61 +#: src/authentic2/attributes_ng/sources/django_user.py msgid "Role slugs from same organizational unit as the service" msgstr "Identifiants des rôles de la même collectivité que le service" -#: src/authentic2/attributes_ng/sources/django_user.py:62 +#: src/authentic2/attributes_ng/sources/django_user.py msgid "Role names from same organizational unit as the service" msgstr "Nom des rôles de la même collectivité que le service" -#: src/authentic2/attributes_ng/sources/django_user.py:63 +#: src/authentic2/attributes_ng/sources/django_user.py msgid "Role uuids from same organizational unit as the service" msgstr "UUID des rôles de la même collectivité que le service" -#: src/authentic2/attributes_ng/sources/service_roles.py:43 +#: src/authentic2/attributes_ng/sources/service_roles.py msgid "role attribute" msgstr "attribut de rôle" -#: src/authentic2/authenticators.py:123 +#: src/authentic2/authenticators.py msgid "Username or email" msgstr "Identifiant ou courriel" -#: src/authentic2/backends/ldap_backend.py:307 +#: src/authentic2/backends/ldap_backend.py #, python-brace-format msgid "The password expired after {pwdmaxage}" msgstr "Le mot de passe a expiéré après {pwdmaxage}" -#: src/authentic2/backends/ldap_backend.py:309 +#: src/authentic2/backends/ldap_backend.py #, python-brace-format msgid "" "The account is locked since {pwdaccountlockedtime[0]} after {pwdmaxfailure} " @@ -850,35 +833,35 @@ msgstr "" "Ce compte est verrouillé depuis {pwdaccountlockedtime[0]} après " "{pwdmaxfailure} échecs." -#: src/authentic2/backends/ldap_backend.py:311 +#: src/authentic2/backends/ldap_backend.py msgid "The password was reset and must be changed." msgstr "Votre mot de passe a été réinitialisé, veuillez le changer." -#: src/authentic2/backends/ldap_backend.py:312 +#: src/authentic2/backends/ldap_backend.py msgid "It is not possible to modify the password." msgstr "Votre mot de passe ne peut être modifié." -#: src/authentic2/backends/ldap_backend.py:313 +#: src/authentic2/backends/ldap_backend.py msgid "The old password must be supplied." msgstr "Vous devez fournir votre ancien mot de passe." -#: src/authentic2/backends/ldap_backend.py:314 +#: src/authentic2/backends/ldap_backend.py msgid "The password does not meet the quality requirements." msgstr "" "Ce mot de passe n'est pas assez complexe, veuillez respecter les contraintes." -#: src/authentic2/backends/ldap_backend.py:315 +#: src/authentic2/backends/ldap_backend.py #, python-brace-format msgid "The password is too short {pwdminlength}." msgstr "Ce mot de passe est trop court ({pwdminlength})." -#: src/authentic2/backends/ldap_backend.py:316 +#: src/authentic2/backends/ldap_backend.py #, python-brace-format msgid "It is too soon to change the password {pwdminage}." msgstr "" "Vous devez attendre pour changer de nouveau de mot de passe ({pwdminage})." -#: src/authentic2/backends/ldap_backend.py:318 +#: src/authentic2/backends/ldap_backend.py #, python-brace-format msgid "" "This password is among the last {pwdhistory} password that were used and " @@ -887,17 +870,17 @@ msgstr "" "Ce mot de passe fait partie des {pwdhistory} mots de passe qui ont déjà été " "utilisés, et ne peut pas être réutilisé." -#: src/authentic2/backends/ldap_backend.py:321 +#: src/authentic2/backends/ldap_backend.py #, python-brace-format msgid "Unexpected error {error}" msgstr "Erreur technique {error}" -#: src/authentic2/backends/ldap_backend.py:327 +#: src/authentic2/backends/ldap_backend.py #, python-brace-format msgid "The password will expire at {expiration_date}." msgstr "Votre mot de passe ne sera plus valable le {expiration_date}." -#: src/authentic2/backends/ldap_backend.py:332 +#: src/authentic2/backends/ldap_backend.py #, python-brace-format msgid "This password expired: this is the last time it can be used." msgid_plural "" @@ -910,129 +893,129 @@ msgstr[1] "" "Votre mot de passe aura bientôt dépassé sa limite d'utilisation, vous pouvez " "encore l'utiliser {graceAuthNsRemaining} fois en incluant cette connexion." -#: src/authentic2/csv_import.py:146 +#: src/authentic2/csv_import.py msgid "Cannot detect encoding" msgstr "Impossible de détecter l’encodage" -#: src/authentic2/csv_import.py:161 +#: src/authentic2/csv_import.py msgid "Bad encoding" msgstr "Mauvais encodage" -#: src/authentic2/csv_import.py:166 +#: src/authentic2/csv_import.py #, python-format msgid "Unknown CSV dialect: %s" msgstr "Dialecte CSV inconnu : %s" -#: src/authentic2/csv_import.py:172 +#: src/authentic2/csv_import.py msgid "Unknown CSV dialect" msgstr "Dialecte CSV inconnu" -#: src/authentic2/csv_import.py:178 +#: src/authentic2/csv_import.py #, python-format msgid "Cannot read CSV: %s" msgstr "Erreur à la lecture du fichier CSV : %s" -#: src/authentic2/csv_import.py:252 +#: src/authentic2/csv_import.py msgid "Role name" msgstr "Nom du rôle" -#: src/authentic2/csv_import.py:253 +#: src/authentic2/csv_import.py msgid "Role slug" msgstr "Identifiant court du rôle" -#: src/authentic2/csv_import.py:255 +#: src/authentic2/csv_import.py msgid "Email user so they can set a password" msgstr "Envoi à l’utilisateur d’un courriel d’initialisation de mot de passe" -#: src/authentic2/csv_import.py:258 +#: src/authentic2/csv_import.py msgid "Registration option" msgstr "Options d’inscription" -#: src/authentic2/csv_import.py:260 src/authentic2/manager/user_views.py:802 +#: src/authentic2/csv_import.py src/authentic2/manager/user_views.py msgid "Password hash" msgstr "Version hachée du mot de passe" -#: src/authentic2/csv_import.py:271 +#: src/authentic2/csv_import.py msgid "Invalid password format or unknown hashing algorithm." msgstr "Format de mot de passe invalide ou algorithme de hachage inconnu." -#: src/authentic2/csv_import.py:277 +#: src/authentic2/csv_import.py msgid "Source name" msgstr "Nom de la source" -#: src/authentic2/csv_import.py:282 +#: src/authentic2/csv_import.py msgid "_source_name must contain no spaces and only letters, digits, - and _" msgstr "" "_source_name ne doit contenir aucun espace, et seulement des lettres, des " "chiffres, les caractères « - » et « _ »" -#: src/authentic2/csv_import.py:287 +#: src/authentic2/csv_import.py msgid "Source external id" msgstr "Identifiant de la source" -#: src/authentic2/csv_import.py:306 +#: src/authentic2/csv_import.py msgid "update" msgstr "mise à jour" -#: src/authentic2/csv_import.py:307 +#: src/authentic2/csv_import.py msgid "create" msgstr "création" -#: src/authentic2/csv_import.py:388 +#: src/authentic2/csv_import.py msgid "importing" msgstr "import" -#: src/authentic2/csv_import.py:420 +#: src/authentic2/csv_import.py msgid "Missing header row" msgstr "Ligne d’entête manquante" -#: src/authentic2/csv_import.py:427 +#: src/authentic2/csv_import.py msgid "Empty header row" msgstr "Ligne d’entête vide" -#: src/authentic2/csv_import.py:438 +#: src/authentic2/csv_import.py msgid "Missing key column" msgstr "Colonne clé manquante" -#: src/authentic2/csv_import.py:440 +#: src/authentic2/csv_import.py msgid "Too many key columns" msgstr "Trop de colonnes clés" -#: src/authentic2/csv_import.py:445 +#: src/authentic2/csv_import.py msgid "You must have a _source_name and a _source_id column" msgstr "Vous devez avoir une colonne _source_name and une colonne _source_id" -#: src/authentic2/csv_import.py:449 +#: src/authentic2/csv_import.py msgid "Either specify role names or role slugs, not both" msgstr "" "Les colonnes noms de rôle et slugs de rôles ne peuvent pas être présentes en " "même temps." -#: src/authentic2/csv_import.py:457 +#: src/authentic2/csv_import.py #, python-format msgid "Header \"%s\" is duplicated" msgstr "L’entête « %s » existe deux fois" -#: src/authentic2/csv_import.py:497 +#: src/authentic2/csv_import.py #, python-format msgid "unknown or missing attribute \"%s\"" msgstr "attribut inconnu ou manquant « %s »" -#: src/authentic2/csv_import.py:509 +#: src/authentic2/csv_import.py msgid "You cannot set flags on _source_name and _source_id columns" msgstr "" "Vous ne pouvez pas utiliser de modificateurs sur les colonnes _source_name" -#: src/authentic2/csv_import.py:524 +#: src/authentic2/csv_import.py #, python-format msgid "unknown flag \"%s\"" msgstr "modificateur inconnu « %s »" -#: src/authentic2/csv_import.py:534 +#: src/authentic2/csv_import.py msgid "parsing" msgstr "analyse" -#: src/authentic2/csv_import.py:611 +#: src/authentic2/csv_import.py #, python-format msgid "" "Unique constraint on column \"%(column)s\" failed: value already appear on " @@ -1041,77 +1024,77 @@ msgstr "" "La contrainte d’unicité sur la colonne « %(column)s » est rompue : la valeur " "apparaît déjà ligne %(line)d" -#: src/authentic2/csv_import.py:642 +#: src/authentic2/csv_import.py #, python-format msgid "Unique constraint on column \"%s\" failed" msgstr "La contrainte d’unicité sur la colonne « %s » est rompue" -#: src/authentic2/csv_import.py:686 +#: src/authentic2/csv_import.py #, python-format msgid "Key value \"%s\" matches too many users" msgstr "La valeur de la clé « %s » correspond à trop d’utilisateurs" -#: src/authentic2/csv_import.py:727 +#: src/authentic2/csv_import.py #, python-format msgid "External id \"%s\" already exists" msgstr "La clé externe « %s » existe déjà" -#: src/authentic2/csv_import.py:770 +#: src/authentic2/csv_import.py #, python-format msgid "Role \"%s\" does not exist" msgstr "Le rôle « %s » n’existe pas" -#: src/authentic2/custom_user/apps.py:57 -#: src/authentic2/manager/templates/authentic2/manager/user_create_registration_email_body.txt:5 -#: src/authentic2/saml/management/commands/mapping.py:1107 -#: src/authentic2/templates/authentic2/api_user_create_registration_email_body.txt:5 +#: src/authentic2/custom_user/apps.py +#: src/authentic2/manager/templates/authentic2/manager/user_create_registration_email_body.txt +#: src/authentic2/saml/management/commands/mapping.py +#: src/authentic2/templates/authentic2/api_user_create_registration_email_body.txt msgid "First name" msgstr "Prénom" -#: src/authentic2/custom_user/apps.py:68 -#: src/authentic2/manager/templates/authentic2/manager/user_create_registration_email_body.txt:6 -#: src/authentic2/saml/management/commands/mapping.py:809 -#: src/authentic2/templates/authentic2/api_user_create_registration_email_body.txt:6 +#: src/authentic2/custom_user/apps.py +#: src/authentic2/manager/templates/authentic2/manager/user_create_registration_email_body.txt +#: src/authentic2/saml/management/commands/mapping.py +#: src/authentic2/templates/authentic2/api_user_create_registration_email_body.txt msgid "Last name" msgstr "Nom" -#: src/authentic2/custom_user/models.py:145 +#: src/authentic2/custom_user/models.py msgid "uuid" msgstr "identifiant unique" -#: src/authentic2/custom_user/models.py:147 +#: src/authentic2/custom_user/models.py msgid "username" msgstr "identifiant" -#: src/authentic2/custom_user/models.py:148 +#: src/authentic2/custom_user/models.py msgid "first name" msgstr "prénom" -#: src/authentic2/custom_user/models.py:149 +#: src/authentic2/custom_user/models.py msgid "last name" msgstr "nom" -#: src/authentic2/custom_user/models.py:150 +#: src/authentic2/custom_user/models.py msgid "email address" msgstr "courriel" -#: src/authentic2/custom_user/models.py:151 +#: src/authentic2/custom_user/models.py msgid "email verified" msgstr "courriel vérifié" -#: src/authentic2/custom_user/models.py:153 +#: src/authentic2/custom_user/models.py msgid "staff status" msgstr "statut équipe" -#: src/authentic2/custom_user/models.py:155 +#: src/authentic2/custom_user/models.py msgid "Designates whether the user can log into this admin site." msgstr "Précise si l’utilisateur peut se connecter à ce site d’administration." -#: src/authentic2/custom_user/models.py:158 +#: src/authentic2/custom_user/models.py msgid "active" msgstr "activé" -#: src/authentic2/custom_user/models.py:161 +#: src/authentic2/custom_user/models.py msgid "" "Designates whether this user should be treated as active. Unselect this " "instead of deleting accounts." @@ -1119,31 +1102,31 @@ msgstr "" "Précise si l’utilisateur doit être considéré comme actif. Décochez ceci " "plutôt que de supprimer le compte." -#: src/authentic2/custom_user/models.py:175 +#: src/authentic2/custom_user/models.py msgid "date joined" msgstr "date d’inscription" -#: src/authentic2/custom_user/models.py:176 +#: src/authentic2/custom_user/models.py msgid "Last modification time" msgstr "Dernière modification" -#: src/authentic2/custom_user/models.py:178 +#: src/authentic2/custom_user/models.py msgid "Last account deletion alert" msgstr "Dernière alerte sur la suppression du compte" -#: src/authentic2/custom_user/models.py:180 +#: src/authentic2/custom_user/models.py msgid "Deactivation datetime" msgstr "Date de désactivation" -#: src/authentic2/custom_user/models.py:181 +#: src/authentic2/custom_user/models.py msgid "Deactivation reason" msgstr "Motif de la suspension" -#: src/authentic2/custom_user/models.py:196 +#: src/authentic2/custom_user/models.py msgid "users" msgstr "utilisateurs" -#: src/authentic2/custom_user/models.py:244 +#: src/authentic2/custom_user/models.py msgid "" "An account needs at least one identifier: username, email or a full name " "(first and last name)." @@ -1151,15 +1134,14 @@ msgstr "" "Vous devez préciser au moins un identifiant parmi : identifiant utilisateur, " "adresse de courriel ou nom complet – prénom et nom." -#: src/authentic2/custom_user/models.py:279 -#: src/authentic2/forms/registration.py:117 tests/test_all.py:702 +#: src/authentic2/custom_user/models.py src/authentic2/forms/registration.py +#: tests/test_all.py msgid "This username is already in use. Please supply a different username." msgstr "" "Cet identifiant est déjà utilisé. Utilisez s’il vous plaît un autre " "identifiant." -#: src/authentic2/custom_user/models.py:299 -#: src/authentic2/forms/registration.py:136 +#: src/authentic2/custom_user/models.py src/authentic2/forms/registration.py msgid "" "This email address is already in use. Please supply a different email " "address." @@ -1167,138 +1149,134 @@ msgstr "" "Cette adresse de courriel est déjà utilisée. Utilisez s’il vous plaît une " "autre adresse de courriel." -#: src/authentic2/custom_user/models.py:417 +#: src/authentic2/custom_user/models.py msgid "Deletion date" msgstr "Date de suppression" -#: src/authentic2/custom_user/models.py:418 +#: src/authentic2/custom_user/models.py msgid "Old UUID" msgstr "Ancien UUID" -#: src/authentic2/custom_user/models.py:419 +#: src/authentic2/custom_user/models.py msgid "Old user id" msgstr "Ancien identifiant en base" -#: src/authentic2/custom_user/models.py:420 +#: src/authentic2/custom_user/models.py msgid "Old email adress" msgstr "Ancienne adresse de courriel" -#: src/authentic2/custom_user/models.py:421 +#: src/authentic2/custom_user/models.py msgid "Old data" msgstr "Données conservées" -#: src/authentic2/custom_user/models.py:441 +#: src/authentic2/custom_user/models.py #, python-format msgid "deleted user (%s)" msgstr "utilisateur supprimé (%s)" -#: src/authentic2/custom_user/models.py:444 +#: src/authentic2/custom_user/models.py msgid "deleted user" msgstr "utilisateur supprimé" -#: src/authentic2/custom_user/models.py:445 +#: src/authentic2/custom_user/models.py msgid "deleted users" msgstr "utilisateurs supprimés" -#: src/authentic2/data_transfer.py:200 +#: src/authentic2/data_transfer.py #, python-format msgid "Role \"%(name)s\": %(errors)s" msgstr "Rôle « %(name)s »: %(errors)s" -#: src/authentic2/data_transfer.py:219 +#: src/authentic2/data_transfer.py #, python-format msgid "Can't import role because missing Organizational Unit: %s" msgstr "Impossible d’importer le rôle, la collectivité est manquante : %s" -#: src/authentic2/data_transfer.py:231 src/authentic2/data_transfer.py:235 +#: src/authentic2/data_transfer.py #, python-format msgid "Cannot import role '%s' with invalid uuid" msgstr "Impossible d’importer le rôle « %s » avec un UUID invalide" -#: src/authentic2/data_transfer.py:239 src/authentic2/data_transfer.py:243 +#: src/authentic2/data_transfer.py #, python-format msgid "Cannot import role '%s' with invalid slug" msgstr "" "Impossible d’importer le rôle « %s » avec un identifiant court invalide" -#: src/authentic2/data_transfer.py:251 +#: src/authentic2/data_transfer.py #, python-format msgid "Cannot import role '%s' with empty uuid" msgstr "Impossible d’importer le rôle « %s » sans uuid" -#: src/authentic2/data_transfer.py:290 +#: src/authentic2/data_transfer.py #, python-format msgid "Could not find parent role: %s" msgstr "Impossible de trouver le rôle parent « %s »" -#: src/authentic2/data_transfer.py:376 +#: src/authentic2/data_transfer.py msgid "Import file is invalid: not a dictionnary" msgstr "Fichier d’import invalide, ce n’est pas un objet JSON" -#: src/authentic2/data_transfer.py:408 +#: src/authentic2/data_transfer.py #, python-format msgid "Unsupported context value for ou_delete_orphans : %s" msgstr "Valeur de contexte non prise en charge pour ou_delete_orphans : %s" -#: src/authentic2/data_transfer.py:414 +#: src/authentic2/data_transfer.py #, python-format msgid "Unsupported context value for role_delete_orphans : %s" msgstr "Valeur de contexte non prise en charge pour role_delete_orphans : %s" -#: src/authentic2/disco_service/disco_responder.py:139 +#: src/authentic2/disco_service/disco_responder.py #, python-format msgid "HTTP verb not supported %s" msgstr "verbe HTTP %s non pris en charge" -#: src/authentic2/disco_service/disco_responder.py:181 +#: src/authentic2/disco_service/disco_responder.py msgid "missing mandatory parameter entityID" msgstr "paramètre obligatoire entityID manquant" -#: src/authentic2/disco_service/disco_responder.py:185 +#: src/authentic2/disco_service/disco_responder.py #, python-format msgid "policy %r not implemented" msgstr "le règlement %r n’est pas géré" -#: src/authentic2/disco_service/disco_responder.py:196 +#: src/authentic2/disco_service/disco_responder.py #, python-format msgid "unable to find a valid return url for %s" msgstr "impossible de trouver une URL de retour valide pour %s" -#: src/authentic2/disco_service/disco_responder.py:202 +#: src/authentic2/disco_service/disco_responder.py #, python-format msgid "invalid return url %(return_url)s for %(entity_id)s" msgstr "URL de retour %(return_url)s invalide pour %(entity_id)s" -#: src/authentic2/forms/authentication.py:43 +#: src/authentic2/forms/authentication.py msgid "Remember me" msgstr "Se souvenir de moi" -#: src/authentic2/forms/authentication.py:44 +#: src/authentic2/forms/authentication.py msgid "Do not ask for authentication next time" msgstr "Ne pas demander d’authentification au prochain accès" -#: src/authentic2/forms/authentication.py:47 -#: src/authentic2/manager/forms.py:163 src/authentic2/manager/forms.py:397 -#: src/authentic2/manager/forms.py:612 src/authentic2/manager/forms.py:703 -#: src/authentic2/manager/forms.py:761 -#: src/authentic2/manager/templates/authentic2/manager/ou_detail.html:5 -#: src/authentic2/manager/templates/authentic2/manager/ou_detail.html:10 -#: src/authentic2/manager/templates/authentic2/manager/ou_edit.html:6 -#: src/authentic2/manager/templates/authentic2/manager/service.html:24 -#: src/authentic2/saml/forms.py:39 +#: src/authentic2/forms/authentication.py src/authentic2/manager/forms.py +#: src/authentic2/manager/templates/authentic2/manager/ou_detail.html +#: src/authentic2/manager/templates/authentic2/manager/ou_edit.html +#: src/authentic2/manager/templates/authentic2/manager/service.html +#: src/authentic2/saml/forms.py msgid "Organizational unit" msgstr "Collectivité" -#: src/authentic2/forms/authentication.py:72 +#: src/authentic2/forms/authentication.py msgid "Preferred organizational units" msgstr "Collectivités préférées" -#: src/authentic2/forms/authentication.py:73 -#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:89 +#: src/authentic2/forms/authentication.py +#: src/authentic2/manager/templates/authentic2/manager/user_detail.html msgid "All organizational units" msgstr "Toutes les collectivités" -#: src/authentic2/forms/authentication.py:96 +#: src/authentic2/forms/authentication.py #, python-format msgid "" "You made too many login errors recently, you must wait %s secondes avant de pouvoir à nouveau essayer." -#: src/authentic2/forms/authentication.py:151 +#: src/authentic2/forms/authentication.py #, python-format msgid "Incorrect %(username_label)s or password." msgstr " %(username_label)s ou mot de passe incorrect." -#: src/authentic2/forms/authentication.py:157 +#: src/authentic2/forms/authentication.py msgid "Try again, use the forgotten password link below, or create an account." msgstr "" "Vous pouvez réessayer ou utiliser le lien ci-dessous en cas de mot de passe " "perdu. Vous pouvez également vous créer un compte." -#: src/authentic2/forms/authentication.py:160 +#: src/authentic2/forms/authentication.py msgid "Try again or use the forgotten password link below." msgstr "" "Vous pouvez réessayer ou utiliser le lien ci-dessous en cas de mot de passe " "perdu." -#: src/authentic2/forms/authentication.py:162 +#: src/authentic2/forms/authentication.py msgid "Try again or create an account." msgstr "Vous pouvez réessayer ou vous créer un compte." -#: src/authentic2/forms/fields.py:62 +#: src/authentic2/forms/fields.py msgid "Both passwords must match." msgstr "Les deux mots de passe doivent être identiques." -#: src/authentic2/forms/fields.py:63 +#: src/authentic2/forms/fields.py msgid "Passwords match." msgstr "Les mots de passe sont identiques." -#: src/authentic2/forms/fields.py:64 +#: src/authentic2/forms/fields.py msgid "Passwords do not match." msgstr "Les mots de passe ne sont pas identiques." -#: src/authentic2/forms/fields.py:84 +#: src/authentic2/forms/fields.py msgid "The image is not valid" msgstr "L’image n’est pas valide" -#: src/authentic2/forms/passwords.py:48 +#: src/authentic2/forms/passwords.py msgid "Email or username" msgstr "Courriel ou identifiant" -#: src/authentic2/forms/passwords.py:135 src/authentic2/forms/passwords.py:149 +#: src/authentic2/forms/passwords.py msgid "New password" msgstr "Nouveau mot de passe" -#: src/authentic2/forms/passwords.py:136 src/authentic2/forms/passwords.py:150 +#: src/authentic2/forms/passwords.py msgid "New password confirmation" msgstr "Confirmation du nouveau mot de passe" -#: src/authentic2/forms/passwords.py:141 src/authentic2/forms/passwords.py:156 +#: src/authentic2/forms/passwords.py msgid "New password must differ from old password" msgstr "Le nouveau mot de passe doit être différent de l’ancien." -#: src/authentic2/forms/passwords.py:148 +#: src/authentic2/forms/passwords.py msgid "Old password" msgstr "Ancien mot de passe" -#: src/authentic2/forms/profile.py:41 +#: src/authentic2/forms/profile.py msgid "Password is invalid" msgstr "Le mot de passe est invalide" -#: src/authentic2/forms/profile.py:46 +#: src/authentic2/forms/profile.py msgid "New email" msgstr "Nouveau courriel" -#: src/authentic2/forms/profile.py:59 +#: src/authentic2/forms/profile.py msgid "This is already your email address." msgstr "Cette adresse de courriel est déjà la vôtre." -#: src/authentic2/forms/profile.py:66 +#: src/authentic2/forms/profile.py msgid "Incorrect password." msgstr "Mot de passe incorrect." -#: src/authentic2/forms/profile.py:74 +#: src/authentic2/forms/profile.py msgid "A user with that username already exists." msgstr "Un utilisateur avec cet identifiant existe déjà." -#: src/authentic2/forms/registration.py:61 +#: src/authentic2/forms/registration.py msgid "You cannot register with this email." msgstr "Vous ne pouvez pas vous inscrire avec cette adresse de courriel." -#: src/authentic2/forms/registration.py:67 +#: src/authentic2/forms/registration.py msgid "Special characters are not allowed." msgstr "Les caractères spéciaux sont interdits." -#: src/authentic2/forms/registration.py:155 +#: src/authentic2/forms/registration.py msgid "Password (again)" msgstr "Confirmation du mot de passe" -#: src/authentic2/forms/widgets.py:166 +#: src/authentic2/forms/widgets.py msgid "Format:" msgstr "Format :" -#: src/authentic2/hashers.py:101 src/authentic2/hashers.py:134 -#: src/authentic2/hashers.py:308 +#: src/authentic2/hashers.py msgid "algorithm" msgstr "algorithme" -#: src/authentic2/hashers.py:102 +#: src/authentic2/hashers.py msgid "iterations" msgstr "itérations" -#: src/authentic2/hashers.py:103 src/authentic2/hashers.py:135 +#: src/authentic2/hashers.py msgid "salt" msgstr "sel" -#: src/authentic2/hashers.py:104 src/authentic2/hashers.py:136 -#: src/authentic2/hashers.py:309 +#: src/authentic2/hashers.py msgid "hash" msgstr "condensé" -#: src/authentic2/idp/saml/backend.py:89 -#: src/authentic2/templates/authentic2/login.html:7 -#: src/authentic2/templates/registration/registration_completion_choose.html:9 +#: src/authentic2/idp/saml/backend.py +#: src/authentic2/templates/authentic2/login.html +#: src/authentic2/templates/registration/registration_completion_choose.html msgid "Login" msgstr "Connexion" -#: src/authentic2/idp/saml/backend.py:93 -#: src/authentic2/templates/authentic2/base.html:34 -#: src/authentic2/templates/authentic2/logout.html:5 -#: src/authentic2/templates/authentic2/logout_confirm.html:6 +#: src/authentic2/idp/saml/backend.py +#: src/authentic2/templates/authentic2/base.html +#: src/authentic2/templates/authentic2/logout.html +#: src/authentic2/templates/authentic2/logout_confirm.html msgid "Logout" msgstr "Déconnexion" -#: src/authentic2/idp/saml/backend.py:165 -#: src/authentic2/manager/templates/authentic2/manager/delete.html:15 -#: src/authentic2/manager/templates/authentic2/manager/ou_detail.html:21 -#: src/authentic2/manager/templates/authentic2/manager/ou_detail.html:23 -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:27 -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:29 -#: src/authentic2/manager/templates/authentic2/manager/role_permissions.html:14 -#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:10 -#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:12 -#: src/authentic2/manager/templates/authentic2/manager/user_import_report_row.html:12 -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:46 +#: src/authentic2/idp/saml/backend.py +#: src/authentic2/manager/templates/authentic2/manager/delete.html +#: src/authentic2/manager/templates/authentic2/manager/ou_detail.html +#: src/authentic2/manager/templates/authentic2/manager/role_members.html +#: src/authentic2/manager/templates/authentic2/manager/role_permissions.html +#: src/authentic2/manager/templates/authentic2/manager/user_detail.html +#: src/authentic2/manager/templates/authentic2/manager/user_import_report_row.html +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Delete" msgstr "Supprimer" -#: src/authentic2/idp/saml/backend.py:183 -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:20 -#: src/authentic2/manager/user_views.py:166 -#: src/authentic2/templates/authentic2/accounts_edit.html:23 +#: src/authentic2/idp/saml/backend.py +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html +#: src/authentic2/manager/user_views.py +#: src/authentic2/templates/authentic2/accounts_edit.html msgid "Create" msgstr "Créer" -#: src/authentic2/idp/saml/saml2_endpoints.py:538 +#: src/authentic2/idp/saml/saml2_endpoints.py msgid "" "SAMLv2 Single Sign On: invalid message for WebSSO profile with HTTP-Redirect " "binding" @@ -1460,7 +1433,7 @@ msgstr "" "SAMLv2 Single Sign On: message invalide pour le profil utilisant le binding " "HTTP-Redirect" -#: src/authentic2/idp/saml/saml2_endpoints.py:544 +#: src/authentic2/idp/saml/saml2_endpoints.py msgid "" "SAMLv2 Single Sign On: the request cannot be answered because no valid " "protocol binding could be found" @@ -1468,60 +1441,53 @@ msgstr "" "SAMLv2 Single Sign On: la requête ne peut être traitée car elle est " "invalide : un binding de protocole n’a pu être trouvé" -#: src/authentic2/idp/saml/saml2_endpoints.py:579 +#: src/authentic2/idp/saml/saml2_endpoints.py msgid "sso: No SP policy defined" msgstr "sso: Pas de politique pour les fournisseurs de service définie" -#: src/authentic2/idp/saml/saml2_endpoints.py:687 -#: src/authentic2/idp/saml/saml2_endpoints.py:1108 +#: src/authentic2/idp/saml/saml2_endpoints.py msgid "request has expired" msgstr "la requête a expiré" -#: src/authentic2/idp/saml/saml2_endpoints.py:695 +#: src/authentic2/idp/saml/saml2_endpoints.py msgid "continue_sso: error loading login" msgstr "continue_sso: erreur au rechargement de l’objet login" -#: src/authentic2/idp/saml/saml2_endpoints.py:698 +#: src/authentic2/idp/saml/saml2_endpoints.py #, python-format msgid "continue_sso: unknown provider %s" msgstr "continue_sso: fournisseur %s inconnu" -#: src/authentic2/idp/saml/saml2_endpoints.py:828 +#: src/authentic2/idp/saml/saml2_endpoints.py #, python-format msgid "Provider %s is unknown" msgstr "Le fournisseur %s est inconnu" -#: src/authentic2/idp/saml/saml2_endpoints.py:831 +#: src/authentic2/idp/saml/saml2_endpoints.py msgid "No service provider policy defined" msgstr "Pas de politique de fournisseur de service définie" -#: src/authentic2/idp/saml/saml2_endpoints.py:963 -#: src/authentic2/idp/saml/saml2_endpoints.py:1130 -#: src/authentic2/idp/saml/saml2_endpoints.py:1141 -#: src/authentic2/idp/saml/saml2_endpoints.py:1333 -#: src/authentic2/idp/saml/saml2_endpoints.py:1364 -#: src/authentic2/idp/saml/saml2_endpoints.py:1400 -#: src/authentic2/idp/saml/saml2_endpoints.py:1413 +#: src/authentic2/idp/saml/saml2_endpoints.py #, python-format msgid "You are being redirected to \"%s\"" msgstr "Vous allez être redirigé sur « %s »" -#: src/authentic2/idp/saml/saml2_endpoints.py:1403 +#: src/authentic2/idp/saml/saml2_endpoints.py msgid "Invalid logout request" msgstr "Requête de déconnexion invalide" -#: src/authentic2/idp/saml/templates/idp/saml/logout_fragment.html:2 +#: src/authentic2/idp/saml/templates/idp/saml/logout_fragment.html #, python-format msgid "Sending logout to %(name)s..." msgstr "Déconnexion avec %(name)s…" -#: src/authentic2/idp/saml/templates/idp/saml/unknown_provider.html:6 +#: src/authentic2/idp/saml/templates/idp/saml/unknown_provider.html #, python-format msgid "We were unable to load provider %(entity_id)s." msgstr "" "Nous n’avons pas pu charger le fournisseur de service %(entity_id)s." -#: src/authentic2/idp/saml/templates/idp/saml/unknown_provider.html:8 +#: src/authentic2/idp/saml/templates/idp/saml/unknown_provider.html #, python-format msgid "" "\n" @@ -1534,176 +1500,173 @@ msgstr "" "\"\">réessayer.\n" " " -#: src/authentic2/idp/saml/views.py:43 +#: src/authentic2/idp/saml/views.py #, python-brace-format msgid "Federation to {0} deleted" msgstr "La liaison avec {0} a été supprimée." -#: src/authentic2/journal_event_types.py:113 +#: src/authentic2/journal_event_types.py msgid "password" msgstr "mot de passe" -#: src/authentic2/journal_event_types.py:123 +#: src/authentic2/journal_event_types.py msgid "none" msgstr "aucun" -#: src/authentic2/journal_event_types.py:140 +#: src/authentic2/journal_event_types.py msgid "login" msgstr "authentification" -#: src/authentic2/journal_event_types.py:145 +#: src/authentic2/journal_event_types.py #, python-brace-format msgid "login using {method}" msgstr "authentification via {method}" -#: src/authentic2/journal_event_types.py:150 +#: src/authentic2/journal_event_types.py msgid "login failure" msgstr "échec d’authentification" -#: src/authentic2/journal_event_types.py:159 +#: src/authentic2/journal_event_types.py #, python-brace-format msgid "login failure with username \"{username}\"" msgstr "échec d’authentification pour l’identifiant « {username} »" -#: src/authentic2/journal_event_types.py:164 +#: src/authentic2/journal_event_types.py msgid "registration request" msgstr "demande de création de compte" -#: src/authentic2/journal_event_types.py:173 +#: src/authentic2/journal_event_types.py #, python-format msgid "registration request with email \"%s\"" msgstr "demande de création de compte pour l’adresse de courriel « %s »" -#: src/authentic2/journal_event_types.py:178 +#: src/authentic2/journal_event_types.py msgid "registration" msgstr "création de compte" -#: src/authentic2/journal_event_types.py:183 +#: src/authentic2/journal_event_types.py #, python-brace-format msgid "registration using {method}" msgstr "création de compte via {method}" -#: src/authentic2/journal_event_types.py:188 -#: src/authentic2/journal_event_types.py:196 +#: src/authentic2/journal_event_types.py msgid "logout" msgstr "déconnexion" -#: src/authentic2/journal_event_types.py:201 +#: src/authentic2/journal_event_types.py msgid "password reset request" msgstr "demande de réinitialisation du mot de passe" -#: src/authentic2/journal_event_types.py:211 +#: src/authentic2/journal_event_types.py #, python-format msgid "password reset request with email \"%s\"" msgstr "" "demande de réinitialisation du mot de passe pour l’adresse de courriel « %s »" -#: src/authentic2/journal_event_types.py:217 src/authentic2/models.py:360 -#: src/authentic2/models.py:361 +#: src/authentic2/journal_event_types.py src/authentic2/models.py msgid "password reset" msgstr "réinitialisation du mot de passe" -#: src/authentic2/journal_event_types.py:226 +#: src/authentic2/journal_event_types.py msgid "password reset failure" msgstr "échec de réinitialisation du mot de passe" -#: src/authentic2/journal_event_types.py:236 +#: src/authentic2/journal_event_types.py #, python-format msgid "password reset failure with email \"%s\"" msgstr "" "échec de réinitialisation du mot de passe pour l’adresse de courriel « %s »" -#: src/authentic2/journal_event_types.py:242 +#: src/authentic2/journal_event_types.py msgid "password change" msgstr "changement de mot de passe" -#: src/authentic2/journal_event_types.py:251 +#: src/authentic2/journal_event_types.py msgid "profile edit" msgstr "modification du profil" -#: src/authentic2/journal_event_types.py:263 +#: src/authentic2/journal_event_types.py #, python-format msgid "profile edit (%s)" msgstr "modification du profil (%s)" -#: src/authentic2/journal_event_types.py:269 -#: src/authentic2/manager/journal_event_types.py:259 +#: src/authentic2/journal_event_types.py +#: src/authentic2/manager/journal_event_types.py msgid "user deletion" msgstr "suppression d’un compte" -#: src/authentic2/journal_event_types.py:278 +#: src/authentic2/journal_event_types.py msgid "service single sign on" msgstr "authentification unique sur un service" -#: src/authentic2/journal_event_types.py:283 +#: src/authentic2/journal_event_types.py #, python-brace-format msgid "service single sign on with \"{service}\"" msgstr "authentification unique sur le service « {service} »" -#: src/authentic2/journal_event_types.py:288 +#: src/authentic2/journal_event_types.py msgid "consent to single sign on" msgstr "autorisation d’authentification unique" -#: src/authentic2/journal_event_types.py:297 +#: src/authentic2/journal_event_types.py #, python-brace-format msgid "authorization of single sign on with \"{service}\"" msgstr "autorisation d’authentification unique sur le service « {service} »" -#: src/authentic2/journal_event_types.py:302 +#: src/authentic2/journal_event_types.py msgid "remove consent to single sign on" msgstr "refus d’authentification unique" -#: src/authentic2/journal_event_types.py:311 +#: src/authentic2/journal_event_types.py #, python-brace-format msgid "unauthorization of single sign on with \"{service}\"" msgstr "refus d’authentification unique sur le service « {service} »" -#: src/authentic2/journal_event_types.py:316 -#: src/authentic2/manager/journal_event_types.py:85 +#: src/authentic2/journal_event_types.py +#: src/authentic2/manager/journal_event_types.py msgid "email change request" msgstr "Demande de changement d'adresse de courriel" -#: src/authentic2/journal_event_types.py:329 +#: src/authentic2/journal_event_types.py #, python-brace-format msgid "email change request for email address \"{0}\"" msgstr "demande de changement d'adresse de courriel pour l'adresse « {0} »" -#: src/authentic2/journal_event_types.py:334 +#: src/authentic2/journal_event_types.py msgid "email change" msgstr "Changement d’adresse de courriel" -#: src/authentic2/journal_event_types.py:348 +#: src/authentic2/journal_event_types.py #, python-brace-format msgid "email address changed from \"{0}\" to \"{1}\"" msgstr "changement d'adresse de courriel de « {0} » à « {1} »" -#: src/authentic2/manager/forms.py:113 -#: src/authentic2/manager/templates/authentic2/manager/user_add.html:5 -#: src/authentic2/manager/templates/authentic2/manager/user_add.html:30 +#: src/authentic2/manager/forms.py +#: src/authentic2/manager/templates/authentic2/manager/user_add.html msgid "Add an user" msgstr "Ajouter un utilisateur" -#: src/authentic2/manager/forms.py:126 src/authentic2/manager/forms.py:145 +#: src/authentic2/manager/forms.py msgid "Add a role" msgstr "Ajouter un rôle" -#: src/authentic2/manager/forms.py:132 +#: src/authentic2/manager/forms.py msgid "Add some users" msgstr "Ajouter des utilisateurs" -#: src/authentic2/manager/forms.py:137 src/authentic2/manager/forms.py:141 +#: src/authentic2/manager/forms.py msgid "Add some roles" msgstr "Ajouter des rôles" -#: src/authentic2/manager/forms.py:161 +#: src/authentic2/manager/forms.py msgid "Operation" msgstr "Opération" -#: src/authentic2/manager/forms.py:165 +#: src/authentic2/manager/forms.py msgid "Target object" msgstr "Objet ciblé" -#: src/authentic2/manager/forms.py:231 +#: src/authentic2/manager/forms.py msgid "" "You must choose password generation or type a new one or send a password " "reset mail" @@ -1711,33 +1674,33 @@ msgstr "" "Vous devez choisir entre la génération d’un mot de passe, en définir un " "nouveau ou envoyer un courriel de réinitialisation." -#: src/authentic2/manager/forms.py:239 +#: src/authentic2/manager/forms.py msgid "User does not have a mail, we cannot send the informations to him." msgstr "" "L’utilisateur n’a pas d’adresse de courriel, nous ne pouvons donc pas lui " "envoyer les informations." -#: src/authentic2/manager/forms.py:271 +#: src/authentic2/manager/forms.py msgid "Generate new password" msgstr "Générer un mot de passe" -#: src/authentic2/manager/forms.py:273 +#: src/authentic2/manager/forms.py msgid "Confirmation" msgstr "Confirmation" -#: src/authentic2/manager/forms.py:274 +#: src/authentic2/manager/forms.py msgid "Send informations to user" msgstr "Envoyer les informations à l’utilisateur" -#: src/authentic2/manager/forms.py:288 +#: src/authentic2/manager/forms.py msgid "Ask for password reset on next login" msgstr "Doit changer de mot de passe à la prochaine connexion" -#: src/authentic2/manager/forms.py:292 +#: src/authentic2/manager/forms.py msgid "Send mail to user to make it choose a password" msgstr "Envoi à l’utilisateur d’un courriel d’initialisation de mot de passe" -#: src/authentic2/manager/forms.py:312 +#: src/authentic2/manager/forms.py msgid "" "You must set a username or an email to set a password or send an activation " "link." @@ -1745,252 +1708,250 @@ msgstr "" "Vous devez au moins définir soit un identifiant soit un courriel pour " "pouvoir définir un mot de passe ou envoyer un lien d’activation." -#: src/authentic2/manager/forms.py:363 src/authentic2/manager/forms.py:598 -#: src/authentic2/saml/forms.py:33 +#: src/authentic2/manager/forms.py src/authentic2/saml/forms.py msgid "Name" msgstr "Nom" -#: src/authentic2/manager/forms.py:364 +#: src/authentic2/manager/forms.py msgid "Show internal roles" msgstr "Afficher les rôles internes" -#: src/authentic2/manager/forms.py:412 +#: src/authentic2/manager/forms.py msgctxt "organizational unit" msgid "All" msgstr "Toutes" -#: src/authentic2/manager/forms.py:449 +#: src/authentic2/manager/forms.py msgctxt "organizational unit" msgid "None" msgstr "Aucune" -#: src/authentic2/manager/forms.py:536 +#: src/authentic2/manager/forms.py msgid "Show only direct user roles" msgstr "Afficher uniquement les rôles directs de l’utilisateur" -#: src/authentic2/manager/forms.py:568 +#: src/authentic2/manager/forms.py msgid "Free text" msgstr "Recherche libre" -#: src/authentic2/manager/forms.py:623 src/authentic2/manager/tables.py:104 -#: src/authentic2/manager/tables.py:134 src/authentic2/manager/tables.py:146 -#: src/authentic2/manager/tables.py:185 src/authentic2/models.py:137 +#: src/authentic2/manager/forms.py src/authentic2/manager/tables.py +#: src/authentic2/models.py msgid "label" msgstr "libellé" -#: src/authentic2/manager/forms.py:675 +#: src/authentic2/manager/forms.py msgid "Site Export File" msgstr "Fichier d’export de site" -#: src/authentic2/manager/forms.py:687 +#: src/authentic2/manager/forms.py msgid "File is not in the expected JSON format." msgstr "Le fichier n’est pas au format JSON attendu." -#: src/authentic2/manager/forms.py:691 +#: src/authentic2/manager/forms.py msgid "Organizational Units Export File" msgstr "Fichier d’export des collectivités" -#: src/authentic2/manager/forms.py:695 +#: src/authentic2/manager/forms.py msgid "Roles Export File" msgstr "Fichier d’export des rôles" -#: src/authentic2/manager/forms.py:708 +#: src/authentic2/manager/forms.py msgid "Unicode (UTF-8)" msgstr "Unicode (UTF-8)" -#: src/authentic2/manager/forms.py:709 +#: src/authentic2/manager/forms.py msgid "Western Europe (Windows-1252)" msgstr "Europe occidentale (Windows-1252)" -#: src/authentic2/manager/forms.py:710 +#: src/authentic2/manager/forms.py msgid "Western Europe (ISO-8859-15)" msgstr "Europe occidentale (ISO-8859-15)" -#: src/authentic2/manager/forms.py:715 +#: src/authentic2/manager/forms.py msgid "Import file" msgstr "Fichier d’import" -#: src/authentic2/manager/forms.py:715 +#: src/authentic2/manager/forms.py msgid "A CSV file" msgstr "Un fichier CSV" -#: src/authentic2/manager/forms.py:716 +#: src/authentic2/manager/forms.py msgid "Encoding" msgstr "Encodage" -#: src/authentic2/manager/forms.py:717 +#: src/authentic2/manager/forms.py msgid "Organizational Unit" msgstr "Collectivité" -#: src/authentic2/manager/forms.py:721 +#: src/authentic2/manager/forms.py msgid "Invalid import file" msgstr "Fichier d’import invalide" -#: src/authentic2/manager/forms.py:755 +#: src/authentic2/manager/forms.py msgid "Roles file" msgstr "Fichier de rôles" -#: src/authentic2/manager/forms.py:757 +#: src/authentic2/manager/forms.py msgid "" "CSV file with role name and optionnaly role slug and organizational unit." msgstr "" "Fichier CSV avec le nom des rôles et, facultatifs, l’identifiant court du " "rôle et la collectivité." -#: src/authentic2/manager/forms.py:774 +#: src/authentic2/manager/forms.py msgid "Invalid file format." msgstr "Format de fichier invalide." -#: src/authentic2/manager/forms.py:807 +#: src/authentic2/manager/forms.py #, python-format msgid "Invalid file header \"%s\", expected \"name,slug,ou\"." msgstr "Entête de fichier invalide (%s), valeur attendue : « name,slug,ou »." -#: src/authentic2/manager/forms.py:812 +#: src/authentic2/manager/forms.py msgid "Name is required." msgstr "Le nom est obligatoire" -#: src/authentic2/manager/forms.py:824 +#: src/authentic2/manager/forms.py #, python-format msgid "Organizational Unit %s does not exist." msgstr "La collectivité %s n’existe pas." -#: src/authentic2/manager/forms.py:846 +#: src/authentic2/manager/forms.py #, python-format msgid "%(error)s (line %(number)d)" msgstr "%(error)s (ligne %(number)d)" -#: src/authentic2/manager/journal_event_types.py:42 +#: src/authentic2/manager/journal_event_types.py msgid "user creation" msgstr "création d’un utilisateur" -#: src/authentic2/manager/journal_event_types.py:53 +#: src/authentic2/manager/journal_event_types.py msgid "creation by administrator" msgstr "création par un administrateur" -#: src/authentic2/manager/journal_event_types.py:56 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "creation of user \"%s\"" msgstr "création du compte « %s »" -#: src/authentic2/manager/journal_event_types.py:62 +#: src/authentic2/manager/journal_event_types.py msgid "user profile edit" msgstr "édition d’un profil" -#: src/authentic2/manager/journal_event_types.py:76 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "edit by administrator (%s)" msgstr "édition du profil par un administrateur (%s)" -#: src/authentic2/manager/journal_event_types.py:79 +#: src/authentic2/manager/journal_event_types.py #, python-brace-format msgid "edit of user \"{0}\" ({1})" msgstr "édition du profil du compte « {0} » ({1})" -#: src/authentic2/manager/journal_event_types.py:100 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "email change for email address \"%s\" requested by administrator" msgstr "" "demande de changement de mot de passe par un administrateur envoyée à " "l’adresse de courriel « %s »" -#: src/authentic2/manager/journal_event_types.py:103 +#: src/authentic2/manager/journal_event_types.py #, python-brace-format msgid "email change of user \"{0}\" for email address \"{1}\"" msgstr "" "demande de changement de mot de passe pour le compte « {0} » envoyée à " "l’dresse de courriel « {1} »" -#: src/authentic2/manager/journal_event_types.py:109 +#: src/authentic2/manager/journal_event_types.py msgid "user password change" msgstr "changement de mot de passe" -#: src/authentic2/manager/journal_event_types.py:126 +#: src/authentic2/manager/journal_event_types.py msgid "password change by administrator and notification by mail" msgstr "" "changement de mot de passe par un administrateur et notification par mail" -#: src/authentic2/manager/journal_event_types.py:128 +#: src/authentic2/manager/journal_event_types.py msgid "password change by administrator" msgstr "changement de mot de passe par un administrateur" -#: src/authentic2/manager/journal_event_types.py:132 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "password change of user \"%s\" and notification by mail" msgstr "changement du mot de passe du compte « %s » et notification par mail" -#: src/authentic2/manager/journal_event_types.py:134 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "password change of user \"%s\"" msgstr "changement du mot de passe du compte « %s »" -#: src/authentic2/manager/journal_event_types.py:140 +#: src/authentic2/manager/journal_event_types.py msgid "user password reset request" msgstr "demande de réinitialisation du mot de passe (backoffice)" -#: src/authentic2/manager/journal_event_types.py:153 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "password reset request by administrator sent to \"%s\"" msgstr "" "demande de réinitilisation du mot de passe par un administrateur envoyée à " "l’adresse de courriel « %s »" -#: src/authentic2/manager/journal_event_types.py:155 +#: src/authentic2/manager/journal_event_types.py #, python-brace-format msgid "password reset request of \"{0}\" sent to \"{1}\"" msgstr "" "demande de réinitilisation du mot de passe pour le compte « {0} » envoyée à " "l’adresse de courriel « {1} »" -#: src/authentic2/manager/journal_event_types.py:161 +#: src/authentic2/manager/journal_event_types.py msgid "mandatory password change at next login set" msgstr "demande de changement de mot de passe à la prochaine connexion" -#: src/authentic2/manager/journal_event_types.py:171 +#: src/authentic2/manager/journal_event_types.py msgid "mandatory password change at next login set by administrator" msgstr "" "demande de changement de mot de passe à la prochaine connexion par un " "administrateur" -#: src/authentic2/manager/journal_event_types.py:173 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "mandatory password change at next login set for user \"%s\"" msgstr "" "demande de changement de mot de passe à la prochaine connexion pour le " "compte « %s »" -#: src/authentic2/manager/journal_event_types.py:179 +#: src/authentic2/manager/journal_event_types.py msgid "mandatory password change at next login unset" msgstr "" "retrait de demande de changement de mot de passe à la prochaine connexion" -#: src/authentic2/manager/journal_event_types.py:189 +#: src/authentic2/manager/journal_event_types.py msgid "mandatory password change at next login unset by administrator" msgstr "" "retrait de demande de changement de mot de passe à la prochaine connexion " "par un administrateur" -#: src/authentic2/manager/journal_event_types.py:191 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "mandatory password change at next login unset for user \"%s\"" msgstr "" "retrait de demande de changement de mot de passe à la prochaine connexion " "pour le compte « %s »" -#: src/authentic2/manager/journal_event_types.py:197 +#: src/authentic2/manager/journal_event_types.py msgid "user activation" msgstr "activation d’un compte" -#: src/authentic2/manager/journal_event_types.py:210 +#: src/authentic2/manager/journal_event_types.py msgid "automatic activation because the associated LDAP account reappeared" msgstr "" "activation automatique parce que le compte LDAP associé existe à nouveau" -#: src/authentic2/manager/journal_event_types.py:212 +#: src/authentic2/manager/journal_event_types.py msgid "activation by administrator" msgstr "activation du compte par un administrateur" -#: src/authentic2/manager/journal_event_types.py:216 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "" "automatic activation of user \"%s\" because the associated LDAP account " @@ -1999,31 +1960,31 @@ msgstr "" "activation automatique du compte « %s » parce que le compte LDAP associé " "existe à nouveau" -#: src/authentic2/manager/journal_event_types.py:219 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "activation of user \"%s\"" msgstr "activation du compte « %s »" -#: src/authentic2/manager/journal_event_types.py:225 +#: src/authentic2/manager/journal_event_types.py msgid "user deactivation" msgstr "suspension d’un compte" -#: src/authentic2/manager/journal_event_types.py:238 +#: src/authentic2/manager/journal_event_types.py msgid "" "automatic deactivation because the associated LDAP account does not exist " "anymore" msgstr "suspension automatique parce que le compte LDAP associé n’existe plus" -#: src/authentic2/manager/journal_event_types.py:240 +#: src/authentic2/manager/journal_event_types.py msgid "" "automatic deactivation because the associated LDAP source has been deleted" msgstr "suspension automatique parce que la source LDAP associée a été retirée" -#: src/authentic2/manager/journal_event_types.py:242 +#: src/authentic2/manager/journal_event_types.py msgid "deactivation by administrator" msgstr "suspension du compte par un administrateur" -#: src/authentic2/manager/journal_event_types.py:246 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "" "automatic deactivation of user \"%s\" because the associated LDAP account " @@ -2032,7 +1993,7 @@ msgstr "" "suspension automatique du compte « %s » parce que le compte LDAP associé " "n’existe plus" -#: src/authentic2/manager/journal_event_types.py:250 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "" "automatic deactivation of user \"%s\" because the associated LDAP source has " @@ -2041,25 +2002,25 @@ msgstr "" "suspension automatique du compte « %s » parce que la source LAP associée a " "été retirée" -#: src/authentic2/manager/journal_event_types.py:253 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "deactivation of user \"%s\"" msgstr "suspension du compte « %s »" -#: src/authentic2/manager/journal_event_types.py:269 +#: src/authentic2/manager/journal_event_types.py msgid "deletion by administrator" msgstr "suppression du compte par un administrateur" -#: src/authentic2/manager/journal_event_types.py:271 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "deletion of user \"%s\"" msgstr "suppression du compte « %s »" -#: src/authentic2/manager/journal_event_types.py:277 +#: src/authentic2/manager/journal_event_types.py msgid "delete authorization" msgstr "suppression d’une autorisation d’authentification unique" -#: src/authentic2/manager/journal_event_types.py:289 +#: src/authentic2/manager/journal_event_types.py #, python-brace-format msgid "" "deletion of authorization of single sign on with \"{service}\" by " @@ -2068,7 +2029,7 @@ msgstr "" "suppression d’une autorisation d’authentification unique sur le service " "« {service} » par un administrateur" -#: src/authentic2/manager/journal_event_types.py:293 +#: src/authentic2/manager/journal_event_types.py #, python-brace-format msgid "" "deletion of authorization of single sign on with \"{service}\" of user " @@ -2077,203 +2038,201 @@ msgstr "" "suppression d’une autorisation d’authentification unique sur le service " "« {service} » pour le compte « {user} »" -#: src/authentic2/manager/journal_event_types.py:318 +#: src/authentic2/manager/journal_event_types.py msgid "role creation" msgstr "création d’un rôle" -#: src/authentic2/manager/journal_event_types.py:325 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "creation of role \"%s\"" msgstr "création du rôle « %s »" -#: src/authentic2/manager/journal_event_types.py:327 +#: src/authentic2/manager/journal_event_types.py msgid "creation" msgstr "création" -#: src/authentic2/manager/journal_event_types.py:332 +#: src/authentic2/manager/journal_event_types.py msgid "role edit" msgstr "modification d’un rôle" -#: src/authentic2/manager/journal_event_types.py:345 +#: src/authentic2/manager/journal_event_types.py #, python-brace-format msgid "edit of role \"{role}\" ({change})" msgstr "modification du rôle « {role} » ({change})" -#: src/authentic2/manager/journal_event_types.py:347 +#: src/authentic2/manager/journal_event_types.py #, python-brace-format msgid "edit ({change})" msgstr "modification ({change})" -#: src/authentic2/manager/journal_event_types.py:352 +#: src/authentic2/manager/journal_event_types.py msgid "role deletion" msgstr "suppression d’un rôle" -#: src/authentic2/manager/journal_event_types.py:359 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "deletion of role \"%s\"" msgstr "suppression du rôle « %s »" -#: src/authentic2/manager/journal_event_types.py:361 +#: src/authentic2/manager/journal_event_types.py msgid "deletion" msgstr "supression" -#: src/authentic2/manager/journal_event_types.py:366 +#: src/authentic2/manager/journal_event_types.py msgid "role membership grant" msgstr "ajout d’un membre à un rôle" -#: src/authentic2/manager/journal_event_types.py:379 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "membership grant in role \"%s\"" msgstr "ajout au rôle « %s »" -#: src/authentic2/manager/journal_event_types.py:381 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "membership grant to user \"%s\"" msgstr "ajout du compte « %s »" -#: src/authentic2/manager/journal_event_types.py:383 +#: src/authentic2/manager/journal_event_types.py #, python-brace-format msgid "membership grant to user \"{member}\" in role \"{role}\"" msgstr "ajout du compte « {member} » au rôle « {role} »" -#: src/authentic2/manager/journal_event_types.py:388 +#: src/authentic2/manager/journal_event_types.py msgid "role membership removal" msgstr "retrait d’un rôle" -#: src/authentic2/manager/journal_event_types.py:401 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "membership removal from role \"%s\"" msgstr "retrait du rôle « %s »" -#: src/authentic2/manager/journal_event_types.py:403 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "membership removal of user \"%s\"" msgstr "retrait du compte « %s »" -#: src/authentic2/manager/journal_event_types.py:405 +#: src/authentic2/manager/journal_event_types.py #, python-brace-format msgid "membership removal of user \"{member}\" from role \"{role}\"" msgstr "retrait du compte « {member} » au rôle « {role} »" -#: src/authentic2/manager/journal_event_types.py:412 +#: src/authentic2/manager/journal_event_types.py msgid "role inheritance addition" msgstr "ajout d’un héritage entre rôles" -#: src/authentic2/manager/journal_event_types.py:428 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "inheritance addition from parent role \"%s\"" msgstr "ajout des permissions du rôle « %s »" -#: src/authentic2/manager/journal_event_types.py:430 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "inheritance addition to child role \"%s\"" msgstr "ajout des membres du rôle « %s »" -#: src/authentic2/manager/journal_event_types.py:432 +#: src/authentic2/manager/journal_event_types.py #, python-brace-format msgid "" "inheritance addition from parent role \"{parent}\" to child role \"{child}\"" msgstr "" "ajout des permissions du rôle « {parent} » aux membres du rôle « {child} »" -#: src/authentic2/manager/journal_event_types.py:439 +#: src/authentic2/manager/journal_event_types.py msgid "role inheritance removal" msgstr "retrait d’un héritage entre rôles" -#: src/authentic2/manager/journal_event_types.py:447 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "inheritance removal from parent role \"%s\"" msgstr "retrait des permissions du rôle « %s »" -#: src/authentic2/manager/journal_event_types.py:449 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "inheritance removal to child role \"%s\"" msgstr "retrait des membres du rôle « %s »" -#: src/authentic2/manager/journal_event_types.py:451 +#: src/authentic2/manager/journal_event_types.py #, python-brace-format msgid "" "inheritance removal from parent role \"{parent}\" to child role \"{child}\"" msgstr "" "retrait des permissions du rôle « {parent} » aux membres du rôle « {child} »" -#: src/authentic2/manager/journal_event_types.py:458 +#: src/authentic2/manager/journal_event_types.py msgid "role administrator role addition" msgstr "ajout d’un rôle comme administrateur des membres d’un rôle" -#: src/authentic2/manager/journal_event_types.py:474 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "addition of role \"%s\" as administrator" msgstr "ajout du rôle « %s » comme administrateur des membres" -#: src/authentic2/manager/journal_event_types.py:476 -#: src/authentic2/manager/journal_event_types.py:522 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "addition as administrator of role \"%s\"" msgstr "ajout comme administrateur des membres du rôle « %s »" -#: src/authentic2/manager/journal_event_types.py:478 +#: src/authentic2/manager/journal_event_types.py #, python-brace-format msgid "addition of role \"{admin_role}\" as administrator of role \"{role}\"" msgstr "" "ajout du rôle « {admin_role} » comme administrateur des membres du rôle " "« {role} »" -#: src/authentic2/manager/journal_event_types.py:485 +#: src/authentic2/manager/journal_event_types.py msgid "role administrator role removal" msgstr "retrait d’un rôle comme administrateur des membres" -#: src/authentic2/manager/journal_event_types.py:493 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "removal of role \"%s\" as administrator" msgstr "retrait du rôle « %s » comme administrateur des membres" -#: src/authentic2/manager/journal_event_types.py:495 -#: src/authentic2/manager/journal_event_types.py:541 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "removal as administrator of role \"%s\"" msgstr "retrait comme administrateur des membres du rôle « %s »" -#: src/authentic2/manager/journal_event_types.py:497 +#: src/authentic2/manager/journal_event_types.py #, python-brace-format msgid "removal of role \"{admin_role}\" as administrator of role \"{role}\"" msgstr "" "retrait du rôle « {admin_role} » comme administrateur des membres du rôle " "« {role} »" -#: src/authentic2/manager/journal_event_types.py:504 +#: src/authentic2/manager/journal_event_types.py msgid "role administrator user addition" msgstr "ajout d’un compte comme administrateur des membres d’un rôle" -#: src/authentic2/manager/journal_event_types.py:520 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "addition of user \"%s\" as administrator" msgstr "ajout du compte « %s » comme administrateur des membres" -#: src/authentic2/manager/journal_event_types.py:524 +#: src/authentic2/manager/journal_event_types.py #, python-brace-format msgid "addition of user \"{admin_user}\" as administrator of role \"{role}\"" msgstr "" "ajout du compte « {admin_user} » comme administrateur des membres du rôle " "« {role} »" -#: src/authentic2/manager/journal_event_types.py:531 +#: src/authentic2/manager/journal_event_types.py msgid "role administrator user removal" msgstr "retrait d’un compte comme administrateur des membres d’un rôle" -#: src/authentic2/manager/journal_event_types.py:539 +#: src/authentic2/manager/journal_event_types.py #, python-format msgid "removal of user \"%s\" as administrator" msgstr "retrait du compte « %s » comme administrateur des membres" -#: src/authentic2/manager/journal_event_types.py:543 +#: src/authentic2/manager/journal_event_types.py #, python-brace-format msgid "removal of user \"{admin_user}\" as administrator of role \"{role}\"" msgstr "" "retrait du compte « {admin_user} » comme administrateur des membres du rôle " "« {role} »" -#: src/authentic2/manager/journal_views.py:50 +#: src/authentic2/manager/journal_views.py msgid "" "You can use uuid:1234 to find all events related to user whose UUID " "is 1234." @@ -2281,76 +2240,72 @@ msgstr "" "Utilisez uuid:1234 pour trouver les évènements relatifs aux comptes " "dont l’identifiant unique est 1234" -#: src/authentic2/manager/journal_views.py:85 -#: src/authentic2/manager/journal_views.py:100 +#: src/authentic2/manager/journal_views.py msgid "All" msgstr "Tous" -#: src/authentic2/manager/journal_views.py:87 -#: src/authentic2/manager/templates/authentic2/manager/user_add.html:29 -#: src/authentic2/manager/templates/authentic2/manager/user_authorizations.html:4 -#: src/authentic2/manager/templates/authentic2/manager/user_authorizations.html:12 -#: src/authentic2/manager/templates/authentic2/manager/user_common_roles.html:6 -#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:32 -#: src/authentic2/manager/templates/authentic2/manager/user_edit.html:6 -#: src/authentic2/manager/templates/authentic2/manager/user_export.html:12 -#: src/authentic2/manager/templates/authentic2/manager/user_import.html:15 -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:15 -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:10 -#: src/authentic2/manager/templates/authentic2/manager/user_journal.html:5 -#: src/authentic2/manager/templates/authentic2/manager/users.html:4 -#: src/authentic2/manager/templates/authentic2/manager/users.html:33 -#: src/authentic2/manager/user_views.py:97 src/authentic2/manager/views.py:611 +#: src/authentic2/manager/journal_views.py +#: src/authentic2/manager/templates/authentic2/manager/user_add.html +#: src/authentic2/manager/templates/authentic2/manager/user_authorizations.html +#: src/authentic2/manager/templates/authentic2/manager/user_common_roles.html +#: src/authentic2/manager/templates/authentic2/manager/user_detail.html +#: src/authentic2/manager/templates/authentic2/manager/user_edit.html +#: src/authentic2/manager/templates/authentic2/manager/user_export.html +#: src/authentic2/manager/templates/authentic2/manager/user_import.html +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html +#: src/authentic2/manager/templates/authentic2/manager/user_journal.html +#: src/authentic2/manager/templates/authentic2/manager/users.html +#: src/authentic2/manager/user_views.py src/authentic2/manager/views.py msgid "Users" msgstr "Utilisateurs" -#: src/authentic2/manager/journal_views.py:89 +#: src/authentic2/manager/journal_views.py msgid "Connection & SSO" msgstr "Connexions et SSO" -#: src/authentic2/manager/journal_views.py:93 +#: src/authentic2/manager/journal_views.py msgid "Profile changes" msgstr "Moifications de profil" -#: src/authentic2/manager/journal_views.py:98 +#: src/authentic2/manager/journal_views.py msgid "Backoffice" msgstr "Backoffice" -#: src/authentic2/manager/journal_views.py:101 +#: src/authentic2/manager/journal_views.py msgid "User management" msgstr "Gestion des utilisateurs" -#: src/authentic2/manager/journal_views.py:102 +#: src/authentic2/manager/journal_views.py msgid "Role management" msgstr "Gestion des rôles" -#: src/authentic2/manager/journal_views.py:144 +#: src/authentic2/manager/journal_views.py #, python-format msgid "Journal of %s" msgstr "Journal de %s" -#: src/authentic2/manager/ou_views.py:39 -#: src/authentic2/manager/templates/authentic2/manager/ou_common.html:4 -#: src/authentic2/manager/templates/authentic2/manager/ou_common.html:8 -#: src/authentic2/manager/templates/authentic2/manager/ous.html:4 -#: src/authentic2/manager/views.py:603 +#: src/authentic2/manager/ou_views.py +#: src/authentic2/manager/templates/authentic2/manager/ou_common.html +#: src/authentic2/manager/templates/authentic2/manager/ous.html +#: src/authentic2/manager/views.py msgid "Organizational units" msgstr "Collectivités" -#: src/authentic2/manager/ou_views.py:49 -#: src/authentic2/manager/templates/authentic2/manager/ous.html:15 +#: src/authentic2/manager/ou_views.py +#: src/authentic2/manager/templates/authentic2/manager/ous.html msgid "Add organizational unit" msgstr "Ajouter une collectivité" -#: src/authentic2/manager/ou_views.py:85 +#: src/authentic2/manager/ou_views.py msgid "Edit organizational unit" msgstr "Éditer la collectivité" -#: src/authentic2/manager/ou_views.py:95 +#: src/authentic2/manager/ou_views.py msgid "Delete organizational unit" msgstr "Supprimer la collectivité" -#: src/authentic2/manager/ou_views.py:102 +#: src/authentic2/manager/ou_views.py msgid "" "You cannot delete the default organizational unit, you must first set " "another default organiational unit." @@ -2358,192 +2313,183 @@ msgstr "" "Vous ne pouvez pas supprimer la collectivité par défaut, vous devez d’abord " "en définir une nouvelle." -#: src/authentic2/manager/ou_views.py:134 +#: src/authentic2/manager/ou_views.py msgid "Organizational Units Import" msgstr "Import des collectivités" -#: src/authentic2/manager/ou_views.py:153 +#: src/authentic2/manager/ou_views.py msgid "Organizational Units have been successfully imported." msgstr "Les collectivités ont été importées avec succès." -#: src/authentic2/manager/role_views.py:78 -#: src/authentic2/manager/templates/authentic2/manager/role_add.html:6 -#: src/authentic2/manager/templates/authentic2/manager/role_common.html:4 -#: src/authentic2/manager/templates/authentic2/manager/role_common.html:8 -#: src/authentic2/manager/templates/authentic2/manager/role_journal.html:5 -#: src/authentic2/manager/templates/authentic2/manager/roles.html:4 -#: src/authentic2/manager/templates/authentic2/manager/roles_journal.html:5 -#: src/authentic2/manager/templates/authentic2/manager/user_common_roles.html:11 -#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:85 -#: src/authentic2/manager/views.py:619 +#: src/authentic2/manager/role_views.py +#: src/authentic2/manager/templates/authentic2/manager/role_add.html +#: src/authentic2/manager/templates/authentic2/manager/role_common.html +#: src/authentic2/manager/templates/authentic2/manager/role_journal.html +#: src/authentic2/manager/templates/authentic2/manager/roles.html +#: src/authentic2/manager/templates/authentic2/manager/roles_journal.html +#: src/authentic2/manager/templates/authentic2/manager/user_common_roles.html +#: src/authentic2/manager/templates/authentic2/manager/user_detail.html +#: src/authentic2/manager/views.py msgid "Roles" msgstr "Rôles" -#: src/authentic2/manager/role_views.py:97 -#: src/authentic2/manager/templates/authentic2/manager/role_add.html:7 -#: src/authentic2/manager/templates/authentic2/manager/role_add.html:11 -#: src/authentic2/manager/templates/authentic2/manager/roles.html:13 -#: src/authentic2/manager/templates/authentic2/manager/roles.html:15 +#: src/authentic2/manager/role_views.py +#: src/authentic2/manager/templates/authentic2/manager/role_add.html +#: src/authentic2/manager/templates/authentic2/manager/roles.html msgid "Add role" msgstr "Ajouter un rôle" -#: src/authentic2/manager/role_views.py:155 +#: src/authentic2/manager/role_views.py msgid "Edit role description" msgstr "Modifier la description du rôle" -#: src/authentic2/manager/role_views.py:203 +#: src/authentic2/manager/role_views.py msgid "User already in this role." msgstr "L’utilisateur a déjà ce rôle." -#: src/authentic2/manager/role_views.py:218 +#: src/authentic2/manager/role_views.py msgid "User was not in this role." msgstr "L’utilisateur n’avait pas ce rôle." -#: src/authentic2/manager/role_views.py:232 -#: src/authentic2/manager/role_views.py:350 -#: src/authentic2/manager/service_views.py:82 +#: src/authentic2/manager/role_views.py src/authentic2/manager/service_views.py msgid "You are not authorized" msgstr "Vous n’êtes pas autorisé." -#: src/authentic2/manager/role_views.py:278 +#: src/authentic2/manager/role_views.py msgid "Delete role" msgstr "Supprimer le rôle" -#: src/authentic2/manager/role_views.py:376 +#: src/authentic2/manager/role_views.py msgid "Add child role" msgstr "Ajouter un rôle comme membre" -#: src/authentic2/manager/role_views.py:404 +#: src/authentic2/manager/role_views.py msgid "Add parent role" msgstr "Ajouter ce rôle comme membre" -#: src/authentic2/manager/role_views.py:431 +#: src/authentic2/manager/role_views.py msgid "Remove child role" msgstr "Supprimer un rôle membre" -#: src/authentic2/manager/role_views.py:464 +#: src/authentic2/manager/role_views.py msgid "Remove parent role" msgstr "Supprimer ce rôle comme membre" -#: src/authentic2/manager/role_views.py:507 +#: src/authentic2/manager/role_views.py msgid "Add admin role" msgstr "Ajouter un rôle gestionnaire" -#: src/authentic2/manager/role_views.py:541 +#: src/authentic2/manager/role_views.py msgid "Remove admin role" msgstr "Supprimer un rôle gestionnaire" -#: src/authentic2/manager/role_views.py:583 +#: src/authentic2/manager/role_views.py msgid "Add admin user" msgstr "Ajouter un utilisateur gestionnaire" -#: src/authentic2/manager/role_views.py:617 +#: src/authentic2/manager/role_views.py msgid "Remove admin user" msgstr "Supprimer un rôle gestionnaire" -#: src/authentic2/manager/role_views.py:657 +#: src/authentic2/manager/role_views.py msgid "Roles Import" msgstr "Import des rôles" -#: src/authentic2/manager/role_views.py:686 -#: src/authentic2/manager/role_views.py:723 +#: src/authentic2/manager/role_views.py #, python-format msgid "" "Roles have been successfully imported inside \"%s\" organizational unit." msgstr "Les rôles ont été importés avec succès dans la collectivité « %s »." -#: src/authentic2/manager/role_views.py:700 +#: src/authentic2/manager/role_views.py msgid "Roles CSV Import" msgstr "Import de rôles depuis un fichier CSV" -#: src/authentic2/manager/service_views.py:31 -#: src/authentic2/manager/templates/authentic2/manager/services.html:4 -#: src/authentic2/manager/templates/authentic2/manager/services.html:8 -#: src/authentic2/manager/views.py:627 -#: src/authentic2/templates/authentic2/homepage.html:17 +#: src/authentic2/manager/service_views.py +#: src/authentic2/manager/templates/authentic2/manager/services.html +#: src/authentic2/manager/views.py +#: src/authentic2/templates/authentic2/homepage.html msgid "Services" msgstr "Services" -#: src/authentic2/manager/service_views.py:76 +#: src/authentic2/manager/service_views.py msgid "Role already authorized in this service." msgstr "Rôle déjà autorisé dans ce service." -#: src/authentic2/manager/service_views.py:99 +#: src/authentic2/manager/service_views.py msgid "Edit service" msgstr "Éditer le service" -#: src/authentic2/manager/tables.py:62 src/authentic2/models.py:148 +#: src/authentic2/manager/tables.py src/authentic2/models.py msgid "disabled" msgstr "désactivé" -#: src/authentic2/manager/tables.py:89 +#: src/authentic2/manager/tables.py msgid "Direct member" msgstr "Membre direct" -#: src/authentic2/manager/tables.py:94 src/authentic2/manager/tables.py:150 -#: src/authentic2/manager/tables.py:192 +#: src/authentic2/manager/tables.py msgid "Inherited from" msgstr "Hérité du(des) rôle(s)" -#: src/authentic2/manager/tables.py:107 +#: src/authentic2/manager/tables.py msgid "Direct member count" msgstr "Nombre de membres directs" -#: src/authentic2/manager/tables.py:112 src/authentic2/manager/tables.py:172 -#: src/authentic2/manager/tables.py:199 +#: src/authentic2/manager/tables.py msgid "LDAP" msgstr "LDAP" -#: src/authentic2/manager/tables.py:162 +#: src/authentic2/manager/tables.py msgid "You are not authorized to manage this role" msgstr "Vous n’êtes pas autorisé à gérer ce rôle." -#: src/authentic2/manager/tables.py:163 -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:58 -#: src/authentic2/manager/templates/authentic2/manager/user_roles_table.html:11 +#: src/authentic2/manager/tables.py +#: src/authentic2/manager/templates/authentic2/manager/role_members.html +#: src/authentic2/manager/templates/authentic2/manager/user_roles_table.html msgid "This role is synchronised from LDAP, changing members is not allowed." msgstr "" "Ce rôle est synchronisé depuis un annuaire LDAP, l’édition des membres n’est " "pas autorisée." -#: src/authentic2/manager/tables.py:165 +#: src/authentic2/manager/tables.py msgid "Member" msgstr "Membre" -#: src/authentic2/manager/tables.py:230 +#: src/authentic2/manager/tables.py msgid "" "No access restriction. All users are allowed to connect to this service." msgstr "" "Aucune restriction d’accès. Tous les utilisateurs sont autorisés à se " "connecter à ce service." -#: src/authentic2/manager/tables.py:242 +#: src/authentic2/manager/tables.py msgid "This user has not granted profile data access to any service yet." msgstr "Cet utilisateur n’a accordé aucun accès à ses données de profil." -#: src/authentic2/manager/templates/403.html:5 +#: src/authentic2/manager/templates/403.html msgid "You are not authorized to see this page." msgstr "Vous n’êtes pas autorisé à voir cette page." -#: src/authentic2/manager/templates/403.html:7 -#: src/authentic2/manager/templates/authentic2/manager/base.html:33 +#: src/authentic2/manager/templates/403.html +#: src/authentic2/manager/templates/authentic2/manager/base.html msgid "Homepage" msgstr "Accueil" -#: src/authentic2/manager/templates/403.html:8 -#: src/authentic2/templates/authentic2/unauthorized.html:9 -#: src/authentic2/templates/error.html:18 -#: src/authentic2/templates/registration/logout.html:10 -#: src/authentic2/templates/registration/registration_complete.html:41 +#: src/authentic2/manager/templates/403.html +#: src/authentic2/templates/authentic2/unauthorized.html +#: src/authentic2/templates/error.html +#: src/authentic2/templates/registration/logout.html +#: src/authentic2/templates/registration/registration_complete.html msgid "Back" msgstr "Retour" -#: src/authentic2/manager/templates/authentic2/manager/base.html:38 -#: src/authentic2/templates/authentic2/homepage.html:7 +#: src/authentic2/manager/templates/authentic2/manager/base.html +#: src/authentic2/templates/authentic2/homepage.html msgid "Administration" msgstr "Administration" -#: src/authentic2/manager/templates/authentic2/manager/change-password-notification_body.txt:1 +#: src/authentic2/manager/templates/authentic2/manager/change-password-notification_body.txt #, python-format msgid "" "Hi %(full_name)s !\n" @@ -2558,99 +2504,99 @@ msgstr "" "\n" " %(new_password)s\n" -#: src/authentic2/manager/templates/authentic2/manager/change-password-notification_subject.txt:1 +#: src/authentic2/manager/templates/authentic2/manager/change-password-notification_subject.txt msgid "Your password has been changed" msgstr "Votre mot de passe a été changé" -#: src/authentic2/manager/templates/authentic2/manager/delete.html:12 +#: src/authentic2/manager/templates/authentic2/manager/delete.html #, python-format msgid "Do you want to delete %(model_name)s %(object)s ?" msgstr "" "Souhaitez-vous vraiment supprimer l’objet « %(model_name)s » nommé " "« %(object)s » ?" -#: src/authentic2/manager/templates/authentic2/manager/delete.html:16 -#: src/authentic2/manager/templates/authentic2/manager/form.html:35 -#: src/authentic2/manager/templates/authentic2/manager/import_form.html:17 -#: src/authentic2/manager/templates/authentic2/manager/role_edit.html:18 -#: src/authentic2/manager/templates/authentic2/manager/role_remove_admin_role.html:19 -#: src/authentic2/manager/templates/authentic2/manager/role_remove_admin_user.html:19 -#: src/authentic2/manager/templates/authentic2/manager/role_remove_child.html:19 -#: src/authentic2/manager/templates/authentic2/manager/role_remove_parent.html:19 -#: src/authentic2/manager/templates/authentic2/manager/roles_csv_import_form.html:13 -#: src/authentic2/templates/authentic2/accounts_delete_request.html:30 -#: src/authentic2/templates/authentic2/accounts_delete_validation.html:25 -#: src/authentic2/templates/authentic2/accounts_edit.html:21 -#: src/authentic2/templates/authentic2/change_email.html:21 -#: src/authentic2/templates/authentic2/login_password_form.html:13 -#: src/authentic2/templates/authentic2/logout_confirm.html:20 -#: src/authentic2/templates/registration/password_change_form.html:26 -#: tests/test_idp_saml2.py:340 +#: src/authentic2/manager/templates/authentic2/manager/delete.html +#: src/authentic2/manager/templates/authentic2/manager/form.html +#: src/authentic2/manager/templates/authentic2/manager/import_form.html +#: src/authentic2/manager/templates/authentic2/manager/role_edit.html +#: src/authentic2/manager/templates/authentic2/manager/role_remove_admin_role.html +#: src/authentic2/manager/templates/authentic2/manager/role_remove_admin_user.html +#: src/authentic2/manager/templates/authentic2/manager/role_remove_child.html +#: src/authentic2/manager/templates/authentic2/manager/role_remove_parent.html +#: src/authentic2/manager/templates/authentic2/manager/roles_csv_import_form.html +#: src/authentic2/templates/authentic2/accounts_delete_request.html +#: src/authentic2/templates/authentic2/accounts_delete_validation.html +#: src/authentic2/templates/authentic2/accounts_edit.html +#: src/authentic2/templates/authentic2/change_email.html +#: src/authentic2/templates/authentic2/login_password_form.html +#: src/authentic2/templates/authentic2/logout_confirm.html +#: src/authentic2/templates/registration/password_change_form.html +#: tests/test_idp_saml2.py msgid "Cancel" msgstr "Annuler" -#: src/authentic2/manager/templates/authentic2/manager/duplicate_user_add.html:11 -#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:62 +#: src/authentic2/manager/templates/authentic2/manager/duplicate_user_add.html +#: src/authentic2/manager/templates/authentic2/manager/user_detail.html #, python-format msgid "Created on %(date)s" msgstr "Créé le %(date)s" -#: src/authentic2/manager/templates/authentic2/manager/duplicate_user_add.html:13 +#: src/authentic2/manager/templates/authentic2/manager/duplicate_user_add.html #, python-format msgid "Last login on %(date)s" msgstr "Dernière connexion le %(date)s" -#: src/authentic2/manager/templates/authentic2/manager/duplicate_user_add.html:15 +#: src/authentic2/manager/templates/authentic2/manager/duplicate_user_add.html msgid "Never logged in" msgstr "Ne s’est jamais connecté." -#: src/authentic2/manager/templates/authentic2/manager/export_include.html:2 +#: src/authentic2/manager/templates/authentic2/manager/export_include.html msgid "Download list as CSV" msgstr "Télécharger la liste en CSV" -#: src/authentic2/manager/templates/authentic2/manager/form.html:36 -#: src/authentic2/manager/templates/authentic2/manager/role_edit.html:17 +#: src/authentic2/manager/templates/authentic2/manager/form.html +#: src/authentic2/manager/templates/authentic2/manager/role_edit.html msgid "Save" msgstr "Sauvegarder" -#: src/authentic2/manager/templates/authentic2/manager/form.html:58 -#: src/authentic2/manager/templates/authentic2/manager/user_import.html:23 +#: src/authentic2/manager/templates/authentic2/manager/form.html +#: src/authentic2/manager/templates/authentic2/manager/user_import.html msgid "Actions" msgstr "Actions" -#: src/authentic2/manager/templates/authentic2/manager/homepage.html:8 +#: src/authentic2/manager/templates/authentic2/manager/homepage.html msgid "" "Here you can manage objects related to organizational units, users, roles " "and applications." msgstr "Gérer les collectivités, les utilisateurs, les rôles et les services" -#: src/authentic2/manager/templates/authentic2/manager/homepage.html:14 +#: src/authentic2/manager/templates/authentic2/manager/homepage.html msgid "Export Site" msgstr "Exporter le site" -#: src/authentic2/manager/templates/authentic2/manager/homepage.html:15 +#: src/authentic2/manager/templates/authentic2/manager/homepage.html msgid "Import Site" msgstr "Importer un site" -#: src/authentic2/manager/templates/authentic2/manager/import_form.html:16 -#: src/authentic2/manager/templates/authentic2/manager/ous.html:20 -#: src/authentic2/manager/templates/authentic2/manager/roles.html:21 -#: src/authentic2/manager/templates/authentic2/manager/roles_csv_import_form.html:12 +#: src/authentic2/manager/templates/authentic2/manager/import_form.html +#: src/authentic2/manager/templates/authentic2/manager/ous.html +#: src/authentic2/manager/templates/authentic2/manager/roles.html +#: src/authentic2/manager/templates/authentic2/manager/roles_csv_import_form.html msgid "Import" msgstr "Importer" -#: src/authentic2/manager/templates/authentic2/manager/journal.html:17 -#: src/authentic2/manager/templates/authentic2/manager/search_form.html:2 +#: src/authentic2/manager/templates/authentic2/manager/journal.html +#: src/authentic2/manager/templates/authentic2/manager/search_form.html msgctxt "title" msgid "Search" msgstr "Recherche" -#: src/authentic2/manager/templates/authentic2/manager/journal.html:21 -#: src/authentic2/manager/templates/authentic2/manager/search_form.html:5 +#: src/authentic2/manager/templates/authentic2/manager/journal.html +#: src/authentic2/manager/templates/authentic2/manager/search_form.html msgid "Search" msgstr "Rechercher" -#: src/authentic2/manager/templates/authentic2/manager/new-account-notification_body.txt:1 +#: src/authentic2/manager/templates/authentic2/manager/new-account-notification_body.txt #, python-format msgid "" "Hi %(fullname)s !\n" @@ -2681,11 +2627,11 @@ msgstr "" "\n" "\t%(new_password)s\n" -#: src/authentic2/manager/templates/authentic2/manager/new-account-notification_subject.txt:1 +#: src/authentic2/manager/templates/authentic2/manager/new-account-notification_subject.txt msgid "Your account has been created" msgstr "Votre compte a été créé." -#: src/authentic2/manager/templates/authentic2/manager/ou_delete.html:8 +#: src/authentic2/manager/templates/authentic2/manager/ou_delete.html #, python-format msgid "" "\n" @@ -2718,112 +2664,103 @@ msgstr "" "

\n" " " -#: src/authentic2/manager/templates/authentic2/manager/ou_detail.html:23 +#: src/authentic2/manager/templates/authentic2/manager/ou_detail.html msgid "You do not have the rights to delete this organizational unit." msgstr "Vous n’êtes pas autorisé à supprimer cette collectivité." -#: src/authentic2/manager/templates/authentic2/manager/ou_detail.html:27 -#: src/authentic2/manager/templates/authentic2/manager/ou_detail.html:29 -#: src/authentic2/manager/templates/authentic2/manager/ou_edit.html:8 -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:32 -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:35 -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:37 -#: src/authentic2/manager/templates/authentic2/manager/role_permissions.html:17 -#: src/authentic2/manager/templates/authentic2/manager/service.html:13 -#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:16 -#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:18 -#: src/authentic2/manager/templates/authentic2/manager/user_edit.html:8 +#: src/authentic2/manager/templates/authentic2/manager/ou_detail.html +#: src/authentic2/manager/templates/authentic2/manager/ou_edit.html +#: src/authentic2/manager/templates/authentic2/manager/role_members.html +#: src/authentic2/manager/templates/authentic2/manager/role_permissions.html +#: src/authentic2/manager/templates/authentic2/manager/service.html +#: src/authentic2/manager/templates/authentic2/manager/user_detail.html +#: src/authentic2/manager/templates/authentic2/manager/user_edit.html msgid "Edit" msgstr "Éditer" -#: src/authentic2/manager/templates/authentic2/manager/ou_detail.html:29 +#: src/authentic2/manager/templates/authentic2/manager/ou_detail.html msgid "You do not have the rights to edit this organizational unit." msgstr "Vous n’êtes pas autorisé à modifier cette collectivité." -#: src/authentic2/manager/templates/authentic2/manager/ous.html:18 -#: src/authentic2/manager/templates/authentic2/manager/roles.html:19 +#: src/authentic2/manager/templates/authentic2/manager/ous.html +#: src/authentic2/manager/templates/authentic2/manager/roles.html msgid "Export" msgstr "Exporter" -#: src/authentic2/manager/templates/authentic2/manager/role_delete.html:6 +#: src/authentic2/manager/templates/authentic2/manager/role_delete.html #, python-format msgid "Do you want to delete role %(object)s?" msgstr "Souhaitez-vous vraiment supprimer le rôle « %(object)s » ?" -#: src/authentic2/manager/templates/authentic2/manager/role_edit.html:4 +#: src/authentic2/manager/templates/authentic2/manager/role_edit.html msgid "Edit role" msgstr "Éditer le rôle" -#: src/authentic2/manager/templates/authentic2/manager/role_edit.html:9 +#: src/authentic2/manager/templates/authentic2/manager/role_edit.html msgid "Modify" msgstr "Modifier" -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:15 -#: src/authentic2/saml/models.py:159 +#: src/authentic2/manager/templates/authentic2/manager/role_members.html +#: src/authentic2/saml/models.py msgid "UUID" msgstr "UUID" -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:29 +#: src/authentic2/manager/templates/authentic2/manager/role_members.html msgid "This role is technical, you cannot delete it." msgstr "Ce rôle est interne, vous ne pouvez pas le supprimer." -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:35 -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:89 -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:105 -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:121 +#: src/authentic2/manager/templates/authentic2/manager/role_members.html msgid "Permission denied" msgstr "Vous n’êtes pas autorisé." -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:37 +#: src/authentic2/manager/templates/authentic2/manager/role_members.html msgid "This role is technical, you cannot edit it." msgstr "Ce rôle est interne, vous ne pouvez pas l’éditer." -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:71 -#: src/authentic2/manager/templates/authentic2/manager/role_permissions.html:31 -#: src/authentic2/manager/templates/authentic2/manager/service.html:44 -#: src/authentic2/manager/templates/authentic2/manager/user_roles.html:24 +#: src/authentic2/manager/templates/authentic2/manager/role_members.html +#: src/authentic2/manager/templates/authentic2/manager/role_permissions.html +#: src/authentic2/manager/templates/authentic2/manager/service.html +#: src/authentic2/manager/templates/authentic2/manager/user_roles.html msgid "Add" msgstr "Ajouter" -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:75 +#: src/authentic2/manager/templates/authentic2/manager/role_members.html msgid "Advanced parameters" msgstr "Paramètres avancés" -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:77 +#: src/authentic2/manager/templates/authentic2/manager/role_members.html msgid "Is administered by users" msgstr "Est géré par le(s) utilisateurs(s)" -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:83 -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:115 +#: src/authentic2/manager/templates/authentic2/manager/role_members.html msgid "Indirect child role" msgstr "Héritage indirect" -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:93 +#: src/authentic2/manager/templates/authentic2/manager/role_members.html msgid "Is administered by roles" msgstr "Est géré par le(s) rôle(s)" -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:99 +#: src/authentic2/manager/templates/authentic2/manager/role_members.html msgid "Indirect admin role" msgstr "rôle hérité" -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:109 +#: src/authentic2/manager/templates/authentic2/manager/role_members.html msgid "Child roles:" msgstr "Contient les membres des rôles :" -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:125 +#: src/authentic2/manager/templates/authentic2/manager/role_members.html msgid "Parent roles:" msgstr "Contient les permissions des rôles :" -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:134 -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:143 +#: src/authentic2/manager/templates/authentic2/manager/role_members.html msgid "This role is technical, you cannot modify its permissions." msgstr "Ce rôle est interne, vous ne pouvez pas en modifier les permissions." -#: src/authentic2/manager/templates/authentic2/manager/role_members.html:137 +#: src/authentic2/manager/templates/authentic2/manager/role_members.html msgid "Indirect parent role" msgstr "rôle hérité" -#: src/authentic2/manager/templates/authentic2/manager/role_members_table.html:9 +#: src/authentic2/manager/templates/authentic2/manager/role_members_table.html #, python-format msgid "" "Do you really want to remove user "%(username)s" from role "" @@ -2832,59 +2769,59 @@ msgstr "" "Souhaitez-vous vraiment retirer le rôle « %(role)s » à l’utilisateur " "« %(username)s » ?" -#: src/authentic2/manager/templates/authentic2/manager/role_permissions.html:19 +#: src/authentic2/manager/templates/authentic2/manager/role_permissions.html msgid "Members" msgstr "Membres" -#: src/authentic2/manager/templates/authentic2/manager/role_remove_admin_role.html:15 +#: src/authentic2/manager/templates/authentic2/manager/role_remove_admin_role.html #, python-format msgid "Do you want to remove admin role %(child)s ?" msgstr "Souhaitez-vous vraiment retirer le rôle %(child)s des gestionnaires ?" -#: src/authentic2/manager/templates/authentic2/manager/role_remove_admin_role.html:18 -#: src/authentic2/manager/templates/authentic2/manager/role_remove_admin_user.html:18 -#: src/authentic2/manager/templates/authentic2/manager/role_remove_child.html:18 -#: src/authentic2/manager/templates/authentic2/manager/role_remove_parent.html:18 +#: src/authentic2/manager/templates/authentic2/manager/role_remove_admin_role.html +#: src/authentic2/manager/templates/authentic2/manager/role_remove_admin_user.html +#: src/authentic2/manager/templates/authentic2/manager/role_remove_child.html +#: src/authentic2/manager/templates/authentic2/manager/role_remove_parent.html msgid "Remove" msgstr "Retirer" -#: src/authentic2/manager/templates/authentic2/manager/role_remove_admin_user.html:15 +#: src/authentic2/manager/templates/authentic2/manager/role_remove_admin_user.html #, python-format msgid "Do you want to remove admin user %(user)s ?" msgstr "" "Souhaitez-vous vraiment retirer l’utilisateur %(user)s des gestionnaires ?" -#: src/authentic2/manager/templates/authentic2/manager/role_remove_child.html:15 +#: src/authentic2/manager/templates/authentic2/manager/role_remove_child.html #, python-format msgid "Do you want to remove child role %(child)s ?" msgstr "Souhaitez-vous vraiment retirer ce rôle au rôle %(child)s ?" -#: src/authentic2/manager/templates/authentic2/manager/role_remove_parent.html:15 +#: src/authentic2/manager/templates/authentic2/manager/role_remove_parent.html #, python-format msgid "Do you want to remove parent role %(parent)s ?" msgstr "Souhaitez-vous vraiment retirer le rôle %(parent)s à ce rôle ?" -#: src/authentic2/manager/templates/authentic2/manager/roles.html:22 +#: src/authentic2/manager/templates/authentic2/manager/roles.html msgid "CSV import" msgstr "Import CSV" -#: src/authentic2/manager/templates/authentic2/manager/roles_csv_import_form.html:9 +#: src/authentic2/manager/templates/authentic2/manager/roles_csv_import_form.html msgid "Download sample file" msgstr "Télécharger un fichier d’exemple" -#: src/authentic2/manager/templates/authentic2/manager/service.html:27 +#: src/authentic2/manager/templates/authentic2/manager/service.html msgid "Slug" msgstr "Code court" -#: src/authentic2/manager/templates/authentic2/manager/service.html:36 +#: src/authentic2/manager/templates/authentic2/manager/service.html msgid "Roles of users allowed on this service" msgstr "Rôles autorisés à se connecter à ce service" -#: src/authentic2/manager/templates/authentic2/manager/service.html:50 +#: src/authentic2/manager/templates/authentic2/manager/service.html msgid "Roles solely visible from this service" msgstr "Rôles visibles uniquement de ce service" -#: src/authentic2/manager/templates/authentic2/manager/service_roles_table.html:9 +#: src/authentic2/manager/templates/authentic2/manager/service_roles_table.html #, python-format msgid "" "Do you really want to remove role "%(name)s" from service "" @@ -2893,20 +2830,20 @@ msgstr "" "Souhaitez-vous vraiment retirer le rôle « %(name)s » du service " "« %(slug)s » ?" -#: src/authentic2/manager/templates/authentic2/manager/user_add.html:12 +#: src/authentic2/manager/templates/authentic2/manager/user_add.html msgid "" "This user may already exist, please check the list below before creating it :" msgstr "" "Ce compte est peut-être un doublon, merci de consulter la liste plus bas " "avant de finaliser sa création :" -#: src/authentic2/manager/templates/authentic2/manager/user_authorizations.html:17 -#: src/authentic2/manager/user_views.py:952 +#: src/authentic2/manager/templates/authentic2/manager/user_authorizations.html +#: src/authentic2/manager/user_views.py msgctxt "manager" msgid "Consent Management" msgstr "Gestion des consentements" -#: src/authentic2/manager/templates/authentic2/manager/user_authorizations_table.html:12 +#: src/authentic2/manager/templates/authentic2/manager/user_authorizations_table.html #, python-format msgid "" "Do you really want to remove "%(client)s" service granted access " @@ -2916,7 +2853,7 @@ msgstr "" "« %(username)s » au service « %(client)s » concernant l’accès à ses données " "de profil ?" -#: src/authentic2/manager/templates/authentic2/manager/user_change_email.html:6 +#: src/authentic2/manager/templates/authentic2/manager/user_change_email.html msgid "" "User's email will not be changed immediately. First an email will be sent to " "this\n" @@ -2929,7 +2866,7 @@ msgstr "" "un lien que l’utilisateur aura à suivre pour vérifier qu’il possède bien " "l’adresse. Alors celle-ci sera changée." -#: src/authentic2/manager/templates/authentic2/manager/user_change_email_notification_body.txt:1 +#: src/authentic2/manager/templates/authentic2/manager/user_change_email_notification_body.txt #, python-format msgid "" "Hi %(name)s !\n" @@ -2972,7 +2909,7 @@ msgstr "" "--\n" "%(domain)s" -#: src/authentic2/manager/templates/authentic2/manager/user_change_email_notification_body.txt:18 +#: src/authentic2/manager/templates/authentic2/manager/user_change_email_notification_body.txt #, python-format msgid "" "Hi %(name)s !\n" @@ -3014,292 +2951,289 @@ msgstr "" "--\n" "%(domain)s" -#: src/authentic2/manager/templates/authentic2/manager/user_change_email_notification_subject.txt:1 +#: src/authentic2/manager/templates/authentic2/manager/user_change_email_notification_subject.txt #, python-format msgid "Change email on %(domain)s requested by an administrator" msgstr "Changement d’adresse sur %(domain)s demandé par un administrateur" -#: src/authentic2/manager/templates/authentic2/manager/user_common_roles.html:15 +#: src/authentic2/manager/templates/authentic2/manager/user_common_roles.html msgid "Edit User Roles" msgstr "Éditer les rôles de l’utilisateur" -#: src/authentic2/manager/templates/authentic2/manager/user_create_registration_email_body.txt:1 +#: src/authentic2/manager/templates/authentic2/manager/user_create_registration_email_body.txt #, python-format msgid "A new account was created for you on %(hostname)s" msgstr "Un compte vient d’être créé pour vous sur %(hostname)s" -#: src/authentic2/manager/templates/authentic2/manager/user_create_registration_email_body.txt:8 -#: src/authentic2/templates/authentic2/api_user_create_registration_email_body.txt:8 +#: src/authentic2/manager/templates/authentic2/manager/user_create_registration_email_body.txt +#: src/authentic2/templates/authentic2/api_user_create_registration_email_body.txt msgid "Please click on the following link to set your password:" msgstr "Veuillez cliquer sur ce lien pour définir votre mot de passe :" -#: src/authentic2/manager/templates/authentic2/manager/user_create_registration_email_subject.txt:1 +#: src/authentic2/manager/templates/authentic2/manager/user_create_registration_email_subject.txt #, python-format msgid "Your account was created on %(hostname)s" msgstr "Un compte vient d’être créé pour vous sur %(hostname)s" -#: src/authentic2/manager/templates/authentic2/manager/user_delete.html:6 +#: src/authentic2/manager/templates/authentic2/manager/user_delete.html #, python-format msgid "Do you want to delete user %(full_name)s?" msgstr "Souhaitez-vous vraiment supprimer l’utilisateur « %(full_name)s » ?" -#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:12 +#: src/authentic2/manager/templates/authentic2/manager/user_detail.html msgid "You do not have the rights to delete this user." msgstr "Vous n’êtes pas autorisé à supprimer cet utilisateur." -#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:18 +#: src/authentic2/manager/templates/authentic2/manager/user_detail.html msgid "You do not have the rights to edit this user." msgstr "Vous n’êtes pas autorisé à modifier cet utilisateur." -#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:23 +#: src/authentic2/manager/templates/authentic2/manager/user_detail.html msgid "Consents" msgstr "Consentements" -#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:41 +#: src/authentic2/manager/templates/authentic2/manager/user_detail.html msgid "User must change its password on next access to authentic" msgstr "" "L’utilisateur devra changer son mot de passe lors de sa prochaine " "utilisation du service" -#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:42 +#: src/authentic2/manager/templates/authentic2/manager/user_detail.html msgid "Cancel this constraint" msgstr "Annuler cette contrainte" -#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:55 +#: src/authentic2/manager/templates/authentic2/manager/user_detail.html #, python-format msgid "Last login on %(date)s." msgstr "Dernière connexion le %(date)s" -#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:57 +#: src/authentic2/manager/templates/authentic2/manager/user_detail.html msgid "Never logged in." msgstr "Ne s’est jamais connecté." -#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:67 +#: src/authentic2/manager/templates/authentic2/manager/user_detail.html #, python-format msgid "Modified on %(date)s" msgstr "Dernière modification le %(date)s" -#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:73 +#: src/authentic2/manager/templates/authentic2/manager/user_detail.html #, python-format msgid "Deactivated on %(date)s" msgstr "Désactivé le %(date)s" -#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:104 +#: src/authentic2/manager/templates/authentic2/manager/user_detail.html msgid "Modify roles" msgstr "Modifier les rôles" -#: src/authentic2/manager/templates/authentic2/manager/user_export.html:4 +#: src/authentic2/manager/templates/authentic2/manager/user_export.html msgid "User export" msgstr "Export d’utilisateurs" -#: src/authentic2/manager/templates/authentic2/manager/user_export.html:19 +#: src/authentic2/manager/templates/authentic2/manager/user_export.html msgid "Preparing CSV export file..." msgstr "Préparation du fichier d’export CSV…" -#: src/authentic2/manager/templates/authentic2/manager/user_export.html:20 +#: src/authentic2/manager/templates/authentic2/manager/user_export.html msgid "Progress:" msgstr "Avancement :" -#: src/authentic2/manager/templates/authentic2/manager/user_export.html:23 +#: src/authentic2/manager/templates/authentic2/manager/user_export.html msgid "Export completed." msgstr "Exportation terminée" -#: src/authentic2/manager/templates/authentic2/manager/user_export.html:24 +#: src/authentic2/manager/templates/authentic2/manager/user_export.html msgid "Download CSV" msgstr "Télécharger le fichier CSV" -#: src/authentic2/manager/templates/authentic2/manager/user_import.html:4 -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:4 -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:4 -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:11 +#: src/authentic2/manager/templates/authentic2/manager/user_import.html +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Import Users" msgstr "Importer des utilisateurs" -#: src/authentic2/manager/templates/authentic2/manager/user_import.html:11 -#: src/authentic2/manager/templates/authentic2/manager/user_import.html:17 -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:17 +#: src/authentic2/manager/templates/authentic2/manager/user_import.html +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html msgid "Users Import" msgstr "Import d’utilisateurs" -#: src/authentic2/manager/templates/authentic2/manager/user_import.html:16 -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:16 -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:6 -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:27 +#: src/authentic2/manager/templates/authentic2/manager/user_import.html +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Imports" msgstr "Imports" -#: src/authentic2/manager/templates/authentic2/manager/user_import.html:27 +#: src/authentic2/manager/templates/authentic2/manager/user_import.html msgid "Simulate import" msgstr "Simuler l’import" -#: src/authentic2/manager/templates/authentic2/manager/user_import.html:30 +#: src/authentic2/manager/templates/authentic2/manager/user_import.html msgid "Execute import" msgstr "Lancer l’import" -#: src/authentic2/manager/templates/authentic2/manager/user_import.html:37 +#: src/authentic2/manager/templates/authentic2/manager/user_import.html msgid "Download CSV file" msgstr "Télécharger le fichier CSV" -#: src/authentic2/manager/templates/authentic2/manager/user_import.html:45 +#: src/authentic2/manager/templates/authentic2/manager/user_import.html msgid "Encoding:" msgstr "Encodage :" -#: src/authentic2/manager/templates/authentic2/manager/user_import.html:46 +#: src/authentic2/manager/templates/authentic2/manager/user_import.html msgid "Rows count:" msgstr "Nombre de lignes :" -#: src/authentic2/manager/templates/authentic2/manager/user_import.html:47 +#: src/authentic2/manager/templates/authentic2/manager/user_import.html msgid "Target Organizational Unit:" msgstr "Collectivité cible :" -#: src/authentic2/manager/templates/authentic2/manager/user_import.html:48 +#: src/authentic2/manager/templates/authentic2/manager/user_import.html msgid "Reports" msgstr "Rapports" -#: src/authentic2/manager/templates/authentic2/manager/user_import.html:52 -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:32 -#: src/authentic2/models.py:469 +#: src/authentic2/manager/templates/authentic2/manager/user_import.html +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html +#: src/authentic2/models.py msgid "Creation date" msgstr "Date de création" -#: src/authentic2/manager/templates/authentic2/manager/user_import.html:53 +#: src/authentic2/manager/templates/authentic2/manager/user_import.html msgid "State" msgstr "État" -#: src/authentic2/manager/templates/authentic2/manager/user_import.html:54 +#: src/authentic2/manager/templates/authentic2/manager/user_import.html msgid "Imported" msgstr "Importé" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:23 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html msgid "Legend" msgstr "Légende" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:27 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html msgid "value is a key" msgstr "la valeur est une clé d’import" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:31 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html msgid "value must be unique" msgstr "la valeur doit être unique" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:35 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html msgid "used on creation" msgstr "utilisé à la création" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:39 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html msgid "used on update" msgstr "utilisé à la mise à jour" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:43 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html msgid "value is verified" msgstr "la valeur est vérifiée" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:47 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html msgid "row is valid" msgstr "la ligne est valide" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:51 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html msgid "value will be written" msgstr "la valeur sera écrite" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:55 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html msgid "row is invalid" msgstr "la ligne est invalide" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:59 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html msgid "value has errors" msgstr "la valeur contient des erreurs" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:66 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html msgid "Execute" msgstr "Appliquer" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:75 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html msgid "Exception:" msgstr "Exception :" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:80 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html msgid "Errors" msgstr "Erreurs" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:87 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html msgid "Abstract" msgstr "Résumé" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:89 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html #, python-format msgid "%(rows)s row" msgid_plural "%(rows)s rows" msgstr[0] "%(rows)s ligne" msgstr[1] "%(rows)s lignes" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:90 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html #, python-format msgid "%(created)s user created" msgid_plural "%(created)s users created" msgstr[0] "%(created)s utilisateur créé" msgstr[1] "%(created)s utilisateurs créés" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:91 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html #, python-format msgid "%(updated)s user updated" msgid_plural "%(updated)s users updated" msgstr[0] "%(updated)s utilisateur mis à jour" msgstr[1] "%(updated)s utilisateurs mis à jour" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:92 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html #, python-format msgid "%(error_rows)s row has error" msgid_plural "%(error_rows)s rows have errors" msgstr[0] "%(error_rows)s ligne avec des erreurs" msgstr[1] "%(error_rows)s lignes avec des erreurs" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:94 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html msgid "The following roles were missing:" msgstr "Il manque les rôles suivant :" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:96 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html #, python-format msgid "import took %(duration)s" msgstr "l’import a duré %(duration)s" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:98 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html msgid "Details" msgstr "Détails" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:103 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html msgid "Line" msgstr "Ligne" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:117 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html msgid "Action" msgstr "Action" -#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html:167 +#: src/authentic2/manager/templates/authentic2/manager/user_import_report.html msgid "No row analysed." msgstr "Aucune ligne analysée." -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:16 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Create new import" msgstr "Créer un nouvel import" -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:31 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Filename" msgstr "Nom du fichier" -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:33 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "By" msgstr "Par l’utilisateur" -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:34 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Rows" msgstr "Lignes" -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:57 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Help" msgstr "Aide" -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:60 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "" "The first line of your CSV file must be a header mapping columns to user's attributes identifier. Each user attribute " @@ -3317,20 +3251,20 @@ msgstr "" "la création de doublons lors de l’importation répétée depuis un annuaire " "externe." -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:70 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Label" msgstr "Libellé" -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:71 -#: src/authentic2/models.py:465 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html +#: src/authentic2/models.py msgid "Identifier" msgstr "Identifiant" -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:83 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Flags" msgstr "Modificateurs" -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:84 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "" "Each column can receive flags after its name, separated by spaces. Each " "modifier can be prefixed by no- to set its value to false." @@ -3339,22 +3273,19 @@ msgstr "" "séparés par des espaces. Chaque modificateur peut être préfixé par no- pour positionner sa valeur à faux." -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:88 -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:183 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Flag" msgstr "Modificateur" -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:89 -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:184 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Meaning" msgstr "Usage" -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:90 -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:185 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Default value" msgstr "Valeur par défaut" -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:97 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "" "The column is an import key, it is used to match the row with an existing " "user. Only one column can be an import key." @@ -3363,34 +3294,28 @@ msgstr "" "une ligne avec un utilisateur existant. Une seule colonne peut être une clé " "d’import." -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:101 -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:128 -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:140 -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:151 -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:196 -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:206 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "False" msgstr "Faux" -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:106 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Values will be used when creating a new user." msgstr "Ces valeurs seront utilisées pour créer un nouvel utilisateur." -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:110 -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:119 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "True" msgstr "Vrai" -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:115 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Values will be used when updating an existing user." msgstr "" "Ces valeurs seront utilisées pour mettre à jour un utilisateur existant." -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:124 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Values must be unique in the target organizational unit." msgstr "Ces valeurs doivent être uniques dans la collectivité cible." -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:128 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "" "(default is True for the email and username columns if " "they are configured to be unique in the target organizational unit)" @@ -3399,11 +3324,11 @@ msgstr "" "username si elles sont configurées pour être uniques dans la " "collectivité cible)" -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:136 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Values must be unique among all users." msgstr "Ces valeurs doivent être uniques entre tous les utilisateurs." -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:140 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "" "(default is True for the email and username columns if " "they are configured to be globally unique)" @@ -3411,20 +3336,20 @@ msgstr "" "(la valeur par défaut est vrai pour les colonnes email et " "username si elles sont configurées pour être globalement uniques)" -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:147 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Values are verified. User's attribute will be locked." msgstr "" "Ces valeurs sont vérifiées. L’attribut de l’utilisateur sera verrouillé." -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:151 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "(default is True for the email column)" msgstr "(la valeur par défaut est vrai pour la colonne email)" -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:156 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "External identifier" msgstr "Identifiant externe" -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:158 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "" "You can also use two special columns _source_name and " "_source_id. _source_name must be the name of the " @@ -3444,11 +3369,11 @@ msgstr "" "utilisateurs différents. _source_id est automatiquement une clé " "d’import et vous ne pouvez pas définir une autre colonne comme clé d’import." -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:169 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Role operations" msgstr "Opérations sur les rôles" -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:171 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "" "Adding existing roles to users is supported. Use either _role_name or _role_slug special columns to specify the names or the " @@ -3464,11 +3389,11 @@ msgstr "" "Ces colonnes acceptent aussi des modificateurs spéciaux, présentés ci-" "dessous." -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:192 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Remove role from user instead of adding it." msgstr "Enlever le rôle à l’utilisateur au lieu de le lui ajouter." -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:201 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "" "Clear user roles beforehand, so that they will have no more roles than those " "specified in the import file." @@ -3476,11 +3401,11 @@ msgstr "" "Écraser les rôles de l’utilisateur avec ceux de l’import. Il n’aura ainsi " "que les rôles tels que spécifiés dans l’import." -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:210 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Registration options" msgstr "Options d’inscription" -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:212 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "" "When a user is created by the import, they will have to use the \"forgotten " "password\" feature in order to log in for the first time. An alternative is " @@ -3494,23 +3419,23 @@ msgstr "" "send-email comme valeur. Les utilisateurs créés ainsi recevront " "un courriel les invitant à définir un mot de passe." -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:219 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Examples" msgstr "Exemples" -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:220 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Importing first and last name of users keyed by email" msgstr "" "Importer le prénom et le nom des utilisateurs en utilisant le courriel comme " "clé." -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:226 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Importing verified first and last name of users keyed by email" msgstr "" "Importer et verrouiller le prénom et le nom des utilisateurs en utilisant le " "courriel comme clé." -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:232 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "" "Importing email, family_reference, first and last name of users from " "application app1, ensuring family_reference is unique." @@ -3519,13 +3444,13 @@ msgstr "" "utilisateur depuis une application désignée par app1, en " "s’assurant de l’unicité de la référence famille." -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:238 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "Importing email, first and last name of users while adding roles." msgstr "" "Importer le courriel, le prénom et le nom des utilisateurs en ajoutant des " "rôles." -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:246 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "" "Importing email, first and last name of users and sending a password reset " "email to John (only if the account is created by the import)." @@ -3534,7 +3459,7 @@ msgstr "" "courriel d’initialisation de mot de passe à John (si le compte est créé lors " "de l’import)." -#: src/authentic2/manager/templates/authentic2/manager/user_imports.html:255 +#: src/authentic2/manager/templates/authentic2/manager/user_imports.html msgid "" "Importing email, first and last name of users and setting a password using " "hash in standard Django format." @@ -3542,7 +3467,7 @@ msgstr "" "Importer le courriel, le prénom et le nom des utilisateurs et définir un mot " "de passe en utilisant un hachage ans un format connu de Django." -#: src/authentic2/manager/templates/authentic2/manager/user_roles_table.html:11 +#: src/authentic2/manager/templates/authentic2/manager/user_roles_table.html #, python-format msgid "" "Do you really want to remove role "%(name)s" from user "" @@ -3551,7 +3476,7 @@ msgstr "" "Souhaitez-vous vraiment retirer le rôle « %(name)s » à l’utilisateur " "« %(username)s » ?" -#: src/authentic2/manager/templates/authentic2/manager/user_su.html:7 +#: src/authentic2/manager/templates/authentic2/manager/user_su.html #, python-format msgid "" "To switch to user %(fullname)s, open the following link in a private window " @@ -3563,247 +3488,244 @@ msgstr "" "après %(duration)s secondes)." -#: src/authentic2/manager/templates/authentic2/manager/users.html:15 -#: src/authentic2/manager/templates/authentic2/manager/users.html:18 +#: src/authentic2/manager/templates/authentic2/manager/users.html msgid "Add user" msgstr "Ajouter un utilisateur" -#: src/authentic2/manager/user_import.py:126 +#: src/authentic2/manager/user_import.py msgid "Waiting" msgstr "En attente" -#: src/authentic2/manager/user_import.py:127 +#: src/authentic2/manager/user_import.py msgid "Running" msgstr "En cours d’exécution" -#: src/authentic2/manager/user_import.py:128 +#: src/authentic2/manager/user_import.py msgid "Finished" msgstr "Terminé" -#: src/authentic2/manager/user_import.py:129 +#: src/authentic2/manager/user_import.py msgid "Error" msgstr "Échec" -#: src/authentic2/manager/user_views.py:131 +#: src/authentic2/manager/user_views.py #, python-format msgid "Enter at least %(limit)d characters (%(user_count)d users)" msgstr "" "Veuillez taper au moins %(limit)d caractères — %(user_count)d utilisateur(s)" -#: src/authentic2/manager/user_views.py:154 +#: src/authentic2/manager/user_views.py msgid "Import users" msgstr "Importer des utilisateurs" -#: src/authentic2/manager/user_views.py:165 +#: src/authentic2/manager/user_views.py msgid "Create user" msgstr "Créer un nouvel utilisateur" -#: src/authentic2/manager/user_views.py:270 +#: src/authentic2/manager/user_views.py msgid "Choose organizational unit in which to create user" msgstr "Choisir la collectivité du nouvel utilisateur" -#: src/authentic2/manager/user_views.py:288 -#: src/authentic2/templates/authentic2/change_email.html:20 +#: src/authentic2/manager/user_views.py +#: src/authentic2/templates/authentic2/change_email.html msgid "Validate" msgstr "Valider" -#: src/authentic2/manager/user_views.py:312 +#: src/authentic2/manager/user_views.py msgid "Reset password" msgstr "Réinitialiser le mot de passe" -#: src/authentic2/manager/user_views.py:314 +#: src/authentic2/manager/user_views.py msgid "Suspend" msgstr "Suspendre" -#: src/authentic2/manager/user_views.py:316 +#: src/authentic2/manager/user_views.py msgid "Activate" msgstr "Activer" -#: src/authentic2/manager/user_views.py:320 +#: src/authentic2/manager/user_views.py msgid "Do not force password change on next login" msgstr "Ne pas forcer le changement de mot de passe à la prochaine connexion" -#: src/authentic2/manager/user_views.py:326 +#: src/authentic2/manager/user_views.py msgid "Force password change on next login" msgstr "Forcer le changement de mot de passe à la prochaine connexion" -#: src/authentic2/manager/user_views.py:331 -#: src/authentic2/manager/user_views.py:565 +#: src/authentic2/manager/user_views.py msgid "Change user password" msgstr "Changer le mot de passe" -#: src/authentic2/manager/user_views.py:336 +#: src/authentic2/manager/user_views.py msgid "Impersonate this user" msgstr "Se reconnecter avec cet utilisateur" -#: src/authentic2/manager/user_views.py:340 -#: src/authentic2/manager/user_views.py:595 +#: src/authentic2/manager/user_views.py msgid "Change user email" msgstr "Changer l’adresse de courriel" -#: src/authentic2/manager/user_views.py:356 +#: src/authentic2/manager/user_views.py msgid "You cannot desactivate your own user" msgstr "Vous ne pouvez pas désactiver votre propre utilisateur." -#: src/authentic2/manager/user_views.py:366 +#: src/authentic2/manager/user_views.py msgid "" "User has no email, it'not possible to send him am email to reset its password" msgstr "" "Cet utilisateur n’a pas d’adresse de courriel, il n’est pas possible de lui " "envoyer un lien de réinitialisation de son mot de passe" -#: src/authentic2/manager/user_views.py:370 +#: src/authentic2/manager/user_views.py #, python-format msgid "A mail was sent to %s" msgstr "Un courrier électronique a été envoyé à %s." -#: src/authentic2/manager/user_views.py:411 +#: src/authentic2/manager/user_views.py msgid "Email verified" msgstr "Courriel vérifié" -#: src/authentic2/manager/user_views.py:413 +#: src/authentic2/manager/user_views.py msgid "Email not verified" msgstr "Courriel non vérifié" -#: src/authentic2/manager/user_views.py:459 +#: src/authentic2/manager/user_views.py msgid "Change" msgstr "Modifier" -#: src/authentic2/manager/user_views.py:460 +#: src/authentic2/manager/user_views.py msgid "Edit user" msgstr "Éditer l’utilisateur" -#: src/authentic2/manager/user_views.py:566 -#: src/authentic2/saml/templates/admin/saml/libertyprovider/add_from_url.html:37 -#: src/authentic2/templates/authentic2/accounts_edit.html:20 -#: src/authentic2/templates/authentic2/login_password_registration_form.html:7 -#: src/authentic2/templates/registration/password_change_form.html:25 -#: src/authentic2/templates/registration/password_reset_confirm.html:16 -#: src/authentic2/templates/registration/password_reset_form.html:16 -#: src/authentic2/templates/registration/registration_completion_form.html:17 +#: src/authentic2/manager/user_views.py +#: src/authentic2/saml/templates/admin/saml/libertyprovider/add_from_url.html +#: src/authentic2/templates/authentic2/accounts_edit.html +#: src/authentic2/templates/authentic2/login_password_registration_form.html +#: src/authentic2/templates/registration/password_change_form.html +#: src/authentic2/templates/registration/password_reset_confirm.html +#: src/authentic2/templates/registration/password_reset_form.html +#: src/authentic2/templates/registration/registration_completion_form.html msgid "Submit" msgstr "Valider" -#: src/authentic2/manager/user_views.py:572 +#: src/authentic2/manager/user_views.py #, python-format msgid "New password sent to %s" msgstr "Un nouveau mot de passe a été envoyé par courriel à %s." -#: src/authentic2/manager/user_views.py:574 +#: src/authentic2/manager/user_views.py msgid "New password set" msgstr "Nouveau mot de passe défini" -#: src/authentic2/manager/user_views.py:599 +#: src/authentic2/manager/user_views.py #, python-format msgid "A mail was sent to %s to verify it." msgstr "Un courrier électronique a été envoyé à %s pour la vérifier." -#: src/authentic2/manager/user_views.py:684 +#: src/authentic2/manager/user_views.py #, python-brace-format msgid "User {user} has already the role {role}." msgstr "L’utilisateur {user} possède déjà le rôle {role}." -#: src/authentic2/manager/user_views.py:728 +#: src/authentic2/manager/user_views.py msgid "Delete user" msgstr "Supprimer l’utilisateur" -#: src/authentic2/manager/user_views.py:815 +#: src/authentic2/manager/user_views.py #, python-brace-format msgid "{0}. {1} {3}" msgstr "{0}. {1} {3}" -#: src/authentic2/manager/user_views.py:817 +#: src/authentic2/manager/user_views.py msgid "ex.:" msgstr "ex. :" -#: src/authentic2/manager/user_views.py:819 +#: src/authentic2/manager/user_views.py msgid "users.csv" msgstr "utilisateurs.csv" -#: src/authentic2/manager/user_views.py:897 +#: src/authentic2/manager/user_views.py msgid "Simulation" msgstr "Simulation" -#: src/authentic2/manager/user_views.py:899 +#: src/authentic2/manager/user_views.py msgid "Execution" msgstr "Importation" -#: src/authentic2/manager/user_views.py:921 +#: src/authentic2/manager/user_views.py msgid "Switch user" msgstr "Reconnexion" -#: src/authentic2/manager/views.py:484 +#: src/authentic2/manager/views.py #, python-format msgid "Delete %s" msgstr "Supprimer l’objet « %s »" -#: src/authentic2/manager/views.py:585 +#: src/authentic2/manager/views.py #, python-format msgid "Edit %s" msgstr "Éditer l’objet « %s »" -#: src/authentic2/manager/views.py:756 +#: src/authentic2/manager/views.py msgid "Site Import" msgstr "Import de site" -#: src/authentic2/middleware.py:164 +#: src/authentic2/middleware.py msgid "You must change your password to continue" msgstr "Vous devez changer votre mot de passe avant de continuer." -#: src/authentic2/models.py:53 +#: src/authentic2/models.py msgid "source" msgstr "source" -#: src/authentic2/models.py:55 +#: src/authentic2/models.py msgid "creation date" msgstr "date de création" -#: src/authentic2/models.py:56 +#: src/authentic2/models.py msgid "last update date" msgstr "dernière date de mise à jour" -#: src/authentic2/models.py:67 +#: src/authentic2/models.py msgid "user external id" msgstr "identifiant externe d’un utilisateur" -#: src/authentic2/models.py:68 +#: src/authentic2/models.py msgid "user external ids" msgstr "identifiants externes des utilisateurs" -#: src/authentic2/models.py:77 +#: src/authentic2/models.py msgid "when" msgstr "quand" -#: src/authentic2/models.py:78 +#: src/authentic2/models.py msgid "who" msgstr "qui" -#: src/authentic2/models.py:79 +#: src/authentic2/models.py msgid "how" msgstr "comment" -#: src/authentic2/models.py:80 +#: src/authentic2/models.py msgid "nonce" msgstr "numéro unique" -#: src/authentic2/models.py:85 +#: src/authentic2/models.py msgid "authentication log" msgstr "Journal des authentifications" -#: src/authentic2/models.py:86 +#: src/authentic2/models.py msgid "authentication logs" msgstr "Journaux des authentification" -#: src/authentic2/models.py:89 +#: src/authentic2/models.py #, python-format msgid "Authentication of %(who)s by %(how)s at %(when)s" msgstr "Authentification de %(who)s par %(how)s à %(when)s" -#: src/authentic2/models.py:94 +#: src/authentic2/models.py msgid "url" msgstr "url" -#: src/authentic2/models.py:96 +#: src/authentic2/models.py msgid "" "you can use a {} to pass the URL of the success icon, ex.: http://example." "com/logout?next={}" @@ -3811,15 +3733,15 @@ msgstr "" "vous pouvez utiliser la chaîne {} pour passer l’URL de l’icône de succès, " "ex. : http://example.com/logout?next={}" -#: src/authentic2/models.py:103 +#: src/authentic2/models.py msgid "use an iframe instead of an img tag for logout" msgstr "utiliser une iframe au lieu d’un tag img pour la déconnexion" -#: src/authentic2/models.py:106 +#: src/authentic2/models.py msgid "iframe logout timeout (ms)" msgstr "temps d’expiration pour les iframe de déconnexion (en ms)" -#: src/authentic2/models.py:108 src/authentic2/saml/models.py:275 +#: src/authentic2/models.py src/authentic2/saml/models.py msgid "" "if iframe logout is used, it's the time between the onload event for this " "iframe and the moment we consider its loading to be really finished" @@ -3828,150 +3750,148 @@ msgstr "" "l’évènement onload pour cette iframe et le moment où l’on peut considérer " "que le chargement vraiment terminé." -#: src/authentic2/models.py:127 src/authentic2/models.py:313 -#: src/authentic2/saml/models.py:314 +#: src/authentic2/models.py src/authentic2/saml/models.py msgid "content type" msgstr "type d’objet" -#: src/authentic2/models.py:128 src/authentic2/models.py:315 -#: src/authentic2/saml/models.py:315 +#: src/authentic2/models.py src/authentic2/saml/models.py msgid "object identifier" msgstr "identifiant d’objet" -#: src/authentic2/models.py:132 src/authentic2/models.py:133 +#: src/authentic2/models.py msgid "logout URL" msgstr "URL de déconnexion" -#: src/authentic2/models.py:138 +#: src/authentic2/models.py msgid "description" msgstr "description" -#: src/authentic2/models.py:140 +#: src/authentic2/models.py msgid "required" msgstr "requis" -#: src/authentic2/models.py:142 +#: src/authentic2/models.py msgid "asked on registration" msgstr "demandé à la création du compte" -#: src/authentic2/models.py:144 +#: src/authentic2/models.py msgid "user editable" msgstr "éditable par l’utilisateur" -#: src/authentic2/models.py:145 +#: src/authentic2/models.py msgid "user visible" msgstr "visible de l’utilisateur" -#: src/authentic2/models.py:146 +#: src/authentic2/models.py msgid "multiple" msgstr "multiple" -#: src/authentic2/models.py:149 +#: src/authentic2/models.py msgid "searchable" msgstr "indexé" -#: src/authentic2/models.py:150 +#: src/authentic2/models.py msgid "required on login" msgstr "requis à la connexion" -#: src/authentic2/models.py:153 +#: src/authentic2/models.py msgid "scopes" msgstr "portées" -#: src/authentic2/models.py:154 +#: src/authentic2/models.py msgid "scopes separated by spaces" msgstr "portées séparées par des espaces" -#: src/authentic2/models.py:160 +#: src/authentic2/models.py msgid "order" msgstr "ordre" -#: src/authentic2/models.py:305 +#: src/authentic2/models.py msgid "attribute definition" msgstr "définition d’un attribut" -#: src/authentic2/models.py:306 +#: src/authentic2/models.py msgid "attribute definitions" msgstr "définition des attributs" -#: src/authentic2/models.py:318 +#: src/authentic2/models.py msgid "attribute" msgstr "attribut" -#: src/authentic2/models.py:324 +#: src/authentic2/models.py msgid "content" msgstr "contenu" -#: src/authentic2/models.py:341 +#: src/authentic2/models.py msgid "attribute value" msgstr "valeur d’un attribut" -#: src/authentic2/models.py:343 +#: src/authentic2/models.py msgid "attribute values" msgstr "valeurs des attributs" -#: src/authentic2/models.py:369 +#: src/authentic2/models.py msgid "slug" msgstr "identifiant court" -#: src/authentic2/models.py:380 +#: src/authentic2/models.py msgid "authorized services" msgstr "services autorisés" -#: src/authentic2/models.py:387 +#: src/authentic2/models.py msgid "callback url when unauthorized" msgstr "URL de retour quand non-autorisé" -#: src/authentic2/models.py:398 +#: src/authentic2/models.py msgid "The slug must be unique for this ou" msgstr "L’identifiant court doit être unique au sein de cette collectivité." -#: src/authentic2/models.py:402 +#: src/authentic2/models.py msgid "The name must be unique for this ou" msgstr "Le nom doit être unique au sein de cette collectivité." -#: src/authentic2/models.py:407 +#: src/authentic2/models.py msgid "base service model" msgstr "service" -#: src/authentic2/models.py:408 +#: src/authentic2/models.py msgid "base service models" msgstr "services" -#: src/authentic2/models.py:467 +#: src/authentic2/models.py msgid "Kind" msgstr "Type" -#: src/authentic2/models.py:468 +#: src/authentic2/models.py msgid "Content" msgstr "Contenu" -#: src/authentic2/models.py:470 +#: src/authentic2/models.py msgid "Expires" msgstr "Expiration" -#: src/authentic2/passwords.py:96 +#: src/authentic2/passwords.py #, python-format msgid "%s characters" msgstr "%s caractères" -#: src/authentic2/passwords.py:100 +#: src/authentic2/passwords.py msgid "1 lowercase letter" msgstr "1 minuscule" -#: src/authentic2/passwords.py:103 +#: src/authentic2/passwords.py msgid "1 digit" msgstr "1 chiffre" -#: src/authentic2/passwords.py:106 +#: src/authentic2/passwords.py msgid "1 uppercase letter" msgstr "1 majuscule" -#: src/authentic2/passwords.py:119 +#: src/authentic2/passwords.py msgid "This password is not accepted." msgstr "Ce mot de passe n’est pas accepté." -#: src/authentic2/passwords.py:128 +#: src/authentic2/passwords.py #, python-format msgid "" "In order to create a secure password, please use at least: %s" -#: src/authentic2/saml/admin.py:81 +#: src/authentic2/saml/admin.py msgid "Metadata" msgstr "Métadonnées" -#: src/authentic2/saml/admin.py:106 +#: src/authentic2/saml/admin.py #, python-format msgid "Updating SAML provider %(name)s failed: %(error_msg)s" msgstr "" "La mise à jour du fournisseur SAML « %(name)s » a échoué : %(error_msg)s" -#: src/authentic2/saml/admin.py:110 +#: src/authentic2/saml/admin.py #, python-format msgid "%(count)d on %(total)d SAML providers updated" msgstr "%(count)d fournisseurs SAML mis à jour sur un total de %(total)d" -#: src/authentic2/saml/admin.py:156 +#: src/authentic2/saml/admin.py msgid "Metadata files" msgstr "Fichiers de métadonnées" -#: src/authentic2/saml/app_settings.py:32 +#: src/authentic2/saml/app_settings.py msgid "explicit" msgstr "explicite" -#: src/authentic2/saml/app_settings.py:32 +#: src/authentic2/saml/app_settings.py msgid "implicit" msgstr "implicite" -#: src/authentic2/saml/forms.py:35 +#: src/authentic2/saml/forms.py msgid "Shortcut" msgstr "Raccourci" -#: src/authentic2/saml/forms.py:35 +#: src/authentic2/saml/forms.py msgid "Internal nickname for the service provider" msgstr "Nom local du fournisseur de service" -#: src/authentic2/saml/forms.py:37 +#: src/authentic2/saml/forms.py msgid "Metadata's URL" msgstr "URL des métadonnées" -#: src/authentic2/saml/forms.py:57 +#: src/authentic2/saml/forms.py #, python-format msgid "Retrieval of %(url)s failed: %(exception)s" msgstr "" "La récupération des métadonnées à l’URL %(url)s a échouée : %(exception)s" -#: src/authentic2/saml/forms.py:61 src/authentic2/saml/forms.py:64 +#: src/authentic2/saml/forms.py #, python-format msgid "Invalid SAML metadata: %s" msgstr "Métadonnées SAML incorrectes : %s" -#: src/authentic2/saml/forms.py:61 +#: src/authentic2/saml/forms.py msgid "missing EntityDescriptor tag" msgstr "Au moins un tag XML EntityDescriptor est nécessaire" -#: src/authentic2/saml/forms.py:64 +#: src/authentic2/saml/forms.py msgid "missing SPSSODescriptor tags" msgstr "Au moins un tag XML SPSSODescriptor est nécessaire" -#: src/authentic2/saml/management/commands/mapping.py:892 +#: src/authentic2/saml/management/commands/mapping.py msgid "Organization" msgstr "Organisation" -#: src/authentic2/saml/management/commands/mapping.py:927 +#: src/authentic2/saml/management/commands/mapping.py msgid "Postal address" msgstr "Adresse postale" -#: src/authentic2/saml/management/commands/mapping.py:966 +#: src/authentic2/saml/management/commands/mapping.py msgid "Phone" msgstr "Téléphone" -#: src/authentic2/saml/management/commands/mapping.py:1227 +#: src/authentic2/saml/management/commands/mapping.py msgid "Email Address" msgstr "Courriel" -#: src/authentic2/saml/management/commands/sync-metadata.py:154 -#: src/authentic2/saml/management/commands/sync-metadata.py:240 +#: src/authentic2/saml/management/commands/sync-metadata.py #, python-format msgid "Created new attribute %(name)s for %(provider)s" msgstr "" "Création d’un nouvel attribut %(name)s pour le fournisseur %(provider)s" -#: src/authentic2/saml/management/commands/sync-metadata.py:228 +#: src/authentic2/saml/management/commands/sync-metadata.py #, python-format msgid "" "Unable to find an LDAP definition for attribute %(name)s on %(provider)s" @@ -4069,135 +3988,135 @@ msgstr "" "Impossible de trouver une définition LDAP pour l’attribut %(name)s du " "fournisseur %(provider)s" -#: src/authentic2/saml/management/commands/sync-metadata.py:377 +#: src/authentic2/saml/management/commands/sync-metadata.py #, python-format msgid "SAML2 service provider options policy with name %s not found" msgstr "" "La politique de fournisseur de service SAML nommée « %s » est introuvable" -#: src/authentic2/saml/management/commands/sync-metadata.py:399 +#: src/authentic2/saml/management/commands/sync-metadata.py #, python-format msgid "Failed to load entity descriptor for %s" msgstr "Échec du chargement des descripteurs d’entité pour %s" -#: src/authentic2/saml/management/commands/sync-metadata.py:414 +#: src/authentic2/saml/management/commands/sync-metadata.py #, python-format msgid "Deleted obsolete provider %s" msgstr "Suppression du fournisseur obsolète %s" -#: src/authentic2/saml/models.py:52 src/authentic2/saml/models.py:410 +#: src/authentic2/saml/models.py msgid "Invalid metadata file" msgstr "Métadonnées incorrectes" -#: src/authentic2/saml/models.py:111 +#: src/authentic2/saml/models.py msgid "Use the default from the metadata file" msgstr "Utilisation des valeurs par défaut du fichier de métadonnées" -#: src/authentic2/saml/models.py:112 src/authentic2/saml/models.py:195 +#: src/authentic2/saml/models.py msgid "Artifact binding" msgstr "Binding utilisant les artefacts" -#: src/authentic2/saml/models.py:113 src/authentic2/saml/models.py:196 +#: src/authentic2/saml/models.py msgid "POST binding" msgstr "Binding utilisant le verbe HTTP POST" -#: src/authentic2/saml/models.py:131 +#: src/authentic2/saml/models.py msgid "Persistent" msgstr "Persistant" -#: src/authentic2/saml/models.py:138 +#: src/authentic2/saml/models.py msgid "Transient" msgstr "Temporaire" -#: src/authentic2/saml/models.py:152 +#: src/authentic2/saml/models.py msgid "Username (use with Google Apps)" msgstr "Identifiant (à utiliser par exemple pour Google Apps)" -#: src/authentic2/saml/models.py:166 +#: src/authentic2/saml/models.py msgid "Use eduPersonTargetedID attribute" msgstr "Utiliser l’attribut eduPersonTargetedID" -#: src/authentic2/saml/models.py:201 +#: src/authentic2/saml/models.py msgid "Redirect binding" msgstr "Binding utilisant les redirections HTTP" -#: src/authentic2/saml/models.py:202 +#: src/authentic2/saml/models.py msgid "SOAP binding" msgstr "Binding utilisant le protocole SOAP sur HTTP" -#: src/authentic2/saml/models.py:207 +#: src/authentic2/saml/models.py msgid "Let authentic decides which signatures to check" msgstr "Laisser authentic décider quelles signatures vérifier" -#: src/authentic2/saml/models.py:208 +#: src/authentic2/saml/models.py msgid "Always check signatures" msgstr "Vérifier toutes les signatures" -#: src/authentic2/saml/models.py:209 +#: src/authentic2/saml/models.py msgid "Does not check signatures" msgstr "Ne pas vérifier les signatures" -#: src/authentic2/saml/models.py:213 +#: src/authentic2/saml/models.py msgid "Account linking by authentication" msgstr "Liaison des comptes par authentification" -#: src/authentic2/saml/models.py:214 +#: src/authentic2/saml/models.py msgid "Create new account" msgstr "Créer un nouveau compte" -#: src/authentic2/saml/models.py:218 +#: src/authentic2/saml/models.py msgid "Ask authentication" msgstr "Requérir l’authentification" -#: src/authentic2/saml/models.py:219 +#: src/authentic2/saml/models.py msgid "Open a session" msgstr "Établir une session" -#: src/authentic2/saml/models.py:231 src/authentic2/saml/models.py:460 +#: src/authentic2/saml/models.py msgid "Enabled" msgstr "Activé" -#: src/authentic2/saml/models.py:233 +#: src/authentic2/saml/models.py msgid "Prefered assertion consumer binding" msgstr "Binding du consommateur d’assertion préféré" -#: src/authentic2/saml/models.py:238 +#: src/authentic2/saml/models.py msgid "Encrypt NameID" msgstr "Chiffrer le NameID" -#: src/authentic2/saml/models.py:239 +#: src/authentic2/saml/models.py msgid "Encrypt Assertion" msgstr "Chiffrer l’assertion" -#: src/authentic2/saml/models.py:240 +#: src/authentic2/saml/models.py msgid "Authentication request signed" msgstr "Requête d’authentification signée" -#: src/authentic2/saml/models.py:242 +#: src/authentic2/saml/models.py msgid "Allow IdP initiated SSO" msgstr "Autoriser le SSO initié par l’IdP" -#: src/authentic2/saml/models.py:250 +#: src/authentic2/saml/models.py msgid "NameID formats accepted" msgstr "Formats de NameID acceptés" -#: src/authentic2/saml/models.py:259 +#: src/authentic2/saml/models.py msgid "Ask user for consent when creating a federation" msgstr "Demander le consentement utilisateur à la création d’une fédération" -#: src/authentic2/saml/models.py:262 +#: src/authentic2/saml/models.py msgid "Accept to receive Single Logout requests" msgstr "Accepter les requêtes de déconnexion" -#: src/authentic2/saml/models.py:264 +#: src/authentic2/saml/models.py msgid "Forward Single Logout requests" msgstr "Faire suivre les requêtes de déconnexion" -#: src/authentic2/saml/models.py:266 +#: src/authentic2/saml/models.py msgid "needs iframe logout" msgstr "nécessite une iframe pour la déconnexion" -#: src/authentic2/saml/models.py:268 +#: src/authentic2/saml/models.py msgid "" "logout URL are normally loaded inside an HTML tag, some service " "provider need to use an iframe" @@ -4205,88 +4124,88 @@ msgstr "" "Les URLs de déconnexion sont normalement chargées via un tag HTML , " "mais certains services ont besoin d’une iframe pour fonctionner." -#: src/authentic2/saml/models.py:273 +#: src/authentic2/saml/models.py msgid "iframe logout timeout" msgstr "délai d’attente avant chargement de l’iframe" -#: src/authentic2/saml/models.py:282 +#: src/authentic2/saml/models.py msgid "HTTP binding for the SLO requests" msgstr "Binding HTTP pour les requêtes de SLO" -#: src/authentic2/saml/models.py:287 +#: src/authentic2/saml/models.py msgid "federation mode" msgstr "mode de fédération" -#: src/authentic2/saml/models.py:299 src/authentic2/saml/models.py:471 +#: src/authentic2/saml/models.py msgid "service provider options policy" msgstr "règlement des options de fournisseur de services" -#: src/authentic2/saml/models.py:300 +#: src/authentic2/saml/models.py msgid "service provider options policies" msgstr "règlements des options de fournisseur de services" -#: src/authentic2/saml/models.py:318 +#: src/authentic2/saml/models.py msgid "name format" msgstr "format de nom" -#: src/authentic2/saml/models.py:324 +#: src/authentic2/saml/models.py msgid "the local attribute name is used if left blank" msgstr "le nom d’attribut local est utilisé si laissé vide" -#: src/authentic2/saml/models.py:326 +#: src/authentic2/saml/models.py msgid "friendly name" msgstr "pseudonyme" -#: src/authentic2/saml/models.py:327 +#: src/authentic2/saml/models.py msgid "attribute name" msgstr "nom de l’attribut" -#: src/authentic2/saml/models.py:328 +#: src/authentic2/saml/models.py msgid "enabled" msgstr "Activé" -#: src/authentic2/saml/models.py:381 +#: src/authentic2/saml/models.py msgid "Entity ID" msgstr "Identifiant de l’entité" -#: src/authentic2/saml/models.py:382 +#: src/authentic2/saml/models.py msgid "Entity ID SHA1" msgstr "Empreinte SHA1 de l’identifiant" -#: src/authentic2/saml/models.py:383 +#: src/authentic2/saml/models.py msgid "Metadata URL" msgstr "URL des métadonnées" -#: src/authentic2/saml/models.py:385 +#: src/authentic2/saml/models.py msgid "Protocol conformance" msgstr "Conformité au(x) protocole(s)" -#: src/authentic2/saml/models.py:390 +#: src/authentic2/saml/models.py msgid "Federation source" msgstr "Origine de la fédération" -#: src/authentic2/saml/models.py:416 +#: src/authentic2/saml/models.py msgid "Protocol other than SAML 2.0 are unsupported" msgstr "Les protocoles autres que SAML 2.0 ne sont pas pris en charge" -#: src/authentic2/saml/models.py:424 +#: src/authentic2/saml/models.py msgid "No metadata URL" msgstr "Pas d’URL des métadonnées" -#: src/authentic2/saml/models.py:427 +#: src/authentic2/saml/models.py #, python-format msgid "Retrieval of metadata failed: %s" msgstr "La récupération des métadonnées a échoué : %s" -#: src/authentic2/saml/models.py:435 +#: src/authentic2/saml/models.py msgid "SAML provider" msgstr "fournisseur SAML" -#: src/authentic2/saml/models.py:436 +#: src/authentic2/saml/models.py msgid "SAML providers" msgstr "fournisseurs SAML" -#: src/authentic2/saml/models.py:463 +#: src/authentic2/saml/models.py msgid "" "The following options policy will apply except if a policy for all service " "provider is defined." @@ -4294,100 +4213,100 @@ msgstr "" "Active le règlement d’option de fournisseur de service qui suit sauf si un " "règlement pour tous les fournisseurs de service est actif" -#: src/authentic2/saml/models.py:477 +#: src/authentic2/saml/models.py msgid "users can manage federation" msgstr "Les utilisateurs peuvent gérer leurs fédérations" -#: src/authentic2/saml/models.py:489 +#: src/authentic2/saml/models.py msgid "SAML service provider" msgstr "fournisseur de service SAML" -#: src/authentic2/saml/models.py:490 +#: src/authentic2/saml/models.py msgid "SAML service providers" msgstr "fournisseurs de service SAML" -#: src/authentic2/saml/models.py:514 +#: src/authentic2/saml/models.py msgid "SAML session dump" msgstr "dump de session SAML" -#: src/authentic2/saml/models.py:515 +#: src/authentic2/saml/models.py msgid "SAML session dumps" msgstr "dumps de session SAML" -#: src/authentic2/saml/models.py:530 +#: src/authentic2/saml/models.py msgid "SAML artifact" msgstr "artefact SAML" -#: src/authentic2/saml/models.py:531 +#: src/authentic2/saml/models.py msgid "SAML artifacts" msgstr "artefacts SAML" -#: src/authentic2/saml/models.py:596 +#: src/authentic2/saml/models.py msgid "SAML federation" msgstr "fédérations SAML" -#: src/authentic2/saml/models.py:597 +#: src/authentic2/saml/models.py msgid "SAML federations" msgstr "fédérations SAML" -#: src/authentic2/saml/models.py:610 +#: src/authentic2/saml/models.py msgid "Qualifier" msgstr "Qualifier" -#: src/authentic2/saml/models.py:611 +#: src/authentic2/saml/models.py msgid "NameIDFormat" msgstr "NameIDFormat" -#: src/authentic2/saml/models.py:612 +#: src/authentic2/saml/models.py msgid "NameID" msgstr "NameID" -#: src/authentic2/saml/models.py:613 +#: src/authentic2/saml/models.py msgid "SPNameQualifier" msgstr "SPNameQualifier" -#: src/authentic2/saml/models.py:651 +#: src/authentic2/saml/models.py msgid "SAML session" msgstr "session SAML" -#: src/authentic2/saml/models.py:652 +#: src/authentic2/saml/models.py msgid "SAML sessions" msgstr "sessions SAML" -#: src/authentic2/saml/models.py:666 +#: src/authentic2/saml/models.py msgid "key value association" msgstr "association clé valeur" -#: src/authentic2/saml/models.py:667 +#: src/authentic2/saml/models.py msgid "key value associations" msgstr "associations clé valeur" -#: src/authentic2/saml/templates/admin/saml/libertyprovider/add_from_url.html:18 -#: src/authentic2/templates/admin/log_view.html:6 +#: src/authentic2/saml/templates/admin/saml/libertyprovider/add_from_url.html +#: src/authentic2/templates/admin/log_view.html msgid "Home" msgstr "Accueil" -#: src/authentic2/saml/templates/admin/saml/libertyprovider/add_from_url.html:21 -#: src/authentic2/saml/templates/admin/saml/libertyprovider/change_list.html:13 +#: src/authentic2/saml/templates/admin/saml/libertyprovider/add_from_url.html +#: src/authentic2/saml/templates/admin/saml/libertyprovider/change_list.html msgid "Add from URL" msgstr "Ajouter depuis une URL" -#: src/authentic2/saml/templates/admin/saml/libertyprovider/add_from_url.html:30 +#: src/authentic2/saml/templates/admin/saml/libertyprovider/add_from_url.html msgid "Please correct the error below." msgid_plural "Please correct the errors below." msgstr[0] "Veuillez corriger l’erreur suivante." msgstr[1] "Veuillez corriger les erreurs suivantes." -#: src/authentic2/saml/templates/admin/saml/libertyprovider/change_list.html:9 +#: src/authentic2/saml/templates/admin/saml/libertyprovider/change_list.html #, python-format msgid "Add %(name)s" msgstr "Ajouter %(name)s" -#: src/authentic2/saml/templates/saml/post_form.html:12 +#: src/authentic2/saml/templates/saml/post_form.html msgid "You should be automatically redirected." msgstr "Vous devriez être automatiquement redirigé." -#: src/authentic2/saml/templates/saml/post_form.html:13 +#: src/authentic2/saml/templates/saml/post_form.html msgid "" "If this page is still visible after a few seconds, press the Send button " "below." @@ -4395,44 +4314,44 @@ msgstr "" "Si cette page est encore visible après quelques secondes, cliquez sur le " "bouton Envoyer ci-dessous." -#: src/authentic2/saml/templates/saml/post_form.html:20 +#: src/authentic2/saml/templates/saml/post_form.html msgid "Send" msgstr "Envoyer" -#: src/authentic2/templates/404.html:4 src/authentic2/templates/404.html:8 +#: src/authentic2/templates/404.html msgid "Error: page not found" msgstr "Erreur : page introuvable" -#: src/authentic2/templates/404.html:10 +#: src/authentic2/templates/404.html msgid "The page you requested has not been found on this server." msgstr "La page que vous recherchez n’a pas été trouvée sur ce serveur." -#: src/authentic2/templates/admin/base_site.html:4 +#: src/authentic2/templates/admin/base_site.html msgid "Authentic site admin" msgstr "Administration d’Authentic" -#: src/authentic2/templates/admin/base_site.html:7 +#: src/authentic2/templates/admin/base_site.html msgid "Authentic administration" msgstr "Administration d’Authentic" -#: src/authentic2/templates/admin/log_view.html:4 +#: src/authentic2/templates/admin/log_view.html msgid "Logs" msgstr "Logs" -#: src/authentic2/templates/admin/log_view.html:10 +#: src/authentic2/templates/admin/log_view.html msgid "Logs page" msgstr "Page de logs" -#: src/authentic2/templates/authentic2/account_delete_notification_body.html:4 -#: src/authentic2/templates/authentic2/account_delete_notification_body.txt:1 -#: src/authentic2/templates/authentic2/account_deletion_code_body.html:4 -#: src/authentic2/templates/authentic2/account_deletion_code_body.txt:1 +#: src/authentic2/templates/authentic2/account_delete_notification_body.html +#: src/authentic2/templates/authentic2/account_delete_notification_body.txt +#: src/authentic2/templates/authentic2/account_deletion_code_body.html +#: src/authentic2/templates/authentic2/account_deletion_code_body.txt #, python-format msgid "%(full_name)s," msgstr "%(full_name)s," -#: src/authentic2/templates/authentic2/account_delete_notification_body.html:6 -#: src/authentic2/templates/authentic2/account_delete_notification_body.txt:3 +#: src/authentic2/templates/authentic2/account_delete_notification_body.html +#: src/authentic2/templates/authentic2/account_delete_notification_body.txt #, python-format msgid "" "\n" @@ -4445,13 +4364,13 @@ msgstr "" "Toutes les données associées seront supprimées aujourd’hui.\n" "Vous ne pouvez dorénavant plus vous connecter.\n" -#: src/authentic2/templates/authentic2/account_delete_notification_subject.txt:1 +#: src/authentic2/templates/authentic2/account_delete_notification_subject.txt #, python-format msgid "Account deletion on %(site)s" msgstr "Suppression de compte sur %(site)s" -#: src/authentic2/templates/authentic2/account_deletion_code_body.html:6 -#: src/authentic2/templates/authentic2/account_deletion_code_body.txt:3 +#: src/authentic2/templates/authentic2/account_deletion_code_body.html +#: src/authentic2/templates/authentic2/account_deletion_code_body.txt #, python-format msgid "" "\n" @@ -4468,79 +4387,78 @@ msgstr "" "Toutes les données associées seront supprimées.\n" "Vous ne pouvez dorénavant plus vous connecter.\n" -#: src/authentic2/templates/authentic2/account_deletion_code_subject.txt:1 +#: src/authentic2/templates/authentic2/account_deletion_code_subject.txt #, python-format msgid "Validate account deletion request on %(site)s" msgstr "Confirmation de la suppression de compte sur %(site)s" -#: src/authentic2/templates/authentic2/account_deletion_message.html:1 +#: src/authentic2/templates/authentic2/account_deletion_message.html msgid "" "Your account has been scheduled for deletion. You cannot use it anymore." msgstr "" "Votre compte est en cours de suppression. Vous ne pouvez plus vous en servir." -#: src/authentic2/templates/authentic2/accounts.html:35 +#: src/authentic2/templates/authentic2/accounts.html msgid "Change email" msgstr "Modifier votre adresse électronique" -#: src/authentic2/templates/authentic2/accounts.html:38 -#: src/authentic2/views.py:76 +#: src/authentic2/templates/authentic2/accounts.html src/authentic2/views.py msgid "Edit account data" msgstr "Éditer les données du compte" -#: src/authentic2/templates/authentic2/accounts.html:41 +#: src/authentic2/templates/authentic2/accounts.html msgid "Manage service authorizations" msgstr "Gérer les autorisations d’accès" -#: src/authentic2/templates/authentic2/accounts.html:44 +#: src/authentic2/templates/authentic2/accounts.html msgid "Delete account" msgstr "Supprimer votre compte" -#: src/authentic2/templates/authentic2/accounts.html:48 +#: src/authentic2/templates/authentic2/accounts.html msgid "Credentials" msgstr "Moyens d’authentification" -#: src/authentic2/templates/authentic2/accounts.html:54 +#: src/authentic2/templates/authentic2/accounts.html msgid "Federation management" msgstr "Gestion des liaisons" -#: src/authentic2/templates/authentic2/accounts_authorized_oauth_services.html:10 -#: src/authentic2/templates/authentic2/accounts_delete_request.html:10 -#: src/authentic2/templates/authentic2/accounts_delete_validation.html:10 -#: src/authentic2/templates/authentic2/accounts_edit.html:10 -#: src/authentic2/templates/authentic2/change_email.html:10 -#: src/authentic2/templates/authentic2/homepage.html:10 -#: src/authentic2/templates/registration/password_change_form.html:10 -#: src/authentic2/views.py:436 +#: src/authentic2/templates/authentic2/accounts_authorized_oauth_services.html +#: src/authentic2/templates/authentic2/accounts_delete_request.html +#: src/authentic2/templates/authentic2/accounts_delete_validation.html +#: src/authentic2/templates/authentic2/accounts_edit.html +#: src/authentic2/templates/authentic2/change_email.html +#: src/authentic2/templates/authentic2/homepage.html +#: src/authentic2/templates/registration/password_change_form.html +#: src/authentic2/views.py msgid "Your account" msgstr "Votre compte" -#: src/authentic2/templates/authentic2/accounts_authorized_oauth_services.html:20 +#: src/authentic2/templates/authentic2/accounts_authorized_oauth_services.html msgid "" "You have not given any authorization to access your account profile data." msgstr "Vous n’avez accordé aucun accès à vos données de profil." -#: src/authentic2/templates/authentic2/accounts_authorized_oauth_services.html:22 +#: src/authentic2/templates/authentic2/accounts_authorized_oauth_services.html msgid "You have given authorizations to access your account profile data." msgstr "Vous avez accordé un accès à vos données de profil." -#: src/authentic2/templates/authentic2/accounts_authorized_oauth_services.html:39 +#: src/authentic2/templates/authentic2/accounts_authorized_oauth_services.html msgid "Allowed since:" msgstr "Autorisé depuis le :" -#: src/authentic2/templates/authentic2/accounts_authorized_oauth_services.html:44 +#: src/authentic2/templates/authentic2/accounts_authorized_oauth_services.html msgid "Expire on:" msgstr "Expiration le :" -#: src/authentic2/templates/authentic2/accounts_authorized_oauth_services.html:51 +#: src/authentic2/templates/authentic2/accounts_authorized_oauth_services.html msgid "Revoke" msgstr "Révoquer" -#: src/authentic2/templates/authentic2/accounts_delete_request.html:19 +#: src/authentic2/templates/authentic2/accounts_delete_request.html msgid "Do you really want to delete your account?" msgstr "Confirmez-vous la demande de suppression de votre compte ?" -#: src/authentic2/templates/authentic2/accounts_delete_request.html:24 +#: src/authentic2/templates/authentic2/accounts_delete_request.html #, python-format msgid "" "A validation message will be sent to %(email)s. You will have to visit the " @@ -4550,11 +4468,11 @@ msgstr "" "cliquer sur le lien contenu dans ce courriel afin de finaliser le processus " "de suppression." -#: src/authentic2/templates/authentic2/accounts_delete_request.html:29 +#: src/authentic2/templates/authentic2/accounts_delete_request.html msgid "Send the code" msgstr "Envoyer le code" -#: src/authentic2/templates/authentic2/accounts_delete_validation.html:19 +#: src/authentic2/templates/authentic2/accounts_delete_validation.html #, python-format msgid "" "\n" @@ -4569,34 +4487,34 @@ msgstr "" "vous connecter avec ce compte.\n" " " -#: src/authentic2/templates/authentic2/accounts_delete_validation.html:24 +#: src/authentic2/templates/authentic2/accounts_delete_validation.html msgid "Confirm deletion" msgstr "Confirmer la suppression" -#: src/authentic2/templates/authentic2/accounts_edit_required.html:6 +#: src/authentic2/templates/authentic2/accounts_edit_required.html msgid "" "The following informations are required if you want to use this service:" msgstr "" "Vous devez compléter les éléments suivants pour pouvoir utiliser ce service." -#: src/authentic2/templates/authentic2/api_user_create_registration_email_body.txt:1 +#: src/authentic2/templates/authentic2/api_user_create_registration_email_body.txt #, python-format msgctxt "api" msgid "A new account was created for you on %(hostname)s" msgstr "Un nouveau compte vous a été créé sur %(hostname)s" -#: src/authentic2/templates/authentic2/api_user_create_registration_email_subject.txt:1 +#: src/authentic2/templates/authentic2/api_user_create_registration_email_subject.txt #, python-format msgctxt "api" msgid "Your account was created on %(hostname)s" msgstr "Votre compte a été créé sur %(hostname)s" -#: src/authentic2/templates/authentic2/base.html:33 +#: src/authentic2/templates/authentic2/base.html #, python-format msgid "Last login %(LAST_LOGIN)s" msgstr "Date de dernière connexion : %(LAST_LOGIN)s" -#: src/authentic2/templates/authentic2/change_email.html:15 +#: src/authentic2/templates/authentic2/change_email.html #, python-format msgid "" "Your current email is %(email)s.\n" @@ -4606,7 +4524,7 @@ msgstr "" "La nouvelle adresse souhaitée pour votre compte sera vérifiée par l’envoi " "d’un courriel." -#: src/authentic2/templates/authentic2/change_email_notification_body.txt:1 +#: src/authentic2/templates/authentic2/change_email_notification_body.txt #, python-format msgid "" "Hi %(name)s !\n" @@ -4649,7 +4567,7 @@ msgstr "" "--\n" "%(domain)s" -#: src/authentic2/templates/authentic2/change_email_notification_body.txt:18 +#: src/authentic2/templates/authentic2/change_email_notification_body.txt #, python-format msgid "" "Hi %(name)s !\n" @@ -4690,58 +4608,58 @@ msgstr "" "--\n" "%(domain)s" -#: src/authentic2/templates/authentic2/change_email_notification_subject.txt:1 +#: src/authentic2/templates/authentic2/change_email_notification_subject.txt #, python-format msgid "Change email on %(domain)s" msgstr "Changer l’adresse de courriel sur %(domain)s" -#: src/authentic2/templates/authentic2/display_message_and_continue.html:6 -#: src/authentic2/templates/authentic2/logout_confirm.html:19 +#: src/authentic2/templates/authentic2/display_message_and_continue.html +#: src/authentic2/templates/authentic2/logout_confirm.html msgid "Continue" msgstr "Continuer" -#: src/authentic2/templates/authentic2/honeypot_input.html:1 +#: src/authentic2/templates/authentic2/honeypot_input.html msgid "Robot detection, do not check !" msgstr "Détection de robot, ne pas cocher !" -#: src/authentic2/templates/authentic2/login_password_form.html:11 -#: src/authentic2/templates/registration/activate.html:14 +#: src/authentic2/templates/authentic2/login_password_form.html +#: src/authentic2/templates/registration/activate.html msgid "Log in" msgstr "Connexion" -#: src/authentic2/templates/authentic2/login_password_form.html:26 +#: src/authentic2/templates/authentic2/login_password_form.html msgid "Forgot password?" msgstr "Mot de passe perdu ?" -#: src/authentic2/templates/authentic2/login_password_form.html:26 +#: src/authentic2/templates/authentic2/login_password_form.html msgid "Reset it!" msgstr "Récupérez votre accès !" -#: src/authentic2/templates/authentic2/login_password_form.html:29 +#: src/authentic2/templates/authentic2/login_password_form.html msgid "Not a member?" msgstr "Pas de compte ?" -#: src/authentic2/templates/authentic2/login_password_form.html:29 +#: src/authentic2/templates/authentic2/login_password_form.html msgid "Register!" msgstr "Enregistrez-vous !" -#: src/authentic2/templates/authentic2/login_password_profile.html:10 +#: src/authentic2/templates/authentic2/login_password_profile.html msgid "Change your password" msgstr "Modifier votre mot de passe" -#: src/authentic2/templates/authentic2/login_password_profile.html:12 +#: src/authentic2/templates/authentic2/login_password_profile.html msgid "Set your password" msgstr "Définir votre mot de passe" -#: src/authentic2/templates/authentic2/logout.html:30 +#: src/authentic2/templates/authentic2/logout.html msgid "Continue logout" msgstr "Continuer la déconnexion" -#: src/authentic2/templates/authentic2/logout_confirm.html:13 +#: src/authentic2/templates/authentic2/logout_confirm.html msgid "You are going to do a global logout, do you want to continue ?" msgstr "Vous avez demandé une déconnexion globale, voulez-vous continuer ?" -#: src/authentic2/templates/authentic2/password_change_body.txt:1 +#: src/authentic2/templates/authentic2/password_change_body.txt #, python-format msgid "" "Password of account %(user)s has been changed.\n" @@ -4752,20 +4670,20 @@ msgstr "" "l’origine de ce changement, veuillez prendre contact avec votre " "administrateur." -#: src/authentic2/templates/authentic2/password_change_subject.txt:1 +#: src/authentic2/templates/authentic2/password_change_subject.txt #, python-format msgid "Password changed on %(host)s for account %(user)s" msgstr "Mot de passe du compte %(user)s modifié sur %(host)s" -#: src/authentic2/templates/authentic2/password_reset_no_account_body.html:5 -#: src/authentic2/templates/authentic2/password_reset_no_account_body.txt:4 -#: src/authentic2/templates/authentic2/password_reset_refused_body.html:5 -#: src/authentic2/templates/authentic2/password_reset_refused_body.txt:4 +#: src/authentic2/templates/authentic2/password_reset_no_account_body.html +#: src/authentic2/templates/authentic2/password_reset_no_account_body.txt +#: src/authentic2/templates/authentic2/password_reset_refused_body.html +#: src/authentic2/templates/authentic2/password_reset_refused_body.txt msgid "Hi," msgstr "Bonjour," -#: src/authentic2/templates/authentic2/password_reset_no_account_body.html:7 -#: src/authentic2/templates/authentic2/password_reset_no_account_body.txt:5 +#: src/authentic2/templates/authentic2/password_reset_no_account_body.html +#: src/authentic2/templates/authentic2/password_reset_no_account_body.txt #, python-format msgid "" "You requested reset of your password on %(hostname)s, but no account was " @@ -4774,22 +4692,22 @@ msgstr "" "Vous avez demandé à récupérer votre accès sur\n" "%(hostname)s, mais aucun compte ne correspond à cette adresse." -#: src/authentic2/templates/authentic2/password_reset_no_account_body.html:11 +#: src/authentic2/templates/authentic2/password_reset_no_account_body.html msgid "Create an account" msgstr "Créer un compte" -#: src/authentic2/templates/authentic2/password_reset_no_account_body.txt:8 +#: src/authentic2/templates/authentic2/password_reset_no_account_body.txt msgid "You can create an account here:" msgstr "Vous pouvez créer un compte ici :" -#: src/authentic2/templates/authentic2/password_reset_no_account_subject.txt:4 -#: src/authentic2/templates/registration/password_reset_subject.txt:1 +#: src/authentic2/templates/authentic2/password_reset_no_account_subject.txt +#: src/authentic2/templates/registration/password_reset_subject.txt #, python-format msgid "Password reset on %(hostname)s" msgstr "Mot de passe oublié sur %(hostname)s" -#: src/authentic2/templates/authentic2/password_reset_refused_body.html:7 -#: src/authentic2/templates/authentic2/password_reset_refused_body.txt:5 +#: src/authentic2/templates/authentic2/password_reset_refused_body.html +#: src/authentic2/templates/authentic2/password_reset_refused_body.txt #, python-format msgid "" "You requested reset of your password on %(hostname)s. Unfortunately, your " @@ -4798,12 +4716,12 @@ msgstr "" "Vous avez demandé à récupérer votre accès sur\n" "%(hostname)s, mais il a été désactivé." -#: src/authentic2/templates/authentic2/password_reset_refused_subject.txt:4 +#: src/authentic2/templates/authentic2/password_reset_refused_subject.txt #, python-format msgid "Your account on %(hostname)s is disabled" msgstr "Votre compte sur %(hostname)s a été désactivé" -#: src/authentic2/templates/authentic2/registration_success_body.html:4 +#: src/authentic2/templates/authentic2/registration_success_body.html #, python-format msgid "" "\n" @@ -4820,27 +4738,27 @@ msgstr "" "

Connectez-vous !

\n" " " -#: src/authentic2/templates/authentic2/registration_success_body.html:12 -#: src/authentic2/templates/authentic2/registration_success_body.txt:9 +#: src/authentic2/templates/authentic2/registration_success_body.html +#: src/authentic2/templates/authentic2/registration_success_body.txt msgid "Username:" msgstr "Identifiant :" -#: src/authentic2/templates/authentic2/registration_success_body.html:14 -#: src/authentic2/templates/authentic2/registration_success_body.txt:10 +#: src/authentic2/templates/authentic2/registration_success_body.html +#: src/authentic2/templates/authentic2/registration_success_body.txt msgid "Email:" msgstr "Courriel :" -#: src/authentic2/templates/authentic2/registration_success_body.html:16 -#: src/authentic2/templates/authentic2/registration_success_body.txt:11 +#: src/authentic2/templates/authentic2/registration_success_body.html +#: src/authentic2/templates/authentic2/registration_success_body.txt msgid "First name:" msgstr "Prénom :" -#: src/authentic2/templates/authentic2/registration_success_body.html:19 -#: src/authentic2/templates/authentic2/registration_success_body.txt:12 +#: src/authentic2/templates/authentic2/registration_success_body.html +#: src/authentic2/templates/authentic2/registration_success_body.txt msgid "Last name:" msgstr "Nom :" -#: src/authentic2/templates/authentic2/registration_success_body.txt:1 +#: src/authentic2/templates/authentic2/registration_success_body.txt #, python-format msgid "" "Hi %(full_name)s !\n" @@ -4859,19 +4777,19 @@ msgstr "" "\n" "\t%(login_url)s\n" -#: src/authentic2/templates/authentic2/registration_success_message.html:1 +#: src/authentic2/templates/authentic2/registration_success_message.html msgid "You have just created an account." msgstr "Vous venez de créer un compte." -#: src/authentic2/templates/authentic2/registration_success_subject.txt:1 +#: src/authentic2/templates/authentic2/registration_success_subject.txt msgid "You successfully registered on" msgstr "Création de compte réussie sur" -#: src/authentic2/templates/authentic2/unauthorized.html:5 +#: src/authentic2/templates/authentic2/unauthorized.html msgid "Access denied" msgstr "Accès refusé" -#: src/authentic2/templates/authentic2/unauthorized.html:9 +#: src/authentic2/templates/authentic2/unauthorized.html msgid "" "You are not authorized to access this service, please contact your " "administrator." @@ -4879,19 +4797,19 @@ msgstr "" "Vous n’êtes pas autorisé à accéder à ce service, veuillez contacter votre " "administrateur." -#: src/authentic2/templates/authentic2/unused_account_alert_body.html:2 -#: src/authentic2/templates/authentic2/unused_account_alert_body.txt:1 +#: src/authentic2/templates/authentic2/unused_account_alert_body.html +#: src/authentic2/templates/authentic2/unused_account_alert_body.txt #, python-format msgid "Hi %(user.get_full_name)s," msgstr "Bonjour %(user.get_full_name)s," -#: src/authentic2/templates/authentic2/unused_account_alert_body.html:4 -#: src/authentic2/templates/authentic2/unused_account_alert_body.txt:3 +#: src/authentic2/templates/authentic2/unused_account_alert_body.html +#: src/authentic2/templates/authentic2/unused_account_alert_body.txt #, python-format msgid "Your last logging was %(last_login_date)s." msgstr "Votre dernière connexion date d’%(last_login_date)s." -#: src/authentic2/templates/authentic2/unused_account_alert_body.html:5 +#: src/authentic2/templates/authentic2/unused_account_alert_body.html #, python-format msgid "" "In order to keep your account, you must log in " @@ -4900,12 +4818,12 @@ msgstr "" "Pour conserver votre compte, il vous suffit de vous connecter avant %(days_to_deletion)s jours." -#: src/authentic2/templates/authentic2/unused_account_alert_body.html:6 -#: src/authentic2/templates/authentic2/unused_account_alert_body.txt:5 +#: src/authentic2/templates/authentic2/unused_account_alert_body.html +#: src/authentic2/templates/authentic2/unused_account_alert_body.txt msgid "Otherwise, it will be deleted after this time." msgstr "Dans le cas contraire, il sera supprimé passé ce délai." -#: src/authentic2/templates/authentic2/unused_account_alert_body.txt:4 +#: src/authentic2/templates/authentic2/unused_account_alert_body.txt #, python-format msgid "" "In order to keep your account, you must log in within %(days_to_deletion)s " @@ -4914,14 +4832,14 @@ msgstr "" "Pour conserver votre compte, il vous suffit de vous connecter avant " "%(days_to_deletion)s jours." -#: src/authentic2/templates/authentic2/unused_account_alert_subject.txt:1 +#: src/authentic2/templates/authentic2/unused_account_alert_subject.txt #, python-format msgid "Alert: %(user.get_full_name)s your last login was %(last_login_date)s" msgstr "" "Alerte : %(user.get_full_name)s, votre dernière connexion date " "d’%(last_login_date)s" -#: src/authentic2/templates/authentic2/unused_account_delete_body.txt:1 +#: src/authentic2/templates/authentic2/unused_account_delete_body.txt #, python-format msgid "" "\n" @@ -4936,92 +4854,92 @@ msgstr "" "Votre dernière connexion date d’%(last_login_date)s, votre compte a donc été " "supprimé." -#: src/authentic2/templates/authentic2/unused_account_delete_subject.txt:1 +#: src/authentic2/templates/authentic2/unused_account_delete_subject.txt #, python-format msgid "Notification: %(user)s, your account has been deleted" msgstr "Notification : %(user)s, votre compte a été supprimé" -#: src/authentic2/templates/authentic2/widgets/address_autocomplete.html:5 +#: src/authentic2/templates/authentic2/widgets/address_autocomplete.html msgid "Manually enter the address" msgstr "Entrer l’adresse manuellement" -#: src/authentic2/templates/authentic2/widgets/email.html:5 +#: src/authentic2/templates/authentic2/widgets/email.html msgid "Did you want to write" msgstr "Vouliez-vous écrire" -#: src/authentic2/templates/authentic2/widgets/email.html:6 +#: src/authentic2/templates/authentic2/widgets/email.html msgid "Apply fix" msgstr "Corriger" -#: src/authentic2/templates/error_ssl.html:4 +#: src/authentic2/templates/error_ssl.html msgid "Error: authentication failure" msgstr "Erreur : échec de l’authentification" -#: src/authentic2/templates/error_ssl.html:8 +#: src/authentic2/templates/error_ssl.html msgid "Authentication failure" msgstr "Échec de l’authentification" -#: src/authentic2/templates/error_ssl.html:10 +#: src/authentic2/templates/error_ssl.html msgid "The SSL authentication has failed" msgstr "L’authentification SSL a échouée" -#: src/authentic2/templates/interaction/consent_attributes.html:4 +#: src/authentic2/templates/interaction/consent_attributes.html msgid "Consent page for attribute propagation" msgstr "Page de consentement pour la transmission des attributs" -#: src/authentic2/templates/interaction/consent_attributes.html:14 +#: src/authentic2/templates/interaction/consent_attributes.html msgid "Choose attributes to send to " msgstr "Choisissez les attributs à envoyer" -#: src/authentic2/templates/interaction/consent_attributes.html:31 +#: src/authentic2/templates/interaction/consent_attributes.html msgid "Send selected" msgstr "Envoyer la selection" -#: src/authentic2/templates/interaction/consent_attributes.html:33 +#: src/authentic2/templates/interaction/consent_attributes.html msgid "Send all" msgstr "Tout envoyer" -#: src/authentic2/templates/interaction/consent_attributes.html:35 +#: src/authentic2/templates/interaction/consent_attributes.html msgid "Refuse all" msgstr "Aucun" -#: src/authentic2/templates/interaction/consent_federation.html:4 +#: src/authentic2/templates/interaction/consent_federation.html msgid "Consent page for federation" msgstr "Page de consentement pour la fédération" -#: src/authentic2/templates/interaction/consent_federation.html:13 +#: src/authentic2/templates/interaction/consent_federation.html msgid "Do you accept to federate your account with " msgstr "Acceptez-vous de fédérer votre compte avec " -#: src/authentic2/templates/interaction/consent_federation.html:15 +#: src/authentic2/templates/interaction/consent_federation.html msgid "Do you accept to federate your account ?" msgstr "Acceptez-vous de féderer vos comptes ?" -#: src/authentic2/templates/interaction/consent_federation.html:23 +#: src/authentic2/templates/interaction/consent_federation.html msgid "Accept" msgstr "Accepter" -#: src/authentic2/templates/interaction/consent_federation.html:24 +#: src/authentic2/templates/interaction/consent_federation.html msgid "Refuse" msgstr "Refuser" -#: src/authentic2/templates/registration/activate.html:5 +#: src/authentic2/templates/registration/activate.html msgid "Account activation" msgstr "Activer le compte sur" -#: src/authentic2/templates/registration/activate.html:12 +#: src/authentic2/templates/registration/activate.html msgid "Account successfully activated" msgstr "Activation du compte réussie" -#: src/authentic2/templates/registration/activate.html:18 +#: src/authentic2/templates/registration/activate.html msgid "Account activation failed" msgstr "Échec à l’activation du compte" -#: src/authentic2/templates/registration/activation_complete.html:5 +#: src/authentic2/templates/registration/activation_complete.html msgid "Your account is now activated" msgstr "Votre compte est maintenant activé" -#: src/authentic2/templates/registration/activation_email.html:5 +#: src/authentic2/templates/registration/activation_email.html #, python-format msgid "" "You requested registration on %(site)s. To finish your registration, please\n" @@ -5030,7 +4948,7 @@ msgstr "" "Vous avez demandé la création d’un compte sur %(site)s. Continuez la création de votre compte !." -#: src/authentic2/templates/registration/activation_email.html:9 +#: src/authentic2/templates/registration/activation_email.html #, python-format msgid "" "You requested registration on %(site)s. You already have an\n" @@ -5039,24 +4957,24 @@ msgstr "" "Vous demandez la création d’un compte sur %(site)s. Vous disposez déjà d’un " "compte, connectez-vous !." -#: src/authentic2/templates/registration/activation_email.html:15 +#: src/authentic2/templates/registration/activation_email.html #, python-format msgid "This link is valid for %(expiration_days)s days." msgstr "Ce lien est valide pendant %(expiration_days)s jours." -#: src/authentic2/templates/registration/activation_email.html:17 +#: src/authentic2/templates/registration/activation_email.html msgid "This link is valid for 24 hours." msgstr "Ce lien est valide pendant 24 heures." -#: src/authentic2/templates/registration/activation_email.html:20 -#: src/authentic2/templates/registration/activation_email.txt:15 +#: src/authentic2/templates/registration/activation_email.html +#: src/authentic2/templates/registration/activation_email.txt #, python-format msgid "If you did not register on %(site)s, ignore this email." msgstr "" "Si vous n’avez pas demandé la création d’un compte sur %(site)s, veuillez " "ignorer ce courriel." -#: src/authentic2/templates/registration/activation_email.txt:1 +#: src/authentic2/templates/registration/activation_email.txt #, python-format msgid "" "You requested registration on %(site)s.\n" @@ -5071,7 +4989,7 @@ msgstr "" " %(registration_url)s\n" "\n" -#: src/authentic2/templates/registration/activation_email.txt:6 +#: src/authentic2/templates/registration/activation_email.txt #, python-format msgid "" "You requested registration on %(site)s.\n" @@ -5086,33 +5004,33 @@ msgstr "" " %(registration_url)s\n" "\n" -#: src/authentic2/templates/registration/activation_email.txt:12 +#: src/authentic2/templates/registration/activation_email.txt #, python-format msgid "Link is valid for %(expiration_days)s days." msgstr "Ce lien est valide pendant %(expiration_days)s jours." -#: src/authentic2/templates/registration/activation_email.txt:13 +#: src/authentic2/templates/registration/activation_email.txt msgid "Link is valid for 24 hours." msgstr "Ce lien est valide pendant 24 heures." -#: src/authentic2/templates/registration/activation_email_subject.txt:1 +#: src/authentic2/templates/registration/activation_email_subject.txt msgid "You requested registration on" msgstr "Vous demandez la création d’un compte sur" -#: src/authentic2/templates/registration/logout.html:5 +#: src/authentic2/templates/registration/logout.html msgid "Logging out" msgstr "Déconnexion" -#: src/authentic2/templates/registration/logout.html:9 +#: src/authentic2/templates/registration/logout.html msgid "Logged out" msgstr "Déconnecté" -#: src/authentic2/templates/registration/password_change_done.html:9 -#: src/authentic2/views.py:1393 +#: src/authentic2/templates/registration/password_change_done.html +#: src/authentic2/views.py msgid "Password changed" msgstr "Mot de passe modifié" -#: src/authentic2/templates/registration/password_change_form.html:17 +#: src/authentic2/templates/registration/password_change_form.html msgid "" "To change your password you must provide your current password, then " "provide\n" @@ -5122,15 +5040,15 @@ msgstr "" "Pour modifier votre mot de passe vous devez fournir votre mot de passe " "actuel ainsi que le nouveau, puis confirmer ce dernier." -#: src/authentic2/templates/registration/password_change_form.html:21 +#: src/authentic2/templates/registration/password_change_form.html msgid "You are going to define your account password." msgstr "Vous allez définir le mot de passe de votre compte." -#: src/authentic2/templates/registration/password_reset_confirm.html:21 +#: src/authentic2/templates/registration/password_reset_confirm.html msgid "Password reset failed" msgstr "Erreur à la réinitialistion du mot de passe" -#: src/authentic2/templates/registration/password_reset_email.html:2 +#: src/authentic2/templates/registration/password_reset_email.html #, python-format msgid "" "You requested reset of your password on %(hostname)s, to proceed please\n" @@ -5139,21 +5057,20 @@ msgstr "" "Vous avez demandé à récupérer votre accès sur\n" "%(hostname)s, veuillez cliquer sur le lien suivant :" -#: src/authentic2/templates/registration/password_reset_form.html:5 -#: src/authentic2/templates/registration/password_reset_form.html:10 +#: src/authentic2/templates/registration/password_reset_form.html msgid "Resetting password" msgstr "Mot de passe oublié" -#: src/authentic2/templates/registration/password_reset_instructions.html:5 +#: src/authentic2/templates/registration/password_reset_instructions.html msgid "Password reset instructions" msgstr "Instructions de récupération du compte" -#: src/authentic2/templates/registration/password_reset_instructions.html:10 +#: src/authentic2/templates/registration/password_reset_instructions.html msgid "Your password reset request has been refused." msgstr "Votre demande de récupération du compte n'a pas été prise en compte." -#: src/authentic2/templates/registration/password_reset_instructions.html:10 -#: src/authentic2/templates/registration/registration_complete.html:10 +#: src/authentic2/templates/registration/password_reset_instructions.html +#: src/authentic2/templates/registration/registration_complete.html msgid "" "Indeed your browser checked a hidden anti-robot checkbox on the registration " "form. A browser extension may produce this behaviour, in this case disable " @@ -5164,7 +5081,7 @@ msgstr "" "extension de votre navigateur, auquel cas veuillez désactiver les extensions " "et essayer à nouveau." -#: src/authentic2/templates/registration/password_reset_instructions.html:14 +#: src/authentic2/templates/registration/password_reset_instructions.html #, python-format msgid "" "\n" @@ -5175,7 +5092,7 @@ msgstr "" " Un courriel a été envoyé à %(email)s.\n" " " -#: src/authentic2/templates/registration/password_reset_instructions.html:19 +#: src/authentic2/templates/registration/password_reset_instructions.html msgid "" "\n" " Follow the instructions in this email in order to choose a new " @@ -5187,8 +5104,8 @@ msgstr "" "de passe.\n" " " -#: src/authentic2/templates/registration/password_reset_instructions.html:25 -#: src/authentic2/templates/registration/registration_complete.html:26 +#: src/authentic2/templates/registration/password_reset_instructions.html +#: src/authentic2/templates/registration/registration_complete.html msgid "" "\n" " The email may take several minutes to be received. It can also be\n" @@ -5200,7 +5117,7 @@ msgstr "" " également être considéré comme un pourriel (spam) : n’oubliez pas\n" " de regarder dans votre dossier « courriers indésirables ». " -#: src/authentic2/templates/registration/password_reset_instructions.html:31 +#: src/authentic2/templates/registration/password_reset_instructions.html #, python-format msgid "" "\n" @@ -5217,24 +5134,23 @@ msgstr "" " puis recommencez la procédure de récupération du compte.\n" " " -#: src/authentic2/templates/registration/password_reset_instructions.html:40 +#: src/authentic2/templates/registration/password_reset_instructions.html msgid "Back to login" msgstr "Retour à la page de connexion" -#: src/authentic2/templates/registration/registration_closed.html:5 -#: src/authentic2/templates/registration/registration_closed.html:9 +#: src/authentic2/templates/registration/registration_closed.html msgid "Registration closed" msgstr "La création de compte est actuellement interdite." -#: src/authentic2/templates/registration/registration_complete.html:5 +#: src/authentic2/templates/registration/registration_complete.html msgid "Registration in progress" msgstr "Création du compte en cours" -#: src/authentic2/templates/registration/registration_complete.html:10 +#: src/authentic2/templates/registration/registration_complete.html msgid "Your registration request has been refused." msgstr "Votre demande d’inscription n’a pas été prise en compte." -#: src/authentic2/templates/registration/registration_complete.html:14 +#: src/authentic2/templates/registration/registration_complete.html #, python-format msgid "" "\n" @@ -5245,7 +5161,7 @@ msgstr "" " Un courriel a été envoyé à %(email)s.\n" " " -#: src/authentic2/templates/registration/registration_complete.html:19 +#: src/authentic2/templates/registration/registration_complete.html msgid "" "\n" " Follow the instructions in that email to continue your registration.\n" @@ -5256,7 +5172,7 @@ msgstr "" "votre compte.\n" " " -#: src/authentic2/templates/registration/registration_complete.html:32 +#: src/authentic2/templates/registration/registration_complete.html #, python-format msgid "" "\n" @@ -5272,14 +5188,13 @@ msgstr "" " à votre carnet d’adresses ou à votre liste d’expéditeurs autorisés, " "puis recommencez la procédure d’inscription. " -#: src/authentic2/templates/registration/registration_completion_choose.html:5 -#: src/authentic2/templates/registration/registration_completion_form.html:5 -#: src/authentic2/templates/registration/registration_completion_form.html:10 -#: src/authentic2/views.py:870 +#: src/authentic2/templates/registration/registration_completion_choose.html +#: src/authentic2/templates/registration/registration_completion_form.html +#: src/authentic2/views.py msgid "Registration" msgstr "Création d’un compte" -#: src/authentic2/templates/registration/registration_completion_choose.html:11 +#: src/authentic2/templates/registration/registration_completion_choose.html msgid "" "An account already exists for this email. Please click on the account name " "to log in with." @@ -5293,37 +5208,37 @@ msgstr[1] "" "Plusieurs comptes sont associés à cette adresse de courriel.\n" "Veuillez choisir le compte avec lequel vous souhaitez vous connecter :" -#: src/authentic2/templates/registration/registration_completion_choose.html:21 +#: src/authentic2/templates/registration/registration_completion_choose.html #, python-format msgid "Account #%(c)s: %(fullname)s" msgstr "Compte #%(c)s : %(fullname)s" -#: src/authentic2/templates/registration/registration_completion_choose.html:24 +#: src/authentic2/templates/registration/registration_completion_choose.html #, python-format msgid "" "created on %(creation_date)s\n" " " msgstr "créé le %(creation_date)s" -#: src/authentic2/templates/registration/registration_completion_choose.html:27 +#: src/authentic2/templates/registration/registration_completion_choose.html #, python-format msgid "last login on %(login_date)s" msgstr "date de dernière connexion : %(login_date)s" -#: src/authentic2/templates/registration/registration_completion_choose.html:36 +#: src/authentic2/templates/registration/registration_completion_choose.html msgid "or" msgstr "ou" -#: src/authentic2/templates/registration/registration_completion_choose.html:38 +#: src/authentic2/templates/registration/registration_completion_choose.html msgid "create a new account" msgstr "créez un nouveau compte" -#: src/authentic2/templates/registration/registration_completion_form.html:11 +#: src/authentic2/templates/registration/registration_completion_form.html msgid "Please fill the form to complete your registration" msgstr "" "Veuillez remplir le formulaire afin de finir la création de votre compte." -#: src/authentic2/urls.py:95 +#: src/authentic2/urls.py msgid "" "Your password reset link has become invalid, please reset your password " "again." @@ -5331,67 +5246,67 @@ msgstr "" "Le lien de demande de récupération du compte n’est plus valide, veuillez " "effectuer une nouvelle demande." -#: src/authentic2/utils/evaluate.py:95 +#: src/authentic2/utils/evaluate.py #, python-format msgid "expression \"%(expression)s\" is forbidden" msgstr "l’expression « %(expression)s » est interdite" -#: src/authentic2/utils/evaluate.py:120 +#: src/authentic2/utils/evaluate.py msgid "could not parse expression" msgstr "analyse de l’expression impossible" -#: src/authentic2/utils/evaluate.py:183 +#: src/authentic2/utils/evaluate.py msgid "name must not start with a _" msgstr "un nom ne peut pas commencer par _" -#: src/authentic2/utils/evaluate.py:200 +#: src/authentic2/utils/evaluate.py msgid "subscript index MUST be a constant" msgstr "l’index utilisé dans l’instruction DOIT être une constante" -#: src/authentic2/utils/evaluate.py:222 +#: src/authentic2/utils/evaluate.py #, python-format msgid "variable is not defined: %s" msgstr "variable non définie : %s" -#: src/authentic2/utils/misc.py:1071 +#: src/authentic2/utils/misc.py #, python-format msgid "%s day" msgid_plural "%s days" msgstr[0] "%s jour" msgstr[1] "%s jours" -#: src/authentic2/utils/misc.py:1073 +#: src/authentic2/utils/misc.py #, python-format msgid "%s hour" msgid_plural "%s hours" msgstr[0] "%s heure" msgstr[1] "%s heures" -#: src/authentic2/utils/misc.py:1075 +#: src/authentic2/utils/misc.py #, python-format msgid "%s minute" msgid_plural "%s minutes" msgstr[0] "%s minute" msgstr[1] "%s minutes" -#: src/authentic2/utils/misc.py:1077 +#: src/authentic2/utils/misc.py #, python-format msgid "%s second" msgid_plural "%s seconds" msgstr[0] "%s seconde" msgstr[1] "%s secondes" -#: src/authentic2/utils/template.py:35 src/authentic2/utils/template.py:45 +#: src/authentic2/utils/template.py #, python-format msgid "template syntax error: %s" msgstr "erreur de syntaxe de gabarit : %s" -#: src/authentic2/utils/template.py:49 +#: src/authentic2/utils/template.py #, python-format msgid "missing template variable: %s" msgstr "variable de gabarit manquante : %s" -#: src/authentic2/utils/views.py:34 +#: src/authentic2/utils/views.py msgid "" "Cookies are disabled in your browser, please activate them or you will not " "be able to log in." @@ -5399,27 +5314,27 @@ msgstr "" "Les cookies sont désactivés dans votre navigateur, il est nécessaire de les " "activer pour pouvoir se connecter." -#: src/authentic2/utils/views.py:48 +#: src/authentic2/utils/views.py msgid "The form was out of date, please try again." msgstr "Ce formulaire était périmé, veuillez ré-essayer." -#: src/authentic2/validators.py:76 +#: src/authentic2/validators.py msgid "Invalid email address." msgstr "Adresse de courriel invalide." -#: src/authentic2/validators.py:94 +#: src/authentic2/validators.py msgid "Email domain is invalid" msgstr "Le domaine de l’adresse de courriel est invalide." -#: src/authentic2/validators.py:112 +#: src/authentic2/validators.py msgid "Null characters are not allowed." msgstr "Le caractère nul est interdit." -#: src/authentic2/views.py:186 +#: src/authentic2/views.py msgid "Email Change" msgstr "Changement d’adresse de courriel" -#: src/authentic2/views.py:211 +#: src/authentic2/views.py msgid "" "Your request for changing your email is received. An email of validation was " "sent to you. Please click on the link contained inside." @@ -5428,54 +5343,54 @@ msgstr "" "courriel de validation vous a été envoyé. Veuillez cliquer sur le lien " "contenu dans ce courriel." -#: src/authentic2/views.py:245 +#: src/authentic2/views.py msgid "This email is already used by another account." msgstr "Cette adresse de courriel est déjà utilisée par un autre compte." -#: src/authentic2/views.py:251 +#: src/authentic2/views.py #, python-brace-format msgid "your request for changing your email for {0} is successful" msgstr "Votre demande de changement d’adresse de courriel pour {0} est validée" -#: src/authentic2/views.py:263 +#: src/authentic2/views.py msgid "your request for changing your email is too old, try again" msgstr "" "Votre demande de changement d’adresse de courriel est trop ancienne, " "veuillez réessayer" -#: src/authentic2/views.py:265 +#: src/authentic2/views.py msgid "your request for changing your email is invalid, try again" msgstr "" "Votre demande de changement d’adresse de courriel est invalide, veuillez " "réessayer" -#: src/authentic2/views.py:268 +#: src/authentic2/views.py msgid "your request for changing your email was not on this site, try again" msgstr "" "Votre demande de changement d’adresse de courriel vient d’un autre site que " "celui-ci." -#: src/authentic2/views.py:272 +#: src/authentic2/views.py msgid "your request for changing your email is for an unknown user, try again" msgstr "" "Votre demande de changement d’adresse de courriel concerne un utilisateur " "inconnu." -#: src/authentic2/views.py:604 +#: src/authentic2/views.py msgid "Logging out from all your services" msgstr "Déconnexion de tous les services" -#: src/authentic2/views.py:676 +#: src/authentic2/views.py msgid "The page is out of date, it was reloaded for you" msgstr "" "Cette page est périmée car vous vous êtes connecté entretemps; nous l’avons " "rechargée pour vous." -#: src/authentic2/views.py:684 src/authentic2/views.py:796 +#: src/authentic2/views.py msgid "Password Reset" msgstr "Mot de passe oublié" -#: src/authentic2/views.py:729 src/authentic2/views.py:914 +#: src/authentic2/views.py #, python-format msgid "" "An email has already been sent to %s. Click \"Validate\" again if you really " @@ -5484,7 +5399,7 @@ msgstr "" "Un courriel a déjà été envoyé à %s. Cliquez sur « Valider » si vous voulez " "vraiment qu’il soit réenvoyé." -#: src/authentic2/views.py:748 src/authentic2/views.py:932 +#: src/authentic2/views.py msgid "" "Multiple emails have already been sent to this address. Further attempts are " "blocked, please check your spam folder or try again later." @@ -5493,7 +5408,7 @@ msgstr "" "envois sont bloqués, vous devriez vérifier votre dossier d’indésirables " "(spams, pourriels) ou réessayer plus tard." -#: src/authentic2/views.py:764 +#: src/authentic2/views.py msgid "" "Multiple password reset attempts have already been made from this IP " "address. No further email will be sent, please check your spam folder or try " @@ -5503,30 +5418,30 @@ msgstr "" "adresse IP. Les nouveaux de courriels sont bloqués, vous devriez vérifier " "votre dossier d’indésirables (spams, pourriels) ou réessayer plus tard." -#: src/authentic2/views.py:809 +#: src/authentic2/views.py msgid "Password reset token is unknown or expired" msgstr "Le lien de récupération du compte est inconnu ou expiré" -#: src/authentic2/views.py:812 +#: src/authentic2/views.py msgid "Password reset token is invalid" msgstr "Le lien de récupération du compte est invalide" -#: src/authentic2/views.py:820 +#: src/authentic2/views.py msgid "User not found" msgstr "Utilisateur introuvable" -#: src/authentic2/views.py:832 +#: src/authentic2/views.py msgid "" "It's not possible to reset your password. Please contact an administrator." msgstr "" "Vous ne pouvez pas utiliser la procédure de récupération de compte. Veuillez " "contacter votre administrateur." -#: src/authentic2/views.py:840 +#: src/authentic2/views.py msgid "Enter new password" msgstr "Entrez un nouveau mot de passe" -#: src/authentic2/views.py:947 +#: src/authentic2/views.py msgid "" "Multiple registration attempts have already been made from this IP address. " "No further email will be sent, please check your spam folder or try again " @@ -5537,63 +5452,63 @@ msgstr "" "vérifier votre dossier d’indésirables (spams, pourriels) ou réessayer plus " "tard." -#: src/authentic2/views.py:1020 +#: src/authentic2/views.py msgid "Your activation key is unknown or expired" msgstr "Votre clé d’activation est inconnue ou a expiré" -#: src/authentic2/views.py:1023 +#: src/authentic2/views.py msgid "Activation failed" msgstr "Échec à l’activation du compte" -#: src/authentic2/views.py:1284 +#: src/authentic2/views.py msgid "Request account deletion" msgstr "Demande de suppression de compte" -#: src/authentic2/views.py:1295 +#: src/authentic2/views.py msgid "" "An account deletion validation email has been sent to your email address." msgstr "" "Un message pour valider la suppression du compte a été envoyé à votre " "adresse électronique." -#: src/authentic2/views.py:1306 +#: src/authentic2/views.py msgid "Confirm account deletion" msgstr "Confirmation de la suppression du compte" -#: src/authentic2/views.py:1318 +#: src/authentic2/views.py msgid "This account is inactive, it cannot be deleted." msgstr "Ce compte est désactivé, il ne peut plus être supprimé." -#: src/authentic2/views.py:1321 +#: src/authentic2/views.py msgid "The account deletion request is too old, try again" msgstr "La demande de suppression de compte est expirée." -#: src/authentic2/views.py:1323 +#: src/authentic2/views.py msgid "The account deletion request is invalid, try again" msgstr "La demande de suppression de compte n’est pas valide." -#: src/authentic2/views.py:1325 +#: src/authentic2/views.py msgid "The account deletion request was not on this site, try again" msgstr "" "Votre demande de suppression de compte vient d’un autre site que celui-ci." -#: src/authentic2/views.py:1329 +#: src/authentic2/views.py msgid "This account has previously been deleted." msgstr "Ce compte a déjà été supprimé." -#: src/authentic2/views.py:1343 +#: src/authentic2/views.py msgid "Deletion performed." msgstr "Suppression effectuée." -#: src/authentic2/views.py:1371 +#: src/authentic2/views.py msgid "Password Change" msgstr "Changement de mot de passe" -#: src/authentic2/views.py:1382 +#: src/authentic2/views.py msgid "Password change is forbidden" msgstr "Changement de mot de passe interdit" -#: src/authentic2/views.py:1432 +#: src/authentic2/views.py msgid "Consent Management" msgstr "Gestion des autorisations" @@ -5606,7 +5521,6 @@ msgstr "Gestion des autorisations" #~ msgid "Download" #~ msgstr "Télécharger" -#, python-format #~ msgid "" #~ "\n" #~ " If your email address exists in our database, an email has been sent " diff --git a/src/authentic2_auth_fc/locale/fr/LC_MESSAGES/django.po b/src/authentic2_auth_fc/locale/fr/LC_MESSAGES/django.po index d7f2abdf..ac1886ba 100644 --- a/src/authentic2_auth_fc/locale/fr/LC_MESSAGES/django.po +++ b/src/authentic2_auth_fc/locale/fr/LC_MESSAGES/django.po @@ -18,7 +18,7 @@ msgid "" msgstr "" "Project-Id-Version: authentic2-auth-fc\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-07-23 16:53+0200\n" +"POT-Creation-Date: 2021-07-27 10:13+0200\n" "PO-Revision-Date: 2021-06-24 09:40+0200\n" "Last-Translator: Benjamin Dauvergne \n" "Language-Team: french \n" @@ -28,45 +28,45 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: src/authentic2_auth_fc/authenticators.py:37 +#: src/authentic2_auth_fc/authenticators.py msgid "FranceConnect" msgstr "FranceConnect" -#: src/authentic2_auth_fc/models.py:84 +#: src/authentic2_auth_fc/models.py msgid "created" msgstr "créé" -#: src/authentic2_auth_fc/models.py:85 +#: src/authentic2_auth_fc/models.py msgid "modified" msgstr "modifié" -#: src/authentic2_auth_fc/models.py:88 +#: src/authentic2_auth_fc/models.py msgid "user" msgstr "utilisateur" -#: src/authentic2_auth_fc/models.py:92 +#: src/authentic2_auth_fc/models.py msgid "sub" msgstr "sub" -#: src/authentic2_auth_fc/models.py:93 +#: src/authentic2_auth_fc/models.py msgid "order" msgstr "ordre" -#: src/authentic2_auth_fc/models.py:94 src/authentic2_auth_fc/models.py:95 +#: src/authentic2_auth_fc/models.py msgid "access token" msgstr "jeton d’accès" -#: src/authentic2_auth_fc/templates/authentic2_auth_fc/explanation.html:5 -#: src/authentic2_auth_fc/templates/authentic2_auth_fc/linking.html:30 +#: src/authentic2_auth_fc/templates/authentic2_auth_fc/explanation.html +#: src/authentic2_auth_fc/templates/authentic2_auth_fc/linking.html msgid "opens in new window" msgstr "s’ouvre dans une nouvelle fenêtre" -#: src/authentic2_auth_fc/templates/authentic2_auth_fc/explanation.html:5 -#: src/authentic2_auth_fc/templates/authentic2_auth_fc/linking.html:30 +#: src/authentic2_auth_fc/templates/authentic2_auth_fc/explanation.html +#: src/authentic2_auth_fc/templates/authentic2_auth_fc/linking.html msgid "What is FranceConnect?" msgstr "Qu’est-ce que FranceConnect ?" -#: src/authentic2_auth_fc/templates/authentic2_auth_fc/explanation.html:7 +#: src/authentic2_auth_fc/templates/authentic2_auth_fc/explanation.html msgid "" "\n" " FranceConnect is the solution proposed by the French state to " @@ -79,28 +79,27 @@ msgstr "" "connexion aux services en ligne. Elle peut être utilisée pour vous connecter " "à votre compte usager. " -#: src/authentic2_auth_fc/templates/authentic2_auth_fc/linking.html:11 +#: src/authentic2_auth_fc/templates/authentic2_auth_fc/linking.html msgid "Linked FranceConnect accounts" msgstr "Comptes FranceConnect associés" -#: src/authentic2_auth_fc/templates/authentic2_auth_fc/linking.html:14 +#: src/authentic2_auth_fc/templates/authentic2_auth_fc/linking.html msgid "Delete link" msgstr "Supprimer la liaison" -#: src/authentic2_auth_fc/templates/authentic2_auth_fc/linking.html:20 -#: src/authentic2_auth_fc/templates/authentic2_auth_fc/linking.html:22 +#: src/authentic2_auth_fc/templates/authentic2_auth_fc/linking.html msgid "Link with a FranceConnect account" msgstr "Se lier avec un compte FranceConnect" -#: src/authentic2_auth_fc/templates/authentic2_auth_fc/login.html:10 +#: src/authentic2_auth_fc/templates/authentic2_auth_fc/login.html msgid "Log in with FranceConnect" msgstr "Connectez-vous avec FranceConnect" -#: src/authentic2_auth_fc/templates/authentic2_auth_fc/manager_user_sidebar.html:4 +#: src/authentic2_auth_fc/templates/authentic2_auth_fc/manager_user_sidebar.html msgid "Link with FranceConnect created on" msgstr "Liaison à un compte FranceConnect créée le" -#: src/authentic2_auth_fc/templates/authentic2_auth_fc/unlink.html:7 +#: src/authentic2_auth_fc/templates/authentic2_auth_fc/unlink.html msgid "" "\n" " You're about to delete the link between your user account and your " @@ -111,7 +110,7 @@ msgstr "" "Vous êtes sur le point de supprimer la liaison entre votre compte usager et " "votre compte FranceConnect." -#: src/authentic2_auth_fc/templates/authentic2_auth_fc/unlink.html:12 +#: src/authentic2_auth_fc/templates/authentic2_auth_fc/unlink.html msgid "" "\n" " Deleting this link won't delete those accounts. However, once all " @@ -130,7 +129,7 @@ msgstr "" "utilisant FranceConnect. Il sera toujours possible de lier à nouveau ces " "comptes en utilisant le bouton FranceConnect sur la page de connexion." -#: src/authentic2_auth_fc/templates/authentic2_auth_fc/unlink.html:21 +#: src/authentic2_auth_fc/templates/authentic2_auth_fc/unlink.html msgid "" "\n" " Your user account has no password and removing this link may make " @@ -143,37 +142,37 @@ msgstr "" "rendre votre compte usager inaccessible. Pour éviter cela, merci de fournir " "un mot de passe." -#: src/authentic2_auth_fc/templates/authentic2_auth_fc/unlink.html:30 +#: src/authentic2_auth_fc/templates/authentic2_auth_fc/unlink.html msgid "Unlink" msgstr "Délier" -#: src/authentic2_auth_fc/templates/authentic2_auth_fc/unlink.html:31 +#: src/authentic2_auth_fc/templates/authentic2_auth_fc/unlink.html msgid "Cancel" msgstr "Annuler" -#: src/authentic2_auth_fc/utils.py:105 src/authentic2_auth_fc/utils.py:116 +#: src/authentic2_auth_fc/utils.py msgid "Unknown INSEE code" msgstr "Code INSEE inconnu" -#: src/authentic2_auth_fc/views.py:143 src/authentic2_auth_fc/views.py:283 +#: src/authentic2_auth_fc/views.py #, python-format msgid "Unable to connect to FranceConnect: \"%s\"." msgstr "Impossible de se connecter à FranceConnect : « %s »." -#: src/authentic2_auth_fc/views.py:290 +#: src/authentic2_auth_fc/views.py msgid "Unable to connect to FranceConnect." msgstr "Impossible de se connecter à FranceConnect." -#: src/authentic2_auth_fc/views.py:321 +#: src/authentic2_auth_fc/views.py msgid "Your FranceConnect account {} has been linked." msgstr "Votre compte FranceConnect {} a été associé." -#: src/authentic2_auth_fc/views.py:361 +#: src/authentic2_auth_fc/views.py #, python-format msgid "The following fields are mandatory for account creation: %s" msgstr "Ces champs sont obligatoires pour créer un compte : %s" -#: src/authentic2_auth_fc/views.py:381 +#: src/authentic2_auth_fc/views.py #, python-format msgid "" "Your FranceConnect email address '%s' is already used by another account, so " @@ -187,7 +186,7 @@ msgstr "" "autre adresse de courriel, puis demander à lier ce compte avec FranceConnect " "depuis la page de votre compte." -#: src/authentic2_auth_fc/views.py:394 +#: src/authentic2_auth_fc/views.py #, python-format msgid "" "Your FranceConnect email address \"%(email)s\" is already used by the " @@ -201,15 +200,15 @@ msgstr "" "autre adresse de courriel, puis demander à lier ce compte avec FranceConnect " "depuis la page de votre compte." -#: src/authentic2_auth_fc/views.py:446 +#: src/authentic2_auth_fc/views.py msgid "Your account is already linked to a FranceConnect account" msgstr "Votre compte est déjà associé à un compte FranceConnect." -#: src/authentic2_auth_fc/views.py:451 +#: src/authentic2_auth_fc/views.py msgid "The FranceConnect account {} is already linked with another account." msgstr "Le compte FranceConnect {} est déjà associé à un autre compte." -#: src/authentic2_auth_fc/views.py:538 +#: src/authentic2_auth_fc/views.py msgid "The link with the FranceConnect account has been deleted." msgstr "La liaison avec le compte FranceConnect a été supprimée." diff --git a/src/authentic2_auth_oidc/locale/fr/LC_MESSAGES/django.po b/src/authentic2_auth_oidc/locale/fr/LC_MESSAGES/django.po index 12b65dd6..00a28c5e 100644 --- a/src/authentic2_auth_oidc/locale/fr/LC_MESSAGES/django.po +++ b/src/authentic2_auth_oidc/locale/fr/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: authentic2-auth-fc 1.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-07-23 16:53+0200\n" +"POT-Creation-Date: 2021-07-27 10:13+0200\n" "PO-Revision-Date: 2021-07-16 08:39+0200\n" "Last-Translator: Benjamin Dauvergne \n" "Language-Team: french \n" @@ -17,227 +17,222 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: src/authentic2_auth_oidc/admin.py:68 +#: src/authentic2_auth_oidc/admin.py msgid "Organizational unit slug (ou__slug)" msgstr "Identifiant de collectivité" -#: src/authentic2_auth_oidc/authenticators.py:35 +#: src/authentic2_auth_oidc/authenticators.py msgid "OpenIDConnect" msgstr "OpenID Connect" -#: src/authentic2_auth_oidc/models.py:37 +#: src/authentic2_auth_oidc/models.py #, python-format msgid "Invalid JWKSet: %s" msgstr "Ensemble de clé JWK invalide : %s" -#: src/authentic2_auth_oidc/models.py:47 +#: src/authentic2_auth_oidc/models.py msgid "create" msgstr "créer" -#: src/authentic2_auth_oidc/models.py:48 +#: src/authentic2_auth_oidc/models.py msgid "use sub to find existing user through UUID" msgstr "" "utiliser l’identifiant technique (sub) pour trouver un utilisateur grâce à " "son UUID" -#: src/authentic2_auth_oidc/models.py:49 +#: src/authentic2_auth_oidc/models.py msgid "use sub to find existing user through username" msgstr "" "utiliser l’identifiant technique (sub) pour trouver un utilisateur grâce à " "son identifiant" -#: src/authentic2_auth_oidc/models.py:50 src/authentic2_auth_oidc/models.py:57 +#: src/authentic2_auth_oidc/models.py msgid "none" msgstr "Aucun(e)" -#: src/authentic2_auth_oidc/models.py:58 +#: src/authentic2_auth_oidc/models.py msgid "RSA" msgstr "RSA" -#: src/authentic2_auth_oidc/models.py:59 +#: src/authentic2_auth_oidc/models.py msgid "HMAC" msgstr "HMAC" -#: src/authentic2_auth_oidc/models.py:60 +#: src/authentic2_auth_oidc/models.py msgid "EC" msgstr "EC" -#: src/authentic2_auth_oidc/models.py:63 +#: src/authentic2_auth_oidc/models.py msgid "name" msgstr "nom" -#: src/authentic2_auth_oidc/models.py:64 +#: src/authentic2_auth_oidc/models.py msgid "slug" msgstr "identifiant court (slug)" -#: src/authentic2_auth_oidc/models.py:65 +#: src/authentic2_auth_oidc/models.py msgid "issuer" msgstr "émetteur" -#: src/authentic2_auth_oidc/models.py:66 +#: src/authentic2_auth_oidc/models.py msgid "client id" msgstr "identifiant du client (client id)" -#: src/authentic2_auth_oidc/models.py:67 +#: src/authentic2_auth_oidc/models.py msgid "client secret" msgstr "secret du client (client secret)" -#: src/authentic2_auth_oidc/models.py:69 +#: src/authentic2_auth_oidc/models.py msgid "authorization endpoint" msgstr "point d’accès d’autorisation (authorization endpoint)" -#: src/authentic2_auth_oidc/models.py:70 +#: src/authentic2_auth_oidc/models.py msgid "token endpoint" msgstr "point d’accès de jeton (token endpoint)" -#: src/authentic2_auth_oidc/models.py:71 +#: src/authentic2_auth_oidc/models.py msgid "userinfo endpoint" msgstr "point d’accès d’information utilisateur (userinfo endpoint)" -#: src/authentic2_auth_oidc/models.py:73 +#: src/authentic2_auth_oidc/models.py msgid "end session endpoint" msgstr "point d’accès de terminaison de session (end session endpont)" -#: src/authentic2_auth_oidc/models.py:76 +#: src/authentic2_auth_oidc/models.py msgid "token revocation endpoint" msgstr "point d’accès de révocation de jeton (token revocation endpoint)" -#: src/authentic2_auth_oidc/models.py:78 +#: src/authentic2_auth_oidc/models.py msgid "scopes" msgstr "portées (scopes)" -#: src/authentic2_auth_oidc/models.py:80 +#: src/authentic2_auth_oidc/models.py msgid "JSON WebKey set" msgstr "ensemble de WebKey JSON" -#: src/authentic2_auth_oidc/models.py:83 +#: src/authentic2_auth_oidc/models.py msgid "IDToken signature algorithm" msgstr "algorithme de signature IDToken" -#: src/authentic2_auth_oidc/models.py:86 +#: src/authentic2_auth_oidc/models.py msgid "Claims parameter supported" msgstr "Paramètre de claim pris en charge" -#: src/authentic2_auth_oidc/models.py:90 +#: src/authentic2_auth_oidc/models.py msgid "strategy" msgstr "stratégie" -#: src/authentic2_auth_oidc/models.py:92 +#: src/authentic2_auth_oidc/models.py msgid "organizational unit" msgstr "unité d’organisation" -#: src/authentic2_auth_oidc/models.py:97 +#: src/authentic2_auth_oidc/models.py msgid "max authentication age" msgstr "délai depuis la dernière authentification" -#: src/authentic2_auth_oidc/models.py:101 +#: src/authentic2_auth_oidc/models.py msgid "show on login page" msgstr "afficher sur la page de connexion" -#: src/authentic2_auth_oidc/models.py:104 -#: src/authentic2_auth_oidc/models.py:156 -#: src/authentic2_auth_oidc/models.py:185 +#: src/authentic2_auth_oidc/models.py msgid "created" msgstr "date de création" -#: src/authentic2_auth_oidc/models.py:105 -#: src/authentic2_auth_oidc/models.py:157 -#: src/authentic2_auth_oidc/models.py:186 +#: src/authentic2_auth_oidc/models.py msgid "modified" msgstr "date de dernière modification" -#: src/authentic2_auth_oidc/models.py:141 +#: src/authentic2_auth_oidc/models.py msgid "not verified" msgstr "déclaratif" -#: src/authentic2_auth_oidc/models.py:142 +#: src/authentic2_auth_oidc/models.py msgid "verified claim" msgstr "accompagné d’un claim de certification" -#: src/authentic2_auth_oidc/models.py:143 +#: src/authentic2_auth_oidc/models.py msgid "always verified" msgstr "certifié" -#: src/authentic2_auth_oidc/models.py:147 -#: src/authentic2_auth_oidc/models.py:188 +#: src/authentic2_auth_oidc/models.py msgid "provider" msgstr "fournisseur" -#: src/authentic2_auth_oidc/models.py:149 +#: src/authentic2_auth_oidc/models.py msgid "claim" msgstr "claim" -#: src/authentic2_auth_oidc/models.py:150 +#: src/authentic2_auth_oidc/models.py msgid "attribute" msgstr "attribut" -#: src/authentic2_auth_oidc/models.py:152 +#: src/authentic2_auth_oidc/models.py msgid "verified" msgstr "vérifié" -#: src/authentic2_auth_oidc/models.py:154 +#: src/authentic2_auth_oidc/models.py msgid "required" msgstr "requis" -#: src/authentic2_auth_oidc/models.py:155 +#: src/authentic2_auth_oidc/models.py msgid "idtoken claim" msgstr "claim de l’idtoken" -#: src/authentic2_auth_oidc/models.py:192 +#: src/authentic2_auth_oidc/models.py msgid "user" msgstr "utilisateur" -#: src/authentic2_auth_oidc/models.py:196 +#: src/authentic2_auth_oidc/models.py msgid "sub" msgstr "sub" -#: src/authentic2_auth_oidc/templates/authentic2_auth_oidc/manager_user_sidebar.html:4 +#: src/authentic2_auth_oidc/templates/authentic2_auth_oidc/manager_user_sidebar.html #, python-format msgid "Link with OIDC provider %(name)s created on %(created)s (sub %(sub)s)." msgstr "" "Liaison avec le fournisseur d'identité OIDC %(name)s créée le %(created)s " "(sub %(sub)s)." -#: src/authentic2_auth_oidc/utils.py:83 +#: src/authentic2_auth_oidc/utils.py #, python-format msgid "Key ID %r not in key set" msgstr "L’identifiant de clé (Key ID) %r n’est pas dans le trousseau" -#: src/authentic2_auth_oidc/utils.py:89 +#: src/authentic2_auth_oidc/utils.py #, python-format msgid "Error during token parsing: %s" msgstr "Erreur à l’analyse du jeton : %s" -#: src/authentic2_auth_oidc/utils.py:123 +#: src/authentic2_auth_oidc/utils.py msgid "Encoded ID Token must be either binary or string data" msgstr "" "L’ID Token encodé doit être une donnée binaire ou une chaîne de caractères" -#: src/authentic2_auth_oidc/utils.py:132 +#: src/authentic2_auth_oidc/utils.py msgid "invalid id_token" msgstr "id_token invalide" -#: src/authentic2_auth_oidc/utils.py:136 +#: src/authentic2_auth_oidc/utils.py #, python-format msgid "missing field: %s" msgstr "champ manquant : %s" -#: src/authentic2_auth_oidc/utils.py:140 src/authentic2_auth_oidc/utils.py:142 +#: src/authentic2_auth_oidc/utils.py #, python-format msgid "invalid amr value: %s" msgstr "valeur amr invalide : %s" -#: src/authentic2_auth_oidc/utils.py:146 +#: src/authentic2_auth_oidc/utils.py #, python-format msgid "invalid %(key)s value: %(value)s" msgstr "valeur %(key)s invalide : %(value)s" -#: src/authentic2_auth_oidc/utils.py:157 +#: src/authentic2_auth_oidc/utils.py #, python-format msgid "invalid auth_time value: %s" msgstr "valeur auth_time invalide : %s" -#: src/authentic2_auth_oidc/utils.py:210 +#: src/authentic2_auth_oidc/utils.py #, python-format msgid "" "Unable to reach the OpenID Connect configuration for %(issuer)s: %(error)s" @@ -245,33 +240,33 @@ msgstr "" "Impossible d’atteindre la configuration OpenID Connect pour %(issuer)s : " "%(error)s" -#: src/authentic2_auth_oidc/utils.py:220 +#: src/authentic2_auth_oidc/utils.py msgid "MUST be a dictionnary" msgstr "DOIT être un dictionnaire" -#: src/authentic2_auth_oidc/utils.py:223 +#: src/authentic2_auth_oidc/utils.py #, python-format msgid "missing keys %s" msgstr "clés manquantes %s" -#: src/authentic2_auth_oidc/utils.py:227 +#: src/authentic2_auth_oidc/utils.py #, python-format msgid "%(key)s is not an https:// URL; %(value)s" msgstr "%(key)s n’est pas une URL https://; %(value)s" -#: src/authentic2_auth_oidc/utils.py:234 +#: src/authentic2_auth_oidc/utils.py #, python-format msgid "Invalid OpenID Connect configuration for %(issuer)s: %(error)s" msgstr "Configuration OpenID Connect invalide pour %(issuer)s : %(error)s" -#: src/authentic2_auth_oidc/utils.py:236 +#: src/authentic2_auth_oidc/utils.py msgid "" "authorization code flow is unsupported: code response type is unsupported" msgstr "" "Le flot « authorization code » n’est pas pris en charge, aucune des « code " "response type » n’est pris en charge." -#: src/authentic2_auth_oidc/utils.py:242 +#: src/authentic2_auth_oidc/utils.py #, python-format msgid "" "Unable to reach the OpenID Connect JWKSet for %(issuer)s: %(url)s %(error)s" @@ -279,17 +274,17 @@ msgstr "" "Impossible d’atteindre l’ensemble de clés JWL pour %(issuer)s : %(url)s " "%(error)s" -#: src/authentic2_auth_oidc/utils.py:252 +#: src/authentic2_auth_oidc/utils.py #, python-format msgid "Invalid JSKSet document: %s" msgstr "Ensemble de clés JWK invalide : %s" -#: src/authentic2_auth_oidc/utils.py:265 +#: src/authentic2_auth_oidc/utils.py #, python-format msgid "no common algorithm found for signing idtokens: %s" msgstr "aucun algorithme commun trouvé pour signer les idtokens : %s" -#: src/authentic2_auth_oidc/utils.py:292 +#: src/authentic2_auth_oidc/utils.py msgid "" "invalid issuer URL, it must use the https:// scheme and not have a query or " "fragment" @@ -297,17 +292,17 @@ msgstr "" "URL d’issuer invalide, elle doit utiliser le protocole https:// et n’avoir " "ni paramètre ni fragment" -#: src/authentic2_auth_oidc/views.py:157 +#: src/authentic2_auth_oidc/views.py #, python-format msgid "Unknown OpenID connect issuer: \"%s\"" msgstr "Fournisseur OpenID Connect inconnu : \"%s\"" -#: src/authentic2_auth_oidc/views.py:173 +#: src/authentic2_auth_oidc/views.py #, python-format msgid "Missing code, report %s to an administrator" msgstr "Code absent, signalez l’erreur %s à un administrateur." -#: src/authentic2_auth_oidc/views.py:223 +#: src/authentic2_auth_oidc/views.py #, python-format msgid "" "Authentication on %(name)s failed with error \"%(error)s\", report " @@ -316,26 +311,25 @@ msgstr "" "L'authentification sur %(name)s a échoué avec l'erreur « %(error)s », vous " "pouvez signaler le numéro d’erreur %(request_id)s à un administrateur." -#: src/authentic2_auth_oidc/views.py:234 src/authentic2_auth_oidc/views.py:252 -#: src/authentic2_auth_oidc/views.py:268 src/authentic2_auth_oidc/views.py:287 +#: src/authentic2_auth_oidc/views.py #, python-format msgid "Provider %(name)s is down, report %(request_id)s to an administrator. " msgstr "" "Le fournisseur OpenID Connect %(name)s est défaillant, signalez l’erreur " "%(request_id)s à un administrateur." -#: src/authentic2_auth_oidc/views.py:310 +#: src/authentic2_auth_oidc/views.py msgid "No user found" msgstr "Aucun utilisateur trouvé" -#: src/authentic2_auth_oidc/views.py:327 +#: src/authentic2_auth_oidc/views.py #, python-format msgid "Login with %(name)s failed, report %(request_id)s to an administrator." msgstr "" "La connexion depuis %(name)s a échoué, vous pouvez signaler le numéro " "d’erreur %(request_id)s à un administrateur." -#: src/authentic2_auth_oidc/views.py:336 +#: src/authentic2_auth_oidc/views.py #, python-format msgid "Login with OpenIDConnect failed, report %s to an administrator" msgstr "" diff --git a/src/authentic2_auth_saml/locale/fr/LC_MESSAGES/django.po b/src/authentic2_auth_saml/locale/fr/LC_MESSAGES/django.po index cfb1c35c..fd66bb9f 100644 --- a/src/authentic2_auth_saml/locale/fr/LC_MESSAGES/django.po +++ b/src/authentic2_auth_saml/locale/fr/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: authentic2-auth-fc 1.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-07-23 16:53+0200\n" +"POT-Creation-Date: 2021-07-27 10:13+0200\n" "PO-Revision-Date: 2021-03-04 08:59+0100\n" "Last-Translator: Benjamin Dauvergne \n" "Language-Team: french \n" @@ -17,25 +17,25 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: src/authentic2_auth_saml/adapters.py:79 +#: src/authentic2_auth_saml/adapters.py #, python-format msgid "user creation failed on a mandatory mapping action: %s" msgstr "" "la création de l’utilisateur a échoué sur un attribut obligatoire absent : %s" -#: src/authentic2_auth_saml/authenticators.py:36 +#: src/authentic2_auth_saml/authenticators.py msgid "SAML" msgstr "SAML" -#: src/authentic2_auth_saml/templates/authentic2_auth_saml/login.html:8 +#: src/authentic2_auth_saml/templates/authentic2_auth_saml/login.html msgid "Login" msgstr "Connexion" -#: src/authentic2_auth_saml/templates/authentic2_auth_saml/login.html:10 +#: src/authentic2_auth_saml/templates/authentic2_auth_saml/login.html msgid "Cancel" msgstr "Annuler" -#: src/authentic2_auth_saml/templates/authentic2_auth_saml/manager_user_sidebar.html:5 +#: src/authentic2_auth_saml/templates/authentic2_auth_saml/manager_user_sidebar.html #, python-format msgid "" "Link with SAML provider %(provider)s created on %(created)s (NameID " diff --git a/src/authentic2_idp_cas/locale/fr/LC_MESSAGES/django.po b/src/authentic2_idp_cas/locale/fr/LC_MESSAGES/django.po index 4bcc84d7..b9d56ea6 100644 --- a/src/authentic2_idp_cas/locale/fr/LC_MESSAGES/django.po +++ b/src/authentic2_idp_cas/locale/fr/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: authentic2_idp_cas 1.0 \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-07-23 16:53+0200\n" +"POT-Creation-Date: 2021-07-27 10:13+0200\n" "PO-Revision-Date: 2020-09-21 15:57+0200\n" "Last-Translator: Benjamin Dauvergne \n" "Language: fr\n" @@ -17,99 +17,98 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: src/authentic2_idp_cas/admin.py:39 src/authentic2_idp_cas/admin.py:56 +#: src/authentic2_idp_cas/admin.py msgid "None" msgstr "Aucun" -#: src/authentic2_idp_cas/admin.py:101 +#: src/authentic2_idp_cas/admin.py msgid "Logout" msgstr "Déconnexion" -#: src/authentic2_idp_cas/models.py:34 +#: src/authentic2_idp_cas/models.py msgid "urls" msgstr "URLs" -#: src/authentic2_idp_cas/models.py:35 src/authentic2_idp_cas/models.py:85 +#: src/authentic2_idp_cas/models.py msgid "attribute name" msgstr "nom de l’attribut" -#: src/authentic2_idp_cas/models.py:39 +#: src/authentic2_idp_cas/models.py msgid "proxy" msgstr "mandataire" -#: src/authentic2_idp_cas/models.py:40 +#: src/authentic2_idp_cas/models.py msgid "services who can request proxy tickets for this service" msgstr "" "autres applications qui peuvent demander un ticket mandataire vers cette " "application" -#: src/authentic2_idp_cas/models.py:53 +#: src/authentic2_idp_cas/models.py #, python-format msgid "%s is an invalid URL" msgstr "%s n’est pas une URL valide" -#: src/authentic2_idp_cas/models.py:78 src/authentic2_idp_cas/models.py:83 -#: src/authentic2_idp_cas/models.py:113 +#: src/authentic2_idp_cas/models.py msgid "service" msgstr "application" -#: src/authentic2_idp_cas/models.py:79 +#: src/authentic2_idp_cas/models.py msgid "services" msgstr "applications" -#: src/authentic2_idp_cas/models.py:84 +#: src/authentic2_idp_cas/models.py msgid "slug" msgstr "identifiant court" -#: src/authentic2_idp_cas/models.py:86 +#: src/authentic2_idp_cas/models.py msgid "enabled" msgstr "activé" -#: src/authentic2_idp_cas/models.py:92 +#: src/authentic2_idp_cas/models.py msgid "CAS attribute" msgstr "attribut pour les tickets" -#: src/authentic2_idp_cas/models.py:93 +#: src/authentic2_idp_cas/models.py msgid "CAS attributes" msgstr "attributs pour les tickets" -#: src/authentic2_idp_cas/models.py:110 +#: src/authentic2_idp_cas/models.py msgid "ticket id" msgstr "identifiant du ticket" -#: src/authentic2_idp_cas/models.py:111 +#: src/authentic2_idp_cas/models.py msgid "fresh authentication" msgstr "nécessite une ré-authentification" -#: src/authentic2_idp_cas/models.py:112 +#: src/authentic2_idp_cas/models.py msgid "valid" msgstr "valide" -#: src/authentic2_idp_cas/models.py:114 +#: src/authentic2_idp_cas/models.py msgid "service URL" msgstr "URL de l’application" -#: src/authentic2_idp_cas/models.py:120 +#: src/authentic2_idp_cas/models.py msgid "user" msgstr "utilisateur" -#: src/authentic2_idp_cas/models.py:123 +#: src/authentic2_idp_cas/models.py msgid "creation" msgstr "date de création" -#: src/authentic2_idp_cas/models.py:124 +#: src/authentic2_idp_cas/models.py msgid "expire" msgstr "date d’expiration" -#: src/authentic2_idp_cas/models.py:126 +#: src/authentic2_idp_cas/models.py msgid "django session key" msgstr "clé de session django" -#: src/authentic2_idp_cas/models.py:128 +#: src/authentic2_idp_cas/models.py msgid "proxies" msgstr "mandataires" -#: src/authentic2_idp_cas/templates/authentic2_idp_cas/logout_fragment.html:2 +#: src/authentic2_idp_cas/templates/authentic2_idp_cas/logout_fragment.html #, python-format msgid "Sending logout to %(name)s..." msgstr "Déconnexion de %(name)s…" diff --git a/src/authentic2_idp_oidc/locale/fr/LC_MESSAGES/django.po b/src/authentic2_idp_oidc/locale/fr/LC_MESSAGES/django.po index 7f2e855c..2adc21fd 100644 --- a/src/authentic2_idp_oidc/locale/fr/LC_MESSAGES/django.po +++ b/src/authentic2_idp_oidc/locale/fr/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Authentic\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-07-23 16:53+0200\n" +"POT-Creation-Date: 2021-07-27 10:13+0200\n" "PO-Revision-Date: 2021-07-16 08:41+0200\n" "Last-Translator: Benjamin Dauvergne \n" "Language-Team: None\n" @@ -17,133 +17,131 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: src/authentic2_idp_oidc/models.py:64 src/authentic2_idp_oidc/models.py:295 -#: src/authentic2_idp_oidc/models.py:334 +#: src/authentic2_idp_oidc/models.py msgid "uuid" msgstr "identifiant unique interne" -#: src/authentic2_idp_oidc/models.py:65 +#: src/authentic2_idp_oidc/models.py msgid "pairwise unreversible" msgstr "pseudonyme irréversible" -#: src/authentic2_idp_oidc/models.py:66 +#: src/authentic2_idp_oidc/models.py msgid "pairwise reversible" msgstr "pseudonyme réversible" -#: src/authentic2_idp_oidc/models.py:67 +#: src/authentic2_idp_oidc/models.py msgid "email" msgstr "courriel" -#: src/authentic2_idp_oidc/models.py:74 +#: src/authentic2_idp_oidc/models.py msgid "HMAC" msgstr "HMAC" -#: src/authentic2_idp_oidc/models.py:75 +#: src/authentic2_idp_oidc/models.py msgid "RSA" msgstr "RSA" -#: src/authentic2_idp_oidc/models.py:76 +#: src/authentic2_idp_oidc/models.py msgid "EC" msgstr "EC" -#: src/authentic2_idp_oidc/models.py:82 +#: src/authentic2_idp_oidc/models.py msgid "authorization code" msgstr "code d’autorisation" -#: src/authentic2_idp_oidc/models.py:83 +#: src/authentic2_idp_oidc/models.py msgid "implicit/native" msgstr "implicite/natif" -#: src/authentic2_idp_oidc/models.py:84 +#: src/authentic2_idp_oidc/models.py msgid "resource owner password credentials" msgstr "mot de passe du propriétaire de ressource" -#: src/authentic2_idp_oidc/models.py:91 +#: src/authentic2_idp_oidc/models.py msgid "authorization by service" msgstr "autoriser par service" -#: src/authentic2_idp_oidc/models.py:92 +#: src/authentic2_idp_oidc/models.py msgid "authorization by ou" msgstr "autoriser par collectivité" -#: src/authentic2_idp_oidc/models.py:93 +#: src/authentic2_idp_oidc/models.py msgid "none" msgstr "aucun" -#: src/authentic2_idp_oidc/models.py:97 src/authentic2_idp_oidc/models.py:243 +#: src/authentic2_idp_oidc/models.py msgid "client id" msgstr "Identifiant du client (client id)" -#: src/authentic2_idp_oidc/models.py:99 +#: src/authentic2_idp_oidc/models.py msgid "client secret" msgstr "Secret du client (client secret)" -#: src/authentic2_idp_oidc/models.py:101 +#: src/authentic2_idp_oidc/models.py msgid "time during which the token is valid" msgstr "durée de validité du jeton" -#: src/authentic2_idp_oidc/models.py:104 +#: src/authentic2_idp_oidc/models.py msgid "time during which the access token is valid" msgstr "durée de validité du jeton d’accès" -#: src/authentic2_idp_oidc/models.py:109 +#: src/authentic2_idp_oidc/models.py msgid "authorization mode" msgstr "mode d’autorisation" -#: src/authentic2_idp_oidc/models.py:112 +#: src/authentic2_idp_oidc/models.py msgid "authorization flow" msgstr "processus d’autorisation" -#: src/authentic2_idp_oidc/models.py:114 +#: src/authentic2_idp_oidc/models.py msgid "redirect URIs" msgstr "URIs de redirection" -#: src/authentic2_idp_oidc/models.py:116 +#: src/authentic2_idp_oidc/models.py msgid "post logout redirect URIs" msgstr "URIs de redirection après déconnexion" -#: src/authentic2_idp_oidc/models.py:118 +#: src/authentic2_idp_oidc/models.py msgid "sector identifier URI" msgstr "URI d’identifiant de secteur" -#: src/authentic2_idp_oidc/models.py:120 +#: src/authentic2_idp_oidc/models.py msgid "identifier policy" msgstr "politique des identifiants" -#: src/authentic2_idp_oidc/models.py:123 +#: src/authentic2_idp_oidc/models.py msgid "resource owner credentials grant scope" msgstr "portée de cession par crédentiels du propriétaire de la ressource" -#: src/authentic2_idp_oidc/models.py:124 +#: src/authentic2_idp_oidc/models.py msgid "Permitted or default scopes (for credentials grant)" msgstr "Portées autorisées ou par défaut (pour la cession par crédentiels)" -#: src/authentic2_idp_oidc/models.py:129 +#: src/authentic2_idp_oidc/models.py msgid "IDToken signature algorithm" msgstr "algorithme de signature de l’IDToken" -#: src/authentic2_idp_oidc/models.py:131 +#: src/authentic2_idp_oidc/models.py msgid "has API access" msgstr "a accès à l’API" -#: src/authentic2_idp_oidc/models.py:132 +#: src/authentic2_idp_oidc/models.py msgid "frontchannel logout URI" msgstr "URI de déconnexion frontchannel" -#: src/authentic2_idp_oidc/models.py:134 +#: src/authentic2_idp_oidc/models.py msgid "frontchannel timeout" msgstr "temps d’expiration pour la déconnexion frontchannel" -#: src/authentic2_idp_oidc/models.py:142 src/authentic2_idp_oidc/models.py:249 -#: src/authentic2_idp_oidc/models.py:306 src/authentic2_idp_oidc/models.py:341 +#: src/authentic2_idp_oidc/models.py msgid "created" msgstr "créé" -#: src/authentic2_idp_oidc/models.py:143 +#: src/authentic2_idp_oidc/models.py msgid "modified" msgstr "modifié" -#: src/authentic2_idp_oidc/models.py:153 +#: src/authentic2_idp_oidc/models.py #, python-format msgid "" "You cannot use algorithm %(algorithm)s, setting A2_IDP_OIDC_JWKSET is not " @@ -152,7 +150,7 @@ msgstr "" "Impossible d’utiliser l’algorithme %(algorithm)s, le paramètre " "A2_IDP_OIDC_JWKSET n’est pas défini." -#: src/authentic2_idp_oidc/models.py:162 +#: src/authentic2_idp_oidc/models.py msgid "" "Redirect URIs must have the same domain or you must define a sector " "identifier URI if you want to use pairwiseidentifiers" @@ -160,139 +158,135 @@ msgstr "" "Les URIs de redirection doivent avoir le même domaine ou vous devez définir " "une URL d’identifiant de secteur si vous souhaitez utiliser des pseudonymes." -#: src/authentic2_idp_oidc/models.py:224 +#: src/authentic2_idp_oidc/models.py msgid "OU-based authorization requires that the client be within an OU." msgstr "" "Le mode d’autorisation par collectivité nécessite d’en sélectionner une." -#: src/authentic2_idp_oidc/models.py:241 +#: src/authentic2_idp_oidc/models.py msgid "client ct" msgstr "type de contenu du client" -#: src/authentic2_idp_oidc/models.py:245 src/authentic2_idp_oidc/models.py:297 -#: src/authentic2_idp_oidc/models.py:336 +#: src/authentic2_idp_oidc/models.py msgid "user" msgstr "utilisateur" -#: src/authentic2_idp_oidc/models.py:246 src/authentic2_idp_oidc/models.py:298 -#: src/authentic2_idp_oidc/models.py:337 +#: src/authentic2_idp_oidc/models.py msgid "scopes" msgstr "portées (scopes)" -#: src/authentic2_idp_oidc/models.py:250 src/authentic2_idp_oidc/models.py:307 -#: src/authentic2_idp_oidc/models.py:342 +#: src/authentic2_idp_oidc/models.py msgid "expire" msgstr "expiration" -#: src/authentic2_idp_oidc/models.py:296 src/authentic2_idp_oidc/models.py:335 -#: src/authentic2_idp_oidc/models.py:378 +#: src/authentic2_idp_oidc/models.py msgid "client" msgstr "client" -#: src/authentic2_idp_oidc/models.py:299 +#: src/authentic2_idp_oidc/models.py msgid "state" msgstr "statut" -#: src/authentic2_idp_oidc/models.py:300 +#: src/authentic2_idp_oidc/models.py msgid "nonce" msgstr "nonce" -#: src/authentic2_idp_oidc/models.py:301 +#: src/authentic2_idp_oidc/models.py msgid "redirect URI" msgstr "URI de redirection" -#: src/authentic2_idp_oidc/models.py:302 src/authentic2_idp_oidc/models.py:338 +#: src/authentic2_idp_oidc/models.py msgid "session key" msgstr "clé de session" -#: src/authentic2_idp_oidc/models.py:303 +#: src/authentic2_idp_oidc/models.py msgid "auth time" msgstr "date d’autorisation" -#: src/authentic2_idp_oidc/models.py:379 +#: src/authentic2_idp_oidc/models.py msgid "attribute name" msgstr "nom d’attribut" -#: src/authentic2_idp_oidc/models.py:380 +#: src/authentic2_idp_oidc/models.py msgid "attribute value" msgstr "valeur de l’attribut" -#: src/authentic2_idp_oidc/models.py:381 +#: src/authentic2_idp_oidc/models.py msgid "attribute scopes" msgstr "portées (scopes) liées à cet attribut" -#: src/authentic2_idp_oidc/templates/authentic2_idp_oidc/authorization.html:4 +#: src/authentic2_idp_oidc/templates/authentic2_idp_oidc/authorization.html msgid "Authentication access check" msgstr "Vérification d’autorisation d’accès" -#: src/authentic2_idp_oidc/templates/authentic2_idp_oidc/authorization.html:6 +#: src/authentic2_idp_oidc/templates/authentic2_idp_oidc/authorization.html #, python-format msgid "Do you want to be authenticated on service %(client_name)s ?" msgstr "Souhaitez-vous être authentifié sur le service %(client_name)s ?" -#: src/authentic2_idp_oidc/templates/authentic2_idp_oidc/authorization.html:8 +#: src/authentic2_idp_oidc/templates/authentic2_idp_oidc/authorization.html msgid "The following informations will be sent to the service:" msgstr "Les informations suivantes seront envoyées au service :" -#: src/authentic2_idp_oidc/templates/authentic2_idp_oidc/authorization.html:12 +#: src/authentic2_idp_oidc/templates/authentic2_idp_oidc/authorization.html msgid "Your first and last name, your username" msgstr "Vos prénom, nom et identifiants" -#: src/authentic2_idp_oidc/templates/authentic2_idp_oidc/authorization.html:14 +#: src/authentic2_idp_oidc/templates/authentic2_idp_oidc/authorization.html msgid "Your email:" msgstr "Votre adresse de courriel :" -#: src/authentic2_idp_oidc/templates/authentic2_idp_oidc/authorization.html:21 +#: src/authentic2_idp_oidc/templates/authentic2_idp_oidc/authorization.html msgid "Do not ask again" msgstr "Ne plus redemander" -#: src/authentic2_idp_oidc/templates/authentic2_idp_oidc/authorization.html:23 +#: src/authentic2_idp_oidc/templates/authentic2_idp_oidc/authorization.html msgid "Accept" msgstr "Accepter" -#: src/authentic2_idp_oidc/templates/authentic2_idp_oidc/authorization.html:24 +#: src/authentic2_idp_oidc/templates/authentic2_idp_oidc/authorization.html msgid "Refuse" msgstr "Refuser" -#: src/authentic2_idp_oidc/templates/authentic2_idp_oidc/logout_fragment.html:2 +#: src/authentic2_idp_oidc/templates/authentic2_idp_oidc/logout_fragment.html #, python-format msgid "Sending logout to %(name)s..." msgstr "Déconnexion de %(name)s…" -#: src/authentic2_idp_oidc/views.py:124 +#: src/authentic2_idp_oidc/views.py #, python-format msgid "OpenIDConnect Error \"%(error_code)s\": %(error_description)s" msgstr "Erreur OpenID Connect « %(error_code)s » : %(error_description)s" -#: src/authentic2_idp_oidc/views.py:147 +#: src/authentic2_idp_oidc/views.py #, python-format msgid "Missing parameter \"%s\"" msgstr "Paramètre « %s » manquant" -#: src/authentic2_idp_oidc/views.py:182 +#: src/authentic2_idp_oidc/views.py msgid "Wrong client identifier" msgstr "Mauvais identifiant de client" -#: src/authentic2_idp_oidc/views.py:186 +#: src/authentic2_idp_oidc/views.py msgid "Wrong client secret" msgstr "Mauvais secret de client" -#: src/authentic2_idp_oidc/views.py:247 +#: src/authentic2_idp_oidc/views.py #, python-format msgid "Unknown client identifier: \"%s\"" msgstr "Identifiant de client inconnu : « %s »" -#: src/authentic2_idp_oidc/views.py:251 +#: src/authentic2_idp_oidc/views.py #, python-format msgid "Redirect URI \"%s\" is unknown." msgstr "L’URI de redirection « %s » est inconnue." -#: src/authentic2_idp_oidc/views.py:253 +#: src/authentic2_idp_oidc/views.py #, python-format msgid " Known redirect URIs are: %s" msgstr "Les URIs de redirection connues sont : %s" -#: src/authentic2_idp_oidc/views.py:286 +#: src/authentic2_idp_oidc/views.py msgid "" "Client is configured for resource owner password credentials grant, " "authorize endpoint is not usable" @@ -300,20 +294,20 @@ msgstr "" "Le client est configuré pour le type de cession par crédentiels du " "propriétaire de la ressource, l’endpoint d’autorisation n’est pas utilisable." -#: src/authentic2_idp_oidc/views.py:292 +#: src/authentic2_idp_oidc/views.py msgid "Response type must be \"code\"" msgstr "Le type de réponse doit être « code »" -#: src/authentic2_idp_oidc/views.py:295 +#: src/authentic2_idp_oidc/views.py msgid "Response type must be \"id_token token\" or \"id_token\"" msgstr "Le type de réponse doit être « id_token token » ou « id_token »" -#: src/authentic2_idp_oidc/views.py:305 +#: src/authentic2_idp_oidc/views.py #, python-format msgid "Scope must contain \"openid\", received \"%s\"" msgstr "La portée (scope) doit contenir « openid », mais « %s » a été reçu" -#: src/authentic2_idp_oidc/views.py:308 +#: src/authentic2_idp_oidc/views.py #, python-format msgid "" "Scope may contain \"%(allowed_scopes)s\" scope(s), received \"%(scopes)s\"" @@ -321,47 +315,47 @@ msgstr "" "La portée (scope) peut contenir « %(allowed_scopes)s », mais « %(scopes)s » " "a été reçu" -#: src/authentic2_idp_oidc/views.py:323 +#: src/authentic2_idp_oidc/views.py msgid "Parameter \"max_age\" must be a positive integer" msgstr "Le paramètre « max_age » doit être un entier positif" -#: src/authentic2_idp_oidc/views.py:327 +#: src/authentic2_idp_oidc/views.py msgid "Authentication cancelled by user" msgstr "Authentification annulée par l’utilisateur" -#: src/authentic2_idp_oidc/views.py:331 +#: src/authentic2_idp_oidc/views.py msgid "Login is required but prompt parameter is \"none\"" msgstr "" "La connexion est requise mais le paramètre d’invite (prompt) vaut « none »" -#: src/authentic2_idp_oidc/views.py:344 +#: src/authentic2_idp_oidc/views.py msgid "Login is required because of max_age, but prompt parameter is \"none\"" msgstr "" "La connexion est de nouveau requise (max_age atteint), mais le paramètre " "d’invite (prompt) vaut « none »" -#: src/authentic2_idp_oidc/views.py:376 +#: src/authentic2_idp_oidc/views.py msgid "Consent is required but prompt parameter is \"none\"" msgstr "" "Le consentement est requis mais le paramètre d’invite (prompt) vaut « none »" -#: src/authentic2_idp_oidc/views.py:401 +#: src/authentic2_idp_oidc/views.py msgid "User did not consent" msgstr "L’utilisateur n’a pas donné son consentement" -#: src/authentic2_idp_oidc/views.py:568 +#: src/authentic2_idp_oidc/views.py #, python-format msgid "Rate limit exceeded for IP address \"%s\"" msgstr "Nombre maximal de tentatives atteint pour l’adresse IP « %s »" -#: src/authentic2_idp_oidc/views.py:575 +#: src/authentic2_idp_oidc/views.py #, python-format msgid "Rate limit of %(ratelimit)s exceeded for client \"%(client)s\"" msgstr "" "Fréquence maximale de tentatives valant %(ratelimit)s atteinte pour le " "client « %(client)s »" -#: src/authentic2_idp_oidc/views.py:582 +#: src/authentic2_idp_oidc/views.py msgid "" "Wrong content type. request content type must be 'application/x-www-form-" "urlencoded'" @@ -369,7 +363,7 @@ msgstr "" "Mauvais type de corps de requête (content type), le type doit être " "« application/x-www-form-urlencoded »" -#: src/authentic2_idp_oidc/views.py:594 +#: src/authentic2_idp_oidc/views.py msgid "" "Request must bear both username and password as parameters using the " "\"application/x-www-form-urlencoded\" media type" @@ -378,13 +372,13 @@ msgstr "" "de passe (password) en tant que paramètre à l’aide du type de média " "« application/x-www-form-urlencoded »" -#: src/authentic2_idp_oidc/views.py:603 +#: src/authentic2_idp_oidc/views.py msgid "Client is not configured for resource owner password credential grant" msgstr "" "Le client n’est pas configuré pour le type de cession par crédentiels du " "propriétaire de la ressource" -#: src/authentic2_idp_oidc/views.py:618 +#: src/authentic2_idp_oidc/views.py #, python-format msgid "" "Too many attempts with erroneous RO password, you must wait %s seconds to " @@ -393,46 +387,46 @@ msgstr "" "Trop de tentatives avec un mot de passe de l’utilisateur erroné, vous devez " "attendre %s secondes avant de pouvoir essayer à nouveau." -#: src/authentic2_idp_oidc/views.py:629 +#: src/authentic2_idp_oidc/views.py msgid "Parameter \"ou_slug\" does not match an existing organizational unit" msgstr "Le paramètre « ou_slug » ne correspond à aucune collectivité existante" -#: src/authentic2_idp_oidc/views.py:635 +#: src/authentic2_idp_oidc/views.py msgid "Invalid user credentials" msgstr "Mauvaises informations de connexion de l’utilisateur" -#: src/authentic2_idp_oidc/views.py:685 +#: src/authentic2_idp_oidc/views.py msgid "Parameter \"code\" is invalid" msgstr "Le paramètre « code » n’est pas valide" -#: src/authentic2_idp_oidc/views.py:687 +#: src/authentic2_idp_oidc/views.py msgid "Parameter \"code\" has expired or user is disconnected" msgstr "" "Le paramètre « code » est arrivé à expiration, ou bien l’utilisateur s’est " "déconnecté" -#: src/authentic2_idp_oidc/views.py:691 +#: src/authentic2_idp_oidc/views.py msgid "Parameter \"redirect_uri\" does not match the code." msgstr "Le paramètre « redirect_uri » ne correspond pas au code." -#: src/authentic2_idp_oidc/views.py:765 +#: src/authentic2_idp_oidc/views.py msgid "Bearer authentication is mandatory" msgstr "L’authentification Bearer est obligatoire" -#: src/authentic2_idp_oidc/views.py:768 +#: src/authentic2_idp_oidc/views.py msgid "Invalid Bearer authentication" msgstr "Authentification Bearer invalide" -#: src/authentic2_idp_oidc/views.py:772 +#: src/authentic2_idp_oidc/views.py msgid "Token unknown" msgstr "Jeton inconnu" -#: src/authentic2_idp_oidc/views.py:774 +#: src/authentic2_idp_oidc/views.py msgid "Token expired or user disconnected" msgstr "" "Le jeton est arrivé à expiration, ou bien l’utilisateur s’est déconnecté" -#: src/authentic2_idp_oidc/views.py:809 +#: src/authentic2_idp_oidc/views.py msgid "Invalid post logout URI" msgstr "URI de retour après déconnexion invalide" diff --git a/src/django_rbac/locale/fr/LC_MESSAGES/django.po b/src/django_rbac/locale/fr/LC_MESSAGES/django.po index a2d0a840..0d009d94 100644 --- a/src/django_rbac/locale/fr/LC_MESSAGES/django.po +++ b/src/django_rbac/locale/fr/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: django-rbac\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-07-23 16:53+0200\n" +"POT-Creation-Date: 2021-07-27 10:13+0200\n" "PO-Revision-Date: 2020-09-21 15:52+0200\n" "Last-Translator: Benjamin Dauvergner \n" "Language: \n" @@ -16,69 +16,68 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: src/django_rbac/models.py:31 +#: src/django_rbac/models.py msgid "uuid" msgstr "Identifiant unique" -#: src/django_rbac/models.py:32 +#: src/django_rbac/models.py msgid "name" msgstr "nom" -#: src/django_rbac/models.py:33 src/django_rbac/models.py:98 +#: src/django_rbac/models.py msgid "slug" msgstr "identifiant court" -#: src/django_rbac/models.py:34 +#: src/django_rbac/models.py msgid "description" msgstr "description" -#: src/django_rbac/models.py:66 src/django_rbac/models.py:92 -#: src/django_rbac/models.py:130 +#: src/django_rbac/models.py msgid "organizational unit" msgstr "collectivité" -#: src/django_rbac/models.py:93 +#: src/django_rbac/models.py msgid "organizational units" msgstr "entités" -#: src/django_rbac/models.py:127 +#: src/django_rbac/models.py msgid "operation" msgstr "opération" -#: src/django_rbac/models.py:166 +#: src/django_rbac/models.py #, python-brace-format msgid " (scope \"{0}\")" msgstr " (portée « {0} »)" -#: src/django_rbac/models.py:178 +#: src/django_rbac/models.py msgid "permission" msgstr "permission" -#: src/django_rbac/models.py:179 +#: src/django_rbac/models.py msgid "permissions" msgstr "permissions" -#: src/django_rbac/models.py:238 +#: src/django_rbac/models.py msgid "role" msgstr "rôle" -#: src/django_rbac/models.py:239 +#: src/django_rbac/models.py msgid "roles" msgstr "rôles" -#: src/django_rbac/models.py:272 +#: src/django_rbac/models.py msgid "role parenting relation" msgstr "relation de parenté entre rôles" -#: src/django_rbac/models.py:273 +#: src/django_rbac/models.py msgid "role parenting relations" msgstr "relations de parenté entre rôles" -#: src/django_rbac/models.py:284 +#: src/django_rbac/models.py msgid "superuser status" msgstr "statut super-utilisateur" -#: src/django_rbac/models.py:286 +#: src/django_rbac/models.py msgid "" "Designates that this user has all permissions without explicitly assigning " "them." @@ -86,11 +85,11 @@ msgstr "" "Donne à cet utilisateur toutes les permissions sans les lui assigner de " "manière explicite." -#: src/django_rbac/models.py:290 +#: src/django_rbac/models.py msgid "groups" msgstr "groupes" -#: src/django_rbac/models.py:293 +#: src/django_rbac/models.py msgid "" "The groups this user belongs to. A user will get all permissions granted to " "each of his/her group." @@ -98,34 +97,34 @@ msgstr "" "Les groupes auxquels cet utilisateur appartient. Un utilisateur obtient " "toutes les permissions accordées à chacun de ses groupes." -#: src/django_rbac/models.py:302 +#: src/django_rbac/models.py msgid "user permissions" msgstr "permissions de l’utilisateur" -#: src/django_rbac/models.py:304 +#: src/django_rbac/models.py msgid "Specific permissions for this user." msgstr "Permissions spécifiques à cet utilisateur." -#: src/django_rbac/models.py:405 +#: src/django_rbac/models.py msgid "Management" msgstr "Administration" -#: src/django_rbac/models.py:406 +#: src/django_rbac/models.py msgid "Change" msgstr "Modification" -#: src/django_rbac/models.py:407 +#: src/django_rbac/models.py msgid "Delete" msgstr "Suppression" -#: src/django_rbac/models.py:408 +#: src/django_rbac/models.py msgid "Add" msgstr "Ajout" -#: src/django_rbac/models.py:409 +#: src/django_rbac/models.py msgid "View" msgstr "Visualisation" -#: src/django_rbac/models.py:410 +#: src/django_rbac/models.py msgid "Search" msgstr "Recherche" -- 2.20.1