From a3d31f5c4b64b1f56f98455882db1b6c6e0d2e84 Mon Sep 17 00:00:00 2001 From: Jean-Romain Garnier Date: Thu, 23 Apr 2020 18:09:39 +0000 Subject: [PATCH 1/2] Make related history in detailed history view nicer --- logs/models.py | 9 ++++----- logs/templates/logs/detailed_history.html | 9 ++++----- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/logs/models.py b/logs/models.py index 3b088b87..e3f0cba8 100644 --- a/logs/models.py +++ b/logs/models.py @@ -227,13 +227,12 @@ class RelatedHistory: def __eq__(self, other): return ( - self.name == other.name - and self.model_name == other.model_name + self.model_name == other.model_name and self.object_id == other.object_id ) def __hash__(self): - return hash((self.name, self.model_name, self.object_id)) + return hash((self.model_name, self.object_id)) class HistoryEvent: @@ -466,7 +465,7 @@ class UserHistory(History): # that were once owned by this user self.related = filter( lambda x: x.field_dict["user_id"] == user.id, - Version.objects.get_for_model(Machine).order_by("revision__date_created") + Version.objects.get_for_model(Machine).order_by("-revision__date_created") ) self.related = [RelatedHistory( m.field_dict["name"] or _("None"), @@ -553,7 +552,7 @@ class MachineHistory(History): # that were once assigned to this machine self.related = list(filter( lambda x: x.field_dict["machine_id"] == machine.id, - Version.objects.get_for_model(Interface).order_by("revision__date_created") + Version.objects.get_for_model(Interface).order_by("-revision__date_created") )) # Create RelatedHistory objects and remove duplicates diff --git a/logs/templates/logs/detailed_history.html b/logs/templates/logs/detailed_history.html index b862448d..26bae90c 100644 --- a/logs/templates/logs/detailed_history.html +++ b/logs/templates/logs/detailed_history.html @@ -75,18 +75,17 @@ with this program; if not, write to the Free Software Foundation, Inc.,

{% trans "No event" %}

{% endif %} -

{% trans "Related history" %}

- {% if related_history %} + +

{% blocktrans %}Related elements{% endblocktrans %}

+ -{% else %} -

{% trans "No related history" %}

{% endif %}

From 4731e7da02af5795a3c48c5957bf695dd2796e78 Mon Sep 17 00:00:00 2001 From: Jean-Romain Garnier Date: Thu, 23 Apr 2020 18:13:37 +0000 Subject: [PATCH 2/2] Add missing translations for detailed history --- api/locale/fr/LC_MESSAGES/django.po | 2 +- cotisations/locale/fr/LC_MESSAGES/django.po | 2 +- logs/locale/fr/LC_MESSAGES/django.po | 142 ++++++----- machines/locale/fr/LC_MESSAGES/django.po | 2 +- multi_op/locale/fr/LC_MESSAGES/django.po | 2 +- preferences/locale/fr/LC_MESSAGES/django.po | 254 ++++++++++---------- re2o/locale/fr/LC_MESSAGES/django.po | 2 +- search/locale/fr/LC_MESSAGES/django.po | 2 +- templates/locale/fr/LC_MESSAGES/django.po | 5 +- tickets/locale/fr/LC_MESSAGES/django.po | 2 +- topologie/locale/fr/LC_MESSAGES/django.po | 2 +- users/locale/fr/LC_MESSAGES/django.po | 182 +++++++------- 12 files changed, 311 insertions(+), 288 deletions(-) diff --git a/api/locale/fr/LC_MESSAGES/django.po b/api/locale/fr/LC_MESSAGES/django.po index f5f9153f..6b5b3c75 100644 --- a/api/locale/fr/LC_MESSAGES/django.po +++ b/api/locale/fr/LC_MESSAGES/django.po @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: 2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-04-23 14:44+0200\n" +"POT-Creation-Date: 2020-04-23 20:09+0200\n" "PO-Revision-Date: 2019-01-07 01:37+0100\n" "Last-Translator: Laouen Fernet \n" "Language-Team: \n" diff --git a/cotisations/locale/fr/LC_MESSAGES/django.po b/cotisations/locale/fr/LC_MESSAGES/django.po index ac3900ea..674a417c 100644 --- a/cotisations/locale/fr/LC_MESSAGES/django.po +++ b/cotisations/locale/fr/LC_MESSAGES/django.po @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: 2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-04-23 14:44+0200\n" +"POT-Creation-Date: 2020-04-23 20:09+0200\n" "PO-Revision-Date: 2018-03-31 16:09+0002\n" "Last-Translator: Laouen Fernet \n" "Language: fr_FR\n" diff --git a/logs/locale/fr/LC_MESSAGES/django.po b/logs/locale/fr/LC_MESSAGES/django.po index 2c5265fc..e9310b54 100644 --- a/logs/locale/fr/LC_MESSAGES/django.po +++ b/logs/locale/fr/LC_MESSAGES/django.po @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: 2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-04-23 14:44+0200\n" +"POT-Creation-Date: 2020-04-23 20:09+0200\n" "PO-Revision-Date: 2018-06-23 16:01+0200\n" "Last-Translator: Laouen Fernet \n" "Language-Team: \n" @@ -58,20 +58,26 @@ msgstr "Date de début" msgid "End date" msgstr "Date de fin" -#: logs/models.py:238 logs/models.py:263 +#: logs/models.py:260 logs/models.py:368 logs/models.py:401 logs/models.py:471 +#: logs/models.py:560 logs/models.py:593 msgid "None" msgstr "Aucun(e)" -#: logs/models.py:248 +#: logs/models.py:378 logs/models.py:397 logs/models.py:411 logs/models.py:540 +#: logs/models.py:580 logs/models.py:585 logs/models.py:590 logs/models.py:600 msgid "Deleted" msgstr "Supprimé(e)" -#: logs/models.py:255 logs/models.py:260 +#: logs/models.py:385 logs/models.py:390 +#: logs/templates/logs/detailed_history.html:52 #: logs/templates/logs/machine_history.html:55 -#: logs/templates/logs/user_history.html:51 msgid "Unknown" msgstr "Inconnu(e)" +#: logs/models.py:588 +msgid "No name" +msgstr "Sans nom" + #: logs/templates/logs/aff_stats_logs.html:36 msgid "Edited object" msgstr "Objet modifié" @@ -90,8 +96,8 @@ msgid "Date of editing" msgstr "Date de modification" #: logs/templates/logs/aff_stats_logs.html:42 +#: logs/templates/logs/detailed_history.html:40 #: logs/templates/logs/machine_history.html:39 -#: logs/templates/logs/user_history.html:39 msgid "Comment" msgstr "Commentaire" @@ -128,7 +134,7 @@ msgid "Rank" msgstr "Rang" #: logs/templates/logs/aff_summary.html:37 -#: logs/templates/logs/user_history.html:36 +#: logs/templates/logs/detailed_history.html:37 msgid "Date" msgstr "Date" @@ -192,6 +198,31 @@ msgstr "" msgid "Confirm" msgstr "Confirmer" +#: logs/templates/logs/detailed_history.html:28 +#: logs/templates/logs/detailed_history.html:85 +msgid "History" +msgstr "Historique" + +#: logs/templates/logs/detailed_history.html:31 +msgid "History of %(object)s" +msgstr "Historique de %(object)s" + +#: logs/templates/logs/detailed_history.html:38 +msgid "Performed by" +msgstr "Effectué(e) par" + +#: logs/templates/logs/detailed_history.html:39 +msgid "Edited" +msgstr "Modifié" + +#: logs/templates/logs/detailed_history.html:75 +msgid "No event" +msgstr "Aucun évènement" + +#: logs/templates/logs/detailed_history.html:80 +msgid "Related elements" +msgstr "Élements liés" + #: logs/templates/logs/index.html:29 logs/templates/logs/stats_general.html:29 #: logs/templates/logs/stats_logs.html:29 #: logs/templates/logs/stats_models.html:29 @@ -200,7 +231,7 @@ msgid "Statistics" msgstr "Statistiques" #: logs/templates/logs/index.html:32 logs/templates/logs/stats_logs.html:32 -#: logs/views.py:421 +#: logs/views.py:427 msgid "Actions performed" msgstr "Actions effectuées" @@ -265,159 +296,138 @@ msgstr "Statistiques sur la base de données" msgid "Statistics about users" msgstr "Statistiques sur les utilisateurs" -#: logs/templates/logs/user_history.html:27 -msgid "History" -msgstr "Historique" - -#: logs/templates/logs/user_history.html:30 -#, python-format -msgid "History of %(user)s" -msgstr "Historique de %(user)s" - -#: logs/templates/logs/user_history.html:37 -msgid "Performed by" -msgstr "Effectué(e) par" - -#: logs/templates/logs/user_history.html:38 -msgid "Edited" -msgstr "Modifié" - -#: logs/templates/logs/user_history.html:74 -msgid "No event" -msgstr "Aucun évènement" - -#: logs/views.py:178 +#: logs/views.py:184 msgid "Nonexistent revision." msgstr "Révision inexistante." -#: logs/views.py:181 +#: logs/views.py:187 msgid "The action was deleted." msgstr "L'action a été supprimée." -#: logs/views.py:222 +#: logs/views.py:228 msgid "Category" msgstr "Catégorie" -#: logs/views.py:223 +#: logs/views.py:229 msgid "Number of users (members and clubs)" msgstr "Nombre d'utilisateurs (adhérents et clubs)" -#: logs/views.py:224 +#: logs/views.py:230 msgid "Number of members" msgstr "Nombre d'adhérents" -#: logs/views.py:225 +#: logs/views.py:231 msgid "Number of clubs" msgstr "Nombre de clubs" -#: logs/views.py:229 +#: logs/views.py:235 msgid "Activated users" msgstr "Utilisateurs activés" -#: logs/views.py:235 +#: logs/views.py:241 msgid "Disabled users" msgstr "Utilisateurs désactivés" -#: logs/views.py:241 +#: logs/views.py:247 msgid "Archived users" msgstr "Utilisateurs archivés" -#: logs/views.py:247 +#: logs/views.py:253 msgid "Fully archived users" msgstr "Utilisateurs complètement archivés" -#: logs/views.py:257 +#: logs/views.py:263 msgid "Not yet active users" msgstr "Utilisateurs pas encore actifs" -#: logs/views.py:267 +#: logs/views.py:273 msgid "Contributing members" msgstr "Adhérents cotisants" -#: logs/views.py:273 +#: logs/views.py:279 msgid "Users benefiting from a connection" msgstr "Utilisateurs bénéficiant d'une connexion" -#: logs/views.py:279 +#: logs/views.py:285 msgid "Banned users" msgstr "Utilisateurs bannis" -#: logs/views.py:285 +#: logs/views.py:291 msgid "Users benefiting from a free connection" msgstr "Utilisateurs bénéficiant d'une connexion gratuite" -#: logs/views.py:291 +#: logs/views.py:297 msgid "Users with a confirmed email" msgstr "Utilisateurs ayant un mail confirmé" -#: logs/views.py:297 +#: logs/views.py:303 msgid "Users with an unconfirmed email" msgstr "Utilisateurs ayant un mail non confirmé" -#: logs/views.py:303 +#: logs/views.py:309 msgid "Users pending email confirmation" msgstr "Utilisateurs en attente de confirmation du mail" -#: logs/views.py:309 +#: logs/views.py:315 msgid "Active interfaces (with access to the network)" msgstr "Interfaces actives (ayant accès au réseau)" -#: logs/views.py:323 +#: logs/views.py:329 msgid "Active interfaces assigned IPv4" msgstr "Interfaces actives assignées IPv4" -#: logs/views.py:340 +#: logs/views.py:346 msgid "IP range" msgstr "Plage d'IP" -#: logs/views.py:341 +#: logs/views.py:347 msgid "VLAN" msgstr "VLAN" -#: logs/views.py:342 +#: logs/views.py:348 msgid "Total number of IP addresses" msgstr "Nombre total d'adresses IP" -#: logs/views.py:343 +#: logs/views.py:349 msgid "Number of assigned IP addresses" msgstr "Nombre d'adresses IP assignées" -#: logs/views.py:344 +#: logs/views.py:350 msgid "Number of IP address assigned to an activated machine" msgstr "Nombre d'adresses IP assignées à une machine activée" -#: logs/views.py:345 +#: logs/views.py:351 msgid "Number of unassigned IP addresses" msgstr "Nombre d'adresses IP non assignées" -#: logs/views.py:360 +#: logs/views.py:366 msgid "Users (members and clubs)" msgstr "Utilisateurs (adhérents et clubs)" -#: logs/views.py:406 +#: logs/views.py:412 msgid "Topology" msgstr "Topologie" -#: logs/views.py:422 +#: logs/views.py:428 msgid "Number of actions" msgstr "Nombre d'actions" -#: logs/views.py:447 +#: logs/views.py:453 msgid "rights" msgstr "droits" -#: logs/views.py:476 +#: logs/views.py:482 msgid "actions" msgstr "actions" -#: logs/views.py:554 -msgid "No model found." -msgstr "Aucun modèle trouvé." - -#: logs/views.py:560 +#: logs/views.py:526 msgid "Nonexistent entry." msgstr "Entrée inexistante." -#: logs/views.py:567 +#: logs/views.py:534 msgid "You don't have the right to access this menu." msgstr "Vous n'avez pas le droit d'accéder à ce menu." + +#: logs/views.py:559 logs/views.py:606 +msgid "No model found." +msgstr "Aucun modèle trouvé." diff --git a/machines/locale/fr/LC_MESSAGES/django.po b/machines/locale/fr/LC_MESSAGES/django.po index 5013ea49..81109ef4 100644 --- a/machines/locale/fr/LC_MESSAGES/django.po +++ b/machines/locale/fr/LC_MESSAGES/django.po @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: 2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-04-23 14:44+0200\n" +"POT-Creation-Date: 2020-04-23 20:09+0200\n" "PO-Revision-Date: 2018-06-23 16:35+0200\n" "Last-Translator: Laouen Fernet \n" "Language-Team: \n" diff --git a/multi_op/locale/fr/LC_MESSAGES/django.po b/multi_op/locale/fr/LC_MESSAGES/django.po index f4daa664..026a1da2 100644 --- a/multi_op/locale/fr/LC_MESSAGES/django.po +++ b/multi_op/locale/fr/LC_MESSAGES/django.po @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: 2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-04-23 14:44+0200\n" +"POT-Creation-Date: 2020-04-23 20:09+0200\n" "PO-Revision-Date: 2019-11-16 00:22+0100\n" "Last-Translator: Laouen Fernet \n" "Language-Team: \n" diff --git a/preferences/locale/fr/LC_MESSAGES/django.po b/preferences/locale/fr/LC_MESSAGES/django.po index 2f109979..00ea2a38 100644 --- a/preferences/locale/fr/LC_MESSAGES/django.po +++ b/preferences/locale/fr/LC_MESSAGES/django.po @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: 2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-04-23 14:44+0200\n" +"POT-Creation-Date: 2020-04-23 20:09+0200\n" "PO-Revision-Date: 2018-06-24 15:54+0200\n" "Last-Translator: Laouen Fernet \n" "Language-Team: \n" @@ -342,13 +342,13 @@ msgid "Maximum number of local email addresses for a standard user." msgstr "" "Nombre maximum d'adresses mail locales autorisé pour un utilisateur standard." -#: preferences/models.py:122 +#: preferences/models.py:125 msgid "Not yet active users will be deleted after this number of days." msgstr "" "Les utilisateurs n'ayant jamais adhéré seront supprimés après ce nombre de " "jours." -#: preferences/models.py:127 +#: preferences/models.py:130 msgid "" "Users with an email address not yet confirmed will be disabled after this " "number of days." @@ -356,11 +356,11 @@ msgstr "" "Les utilisateurs n'ayant pas confirmé leur addresse mail seront désactivés " "après ce nombre de jours" -#: preferences/models.py:131 +#: preferences/models.py:134 msgid "A new user can create their account on Re2o." msgstr "Un nouvel utilisateur peut créer son compte sur Re2o." -#: preferences/models.py:136 +#: preferences/models.py:139 msgid "" "If True, all new created and connected users are active. If False, only when " "a valid registration has been paid." @@ -368,7 +368,7 @@ msgstr "" "Si True, tous les nouveaux utilisations créés et connectés sont actifs. Si " "False, seulement quand une inscription validée a été payée." -#: preferences/models.py:143 +#: preferences/models.py:146 msgid "" "If True, users have the choice to receive an email containing a link to " "reset their password during creation, or to directly set their password in " @@ -379,172 +379,172 @@ msgstr "" "de choisir leur mot de passe immédiatement. Si False, un mail est toujours " "envoyé." -#: preferences/models.py:150 +#: preferences/models.py:153 msgid "If True, archived users are allowed to connect." msgstr "Si True, les utilisateurs archivés sont autorisés à se connecter." -#: preferences/models.py:154 +#: preferences/models.py:157 msgid "Can view the user preferences" msgstr "Peut voir les préférences d'utilisateur" -#: preferences/models.py:155 +#: preferences/models.py:158 msgid "user preferences" msgstr "Préférences d'utilisateur" -#: preferences/models.py:162 +#: preferences/models.py:165 msgid "Email domain must begin with @." msgstr "Un domaine mail doit commencer par @." -#: preferences/models.py:180 +#: preferences/models.py:183 msgid "Automatic configuration by RA" msgstr "Configuration automatique par RA" -#: preferences/models.py:181 +#: preferences/models.py:184 msgid "IP addresses assignment by DHCPv6" msgstr "Attribution d'adresses IP par DHCPv6" -#: preferences/models.py:182 +#: preferences/models.py:185 msgid "Disabled" msgstr "Désactivé" -#: preferences/models.py:191 +#: preferences/models.py:194 msgid "default Time To Live (TTL) for CNAME, A and AAAA records" msgstr "" "Temps de vie (TTL) par défault pour des enregistrements CNAME, A et AAAA" -#: preferences/models.py:201 +#: preferences/models.py:204 msgid "Can view the machine preferences" msgstr "Peut voir les préférences de machine" -#: preferences/models.py:202 +#: preferences/models.py:205 msgid "machine preferences" msgstr "Préférences de machine" -#: preferences/models.py:222 preferences/models.py:684 +#: preferences/models.py:225 preferences/models.py:687 msgid "On the IP range's VLAN of the machine" msgstr "Sur le VLAN de la plage d'IP de la machine" -#: preferences/models.py:223 preferences/models.py:685 +#: preferences/models.py:226 preferences/models.py:688 msgid "Preset in \"VLAN for machines accepted by RADIUS\"" msgstr "Prédéfinie dans « VLAN pour les machines acceptées par RADIUS »" -#: preferences/models.py:229 +#: preferences/models.py:232 msgid "Web management, activated in case of automatic provision." msgstr "Gestion web, activée en cas de provision automatique." -#: preferences/models.py:234 +#: preferences/models.py:237 msgid "" "SSL web management, make sure that a certificate is installed on the switch." msgstr "" "Gestion web SSL, vérifiez qu'un certificat est installé sur le commutateur " "réseau." -#: preferences/models.py:240 +#: preferences/models.py:243 msgid "REST management, activated in case of automatic provision." msgstr "Gestion REST, activée en cas de provision automatique." -#: preferences/models.py:247 +#: preferences/models.py:250 msgid "IP range for the management of switches." msgstr "Plage d'IP pour la gestion des commutateurs réseau." -#: preferences/models.py:253 +#: preferences/models.py:256 msgid "Provision of configuration mode for switches." msgstr "Mode de provision de configuration pour les commutateurs réseau." -#: preferences/models.py:256 +#: preferences/models.py:259 msgid "SFTP login for switches." msgstr "Identifiant SFTP pour les commutateurs réseau." -#: preferences/models.py:259 +#: preferences/models.py:262 msgid "SFTP password." msgstr "Mot de passe SFTP." -#: preferences/models.py:364 +#: preferences/models.py:367 msgid "Can view the topology preferences" msgstr "Peut voir les préférences de topologie" -#: preferences/models.py:366 +#: preferences/models.py:369 msgid "topology preferences" msgstr "préférences de topologie" -#: preferences/models.py:379 +#: preferences/models.py:382 msgid "RADIUS key." msgstr "Clé RADIUS." -#: preferences/models.py:381 +#: preferences/models.py:384 msgid "Comment for this key." msgstr "Commentaire pour cette clé." -#: preferences/models.py:384 +#: preferences/models.py:387 msgid "Default key for switches." msgstr "Clé par défaut pour les commutateurs réseau." -#: preferences/models.py:388 +#: preferences/models.py:391 msgid "Can view a RADIUS key object" msgstr "Peut voir un objet clé RADIUS" -#: preferences/models.py:389 preferences/views.py:335 +#: preferences/models.py:392 preferences/views.py:335 msgid "RADIUS key" msgstr "Clé RADIUS" -#: preferences/models.py:390 -#: preferences/templates/preferences/display_preferences.html:221 +#: preferences/models.py:393 +#: preferences/templates/preferences/display_preferences.html:223 msgid "RADIUS keys" msgstr "clés RADIUS" -#: preferences/models.py:397 +#: preferences/models.py:400 msgid "Default RADIUS key for switches already exists." msgstr "Clé par défaut pour les commutateurs réseau." -#: preferences/models.py:400 +#: preferences/models.py:403 msgid "RADIUS key " msgstr "clé RADIUS " -#: preferences/models.py:406 +#: preferences/models.py:409 msgid "Switch login." msgstr "Identifiant du commutateur réseau." -#: preferences/models.py:407 +#: preferences/models.py:410 msgid "Password." msgstr "Mot de passe." -#: preferences/models.py:409 +#: preferences/models.py:412 msgid "Default credentials for switches." msgstr "Identifiants par défaut pour les commutateurs réseau." -#: preferences/models.py:416 +#: preferences/models.py:419 msgid "Can view a switch management credentials object" msgstr "Peut voir un objet identifiants de gestion de commutateur réseau" -#: preferences/models.py:419 preferences/views.py:397 +#: preferences/models.py:422 preferences/views.py:397 msgid "switch management credentials" msgstr "identifiants de gestion de commutateur réseau" -#: preferences/models.py:422 +#: preferences/models.py:425 msgid "Switch login " msgstr "Identifiant du commutateur réseau " -#: preferences/models.py:434 +#: preferences/models.py:437 msgid "Delay between the email and the membership's end." msgstr "Délai entre le mail et la fin d'adhésion." -#: preferences/models.py:440 +#: preferences/models.py:443 msgid "Message displayed specifically for this reminder." msgstr "Message affiché spécifiquement pour ce rappel." -#: preferences/models.py:444 +#: preferences/models.py:447 msgid "Can view a reminder object" msgstr "Peut voir un objet rappel" -#: preferences/models.py:445 preferences/views.py:280 +#: preferences/models.py:448 preferences/views.py:280 msgid "reminder" msgstr "rappel" -#: preferences/models.py:446 +#: preferences/models.py:449 msgid "reminders" msgstr "rappels" -#: preferences/models.py:467 +#: preferences/models.py:470 msgid "" "General message displayed on the French version of the website (e.g. in case " "of maintenance)." @@ -552,7 +552,7 @@ msgstr "" "Message général affiché sur la version française du site (ex : en cas de " "maintenance)." -#: preferences/models.py:475 +#: preferences/models.py:478 msgid "" "General message displayed on the English version of the website (e.g. in " "case of maintenance)." @@ -560,75 +560,75 @@ msgstr "" "Message général affiché sur la version anglaise du site (ex : en cas de " "maintenance)." -#: preferences/models.py:490 +#: preferences/models.py:493 msgid "Can view the general preferences" msgstr "Peut voir les préférences générales" -#: preferences/models.py:491 +#: preferences/models.py:494 msgid "general preferences" msgstr "préférences générales" -#: preferences/models.py:511 +#: preferences/models.py:514 msgid "Can view the service preferences" msgstr "Peut voir les préférences de service" -#: preferences/models.py:512 preferences/views.py:231 +#: preferences/models.py:515 preferences/views.py:231 msgid "service" msgstr "service" -#: preferences/models.py:513 +#: preferences/models.py:516 msgid "services" msgstr "services" -#: preferences/models.py:523 +#: preferences/models.py:526 msgid "Contact email address." msgstr "Adresse mail de contact." -#: preferences/models.py:529 +#: preferences/models.py:532 msgid "Description of the associated email address." msgstr "Description de l'adresse mail associée." -#: preferences/models.py:539 +#: preferences/models.py:542 msgid "Can view a contact email address object" msgstr "Peut voir un objet adresse mail de contact" -#: preferences/models.py:541 +#: preferences/models.py:544 msgid "contact email address" msgstr "adresse mail de contact" -#: preferences/models.py:542 +#: preferences/models.py:545 msgid "contact email addresses" msgstr "adresses mail de contact" -#: preferences/models.py:550 preferences/views.py:635 +#: preferences/models.py:553 preferences/views.py:635 msgid "mandate" msgstr "mandat" -#: preferences/models.py:551 +#: preferences/models.py:554 msgid "mandates" msgstr "mandats" -#: preferences/models.py:552 +#: preferences/models.py:555 msgid "Can view a mandate object" msgstr "Peut voir un objet mandat" -#: preferences/models.py:559 +#: preferences/models.py:562 msgid "president of the association" msgstr "président de l'association" -#: preferences/models.py:560 +#: preferences/models.py:563 msgid "Displayed on subscription vouchers." msgstr "Affiché sur les reçus de cotisation." -#: preferences/models.py:562 +#: preferences/models.py:565 msgid "start date" msgstr "date de début" -#: preferences/models.py:563 +#: preferences/models.py:566 msgid "end date" msgstr "date de fin" -#: preferences/models.py:577 +#: preferences/models.py:580 msgid "" "No mandates have been created. Please go to the preferences page to create " "one." @@ -636,140 +636,140 @@ msgstr "" "Aucun mandat n'a été créé. Veuillez vous rendre sur la page de préférences " "pour en créer un." -#: preferences/models.py:593 +#: preferences/models.py:596 msgid "Networking organisation school Something" msgstr "Association de réseau de l'école Machin" -#: preferences/models.py:596 +#: preferences/models.py:599 msgid "Threadneedle Street" msgstr "1 rue de la Vrillière" -#: preferences/models.py:597 +#: preferences/models.py:600 msgid "London EC2R 8AH" msgstr "75001 Paris" -#: preferences/models.py:600 +#: preferences/models.py:603 msgid "Organisation" msgstr "Association" -#: preferences/models.py:607 +#: preferences/models.py:610 msgid "Can view the organisation preferences" msgstr "Peut voir les préférences d'association" -#: preferences/models.py:608 +#: preferences/models.py:611 msgid "organisation preferences" msgstr "préférences d'association" -#: preferences/models.py:626 +#: preferences/models.py:629 msgid "Can view the homepage preferences" msgstr "Peut voir les préférences de page d'accueil" -#: preferences/models.py:627 +#: preferences/models.py:630 msgid "homepage preferences" msgstr "Préférences de page d'accueil" -#: preferences/models.py:641 +#: preferences/models.py:644 msgid "Welcome email in French." msgstr "Mail de bienvenue en français." -#: preferences/models.py:644 +#: preferences/models.py:647 msgid "Welcome email in English." msgstr "Mail de bienvenue en anglais." -#: preferences/models.py:649 +#: preferences/models.py:652 msgid "Can view the email message preferences" msgstr "Peut voir les préférences de message pour les mails" -#: preferences/models.py:651 +#: preferences/models.py:654 msgid "email message preferences" msgstr "préférences de messages pour les mails" -#: preferences/models.py:656 +#: preferences/models.py:659 msgid "RADIUS attribute" msgstr "attribut RADIUS" -#: preferences/models.py:657 +#: preferences/models.py:660 msgid "RADIUS attributes" msgstr "attributs RADIUS" -#: preferences/models.py:661 preferences/views.py:588 +#: preferences/models.py:664 preferences/views.py:588 msgid "attribute" msgstr "attribut" -#: preferences/models.py:662 +#: preferences/models.py:665 msgid "See https://freeradius.org/rfc/attributes.html." msgstr "Voir https://freeradius.org/rfc/attributes.html." -#: preferences/models.py:664 +#: preferences/models.py:667 msgid "value" msgstr "valeur" -#: preferences/models.py:666 +#: preferences/models.py:669 msgid "comment" msgstr "commentaire" -#: preferences/models.py:667 +#: preferences/models.py:670 msgid "Use this field to document this attribute." msgstr "Utilisez ce champ pour documenter cet attribut." -#: preferences/models.py:678 +#: preferences/models.py:681 msgid "RADIUS policy" msgstr "politique de RADIUS" -#: preferences/models.py:679 -#: preferences/templates/preferences/display_preferences.html:299 +#: preferences/models.py:682 +#: preferences/templates/preferences/display_preferences.html:301 msgid "RADIUS policies" msgstr "politiques de RADIUS" -#: preferences/models.py:690 +#: preferences/models.py:693 msgid "Reject the machine" msgstr "Rejeter la machine" -#: preferences/models.py:691 +#: preferences/models.py:694 msgid "Place the machine on the VLAN" msgstr "Placer la machine sur le VLAN" -#: preferences/models.py:700 +#: preferences/models.py:703 msgid "policy for unknown machines" msgstr "politique pour les machines inconnues" -#: preferences/models.py:708 +#: preferences/models.py:711 msgid "unknown machines VLAN" msgstr "VLAN pour les machines inconnues" -#: preferences/models.py:709 +#: preferences/models.py:712 msgid "VLAN for unknown machines if not rejected." msgstr "VLAN pour les machines inconnues si non rejeté." -#: preferences/models.py:715 +#: preferences/models.py:718 msgid "unknown machines attributes" msgstr "attributs pour les machines inconnues" -#: preferences/models.py:716 +#: preferences/models.py:719 msgid "Answer attributes for unknown machines." msgstr "Attributs de réponse pour les machines inconnues." -#: preferences/models.py:722 +#: preferences/models.py:725 msgid "policy for unknown ports" msgstr "politique pour les ports inconnus" -#: preferences/models.py:730 +#: preferences/models.py:733 msgid "unknown ports VLAN" msgstr "VLAN pour les ports inconnus" -#: preferences/models.py:731 +#: preferences/models.py:734 msgid "VLAN for unknown ports if not rejected." msgstr "VLAN pour les ports inconnus si non rejeté." -#: preferences/models.py:737 +#: preferences/models.py:740 msgid "unknown ports attributes" msgstr "attributs pour les ports inconnus" -#: preferences/models.py:738 +#: preferences/models.py:741 msgid "Answer attributes for unknown ports." msgstr "Attributs de réponse pour les ports inconnus." -#: preferences/models.py:745 +#: preferences/models.py:748 msgid "" "Policy for machines connecting from unregistered rooms (relevant on ports " "with STRICT RADIUS mode)" @@ -777,87 +777,87 @@ msgstr "" "Politique pour les machines se connectant depuis des chambre non " "enregistrées (pertinent pour les ports avec le mode de RADIUS STRICT)" -#: preferences/models.py:755 +#: preferences/models.py:758 msgid "unknown rooms VLAN" msgstr "VLAN pour les chambres inconnues" -#: preferences/models.py:756 +#: preferences/models.py:759 msgid "VLAN for unknown rooms if not rejected." msgstr "VLAN pour les chambres inconnues si non rejeté." -#: preferences/models.py:762 +#: preferences/models.py:765 msgid "unknown rooms attributes" msgstr "attributs pour les chambres inconnues" -#: preferences/models.py:763 +#: preferences/models.py:766 msgid "Answer attributes for unknown rooms." msgstr "Attributs de réponse pour les chambres inconnues." -#: preferences/models.py:769 +#: preferences/models.py:772 msgid "policy for non members" msgstr "politique pour les non adhérents" -#: preferences/models.py:777 +#: preferences/models.py:780 msgid "non members VLAN" msgstr "VLAN pour les non adhérents" -#: preferences/models.py:778 +#: preferences/models.py:781 msgid "VLAN for non members if not rejected." msgstr "VLAN pour les non adhérents si non rejeté." -#: preferences/models.py:784 +#: preferences/models.py:787 msgid "non members attributes" msgstr "attributs pour les non adhérents" -#: preferences/models.py:785 +#: preferences/models.py:788 msgid "Answer attributes for non members." msgstr "Attributs de réponse pour les non adhérents." -#: preferences/models.py:791 +#: preferences/models.py:794 msgid "policy for banned users" msgstr "politique pour les utilisateurs bannis" -#: preferences/models.py:799 +#: preferences/models.py:802 msgid "banned users VLAN" msgstr "VLAN pour les utilisateurs bannis" -#: preferences/models.py:800 +#: preferences/models.py:803 msgid "VLAN for banned users if not rejected." msgstr "VLAN pour les utilisateurs bannis si non rejeté." -#: preferences/models.py:806 +#: preferences/models.py:809 msgid "banned users attributes" msgstr "attributs pour les utilisateurs bannis" -#: preferences/models.py:807 +#: preferences/models.py:810 msgid "Answer attributes for banned users." msgstr "Attributs de réponse pour les utilisateurs bannis." -#: preferences/models.py:820 +#: preferences/models.py:823 msgid "accepted users attributes" msgstr "attributs pour les utilisateurs acceptés" -#: preferences/models.py:821 +#: preferences/models.py:824 msgid "Answer attributes for accepted users." msgstr "Attributs de réponse pour les utilisateurs acceptés." -#: preferences/models.py:848 +#: preferences/models.py:851 msgid "subscription preferences" msgstr "préférences de cotisation" -#: preferences/models.py:852 +#: preferences/models.py:855 msgid "template for invoices" msgstr "modèle pour les factures" -#: preferences/models.py:859 +#: preferences/models.py:862 msgid "template for subscription vouchers" msgstr "modèle pour les reçus de cotisation" -#: preferences/models.py:865 +#: preferences/models.py:868 msgid "send voucher by email when the invoice is controlled" msgstr "envoyer le reçu par mail quand la facture est contrôlée" -#: preferences/models.py:867 +#: preferences/models.py:870 msgid "" "Be careful, if no mandate is defined on the preferences page, errors will be " "triggered when generating vouchers." @@ -865,19 +865,19 @@ msgstr "" "Faites attention, si aucun mandat n'est défini sur la page de préférences, " "des erreurs seront déclenchées en générant des reçus." -#: preferences/models.py:879 +#: preferences/models.py:882 msgid "template" msgstr "modèle" -#: preferences/models.py:880 +#: preferences/models.py:883 msgid "name" msgstr "nom" -#: preferences/models.py:883 +#: preferences/models.py:886 msgid "document template" msgstr "modèle de document" -#: preferences/models.py:884 +#: preferences/models.py:887 msgid "document templates" msgstr "modèles de document" diff --git a/re2o/locale/fr/LC_MESSAGES/django.po b/re2o/locale/fr/LC_MESSAGES/django.po index 942bab4a..625eda15 100644 --- a/re2o/locale/fr/LC_MESSAGES/django.po +++ b/re2o/locale/fr/LC_MESSAGES/django.po @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: 2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-04-23 14:44+0200\n" +"POT-Creation-Date: 2020-04-23 20:09+0200\n" "PO-Revision-Date: 2018-03-31 16:09+0002\n" "Last-Translator: Laouen Fernet \n" "Language-Team: \n" diff --git a/search/locale/fr/LC_MESSAGES/django.po b/search/locale/fr/LC_MESSAGES/django.po index d9828af5..e33d68fd 100644 --- a/search/locale/fr/LC_MESSAGES/django.po +++ b/search/locale/fr/LC_MESSAGES/django.po @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: 2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-04-23 14:44+0200\n" +"POT-Creation-Date: 2020-04-23 20:09+0200\n" "PO-Revision-Date: 2018-06-24 20:10+0200\n" "Last-Translator: Laouen Fernet \n" "Language-Team: \n" diff --git a/templates/locale/fr/LC_MESSAGES/django.po b/templates/locale/fr/LC_MESSAGES/django.po index 5dae6c1d..7187c189 100644 --- a/templates/locale/fr/LC_MESSAGES/django.po +++ b/templates/locale/fr/LC_MESSAGES/django.po @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: 2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-04-23 14:44+0200\n" +"POT-Creation-Date: 2020-04-23 20:09+0200\n" "PO-Revision-Date: 2018-03-31 16:09+0002\n" "Last-Translator: Laouen Fernet \n" "Language-Team: \n" @@ -240,7 +240,8 @@ msgstr "" msgid "Edit" msgstr "Modifier" -#: templates/buttons/history.html:26 templates/buttons/history.html:27 +#: templates/buttons/history.html:28 templates/buttons/history.html:29 +#: templates/buttons/history.html:32 templates/buttons/history.html:33 msgid "History" msgstr "" diff --git a/tickets/locale/fr/LC_MESSAGES/django.po b/tickets/locale/fr/LC_MESSAGES/django.po index 4ac73acc..bb56a162 100644 --- a/tickets/locale/fr/LC_MESSAGES/django.po +++ b/tickets/locale/fr/LC_MESSAGES/django.po @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: 2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-04-23 14:44+0200\n" +"POT-Creation-Date: 2020-04-23 20:09+0200\n" "PO-Revision-Date: 2019-11-16 00:35+0100\n" "Last-Translator: Laouen Fernet \n" "Language-Team: \n" diff --git a/topologie/locale/fr/LC_MESSAGES/django.po b/topologie/locale/fr/LC_MESSAGES/django.po index 53a55c1a..ee5bfb93 100644 --- a/topologie/locale/fr/LC_MESSAGES/django.po +++ b/topologie/locale/fr/LC_MESSAGES/django.po @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: 2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-04-23 14:44+0200\n" +"POT-Creation-Date: 2020-04-23 20:09+0200\n" "PO-Revision-Date: 2018-06-25 14:53+0200\n" "Last-Translator: Laouen Fernet \n" "Language-Team: \n" diff --git a/users/locale/fr/LC_MESSAGES/django.po b/users/locale/fr/LC_MESSAGES/django.po index fce3163a..f5029a64 100644 --- a/users/locale/fr/LC_MESSAGES/django.po +++ b/users/locale/fr/LC_MESSAGES/django.po @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: 2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-04-23 14:44+0200\n" +"POT-Creation-Date: 2020-04-23 20:09+0200\n" "PO-Revision-Date: 2018-06-27 23:35+0200\n" "Last-Translator: Laouen Fernet \n" "Language-Team: \n" @@ -56,7 +56,7 @@ msgid "The current password is incorrect." msgstr "Le mot de passe actuel est incorrect." #: users/forms.py:133 users/forms.py:181 users/forms.py:405 -#: users/models.py:1912 +#: users/models.py:1936 msgid "Password" msgstr "Mot de passe" @@ -109,7 +109,7 @@ msgstr "Prénom" msgid "Surname" msgstr "Nom" -#: users/forms.py:321 users/forms.py:536 users/models.py:1912 +#: users/forms.py:321 users/forms.py:536 users/models.py:1936 #: users/templates/users/aff_emailaddress.html:36 #: users/templates/users/profil.html:209 msgid "Email address" @@ -323,7 +323,7 @@ msgstr "Non confirmé" msgid "Waiting for email confirmation" msgstr "En attente de confirmation" -#: users/models.py:204 users/models.py:1565 +#: users/models.py:204 users/models.py:1589 msgid "Must only contain letters, numerals or dashes." msgstr "Doit seulement contenir des lettres, chiffres ou tirets." @@ -365,66 +365,72 @@ msgstr "Peut forcer le déménagement" msgid "Can edit the shell of a user" msgstr "Peut modifier l'interface en ligne de commande d'un utilisateur" -#: users/models.py:257 +#: users/models.py:255 +#, fuzzy +#| msgid "Can edit the state of a user" +msgid "Can edit the pseudo of a user" +msgstr "Peut changer l'état d'un utilisateur" + +#: users/models.py:258 msgid "Can edit the groups of rights of a user (critical permission)" msgstr "" "Peut modifier les groupes de droits d'un utilisateur (permission critique)" -#: users/models.py:259 +#: users/models.py:260 msgid "Can edit all users, including those with rights" msgstr "" "Peut modifier tous les utilisateurs, y compris ceux possédant des droits" -#: users/models.py:260 +#: users/models.py:261 msgid "Can view a user object" msgstr "Peut voir un objet utilisateur" -#: users/models.py:262 +#: users/models.py:263 msgid "user (member or club)" msgstr "utilisateur (adhérent ou club)" -#: users/models.py:263 +#: users/models.py:264 msgid "users (members or clubs)" msgstr "utilisateurs (adhérents ou clubs)" -#: users/models.py:281 users/models.py:309 users/models.py:319 +#: users/models.py:282 users/models.py:310 users/models.py:320 msgid "Unknown type." msgstr "Type inconnu." -#: users/models.py:315 users/templates/users/aff_listright.html:75 +#: users/models.py:316 users/templates/users/aff_listright.html:75 #: users/templates/users/aff_listright.html:180 msgid "Member" msgstr "Adhérent" -#: users/models.py:317 +#: users/models.py:318 msgid "Club" msgstr "Club" -#: users/models.py:896 +#: users/models.py:897 msgid "Maximum number of registered machines reached." msgstr "Nombre maximum de machines enregistrées atteint." -#: users/models.py:898 +#: users/models.py:899 msgid "Re2o doesn't know wich machine type to assign." msgstr "Re2o ne sait pas quel type de machine attribuer." -#: users/models.py:921 users/templates/users/user_autocapture.html:64 +#: users/models.py:922 users/templates/users/user_autocapture.html:64 msgid "OK" msgstr "OK" -#: users/models.py:1019 +#: users/models.py:1020 msgid "This user is archived." msgstr "Cet utilisateur est archivé." -#: users/models.py:1033 users/models.py:1087 +#: users/models.py:1034 users/models.py:1088 msgid "You don't have the right to edit this club." msgstr "Vous n'avez pas le droit de modifier ce club." -#: users/models.py:1045 +#: users/models.py:1046 msgid "User with critical rights, can't be edited." msgstr "Utilisateur avec des droits critiques, ne peut être modifié." -#: users/models.py:1052 +#: users/models.py:1053 msgid "" "Impossible to edit the organisation's user without the \"change_all_users\" " "right." @@ -432,257 +438,263 @@ msgstr "" "Impossible de modifier l'utilisateur de l'association sans le droit « " "change_all_users »." -#: users/models.py:1064 users/models.py:1102 +#: users/models.py:1065 users/models.py:1103 msgid "You don't have the right to edit another user." msgstr "Vous n'avez pas le droit de modifier un autre utilisateur." -#: users/models.py:1128 +#: users/models.py:1129 msgid "You don't have the right to change the room." msgstr "Vous n'avez pas le droit de changer la chambre." -#: users/models.py:1145 +#: users/models.py:1146 msgid "You don't have the right to change the state." msgstr "Vous n'avez pas le droit de changer l'état." -#: users/models.py:1165 +#: users/models.py:1166 msgid "You don't have the right to change the shell." msgstr "Vous n'avez pas le droit de changer l'interface en ligne de commande." -#: users/models.py:1182 users/models.py:1197 +#: users/models.py:1188 +#, fuzzy +#| msgid "You don't have the right to change the state." +msgid "You don't have the right to change the pseudo." +msgstr "Vous n'avez pas le droit de changer l'état." + +#: users/models.py:1205 users/models.py:1220 msgid "Local email accounts must be enabled." msgstr "Les comptes mail locaux doivent être activés." -#: users/models.py:1212 +#: users/models.py:1235 msgid "You don't have the right to force the move." msgstr "Vous n'avez pas le droit de forcer le déménagement." -#: users/models.py:1227 +#: users/models.py:1250 msgid "You don't have the right to edit the user's groups of rights." msgstr "" "Vous n'avez pas le droit de modifier les groupes de droits d'un autre " "utilisateur." -#: users/models.py:1243 +#: users/models.py:1266 msgid "\"superuser\" right required to edit the superuser flag." msgstr "Droit « superuser » requis pour modifier le signalement superuser." -#: users/models.py:1268 +#: users/models.py:1291 msgid "You don't have the right to view this club." msgstr "Vous n'avez pas le droit de voir ce club." -#: users/models.py:1277 +#: users/models.py:1300 msgid "You don't have the right to view another user." msgstr "Vous n'avez pas le droit de voir un autre utilisateur." -#: users/models.py:1292 users/models.py:1501 +#: users/models.py:1315 users/models.py:1525 msgid "You don't have the right to view the list of users." msgstr "Vous n'avez pas le droit de voir la liste des utilisateurs." -#: users/models.py:1309 +#: users/models.py:1332 msgid "You don't have the right to delete this user." msgstr "Vous n'avez pas le droit de supprimer cet utilisateur." -#: users/models.py:1330 +#: users/models.py:1354 msgid "This username is already used." msgstr "Ce pseudo est déjà utilisé." -#: users/models.py:1337 +#: users/models.py:1361 msgid "Email field cannot be empty." msgstr "Le champ mail ne peut pas ^êêtre vide" -#: users/models.py:1344 +#: users/models.py:1368 msgid "You can't use a {} address as an external contact address." msgstr "Vous ne pouvez pas utiliser une adresse {} pour votre adresse externe." -#: users/models.py:1371 +#: users/models.py:1395 msgid "member" msgstr "adhérent" -#: users/models.py:1372 +#: users/models.py:1396 msgid "members" msgstr "adhérents" -#: users/models.py:1389 +#: users/models.py:1413 msgid "A GPG fingerprint must contain 40 hexadecimal characters." msgstr "Une empreinte GPG doit contenir 40 caractères hexadécimaux." -#: users/models.py:1414 +#: users/models.py:1438 msgid "Self registration is disabled." msgstr "L'auto inscription est désactivée." -#: users/models.py:1424 +#: users/models.py:1448 msgid "You don't have the right to create a user." msgstr "Vous n'avez pas le droit de créer un utilisateur." -#: users/models.py:1454 +#: users/models.py:1478 msgid "club" msgstr "club" -#: users/models.py:1455 +#: users/models.py:1479 msgid "clubs" msgstr "clubs" -#: users/models.py:1466 +#: users/models.py:1490 msgid "You must be authenticated." msgstr "Vous devez être authentifié." -#: users/models.py:1474 +#: users/models.py:1498 msgid "You don't have the right to create a club." msgstr "Vous n'avez pas le droit de créer un club." -#: users/models.py:1569 +#: users/models.py:1593 msgid "Comment." msgstr "Commentaire." -#: users/models.py:1575 +#: users/models.py:1599 msgid "Can view a service user object" msgstr "Peut voir un objet utilisateur service" -#: users/models.py:1576 users/views.py:349 +#: users/models.py:1600 users/views.py:349 msgid "service user" msgstr "utilisateur service" -#: users/models.py:1577 +#: users/models.py:1601 msgid "service users" msgstr "utilisateurs service" -#: users/models.py:1581 +#: users/models.py:1605 #, python-brace-format msgid "Service user <{name}>" msgstr "Utilisateur service <{name}>" -#: users/models.py:1648 +#: users/models.py:1672 msgid "Can view a school object" msgstr "Peut voir un objet établissement" -#: users/models.py:1649 +#: users/models.py:1673 msgid "school" msgstr "établissement" -#: users/models.py:1650 +#: users/models.py:1674 msgid "schools" msgstr "établissements" -#: users/models.py:1669 +#: users/models.py:1693 msgid "UNIX group names can only contain lower case letters." msgstr "" "Les noms de groupe UNIX peuvent seulement contenir des lettres minuscules." -#: users/models.py:1675 +#: users/models.py:1699 msgid "Description." msgstr "Description." -#: users/models.py:1678 +#: users/models.py:1702 msgid "Can view a group of rights object" msgstr "Peut voir un objet groupe de droits" -#: users/models.py:1679 +#: users/models.py:1703 msgid "group of rights" msgstr "groupe de droits" -#: users/models.py:1680 +#: users/models.py:1704 msgid "groups of rights" msgstr "groupes de droits" -#: users/models.py:1725 +#: users/models.py:1749 msgid "Can view a shell object" msgstr "Peut voir un objet interface en ligne de commande" -#: users/models.py:1726 users/views.py:649 +#: users/models.py:1750 users/views.py:649 msgid "shell" msgstr "interface en ligne de commande" -#: users/models.py:1727 +#: users/models.py:1751 msgid "shells" msgstr "interfaces en ligne de commande" -#: users/models.py:1745 +#: users/models.py:1769 msgid "HARD (no access)" msgstr "HARD (pas d'accès)" -#: users/models.py:1746 +#: users/models.py:1770 msgid "SOFT (local access only)" msgstr "SOFT (accès local uniquement)" -#: users/models.py:1747 +#: users/models.py:1771 msgid "RESTRICTED (speed limitation)" msgstr "RESTRICTED (limitation de vitesse)" -#: users/models.py:1758 +#: users/models.py:1782 msgid "Can view a ban object" msgstr "Peut voir un objet bannissement" -#: users/models.py:1759 users/views.py:400 +#: users/models.py:1783 users/views.py:400 msgid "ban" msgstr "bannissement" -#: users/models.py:1760 +#: users/models.py:1784 msgid "bans" msgstr "bannissements" -#: users/models.py:1797 +#: users/models.py:1821 msgid "You don't have the right to view other bans than yours." msgstr "" "Vous n'avez pas le droit de voir d'autres bannissements que les vôtres." -#: users/models.py:1845 +#: users/models.py:1869 msgid "Can view a whitelist object" msgstr "Peut voir un objet accès gracieux" -#: users/models.py:1846 +#: users/models.py:1870 msgid "whitelist (free of charge access)" msgstr "Accès gracieux" -#: users/models.py:1847 +#: users/models.py:1871 msgid "whitelists (free of charge access)" msgstr "Accès gracieux" -#: users/models.py:1867 +#: users/models.py:1891 msgid "You don't have the right to view other whitelists than yours." msgstr "" "Vous n'avez pas le droit de voir d'autres accès gracieux que les vôtres." -#: users/models.py:2065 +#: users/models.py:2089 msgid "User of the local email account." msgstr "Utilisateur du compte mail local." -#: users/models.py:2068 +#: users/models.py:2092 msgid "Local part of the email address." msgstr "Partie locale de l'adresse mail." -#: users/models.py:2073 +#: users/models.py:2097 msgid "Can view a local email account object" msgstr "Peut voir un objet compte mail local" -#: users/models.py:2075 +#: users/models.py:2099 msgid "local email account" msgstr "compte mail local" -#: users/models.py:2076 +#: users/models.py:2100 msgid "local email accounts" msgstr "comptes mail locaux" -#: users/models.py:2104 users/models.py:2139 users/models.py:2173 -#: users/models.py:2207 +#: users/models.py:2128 users/models.py:2163 users/models.py:2197 +#: users/models.py:2231 msgid "The local email accounts are not enabled." msgstr "Les comptes mail locaux ne sont pas activés." -#: users/models.py:2109 +#: users/models.py:2133 msgid "You don't have the right to add a local email account to another user." msgstr "" "Vous n'avez pas le droit d'ajouter un compte mail local à un autre " "utilisateur." -#: users/models.py:2119 +#: users/models.py:2143 msgid "You reached the limit of {} local email accounts." msgstr "Vous avez atteint la limite de {} comptes mail locaux." -#: users/models.py:2145 +#: users/models.py:2169 msgid "You don't have the right to view another user's local email account." msgstr "" "Vous n'avez pas le droit de voir le compte mail local d'un autre utilisateur." -#: users/models.py:2165 +#: users/models.py:2189 msgid "" "You can't delete a local email account whose local part is the same as the " "username." @@ -690,13 +702,13 @@ msgstr "" "Vous ne pouvez pas supprimer un compte mail local dont la partie locale est " "la même que le pseudo." -#: users/models.py:2179 +#: users/models.py:2203 msgid "You don't have the right to delete another user's local email account." msgstr "" "Vous n'avez pas le droit de supprimer le compte mail local d'un autre " "utilisateur." -#: users/models.py:2199 +#: users/models.py:2223 msgid "" "You can't edit a local email account whose local part is the same as the " "username." @@ -704,13 +716,13 @@ msgstr "" "Vous ne pouvez pas modifier un compte mail local dont la partie locale est " "la même que le pseudo." -#: users/models.py:2213 +#: users/models.py:2237 msgid "You don't have the right to edit another user's local email account." msgstr "" "Vous n'avez pas le droit de modifier le compte mail local d'un autre " "utilisateur." -#: users/models.py:2222 +#: users/models.py:2246 msgid "The local part must not contain @ or +." msgstr "La partie locale ne doit pas contenir @ ou +."