diff --git a/locale/fr/LC_MESSAGES/django.po b/locale/fr/LC_MESSAGES/django.po
index 3dcbeb0..ebb8b4a 100644
--- a/locale/fr/LC_MESSAGES/django.po
+++ b/locale/fr/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: TFJM\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-04-03 23:12+0200\n"
+"POT-Creation-Date: 2024-04-03 23:21+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Emmy D'Anello
You will oppose the solution of the team {opponent} on the this page.
" msgstr "" "Vous opposerez la solution de l'équipe {opponent} sur le problème {problem}. Vous pouvez envoyer votre " -"note de synthèse sur cette page.
" +"href='{solution_url}'>problème {problem}. Vous pouvez envoyer votre note " +"de synthèse sur cette page." -#: participation/models.py:764 +#: participation/models.py:764 participation/models.py:801 #, python-brace-format msgid "" "You will report the solution of the team {reporter} on the problème {problem}. Vous pouvez envoyer votre note " "de synthèse sur cette page.
" -#: participation/models.py:775 registration/models.py:539 +#: participation/models.py:775 registration/models.py:540 msgid "First round" msgstr "Premier tour" @@ -915,33 +915,11 @@ msgstr "" "Pour le second tour, vous défendrez votre " "solution du problème {problem}.
" -#: participation/models.py:793 -#, python-brace-format -msgid "" -"You will oppose the solution of the team {opponent} on the problem " -"{problem}. You can upload your synthesis sheet on this page.
" -msgstr "" -"Vous opposerez la solution de l'équipe {opponent} sur le problème " -"{problem}. Vous pouvez envoyer votre note de synthèse sur cette page.
" - -#: participation/models.py:799 -#, python-brace-format -msgid "" -"You will report the solution of the team {reporter} on the problem " -"{problem}. You can upload your synthesis sheet on this page.
" -msgstr "" -"Vous rapporterez la solution de l'équipe {reporter} sur le problème " -"{problem}. Vous pouvez envoyer votre note de synthèse sur cette page.
" - -#: participation/models.py:807 registration/models.py:550 +#: participation/models.py:811 registration/models.py:551 msgid "Second round" msgstr "Second tour" -#: participation/models.py:813 +#: participation/models.py:817 #, python-brace-format msgid "" "The tournament {tournament} is ended. You can check the results on the Le tournoi {tournament} est terminé. Vous pouvez consulter les résultats " "sur la page du tournoi.
" -#: participation/models.py:818 +#: participation/models.py:822 msgid "Tournament ended" msgstr "Tournoi terminé" -#: participation/models.py:828 participation/models.py:861 +#: participation/models.py:832 participation/models.py:865 msgid "participations" msgstr "participations" -#: participation/models.py:843 participation/models.py:844 +#: participation/models.py:847 participation/models.py:848 #, python-brace-format msgid "Round {round}" msgstr "Tour {round}" -#: participation/models.py:867 +#: participation/models.py:871 msgid "juries" msgstr "jurys" -#: participation/models.py:876 +#: participation/models.py:880 msgid "president of the jury" msgstr "président⋅e du jury" -#: participation/models.py:883 +#: participation/models.py:887 msgid "BigBlueButton URL" msgstr "Lien BigBlueButton" -#: participation/models.py:884 +#: participation/models.py:888 msgid "The link of the BBB visio for this pool." msgstr "Le lien du salon BBB pour cette poule." -#: participation/models.py:889 +#: participation/models.py:893 msgid "results available" msgstr "résultats disponibles" -#: participation/models.py:890 +#: participation/models.py:894 msgid "" "Check this case when results become accessible to teams. They stay " "accessible to you. Only averages are given." @@ -992,37 +970,37 @@ msgstr "" "Ils restent toujours accessibles pour vous. Seules les moyennes sont " "communiquées." -#: participation/models.py:915 +#: participation/models.py:919 msgid "The president of the jury must be part of the jury." msgstr "Læ président⋅e du jury doit faire partie du jury." -#: participation/models.py:1307 +#: participation/models.py:1311 #, python-brace-format msgid "The jury {jury} is not part of the jury for this pool." msgstr "{jury} ne fait pas partie du jury pour cette poule." -#: participation/models.py:1318 +#: participation/models.py:1322 #, python-brace-format msgid "Pool of day {round} for tournament {tournament} with teams {teams}" msgstr "Poule du jour {round} du tournoi {tournament} avec les équipes {teams}" -#: participation/models.py:1338 +#: participation/models.py:1342 msgid "position" msgstr "position" -#: participation/models.py:1345 +#: participation/models.py:1349 msgid "defended solution" msgstr "solution défendue" -#: participation/models.py:1378 +#: participation/models.py:1382 msgid "observer" msgstr "observateur⋅rice" -#: participation/models.py:1383 +#: participation/models.py:1387 msgid "penalties" msgstr "pénalités" -#: participation/models.py:1385 +#: participation/models.py:1389 msgid "" "Number of penalties for the defender. The defender will loose a 0.5 " "coefficient per penalty." @@ -1030,124 +1008,124 @@ msgstr "" "Nombre de pénalités pour l'équipe défenseuse. Elle perd un coefficient 0.5 " "sur sa présentation orale par pénalité." -#: participation/models.py:1461 participation/models.py:1464 -#: participation/models.py:1467 participation/models.py:1470 +#: participation/models.py:1465 participation/models.py:1468 +#: participation/models.py:1471 participation/models.py:1474 #, python-brace-format msgid "Team {trigram} is not registered in the pool." msgstr "L'équipe {trigram} n'est pas inscrite dans la poule." -#: participation/models.py:1475 +#: participation/models.py:1479 #, python-brace-format msgid "Passage of {defender} for problem {problem}" msgstr "Passage de {defender} pour le problème {problem}" -#: participation/models.py:1479 participation/models.py:1488 -#: participation/models.py:1573 participation/models.py:1615 +#: participation/models.py:1483 participation/models.py:1492 +#: participation/models.py:1577 participation/models.py:1619 msgid "passage" msgstr "passage" -#: participation/models.py:1480 +#: participation/models.py:1484 msgid "passages" msgstr "passages" -#: participation/models.py:1499 +#: participation/models.py:1503 msgid "difference" msgstr "différence" -#: participation/models.py:1500 +#: participation/models.py:1504 msgid "Score to add/remove on the final score" msgstr "Score à ajouter/retrancher au score final" -#: participation/models.py:1507 +#: participation/models.py:1511 msgid "tweak" msgstr "harmonisation" -#: participation/models.py:1508 +#: participation/models.py:1512 msgid "tweaks" msgstr "harmonisations" -#: participation/models.py:1536 +#: participation/models.py:1540 msgid "solution for the final tournament" msgstr "solution pour la finale" -#: participation/models.py:1541 participation/models.py:1584 +#: participation/models.py:1545 participation/models.py:1588 msgid "file" msgstr "fichier" -#: participation/models.py:1551 +#: participation/models.py:1555 #, python-brace-format msgid "Solution of team {team} for problem {problem}" msgstr "Solution de l'équipe {team} pour le problème {problem}" -#: participation/models.py:1553 +#: participation/models.py:1557 msgid "for final" msgstr "pour la finale" -#: participation/models.py:1556 +#: participation/models.py:1560 msgid "solution" msgstr "solution" -#: participation/models.py:1557 +#: participation/models.py:1561 msgid "solutions" msgstr "solutions" -#: participation/models.py:1590 +#: participation/models.py:1594 #, python-brace-format msgid "Synthesis of {team} as {type} for problem {problem} of {defender}" msgstr "" "Note de synthèse de l'équipe {team} en tant que {type} pour le problème " "{problem} de {defender}" -#: participation/models.py:1598 +#: participation/models.py:1602 msgid "synthesis" msgstr "note de synthèse" -#: participation/models.py:1599 +#: participation/models.py:1603 msgid "syntheses" msgstr "notes de synthèse" -#: participation/models.py:1608 +#: participation/models.py:1612 msgid "jury" msgstr "jury" -#: participation/models.py:1620 +#: participation/models.py:1624 msgid "defender writing note" msgstr "note d'écrit défenseur⋅se" -#: participation/models.py:1626 +#: participation/models.py:1630 msgid "defender oral note" msgstr "note d'oral défenseur⋅se" -#: participation/models.py:1632 +#: participation/models.py:1636 msgid "opponent writing note" msgstr "note d'écrit opposant⋅e" -#: participation/models.py:1638 +#: participation/models.py:1642 msgid "opponent oral note" msgstr "note d'oral opposant⋅e" -#: participation/models.py:1644 +#: participation/models.py:1648 msgid "reporter writing note" msgstr "note d'écrit rapporteur⋅rice" -#: participation/models.py:1650 +#: participation/models.py:1654 msgid "reporter oral note" msgstr "note d'oral du rapporteur⋅rice" -#: participation/models.py:1656 +#: participation/models.py:1660 msgid "observer note" msgstr "note de l'observation" -#: participation/models.py:1717 +#: participation/models.py:1721 #, python-brace-format msgid "Notes of {jury} for {passage}" msgstr "Notes de {jury} pour le {passage}" -#: participation/models.py:1720 +#: participation/models.py:1724 msgid "note" msgstr "note" -#: participation/models.py:1721 +#: participation/models.py:1725 msgid "notes" msgstr "notes" @@ -1615,7 +1593,7 @@ msgid "Payment of" msgstr "Paiement de" #: participation/templates/participation/team_detail.html:132 -#: registration/models.py:594 +#: registration/models.py:595 msgid "grouped" msgstr "groupé" @@ -1810,7 +1788,7 @@ msgid "Rank" msgstr "Rang" #: participation/templates/participation/tournament_harmonize.html:16 -#: registration/models.py:565 +#: registration/models.py:566 msgid "Note" msgstr "Note" @@ -2150,7 +2128,7 @@ msgstr "" msgid "registration" msgstr "inscription" -#: registration/models.py:130 registration/models.py:590 +#: registration/models.py:130 registration/models.py:591 msgid "registrations" msgstr "inscriptions" @@ -2457,7 +2435,7 @@ msgstr "" msgid "Payments" msgstr "Paiements" -#: registration/models.py:534 registration/models.py:545 +#: registration/models.py:535 registration/models.py:546 #, python-brace-format msgid "" "You are in the jury of the pool {pool} for the tournament of " @@ -2466,7 +2444,7 @@ msgstr "" "
Vous êtes dans le jury de la poule {pool} pour le tournoi {tournament}. " "Vous pouvez trouver la page de la poule ici.
" -#: registration/models.py:558 +#: registration/models.py:559 #, python-brace-format msgid "" "You don't have given any note as a jury for the passage {passage} in the " @@ -2477,15 +2455,15 @@ msgstr "" "{passage} dans la poule {pool} de {tournament}. Vous pouvez donner vos notes " "ici.
" -#: registration/models.py:574 +#: registration/models.py:575 msgid "volunteer registration" msgstr "inscription de bénévole" -#: registration/models.py:575 +#: registration/models.py:576 msgid "volunteer registrations" msgstr "inscriptions de bénévoles" -#: registration/models.py:596 +#: registration/models.py:597 msgid "" "If set to true, then one payment is made for the full team, for example if " "the school pays for all." @@ -2493,100 +2471,100 @@ msgstr "" "Si vrai, alors un seul paiement est fait pour toute l'équipe, par exemple si " "le lycée paie pour tout le monde." -#: registration/models.py:601 +#: registration/models.py:602 msgid "total amount" msgstr "montant total" -#: registration/models.py:602 +#: registration/models.py:603 msgid "Corresponds to the total required amount to pay, in euros." msgstr "Correspond au montant total à payer, en euros." -#: registration/models.py:607 +#: registration/models.py:608 msgid "token" msgstr "jeton" -#: registration/models.py:610 +#: registration/models.py:611 msgid "A token to authorize external users to make this payment." msgstr "Un jeton pour autoriser des utilisateurs externes à faire ce paiement." -#: registration/models.py:614 +#: registration/models.py:615 msgid "for final tournament" msgstr "pour la finale" -#: registration/models.py:619 +#: registration/models.py:620 msgid "type" msgstr "type" -#: registration/models.py:622 +#: registration/models.py:623 msgid "No payment" msgstr "Pas de paiement" -#: registration/models.py:623 +#: registration/models.py:624 #: registration/templates/registration/payment_form.html:72 msgid "Credit card" msgstr "Carte bancaire" -#: registration/models.py:624 +#: registration/models.py:625 msgid "Scholarship" msgstr "Notification de bourse" -#: registration/models.py:625 +#: registration/models.py:626 #: registration/templates/registration/payment_form.html:77 msgid "Bank transfer" msgstr "Virement bancaire" -#: registration/models.py:626 +#: registration/models.py:627 msgid "Other (please indicate)" msgstr "Autre (veuillez spécifier)" -#: registration/models.py:627 +#: registration/models.py:628 msgid "The tournament is free" msgstr "Le tournoi est gratuit" -#: registration/models.py:634 +#: registration/models.py:635 msgid "Hello Asso checkout intent ID" msgstr "ID de l'intention de paiement Hello Asso" -#: registration/models.py:641 +#: registration/models.py:642 msgid "receipt" msgstr "justificatif" -#: registration/models.py:642 +#: registration/models.py:643 msgid "only if you have a scholarship or if you chose a bank transfer." msgstr "" "Nécessaire seulement si vous déclarez être boursièr⋅e ou si vous payez par " "virement bancaire." -#: registration/models.py:649 +#: registration/models.py:650 msgid "additional information" msgstr "informations additionnelles" -#: registration/models.py:650 +#: registration/models.py:651 msgid "To help us to find your payment." msgstr "Pour nous aider à retrouver votre paiement, si nécessaire." -#: registration/models.py:656 +#: registration/models.py:657 msgid "payment valid" msgstr "paiement valide" -#: registration/models.py:716 +#: registration/models.py:717 msgid "Reminder for your payment" msgstr "Rappel pour votre paiement" -#: registration/models.py:727 +#: registration/models.py:728 msgid "Payment confirmation" msgstr "Confirmation de paiement" -#: registration/models.py:749 +#: registration/models.py:750 #, python-brace-format msgid "Payment of {registrations}" msgstr "Paiements de {registrations}" -#: registration/models.py:752 +#: registration/models.py:753 msgid "payment" msgstr "paiement" -#: registration/models.py:753 +#: registration/models.py:754 msgid "payments" msgstr "paiements" diff --git a/participation/models.py b/participation/models.py index a06d7f3..48cebd9 100644 --- a/participation/models.py +++ b/participation/models.py @@ -748,14 +748,14 @@ class Participation(models.Model): "For the first round, you will defend " "your solution of the problem {problem}.
") draw_url = reverse_lazy("draw:index") - solution_url = defender_passage.defended_solution.url + solution_url = defender_passage.defended_solution.file.url defender_content = format_lazy(defender_text, draw_url=draw_url, solution_url=solution_url, problem=defender_passage.solution_number) opponent_text = _("You will oppose the solution of the team {opponent} on the " "problem {problem}. " "You can upload your synthesis sheet on this page.
") - solution_url = opponent_passage.defended_solution.url + solution_url = opponent_passage.defended_solution.file.url passage_url = reverse_lazy("participation:passage_detail", args=(opponent_passage.pk,)) opponent_content = format_lazy(opponent_text, opponent=opponent_passage.defender.team.trigram, solution_url=solution_url, @@ -764,7 +764,7 @@ class Participation(models.Model): reporter_text = _("You will report the solution of the team {reporter} on the " "problem {problem}. " "You can upload your synthesis sheet on this page.
") - solution_url = reporter_passage.defended_solution.url + solution_url = reporter_passage.defended_solution.file.url passage_url = reverse_lazy("participation:passage_detail", args=(reporter_passage.pk,)) reporter_content = format_lazy(reporter_text, reporter=reporter_passage.defender.team.trigram, solution_url=solution_url, @@ -786,18 +786,22 @@ class Participation(models.Model): defender_text = _("For the second round, you will defend " "your solution of the problem {problem}.
") draw_url = reverse_lazy("draw:index") - solution_url = defender_passage.defended_solution.url + solution_url = defender_passage.defended_solution.file.url defender_content = format_lazy(defender_text, draw_url=draw_url, solution_url=solution_url, problem=defender_passage.solution_number) - opponent_text = _("You will oppose the solution of the team {opponent} on the problem {problem}. " + opponent_text = _("
You will oppose the solution of the team {opponent} on the " + "problem {problem}. " "You can upload your synthesis sheet on this page.
") + solution_url = opponent_passage.defended_solution.file.url passage_url = reverse_lazy("participation:passage_detail", args=(opponent_passage.pk,)) opponent_content = format_lazy(opponent_text, opponent=opponent_passage.defender.team.trigram, problem=opponent_passage.solution_number, passage_url=passage_url) - reporter_text = _("You will report the solution of the team {reporter} on the problem {problem}. " + reporter_text = _("
You will report the solution of the team {reporter} on the " + "problem {problem}. " "You can upload your synthesis sheet on this page.
") + solution_url = reporter_passage.defended_solution.file.url passage_url = reverse_lazy("participation:passage_detail", args=(reporter_passage.pk,)) reporter_content = format_lazy(reporter_text, reporter=reporter_passage.defender.team.trigram, problem=reporter_passage.solution_number, passage_url=passage_url)