Drop de/es locales, complete fr translations, add navbar language switcher.

This commit is contained in:
krek0 2026-05-03 23:35:24 +02:00
parent 429c44d14a
commit d8f114d931
9 changed files with 309 additions and 929 deletions

View file

@ -1,163 +1,158 @@
# This file is part of photo21
# Copyright (C) 2022 Amicale des élèves de l'ENS Paris-Saclay
# SPDX-License-Identifier: GPL-3.0-or-later
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Project-Id-Version: photo21\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-07 20:03+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"Language-Team: French\n"
"Language: fr\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"
#: .\photo21\forms.py:16
msgid ""
"Please enter a valid email address ending with `@crans.org` or `@ens-paris-"
"saclay.fr`."
msgstr ""
"Veuillez entrer une adresse email valide finissant par `@crans.org` ou `@ens-"
"paris-saclay.fr`."
#: photo21/forms.py:16
msgid "Please enter a valid email address ending with `@ens-rennes.fr`"
msgstr "Veuillez entrer une adresse e-mail valide finissant par `@ens-rennes.fr`."
#: .\photo21\forms.py:29
msgid "Must end with `@crans.org` or `@ens-paris-saclay.fr`."
msgstr "Doit finir par `@crans.org` ou `@ens-paris-saclay.fr`."
#: photo21/forms.py:26
msgid "Must end with `@ens-rennes.fr`."
msgstr "Doit finir par `@ens-rennes.fr`."
#: .\photo21\settings.py:171
msgid "German"
msgstr ""
#: .\photo21\settings.py:172
#: photo21/settings.py:201
msgid "English"
msgstr ""
msgstr "Anglais"
#: .\photo21\settings.py:173
msgid "Spanish"
msgstr ""
#: .\photo21\settings.py:174
#: photo21/settings.py:202
msgid "French"
msgstr ""
msgstr "Français"
#: .\photo21\templates\400.html:12
#: photo21/templates/400.html:12
msgid "Bad request"
msgstr ""
msgstr "Requête incorrecte"
#: .\photo21\templates\400.html:16
#: photo21/templates/400.html:16
msgid ""
"Sorry, your request was bad. Don't know what could be wrong. An email has "
"been sent to webmasters with the details of the error. You can now drink a "
"coke."
msgstr ""
"Désolé, votre requête était incorrecte. Un e-mail a été envoyé aux "
"administrateurs avec les détails de l'erreur. Vous pouvez aller boire un "
"coca."
#: .\photo21\templates\403.html:12
#: photo21/templates/403.html:12
msgid "Permission denied"
msgstr ""
msgstr "Permission refusée"
#: .\photo21\templates\403.html:15
#: photo21/templates/403.html:15
msgid "You don't have the right to perform this request."
msgstr ""
msgstr "Vous n'avez pas le droit d'effectuer cette requête."
#: .\photo21\templates\403.html:17 .\photo21\templates\404.html:21
#: photo21/templates/403.html:17 photo21/templates/404.html:21
msgid "Exception message:"
msgstr ""
msgstr "Message d'exception :"
#: .\photo21\templates\404.html:12
#: photo21/templates/404.html:12
msgid "Page not found"
msgstr ""
msgstr "Page introuvable"
#: .\photo21\templates\404.html:16
#: photo21/templates/404.html:16
#, python-format
msgid ""
"The requested path <code>%(request_path)s</code> was not found on the server."
msgstr ""
"Le chemin demandé <code>%(request_path)s</code> n'a pas été trouvé sur le "
"serveur."
#: .\photo21\templates\500.html:12
#: photo21/templates/500.html:12
msgid "Server error"
msgstr ""
msgstr "Erreur serveur"
#: .\photo21\templates\500.html:16
#: photo21/templates/500.html:16
msgid ""
"Sorry, an error occurred when processing your request. An email has been "
"sent to webmasters with the detail of the error, and this will be fixed "
"soon. You can go drink a soft."
msgstr ""
"Désolé, une erreur s'est produite lors du traitement de votre requête. Un e-"
"mail a été envoyé aux administrateurs avec les détails de l'erreur, et cela "
"sera corrigé prochainement. Vous pouvez aller boire un soda."
#: .\photo21\templates\account\email.html:8
#: .\photo21\templates\account\email.html:16
#: .\photo21\templates\socialaccount\connections.html:16
#: photo21/templates/account/email.html:8
#: photo21/templates/account/email.html:16
#: photo21/templates/socialaccount/connections.html:16
msgid "E-mail Addresses"
msgstr ""
msgstr "Adresses e-mail"
#: .\photo21\templates\account\email.html:11 .\photo21\templates\base.html:63
#: .\photo21\templates\socialaccount\connections.html:11
#: photo21/templates/account/email.html:11 photo21/templates/base.html:66
#: photo21/templates/socialaccount/connections.html:11
msgid "Account"
msgstr "Compte"
#: .\photo21\templates\account\email.html:19
#: .\photo21\templates\socialaccount\connections.html:19
#: photo21/templates/account/email.html:19
#: photo21/templates/socialaccount/connections.html:19
msgid "Social connections"
msgstr "Connexions sociales"
#: .\photo21\templates\account\email.html:25
#: photo21/templates/account/email.html:25
msgid "The following e-mail addresses are associated with your account:"
msgstr ""
msgstr "Les adresses e-mail suivantes sont associées à votre compte :"
#: .\photo21\templates\account\email.html:36
#: photo21/templates/account/email.html:36
msgid "Verified"
msgstr ""
msgstr "Vérifié"
#: .\photo21\templates\account\email.html:38
#: photo21/templates/account/email.html:38
msgid "Unverified"
msgstr ""
msgstr "Non vérifié"
#: .\photo21\templates\account\email.html:40
#: photo21/templates/account/email.html:40
msgid "Primary"
msgstr ""
msgstr "Principal"
#: .\photo21\templates\account\email.html:46
#: photo21/templates/account/email.html:46
msgid "Make Primary"
msgstr ""
msgstr "Définir comme principal"
#: .\photo21\templates\account\email.html:47
#: photo21/templates/account/email.html:47
msgid "Re-send Verification"
msgstr ""
msgstr "Renvoyer la vérification"
#: .\photo21\templates\account\email.html:48
#: .\photo21\templates\socialaccount\connections.html:47
#: photo21/templates/account/email.html:48
#: photo21/templates/socialaccount/connections.html:47
msgid "Remove"
msgstr ""
msgstr "Supprimer"
#: .\photo21\templates\account\email.html:53
#: photo21/templates/account/email.html:53
msgid "Warning:"
msgstr ""
msgstr "Avertissement :"
#: .\photo21\templates\account\email.html:53
#: photo21/templates/account/email.html:53
msgid ""
"You currently do not have any e-mail address set up. You should really add "
"an e-mail address so you can receive notifications, reset your password, etc."
msgstr ""
"Vous n'avez actuellement aucune adresse e-mail configurée. Vous devriez "
"vraiment en ajouter une pour recevoir des notifications, réinitialiser votre "
"mot de passe, etc."
#: .\photo21\templates\account\email.html:57
#: photo21/templates/account/email.html:57
msgid "Add E-mail Address"
msgstr "Ajouter une Adresse E-mail"
#: .\photo21\templates\account\email.html:62
#: photo21/templates/account/email.html:62
msgid "Add E-mail"
msgstr "Ajouter un E-mail"
#: .\photo21\templates\account\login.html:8
#: .\photo21\templates\account\login.html:36
#: photo21/templates/account/login.html:8
#: photo21/templates/account/login.html:36
msgid "Sign In"
msgstr "Se Connecter"
#: .\photo21\templates\account\login.html:19
#: photo21/templates/account/login.html:19
#, python-format
msgid ""
"Please sign in with one of your existing third party accounts. Or, <a "
@ -168,7 +163,7 @@ msgstr ""
"href=\"%(signup_url)s\">inscrivez-vous</a> pour un compte sur %(site_name)s "
"et identifiez-vous ci-dessous :"
#: .\photo21\templates\account\login.html:26
#: photo21/templates/account/login.html:26
#, python-format
msgid ""
"If you have not created an account yet, then please <a "
@ -177,92 +172,94 @@ msgstr ""
"Si vous n'avez pas déjà créé de compte, veuillez vous <a "
"href=\"%(signup_url)s\">inscrire</a>."
#: .\photo21\templates\account\login.html:39
#: photo21/templates/account/login.html:39
msgid "Forgot Password?"
msgstr "Mot de passe oublié ?"
#: .\photo21\templates\account\login.html:42
#: photo21/templates/account/login.html:42
msgid "If any problem, please contact the server owners at"
msgstr "En cas de problème, contactez les administrateurs à"
#: .\photo21\templates\account\logout.html:8
#: .\photo21\templates\account\logout.html:13
#: .\photo21\templates\account\logout.html:22
#: photo21/templates/account/logout.html:8
#: photo21/templates/account/logout.html:13
#: photo21/templates/account/logout.html:22
msgid "Sign Out"
msgstr "Déconnexion"
#: .\photo21\templates\account\logout.html:16
#: photo21/templates/account/logout.html:16
msgid "Are you sure you want to sign out?"
msgstr ""
msgstr "Êtes-vous sûr de vouloir vous déconnecter ?"
#: .\photo21\templates\account\signup.html:8
#: photo21/templates/account/signup.html:8
msgid "Signup"
msgstr ""
msgstr "Inscription"
#: .\photo21\templates\account\signup.html:13
#: .\photo21\templates\account\signup.html:24
#: photo21/templates/account/signup.html:13
#: photo21/templates/account/signup.html:24
msgid "Sign Up"
msgstr ""
msgstr "S'inscrire"
#: .\photo21\templates\account\signup.html:16
#: photo21/templates/account/signup.html:16
#, python-format
msgid ""
"Already have an account? Then please <a href=\"%(login_url)s\">sign in</a>."
msgstr ""
"Vous avez déjà un compte ? Veuillez alors <a href=\"%(login_url)s\">vous "
"connecter</a>."
#: .\photo21\templates\base.html:16
msgid "The ENS Paris-Saclay pictures server."
msgstr ""
#: photo21/templates/base.html:16
msgid "The ENS Rennes pictures server."
msgstr "Le serveur photos de l'ENS Rennes."
#: .\photo21\templates\base.html:41
#: photo21/templates/base.html:43
msgid "Galleries"
msgstr "Galeries"
#: .\photo21\templates\base.html:46
#: photo21/templates/base.html:48
msgid "Upload"
msgstr "Téléversement"
msgstr "Upload"
#: .\photo21\templates\base.html:51
#: photo21/templates/base.html:53
msgid "Manage"
msgstr "Gestion"
msgstr "Manage"
#: .\photo21\templates\base.html:72
#: photo21/templates/base.html:75
msgid "Log out"
msgstr ""
msgstr "Déconnection"
#: .\photo21\templates\base.html:82
#: photo21/templates/base.html:85
msgid "Log in"
msgstr ""
msgstr "Connection"
#: .\photo21\templates\base.html:91
#: photo21/templates/base.html:94
msgid "Sign up"
msgstr "Inscription"
#: .\photo21\templates\base.html:116
#: photo21/templates/base.html:119
msgid "Connected as"
msgstr "Connecté en tant que"
#: .\photo21\templates\base.html:118
#: photo21/templates/base.html:121
msgid "Source code"
msgstr "Code source"
#: .\photo21\templates\index.html:8
#: photo21/templates/index.html:8
msgid "Home"
msgstr "Accueil"
#: .\photo21\templates\index.html:11
#: photo21/templates/index.html:11
msgid "Welcome to the pictures server!"
msgstr "Bienvenue sur le serveur photos !"
#: .\photo21\templates\index.html:13
#: photo21/templates/index.html:13
msgid ""
"This website aims to collect the pictures and movies taken in the student "
"life of ENS Paris-Saclay or involving its students."
"life of ENS Rennes or involving its students."
msgstr ""
"Ce site à pour objectif de recenser les photos et films pris dans la vie "
"associative de l'ENS Paris-Saclay ou impliquant ses usager·ères."
"Ce site a pour objectif de recenser les photos et films pris dans la vie "
"associative de l'ENS Rennes ou impliquant ses étudiant·es."
#: .\photo21\templates\index.html:20
#: photo21/templates/index.html:20
#, python-format
msgid ""
"The pictures are visible in <a href=\"%(gallery_archive_url)s\">the "
@ -275,73 +272,77 @@ msgstr ""
"photographe et des personnes présentes sur la photo est nécessaire avant "
"toute republication sur un autre site.</b>"
#: .\photo21\templates\index.html:29
msgid ""
"If you want a photo to be deleted, please let us know: <a "
"href=\"mailto:photos@crans.org?subject=[ABUS] Nouvelle requête\" class=\"btn "
"btn-secondary btn-sm\">Abuse request</a>"
msgstr ""
"Si vous souhaitez qu'une photo soit supprimée, signalez le nous : <a "
"href=\"mailto:photos@crans.org?subject=[ABUS] Nouvelle requête\" class=\"btn "
"btn-secondary btn-sm\">Signaler un abus</a>"
#: .\photo21\templates\index.html:36
#: photo21/templates/index.html:30
msgid ""
"If you want to obtain the right to upload pictures, please let us know: <a "
"href=\"mailto:photos@crans.org?subject=[Photographe] Demande de droits "
"href=\"mailto:sinfonie@ens-rennes.fr?subject=[Photographe] Demande de droits "
"photographe\" class=\"btn btn-secondary btn-sm\">Become a photograph</a>"
msgstr ""
"Si vous souhaitez obtenir les droits photographes pour téléverser vos "
"photos, signalez le nous : <a href=\"mailto:photos@crans.org?"
"photos, contactez-nous : <a href=\"mailto:sinfonie@ens-rennes.fr?"
"subject=[Photographe] Demande de droits photographe\" class=\"btn btn-"
"secondary btn-sm\">Devenir photographe</a>"
#: .\photo21\templates\index.html:43
#: photo21/templates/index.html:38
msgid "Last galleries"
msgstr "Galeries récentes"
#: .\photo21\templates\index.html:52
#: photo21/templates/index.html:47
msgid "Behind the scene"
msgstr "Derrière la scène"
msgstr "Behind the scene"
#: .\photo21\templates\index.html:54
#: photo21/templates/index.html:49
msgid ""
"Because we value your privacy, we do not sell the data on this site, unlike "
"many free online platforms. The dedicated server running this website is "
"kindly hosted by the <a href=\"https://www.crans.org/\">Crans</a> at the ENS "
"Paris-Saclay basement. It is not managed by the Crans. Current active "
"administrators are:"
"<!-- This project if a fork of <a href=\"https://gitlab.crans.org/bde/"
"photo21/\">Photo21</a>. --> <!-- Because we value your privacy, we do not "
"sell the data on this site, --> <!-- unlike many free online platforms. --> "
"The dedicated server running this website is kindly hosted by <a "
"href=\"https://sinfonie.org/\">Sinfonie</a> at the ENS Rennes. <!-- Current "
"active administrators are: --> <!--"
msgstr ""
"Comme nous accordons une grande importance au respect de la vie privée, nous "
"ne vendons pas les données de ce site, contrairement à de nombreuses "
"plateformes en ligne gratuites. Le serveur dédié qui fait fonctionner ce "
"site est gentiment hébergé par le <a href=\"https://www.crans.org/\">Crans</"
"a> au sous-sol de l'ENS Paris-Saclay. <b>Il n'est pas géré par le Crans.</b> "
"Les administrateur·trices sont :"
"<!-- Ce projet est un fork de <a href=\"https://gitlab.crans.org/bde/"
"photo21/\">Photo21</a>. --> <!-- Comme nous accordons une grande importance "
"au respect de la vie privée, nous ne vendons pas les données de ce site, --> "
"<!-- contrairement à de nombreuses plateformes en ligne gratuites. --> "
"Le serveur qui fait fonctionner ce site est gentiment hébergé par "
"<a href=\"https://sinfonie.org/\">Sinfonie</a> à l'ENS Rennes. "
"<!-- Les administrateur·trices actuel·les sont : --> <!--"
#: .\photo21\templates\index.html:63
#: photo21/templates/index.html:58
msgid "They should be contacted at"
msgstr "Ils peuvent être contactés à"
#: .\photo21\templates\socialaccount\connections.html:8
#: photo21/templates/socialaccount/connections.html:8
msgid "Account Connections"
msgstr ""
msgstr "Connexions de compte"
#: .\photo21\templates\socialaccount\connections.html:25
#: photo21/templates/socialaccount/connections.html:25
msgid ""
"You can sign in to your account using any of the following third party "
"accounts:"
msgstr ""
"Vous pouvez vous connecter à votre compte en utilisant l'un des comptes "
"tiers suivants :"
#: .\photo21\templates\socialaccount\connections.html:53
#: photo21/templates/socialaccount/connections.html:53
msgid ""
"You currently have no social network accounts connected to this account."
msgstr ""
"Vous n'avez actuellement aucun compte de réseau social connecté à ce compte."
#: .\photo21\templates\socialaccount\connections.html:56
#: photo21/templates/socialaccount/connections.html:56
msgid "Add a 3rd Party Account"
msgstr ""
msgstr "Ajouter un compte tiers"
#: .\photo21\templates\socialaccount\snippets\provider_list.html:20
#: photo21/templates/socialaccount/snippets/provider_list.html:20
msgid "Sign in with"
msgstr "Se Connecter avec"
#~ msgid ""
#~ "If you want a photo to be deleted, please let us know: <a "
#~ "href=\"mailto:photos@crans.org?subject=[ABUS] Nouvelle requête\" "
#~ "class=\"btn btn-secondary btn-sm\">Abuse request</a>"
#~ msgstr ""
#~ "Si vous souhaitez qu'une photo soit supprimée, signalez le nous : <a "
#~ "href=\"mailto:photos@crans.org?subject=[ABUS] Nouvelle requête\" "
#~ "class=\"btn btn-secondary btn-sm\">Signaler un abus</a>"