From b7a9a913854704e3df28c73c7f7aeb67ffc94003 Mon Sep 17 00:00:00 2001
From: Nicolas ROCHE <nroche@entrouvert.com>
Date: Fri, 2 Oct 2020 18:01:42 +0200
Subject: [PATCH] translation update (#47207)

---
 .../a2_rbac/locale/fr/LC_MESSAGES/django.po   |  14 +-
 .../manager/locale/fr/LC_MESSAGES/django.po   | 255 ++++++++++--------
 .../locale/fr/LC_MESSAGES/django.po           |  51 ++--
 3 files changed, 179 insertions(+), 141 deletions(-)

diff --git a/src/authentic2/a2_rbac/locale/fr/LC_MESSAGES/django.po b/src/authentic2/a2_rbac/locale/fr/LC_MESSAGES/django.po
index f0de19c3..fe82d839 100644
--- a/src/authentic2/a2_rbac/locale/fr/LC_MESSAGES/django.po
+++ b/src/authentic2/a2_rbac/locale/fr/LC_MESSAGES/django.po
@@ -2,17 +2,17 @@
 # Copyright (C) 2015 Entr'ouert
 # This file is distributed under the same license as the authentic2 package.
 # Benjamin Dauvergne <bdauvergne@entrouvert.com, 2015.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: django-rbac\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-09-01 18:07+0200\n"
+"POT-Creation-Date: 2020-10-02 18:01+0200\n"
 "PO-Revision-Date: 2020-09-21 16:26+0200\n"
 "Last-Translator: Benjamin Dauvergner <bdauvergne@entrouvert.com>\n"
 "Language: French\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n > 1);\n"
 
@@ -42,28 +42,28 @@ msgstr "Entités - {ou}"
 msgid "Manager of users"
 msgstr "Administrateur des utilisateurs"
 
 #: src/authentic2/a2_rbac/management.py:98
 #, python-brace-format
 msgid "Users - {ou}"
 msgstr "Utilisateurs - {ou}"
 
-#: src/authentic2/a2_rbac/management.py:101
+#: src/authentic2/a2_rbac/management.py:102
 msgid "Manager of services"
 msgstr "Administrateur des services"
 
-#: src/authentic2/a2_rbac/management.py:102
+#: src/authentic2/a2_rbac/management.py:103
 #, python-brace-format
 msgid "Services - {ou}"
 msgstr "Services - {ou}"
 
-#: src/authentic2/a2_rbac/management.py:122
 #: src/authentic2/a2_rbac/management.py:124
-#: src/authentic2/a2_rbac/management.py:125
+#: src/authentic2/a2_rbac/management.py:126
+#: src/authentic2/a2_rbac/management.py:127
 msgid "Manager"
 msgstr "Administrateur"
 
 #: src/authentic2/a2_rbac/models.py:52
 msgid "Send reset link"
 msgstr "Envoyer un lien de réinitialisation"
 
 #: src/authentic2/a2_rbac/models.py:53
@@ -232,8 +232,12 @@ msgstr "Activation"
 
 #: src/authentic2/a2_rbac/models.py:428
 msgid "Change email"
 msgstr "Modification de l’adresse de courriel"
 
 #: src/authentic2/a2_rbac/models.py:429
 msgid "Manage role members"
 msgstr "Gestion des membres d’un rôle"
+
+#: src/authentic2/a2_rbac/models.py:431
+msgid "Manage service consents"
+msgstr "Gestion des consentements"
diff --git a/src/authentic2/manager/locale/fr/LC_MESSAGES/django.po b/src/authentic2/manager/locale/fr/LC_MESSAGES/django.po
index 79e41876..249945a1 100644
--- a/src/authentic2/manager/locale/fr/LC_MESSAGES/django.po
+++ b/src/authentic2/manager/locale/fr/LC_MESSAGES/django.po
@@ -2,17 +2,17 @@
 # Copyright (C) 2014 Entr'ouvert
 # This file is distributed under the same license as the authentic2 package.
 # Benjamin Dauvergne <bdauvergne@entoruvert.com>, 2014.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: authentic2\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-09-01 18:07+0200\n"
+"POT-Creation-Date: 2020-10-02 18:01+0200\n"
 "PO-Revision-Date: 2020-09-21 16:16+0200\n"
 "Last-Translator: Benjamin Dauvergne <bdauvergne@entrouvert.com>\n"
 "Language-Team: French <fr@li.org>\n"
 "Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n > 1);\n"
@@ -30,170 +30,170 @@ msgstr "Ajouter un rôle"
 #: src/authentic2/manager/forms.py:129
 msgid "Add some users"
 msgstr "Ajouter des utilisateurs"
 
 #: src/authentic2/manager/forms.py:134 src/authentic2/manager/forms.py:138
 msgid "Add some roles"
 msgstr "Ajouter des rôles"
 
-#: src/authentic2/manager/forms.py:156
+#: src/authentic2/manager/forms.py:160
 msgid "Operation"
 msgstr "Opération"
 
-#: src/authentic2/manager/forms.py:159 src/authentic2/manager/forms.py:409
-#: src/authentic2/manager/forms.py:610 src/authentic2/manager/forms.py:682
+#: src/authentic2/manager/forms.py:163 src/authentic2/manager/forms.py:413
+#: src/authentic2/manager/forms.py:614 src/authentic2/manager/forms.py:691
 #: 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:15
+#: src/authentic2/manager/templates/authentic2/manager/service.html:22
 msgid "Organizational unit"
 msgstr "Collectivité"
 
-#: src/authentic2/manager/forms.py:163
+#: src/authentic2/manager/forms.py:167
 msgid "Target object"
 msgstr "Objet ciblé"
 
-#: src/authentic2/manager/forms.py:212
+#: src/authentic2/manager/forms.py:216
 msgid "The two password fields didn't match."
 msgstr "Les deux champs mot de passe ne correspondent pas l’un à l’autre."
 
-#: src/authentic2/manager/forms.py:235
+#: src/authentic2/manager/forms.py:239
 msgid ""
 "You must choose password generation or type a new  one or send a password "
 "reset mail"
 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:242
+#: src/authentic2/manager/forms.py:246
 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:275
+#: src/authentic2/manager/forms.py:279
 msgid "Generate new password"
 msgstr "Générer un mot de passe"
 
-#: src/authentic2/manager/forms.py:278
+#: src/authentic2/manager/forms.py:282
 msgid "Password"
 msgstr "Mot de passe"
 
-#: src/authentic2/manager/forms.py:281
+#: src/authentic2/manager/forms.py:285
 msgid "Confirmation"
 msgstr "Confirmation"
 
-#: src/authentic2/manager/forms.py:285
+#: src/authentic2/manager/forms.py:289
 msgid "Send informations to user"
 msgstr "Envoyer les informations à l’utilisateur"
 
-#: src/authentic2/manager/forms.py:302
+#: src/authentic2/manager/forms.py:306
 msgid "Ask for password reset on next login"
 msgstr "Doit changer de mot de passe à la prochaine connexion"
 
-#: src/authentic2/manager/forms.py:307
+#: src/authentic2/manager/forms.py:311
 msgid "Send mail to user to make it choose a password"
 msgstr ""
 "Envoyer un courriel à l’utilisateur pour qu’il choisisse son mot de passe"
 
-#: src/authentic2/manager/forms.py:328
+#: src/authentic2/manager/forms.py:332
 msgid ""
 "You must set a username or an email to set a password or send an activation "
 "link."
 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:371 src/authentic2/manager/forms.py:598
+#: src/authentic2/manager/forms.py:375 src/authentic2/manager/forms.py:602
 msgid "Name"
 msgstr "Nom"
 
-#: src/authentic2/manager/forms.py:375
+#: src/authentic2/manager/forms.py:379
 msgid "Show internal roles"
 msgstr "Afficher les rôles internes"
 
-#: src/authentic2/manager/forms.py:424
+#: src/authentic2/manager/forms.py:428
 msgctxt "organizational unit"
 msgid "All"
 msgstr "Toutes"
 
-#: src/authentic2/manager/forms.py:459
+#: src/authentic2/manager/forms.py:463
 msgctxt "organizational unit"
 msgid "None"
 msgstr "Aucune"
 
-#: src/authentic2/manager/forms.py:570
+#: src/authentic2/manager/forms.py:574
 msgid "Free text"
 msgstr "Recherche libre"
 
-#: src/authentic2/manager/forms.py:620 src/authentic2/manager/tables.py:109
-#: src/authentic2/manager/tables.py:133 src/authentic2/manager/tables.py:146
-#: src/authentic2/manager/tables.py:171
+#: src/authentic2/manager/forms.py:624 src/authentic2/manager/tables.py:110
+#: src/authentic2/manager/tables.py:134 src/authentic2/manager/tables.py:147
+#: src/authentic2/manager/tables.py:172
 msgid "label"
 msgstr "libellé"
 
-#: src/authentic2/manager/forms.py:640
+#: src/authentic2/manager/forms.py:644
 #: src/authentic2/manager/templates/authentic2/manager/user_create_registration_email_body.txt:4
 msgid "Email"
 msgstr "Courriel"
 
-#: src/authentic2/manager/forms.py:663
+#: src/authentic2/manager/forms.py:667
 msgid "Site Export File"
 msgstr "Fichier d’export de site"
 
-#: src/authentic2/manager/forms.py:671
+#: src/authentic2/manager/forms.py:675
 msgid "File is not in the expected JSON format."
 msgstr "Le fichier n’est pas au format JSON attendu."
 
-#: src/authentic2/manager/forms.py:675
+#: src/authentic2/manager/forms.py:679
 msgid "Organizational Units Export File"
 msgstr "Fichier d’export des collectivités"
 
-#: src/authentic2/manager/forms.py:679
+#: src/authentic2/manager/forms.py:683
 msgid "Roles Export File"
 msgstr "Fichier d’export des rôles"
 
-#: src/authentic2/manager/forms.py:689
+#: src/authentic2/manager/forms.py:698
 msgid "Unicode (UTF-8)"
 msgstr "Unicode (UTF-8)"
 
-#: src/authentic2/manager/forms.py:690
+#: src/authentic2/manager/forms.py:699
 msgid "Western Europe (Windows-1252)"
 msgstr "Europe occidentale (Windows-1252)"
 
-#: src/authentic2/manager/forms.py:691
+#: src/authentic2/manager/forms.py:700
 msgid "Western Europe (ISO-8859-15)"
 msgstr "Europe occidentale (ISO-8859-15)"
 
-#: src/authentic2/manager/forms.py:697
+#: src/authentic2/manager/forms.py:706
 msgid "Import file"
 msgstr "Fichier d’import"
 
-#: src/authentic2/manager/forms.py:698
+#: src/authentic2/manager/forms.py:707
 msgid "A CSV file"
 msgstr "Un fichier CSV"
 
-#: src/authentic2/manager/forms.py:700
+#: src/authentic2/manager/forms.py:709
 msgid "Encoding"
 msgstr "Encodage"
 
-#: src/authentic2/manager/forms.py:703
+#: src/authentic2/manager/forms.py:712
 msgid "Organizational Unit"
 msgstr "Collectivité"
 
-#: src/authentic2/manager/forms.py:708
+#: src/authentic2/manager/forms.py:717
 msgid "Invalid import file"
 msgstr "Fichier d’import invalide"
 
 #: src/authentic2/manager/ou_views.py:40
 #: 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:580
+#: src/authentic2/manager/views.py:571
 msgid "Organizational units"
 msgstr "Collectivités"
 
 #: src/authentic2/manager/ou_views.py:49
 #: src/authentic2/manager/templates/authentic2/manager/ous.html:15
 msgid "Add organizational unit"
 msgstr "Ajouter une collectivité"
 
@@ -222,20 +222,20 @@ msgid "Organizational Units have been successfully imported."
 msgstr "Les collectivités ont été importées avec succès."
 
 #: src/authentic2/manager/role_views.py:69
 #: 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_edit.html:8
 #: src/authentic2/manager/templates/authentic2/manager/roles.html:4
-#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:70
+#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:72
 #: src/authentic2/manager/templates/authentic2/manager/user_ou_roles.html:8
 #: src/authentic2/manager/templates/authentic2/manager/user_roles.html:8
-#: src/authentic2/manager/views.py:596
+#: src/authentic2/manager/views.py:587
 msgid "Roles"
 msgstr "Rôles"
 
 #: src/authentic2/manager/role_views.py:87
 #: 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:11
 #: src/authentic2/manager/templates/authentic2/manager/roles.html:13
@@ -301,92 +301,96 @@ msgstr "Ajouter un utilisateur gestionnaire"
 #: src/authentic2/manager/role_views.py:491
 msgid "Remove admin user"
 msgstr "Supprimer un rôle gestionnaire"
 
 #: src/authentic2/manager/role_views.py:521
 msgid "Roles Import"
 msgstr "Import des rôles"
 
-#: src/authentic2/manager/role_views.py:543
+#: src/authentic2/manager/role_views.py:550
 #, 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/service_views.py:32
 #: src/authentic2/manager/templates/authentic2/manager/services.html:4
 #: src/authentic2/manager/templates/authentic2/manager/services.html:8
-#: src/authentic2/manager/views.py:604
+#: src/authentic2/manager/views.py:595
 msgid "Services"
 msgstr "Applications"
 
 #: src/authentic2/manager/service_views.py:66
 msgid "Role already authorized in this service."
 msgstr "Rôle déjà autorisé dans ce service."
 
 #: src/authentic2/manager/service_views.py:90
 msgid "Edit service"
 msgstr "Éditer l’application"
 
-#: src/authentic2/manager/tables.py:66
+#: src/authentic2/manager/tables.py:67
 msgid "disabled"
 msgstr "désactivé"
 
-#: src/authentic2/manager/tables.py:75
+#: src/authentic2/manager/tables.py:76
 msgid "User"
 msgstr "Utilisateurs"
 
-#: src/authentic2/manager/tables.py:89 src/authentic2/manager/tables.py:129
-#: src/authentic2/manager/tables.py:140 src/authentic2/manager/tables.py:164
-#: src/authentic2/manager/tables.py:184 src/authentic2/manager/tables.py:196
+#: src/authentic2/manager/tables.py:90 src/authentic2/manager/tables.py:130
+#: src/authentic2/manager/tables.py:141 src/authentic2/manager/tables.py:165
+#: src/authentic2/manager/tables.py:185 src/authentic2/manager/tables.py:197
 #: src/authentic2/manager/templates/authentic2/manager/user_imports.html:50
 msgid "None"
 msgstr "Aucun(e)"
 
-#: src/authentic2/manager/tables.py:94
+#: src/authentic2/manager/tables.py:95
 msgid "Direct member"
 msgstr "Membre direct"
 
-#: src/authentic2/manager/tables.py:100 src/authentic2/manager/tables.py:149
-#: src/authentic2/manager/tables.py:177
+#: src/authentic2/manager/tables.py:101 src/authentic2/manager/tables.py:150
+#: src/authentic2/manager/tables.py:178
 msgid "Inherited from"
 msgstr "Hérité du(des) rôle(s)"
 
-#: src/authentic2/manager/tables.py:111
+#: src/authentic2/manager/tables.py:112
 msgid "Direct member count"
 msgstr "Nombre de membres directs"
 
-#: src/authentic2/manager/tables.py:157
+#: src/authentic2/manager/tables.py:158
 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:157
+#: src/authentic2/manager/tables.py:158
 #: src/authentic2/manager/templates/authentic2/manager/role_members.html:51
-#: src/authentic2/manager/templates/authentic2/manager/user_roles_table.html:12
+#: src/authentic2/manager/templates/authentic2/manager/user_roles_table.html:11
 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:158
+#: src/authentic2/manager/tables.py:159
 msgid "Member"
 msgstr "Membre"
 
-#: src/authentic2/manager/tables.py:201
+#: src/authentic2/manager/tables.py:202
 msgid "name"
 msgstr "nom"
 
-#: src/authentic2/manager/tables.py:207
+#: src/authentic2/manager/tables.py:208
 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:220
+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
 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
 msgid "Homepage"
 msgstr "Accueil"
@@ -554,17 +558,17 @@ 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:28
 #: src/authentic2/manager/templates/authentic2/manager/role_members.html:31
 #: src/authentic2/manager/templates/authentic2/manager/role_members.html:33
 #: src/authentic2/manager/templates/authentic2/manager/role_permissions.html:17
-#: src/authentic2/manager/templates/authentic2/manager/service.html:21
+#: src/authentic2/manager/templates/authentic2/manager/service.html:12
 #: src/authentic2/manager/templates/authentic2/manager/user_detail.html:14
 #: src/authentic2/manager/templates/authentic2/manager/user_detail.html:16
 #: src/authentic2/manager/templates/authentic2/manager/user_edit.html:8
 msgid "Edit"
 msgstr "Éditer"
 
 #: src/authentic2/manager/templates/authentic2/manager/ou_detail.html:29
 msgid "You do not have the rights to edit this organizational unit."
@@ -601,17 +605,17 @@ msgid "Permission denied"
 msgstr "Vous n’êtes pas autorisé."
 
 #: src/authentic2/manager/templates/authentic2/manager/role_members.html:33
 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:64
 #: src/authentic2/manager/templates/authentic2/manager/role_permissions.html:31
-#: src/authentic2/manager/templates/authentic2/manager/service.html:36
+#: src/authentic2/manager/templates/authentic2/manager/service.html:42
 #: src/authentic2/manager/templates/authentic2/manager/user_roles.html:40
 msgid "Add"
 msgstr "Ajouter"
 
 #: src/authentic2/manager/templates/authentic2/manager/role_members.html:68
 msgid "Advanced parameters"
 msgstr "Paramètres avancés"
 
@@ -644,21 +648,21 @@ msgstr "Contient les permissions des rôles :"
 #: src/authentic2/manager/templates/authentic2/manager/role_members.html:136
 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:130
 msgid "Indirect parent role"
 msgstr "rôle hérité"
 
-#: src/authentic2/manager/templates/authentic2/manager/role_members_table.html:10
+#: src/authentic2/manager/templates/authentic2/manager/role_members_table.html:9
 #, python-format
 msgid ""
 "Do you really want to remove user &quot;%(username)s&quot; from role &quot;"
-"%(role)s&quot;&nbsp;?"
+"%(role)s&quot;?"
 msgstr ""
 "Souhaitez-vous vraiment retirer le rôle « %(role)s » à l’utilisateur "
 "« %(username)s » ?"
 
 #: src/authentic2/manager/templates/authentic2/manager/role_permissions.html:19
 msgid "Members"
 msgstr "Membres"
 
@@ -694,51 +698,68 @@ msgstr "Souhaitez-vous vraiment retirer le rôle %(parent)s à ce rôle ?"
 msgctxt "title"
 msgid "Search"
 msgstr "Recherche"
 
 #: src/authentic2/manager/templates/authentic2/manager/search_form.html:5
 msgid "Search"
 msgstr "Rechercher"
 
-#: src/authentic2/manager/templates/authentic2/manager/service.html:18
+#: src/authentic2/manager/templates/authentic2/manager/service.html:25
 msgid "Slug"
 msgstr "Code court"
 
-#: src/authentic2/manager/templates/authentic2/manager/service.html:28
+#: src/authentic2/manager/templates/authentic2/manager/service.html:34
 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:42
+#: src/authentic2/manager/templates/authentic2/manager/service.html:48
 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:10
+#: src/authentic2/manager/templates/authentic2/manager/service_roles_table.html:9
 #, python-format
 msgid ""
 "Do you really want to remove role &quot;%(name)s&quot; from service &quot;"
-"%(slug)s&quot;&nbsp;?"
+"%(slug)s&quot;?"
 msgstr ""
 "Souhaitez-vous vraiment retirer le rôle « %(name)s » du service "
 "« %(slug)s » ?"
 
 #: src/authentic2/manager/templates/authentic2/manager/user_add.html:15
-#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:23
+#: 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_detail.html:25
 #: src/authentic2/manager/templates/authentic2/manager/user_edit.html:6
 #: 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_ou_roles.html:6
 #: src/authentic2/manager/templates/authentic2/manager/user_roles.html:6
 #: src/authentic2/manager/templates/authentic2/manager/users.html:4
 #: src/authentic2/manager/templates/authentic2/manager/users.html:37
-#: src/authentic2/manager/user_views.py:67 src/authentic2/manager/views.py:588
+#: src/authentic2/manager/user_views.py:70 src/authentic2/manager/views.py:579
 msgid "Users"
 msgstr "Utilisateurs"
 
+#: src/authentic2/manager/templates/authentic2/manager/user_authorizations.html:14
+msgctxt "manager"
+msgid "Consent Management"
+msgstr "Gestion des consentements"
+
+#: src/authentic2/manager/templates/authentic2/manager/user_authorizations_table.html:12
+#, python-format
+msgid ""
+"Do you really want to remove &quot;%(client)s&quot; service granted access "
+"to &quot;%(username)s&quot; profile data?"
+msgstr ""
+"Souhaitez-vous vraiment retirer le consentement fait par l’utilisateur "
+"« %(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
 msgid ""
 "User's email will not be changed immediately. First an email will be sent to "
 "this\n"
 "      new email address containing a link on which the user's will have to "
 "click to verify that it owns\n"
 "      the email address, then it will be changed."
 msgstr ""
@@ -871,50 +892,54 @@ msgstr "Souhaitez-vous vraiment supprimer l’utilisateur « %(full_name)s »
 #: src/authentic2/manager/templates/authentic2/manager/user_detail.html:10
 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:16
 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:32
+#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:19
+msgid "Authorizations"
+msgstr "Consentements"
+
+#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:34
 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:33
+#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:35
 msgid "Cancel this constraint"
 msgstr "Annuler cette contrainte"
 
-#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:46
+#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:48
 #, python-format
 msgid "Last login on %(date)s."
 msgstr "Dernière connexion le %(date)s"
 
-#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:48
+#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:50
 msgid "Never logged in."
 msgstr "Ne s’est jamais connecté."
 
-#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:53
+#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:55
 #, python-format
 msgid "Created on %(date)s"
 msgstr "Créé le %(date)s"
 
-#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:58
+#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:60
 #, python-format
 msgid "Modified on %(date)s"
 msgstr "Dernière modification le %(date)s"
 
-#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:74
+#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:76
 msgid "All organizational units"
 msgstr "Toutes les collectivités"
 
-#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:89
+#: src/authentic2/manager/templates/authentic2/manager/user_detail.html:91
 msgid "Modify roles"
 msgstr "Modifier les rôles"
 
 #: 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
 msgid "Import Users"
@@ -1072,17 +1097,17 @@ msgstr "Action"
 msgid "No row analysed."
 msgstr "Aucune ligne analysée."
 
 #: src/authentic2/manager/templates/authentic2/manager/user_imports.html:16
 msgid "Create new import"
 msgstr "Créer un nouvel import"
 
 #: src/authentic2/manager/templates/authentic2/manager/user_imports.html:20
-#: src/authentic2/manager/user_views.py:134
+#: src/authentic2/manager/user_views.py:137
 msgid "Create"
 msgstr "Créer"
 
 #: src/authentic2/manager/templates/authentic2/manager/user_imports.html:31
 msgid "Filename"
 msgstr "Nom du fichier"
 
 #: src/authentic2/manager/templates/authentic2/manager/user_imports.html:33
@@ -1335,21 +1360,21 @@ 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_ou_roles.html:12
 #: src/authentic2/manager/templates/authentic2/manager/user_roles.html:12
 msgid "Edit User Roles"
 msgstr "Éditer les rôles de l’utilisateur"
 
-#: src/authentic2/manager/templates/authentic2/manager/user_roles_table.html:12
+#: src/authentic2/manager/templates/authentic2/manager/user_roles_table.html:11
 #, python-format
 msgid ""
 "Do you really want to remove role &quot;%(name)s&quot; from user &quot;"
-"%(username)s&quot;&nbsp;?"
+"%(username)s&quot;?"
 msgstr ""
 "Souhaitez-vous vraiment retirer le rôle « %(name)s » à l’utilisateur "
 "« %(username)s » ?"
 
 #: src/authentic2/manager/templates/authentic2/manager/user_su.html:7
 #, python-format
 msgid ""
 "To switch to user %(fullname)s, use the following link (it expires after "
@@ -1377,152 +1402,156 @@ msgstr "En cours d’exécution"
 #: src/authentic2/manager/user_import.py:136
 msgid "Finished"
 msgstr "Terminé"
 
 #: src/authentic2/manager/user_import.py:137
 msgid "Error"
 msgstr "Échec"
 
-#: src/authentic2/manager/user_views.py:103
+#: src/authentic2/manager/user_views.py:106
 #, 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:123
+#: src/authentic2/manager/user_views.py:126
 msgid "Import users"
 msgstr "Importer des utilisateurs"
 
-#: src/authentic2/manager/user_views.py:133
+#: src/authentic2/manager/user_views.py:136
 msgid "Create user"
 msgstr "Créer un nouvel utilisateur"
 
-#: src/authentic2/manager/user_views.py:238
+#: src/authentic2/manager/user_views.py:241
 msgid "Reset password"
 msgstr "Réinitialiser le mot de passe"
 
-#: src/authentic2/manager/user_views.py:241
+#: src/authentic2/manager/user_views.py:244
 msgid "Suspend"
 msgstr "Suspendre"
 
-#: src/authentic2/manager/user_views.py:244
+#: src/authentic2/manager/user_views.py:247
 msgid "Activate"
 msgstr "Activer"
 
-#: src/authentic2/manager/user_views.py:247
+#: src/authentic2/manager/user_views.py:250
 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:250
+#: src/authentic2/manager/user_views.py:253
 msgid "Force password change on next login"
 msgstr "Forcer le changement de mot de passe à la prochaine connexion"
 
-#: src/authentic2/manager/user_views.py:253
-#: src/authentic2/manager/user_views.py:477
+#: src/authentic2/manager/user_views.py:256
+#: src/authentic2/manager/user_views.py:485
 msgid "Change user password"
 msgstr "Changer le mot de passe"
 
-#: src/authentic2/manager/user_views.py:257
+#: src/authentic2/manager/user_views.py:260
 msgid "Impersonate this user"
 msgstr "Se reconnecter avec cet utilisateur"
 
-#: src/authentic2/manager/user_views.py:260
-#: src/authentic2/manager/user_views.py:504
+#: src/authentic2/manager/user_views.py:263
+#: src/authentic2/manager/user_views.py:512
 msgid "Change user email"
 msgstr "Changer l’adresse de courriel"
 
-#: src/authentic2/manager/user_views.py:273
+#: src/authentic2/manager/user_views.py:276
 msgid "You cannot desactivate your own user"
 msgstr "Vous ne pouvez pas désactiver votre propre utilisateur."
 
-#: src/authentic2/manager/user_views.py:282
+#: src/authentic2/manager/user_views.py:285
 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:287
+#: src/authentic2/manager/user_views.py:290
 #, python-format
 msgid "A mail was sent to %s"
 msgstr "Un courrier électronique a été envoyé à %s."
 
-#: src/authentic2/manager/user_views.py:325
+#: src/authentic2/manager/user_views.py:328
 msgid "Email verified"
 msgstr "Courriel vérifié"
 
-#: src/authentic2/manager/user_views.py:327
+#: src/authentic2/manager/user_views.py:330
 msgid "Email not verified"
 msgstr "Courriel non vérifié"
 
-#: src/authentic2/manager/user_views.py:366
+#: src/authentic2/manager/user_views.py:374
 msgid "Change"
 msgstr "Modifier"
 
-#: src/authentic2/manager/user_views.py:367
+#: src/authentic2/manager/user_views.py:375
 msgid "Edit user"
 msgstr "Éditer l’utilisateur"
 
-#: src/authentic2/manager/user_views.py:483
+#: src/authentic2/manager/user_views.py:491
 #, python-format
 msgid "New password sent to %s"
 msgstr "Nouveau mot de passe envoyé à %s."
 
-#: src/authentic2/manager/user_views.py:485
+#: src/authentic2/manager/user_views.py:493
 msgid "New password set"
 msgstr "Nouveau mot de passe défini."
 
-#: src/authentic2/manager/user_views.py:508
+#: src/authentic2/manager/user_views.py:516
 #, 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:600
+#: src/authentic2/manager/user_views.py:608
 #, 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:637
+#: src/authentic2/manager/user_views.py:645
 msgid "Delete user"
 msgstr "Supprimer l’utilisateur"
 
-#: src/authentic2/manager/user_views.py:708
+#: src/authentic2/manager/user_views.py:716
 #, python-brace-format
 msgid "{0}. {1} <a download=\"{3}\" href=\"{2}\">{3}</a>"
 msgstr "{0}. {1} <a download=\"{3}\" href=\"{2}\">{3}</a>"
 
-#: src/authentic2/manager/user_views.py:710
+#: src/authentic2/manager/user_views.py:718
 msgid "ex.:"
 msgstr "ex. :"
 
-#: src/authentic2/manager/user_views.py:712
+#: src/authentic2/manager/user_views.py:720
 msgid "users.csv"
 msgstr "utilisateurs.csv"
 
-#: src/authentic2/manager/user_views.py:800
+#: src/authentic2/manager/user_views.py:808
 msgid "Simulation"
 msgstr "Simulation"
 
-#: src/authentic2/manager/user_views.py:802
+#: src/authentic2/manager/user_views.py:810
 msgid "Execution"
 msgstr "Importation"
 
-#: src/authentic2/manager/user_views.py:818
+#: src/authentic2/manager/user_views.py:826
 msgid "Switch user"
 msgstr "Reconnexion"
 
-#: src/authentic2/manager/views.py:475
+#: src/authentic2/manager/user_views.py:857
+msgid "Consent Management"
+msgstr "Gestion des consentements"
+
+#: src/authentic2/manager/views.py:466
 #, python-format
 msgid "Delete %s"
 msgstr "Supprimer l’objet « %s »"
 
-#: src/authentic2/manager/views.py:566
+#: src/authentic2/manager/views.py:557
 #, python-format
 msgid "Edit %s"
 msgstr "Éditer l’objet « %s »"
 
-#: src/authentic2/manager/views.py:723
+#: src/authentic2/manager/views.py:714
 msgid "Site Import"
 msgstr "Import de site"
 
 #~ msgid "The form contains some errors, please fix them."
 #~ msgstr "Ce formulaire contient des erreurs, veuillez les corriger."
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 ba7e0895..4759bc30 100644
--- a/src/authentic2_idp_oidc/locale/fr/LC_MESSAGES/django.po
+++ b/src/authentic2_idp_oidc/locale/fr/LC_MESSAGES/django.po
@@ -2,28 +2,28 @@
 # Copyright (C) 2016 Entr'ouvert
 # This file is distributed under the same license as the Authentic package.
 # Benjamin Dauvergne <bdauvergne@entrouvert.com>, 2016.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: Authentic\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-09-01 18:07+0200\n"
+"POT-Creation-Date: 2020-10-02 18:01+0200\n"
 "PO-Revision-Date: 2020-09-21 16:00+0200\n"
 "Last-Translator: Benjamin Dauvergne <bdauvergne@entrouvert.com>\n"
 "Language-Team: None\n"
 "Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n > 1);\n"
 
-#: src/authentic2_idp_oidc/models.py:66 src/authentic2_idp_oidc/models.py:286
-#: src/authentic2_idp_oidc/models.py:350
+#: src/authentic2_idp_oidc/models.py:66 src/authentic2_idp_oidc/models.py:299
+#: src/authentic2_idp_oidc/models.py:363
 msgid "uuid"
 msgstr "identifiant unique interne"
 
 #: src/authentic2_idp_oidc/models.py:67
 msgid "pairwise unreversible"
 msgstr "pseudonyme irréversible"
 
 #: src/authentic2_idp_oidc/models.py:68
@@ -65,17 +65,17 @@ msgstr "autoriser par service"
 #: src/authentic2_idp_oidc/models.py:94
 msgid "authorization by ou"
 msgstr "autoriser par collectivité"
 
 #: src/authentic2_idp_oidc/models.py:95
 msgid "none"
 msgstr "aucun"
 
-#: src/authentic2_idp_oidc/models.py:100 src/authentic2_idp_oidc/models.py:254
+#: src/authentic2_idp_oidc/models.py:100 src/authentic2_idp_oidc/models.py:267
 msgid "client id"
 msgstr "Identifiant du client (client id)"
 
 #: src/authentic2_idp_oidc/models.py:105
 msgid "client secret"
 msgstr "Secret du client (client secret)"
 
 #: src/authentic2_idp_oidc/models.py:108
@@ -129,18 +129,18 @@ msgstr "a accès à l’API"
 #: src/authentic2_idp_oidc/models.py:153
 msgid "frontchannel logout URI"
 msgstr "URI de déconnexion frontchannel"
 
 #: src/authentic2_idp_oidc/models.py:156
 msgid "frontchannel timeout"
 msgstr "temps d’expiration pour la déconnexion frontchannel"
 
-#: src/authentic2_idp_oidc/models.py:166 src/authentic2_idp_oidc/models.py:266
-#: src/authentic2_idp_oidc/models.py:315 src/authentic2_idp_oidc/models.py:369
+#: src/authentic2_idp_oidc/models.py:166 src/authentic2_idp_oidc/models.py:279
+#: src/authentic2_idp_oidc/models.py:328 src/authentic2_idp_oidc/models.py:382
 msgid "created"
 msgstr "créé"
 
 #: src/authentic2_idp_oidc/models.py:169
 msgid "modified"
 msgstr "modifié"
 
 #: src/authentic2_idp_oidc/models.py:180
@@ -155,69 +155,74 @@ msgstr ""
 #: src/authentic2_idp_oidc/models.py:187
 msgid ""
 "Redirect URIs must have the same domain or you must define a sector "
 "identifier URI if you want to use pairwiseidentifiers"
 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:251
+#: src/authentic2_idp_oidc/models.py:249
+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:264
 msgid "client ct"
 msgstr "type de contenu du client"
 
-#: src/authentic2_idp_oidc/models.py:258 src/authentic2_idp_oidc/models.py:294
-#: src/authentic2_idp_oidc/models.py:358
+#: src/authentic2_idp_oidc/models.py:271 src/authentic2_idp_oidc/models.py:307
+#: src/authentic2_idp_oidc/models.py:371
 msgid "user"
 msgstr "utilisateur"
 
-#: src/authentic2_idp_oidc/models.py:262 src/authentic2_idp_oidc/models.py:297
-#: src/authentic2_idp_oidc/models.py:361
+#: src/authentic2_idp_oidc/models.py:275 src/authentic2_idp_oidc/models.py:310
+#: src/authentic2_idp_oidc/models.py:374
 msgid "scopes"
 msgstr "portées (scopes)"
 
-#: src/authentic2_idp_oidc/models.py:269 src/authentic2_idp_oidc/models.py:318
-#: src/authentic2_idp_oidc/models.py:372
+#: src/authentic2_idp_oidc/models.py:282 src/authentic2_idp_oidc/models.py:331
+#: src/authentic2_idp_oidc/models.py:385
 msgid "expire"
 msgstr "expiration"
 
-#: src/authentic2_idp_oidc/models.py:290 src/authentic2_idp_oidc/models.py:354
-#: src/authentic2_idp_oidc/models.py:409
+#: src/authentic2_idp_oidc/models.py:303 src/authentic2_idp_oidc/models.py:367
+#: src/authentic2_idp_oidc/models.py:422
 msgid "client"
 msgstr "client"
 
-#: src/authentic2_idp_oidc/models.py:300
+#: src/authentic2_idp_oidc/models.py:313
 msgid "state"
 msgstr "statut"
 
-#: src/authentic2_idp_oidc/models.py:303
+#: src/authentic2_idp_oidc/models.py:316
 msgid "nonce"
 msgstr "nonce"
 
-#: src/authentic2_idp_oidc/models.py:305
+#: src/authentic2_idp_oidc/models.py:318
 msgid "redirect URI"
 msgstr "URI de redirection"
 
-#: src/authentic2_idp_oidc/models.py:308 src/authentic2_idp_oidc/models.py:363
+#: src/authentic2_idp_oidc/models.py:321 src/authentic2_idp_oidc/models.py:376
 msgid "session key"
 msgstr "clé de session"
 
-#: src/authentic2_idp_oidc/models.py:311
+#: src/authentic2_idp_oidc/models.py:324
 msgid "auth time"
 msgstr "date d’autorisation"
 
-#: src/authentic2_idp_oidc/models.py:413
+#: src/authentic2_idp_oidc/models.py:426
 msgid "attribute name"
 msgstr "nom d’attribut"
 
-#: src/authentic2_idp_oidc/models.py:416
+#: src/authentic2_idp_oidc/models.py:429
 msgid "attribute value"
 msgstr "valeur de l’attribut"
 
-#: src/authentic2_idp_oidc/models.py:419
+#: src/authentic2_idp_oidc/models.py:432
 msgid "attribute scopes"
 msgstr "portées (scopes) liées à cet attribut"
 
 #: src/authentic2_idp_oidc/templates/authentic2_idp_oidc/authorization.html:4
 msgid "Authentication access check"
 msgstr "Vérification d’autorisation d’accès"
 
 #: src/authentic2_idp_oidc/templates/authentic2_idp_oidc/authorization.html:6
-- 
2.28.0

