diff --git a/locale/fr/LC_MESSAGES/django.po b/locale/fr/LC_MESSAGES/django.po index 895a034..07d4dbe 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-03-31 22:09+0200\n" +"POT-Creation-Date: 2024-04-03 23:04+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Emmy D'Anello \n" "Language-Team: LANGUAGE \n" @@ -22,22 +22,22 @@ msgid "API" msgstr "API" #: draw/admin.py:39 draw/admin.py:57 draw/admin.py:75 -#: participation/admin.py:109 participation/models.py:252 +#: participation/admin.py:109 participation/models.py:253 #: participation/tables.py:88 msgid "teams" msgstr "équipes" #: draw/admin.py:53 draw/admin.py:71 draw/admin.py:88 draw/models.py:26 #: participation/admin.py:79 participation/admin.py:140 -#: participation/admin.py:171 participation/models.py:647 -#: participation/models.py:671 participation/models.py:829 -#: registration/models.py:671 +#: participation/admin.py:171 participation/models.py:648 +#: participation/models.py:672 participation/models.py:831 +#: registration/models.py:673 #: registration/templates/registration/payment_form.html:53 msgid "tournament" msgstr "tournoi" #: draw/admin.py:92 draw/models.py:234 draw/models.py:433 -#: participation/models.py:833 +#: participation/models.py:835 msgid "round" msgstr "tour" @@ -175,7 +175,7 @@ msgstr "La poule en cours, où les équipes choisissent leurs problèmes" msgid "rounds" msgstr "tours" -#: draw/models.py:257 participation/models.py:847 +#: draw/models.py:257 participation/models.py:849 msgid "letter" msgstr "lettre" @@ -214,17 +214,17 @@ msgid "Pool {letter}{number}" msgstr "Poule {letter}{number}" #: draw/models.py:414 draw/models.py:441 participation/admin.py:136 -#: participation/admin.py:155 participation/models.py:1316 -#: participation/models.py:1325 participation/tables.py:84 +#: participation/admin.py:155 participation/models.py:1318 +#: participation/models.py:1327 participation/tables.py:84 msgid "pool" msgstr "poule" -#: draw/models.py:415 participation/models.py:1317 +#: draw/models.py:415 participation/models.py:1319 msgid "pools" msgstr "poules" -#: draw/models.py:427 participation/models.py:819 participation/models.py:1486 -#: participation/models.py:1516 participation/models.py:1558 +#: draw/models.py:427 participation/models.py:821 participation/models.py:1488 +#: participation/models.py:1518 participation/models.py:1560 msgid "participation" msgstr "participation" @@ -248,8 +248,8 @@ msgid "" msgstr "" "L'ordre de choix dans la poule, entre 0 et la taille de la poule moins 1." -#: draw/models.py:464 draw/models.py:487 participation/models.py:1339 -#: participation/models.py:1523 +#: draw/models.py:464 draw/models.py:487 participation/models.py:1341 +#: participation/models.py:1525 #, python-brace-format msgid "Problem #{problem}" msgstr "Problème n°{problem}" @@ -332,9 +332,9 @@ msgid "Continue draw" msgstr "Continuer le tirage" #: draw/templates/draw/tournament_content.html:216 participation/admin.py:167 -#: participation/models.py:251 participation/models.py:662 +#: participation/models.py:252 participation/models.py:663 #: participation/templates/participation/tournament_harmonize.html:15 -#: registration/models.py:156 registration/models.py:662 +#: registration/models.py:157 registration/models.py:664 #: registration/tables.py:39 #: registration/templates/registration/payment_form.html:52 msgid "team" @@ -387,7 +387,7 @@ msgstr "Vous n'êtes pas dans une équipe." msgid "Logs" msgstr "Logs" -#: logs/models.py:22 registration/models.py:33 +#: logs/models.py:22 registration/models.py:34 msgid "user" msgstr "utilisateur" @@ -452,26 +452,26 @@ msgstr "Changelog de type \"{action}\" pour le modèle {model} le {timestamp}" msgid "valid" msgstr "valide" -#: participation/admin.py:87 participation/models.py:683 +#: participation/admin.py:87 participation/models.py:684 msgid "selected for final" msgstr "sélectionnée pour la finale" #: participation/admin.py:124 participation/admin.py:183 -#: participation/models.py:1346 participation/tables.py:112 +#: participation/models.py:1348 participation/tables.py:112 msgid "defender" msgstr "défenseur⋅se" -#: participation/admin.py:128 participation/models.py:1353 -#: participation/models.py:1570 +#: participation/admin.py:128 participation/models.py:1355 +#: participation/models.py:1572 msgid "opponent" msgstr "opposant⋅e" -#: participation/admin.py:132 participation/models.py:1360 -#: participation/models.py:1571 +#: participation/admin.py:132 participation/models.py:1362 +#: participation/models.py:1573 msgid "reporter" msgstr "rapporteur⋅rice" -#: participation/admin.py:187 participation/models.py:1521 +#: participation/admin.py:187 participation/models.py:1523 msgid "problem" msgstr "numéro de problème" @@ -479,7 +479,7 @@ msgstr "numéro de problème" msgid "This name is already used." msgstr "Ce nom est déjà utilisé." -#: participation/forms.py:37 participation/models.py:41 +#: participation/forms.py:37 participation/models.py:42 msgid "The trigram must be composed of three uppercase letters." msgstr "Le trigramme doit être composé de trois lettres majuscules." @@ -576,32 +576,32 @@ msgstr "Ce⋅tte défenseur⋅se ne travaille pas sur ce problème." msgid "The PDF file must not have more than 2 pages." msgstr "Le fichier PDF ne doit pas avoir plus de 2 pages." -#: participation/models.py:34 participation/models.py:262 +#: participation/models.py:35 participation/models.py:263 #: participation/tables.py:18 participation/tables.py:34 msgid "name" msgstr "nom" -#: participation/models.py:40 participation/tables.py:39 +#: participation/models.py:41 participation/tables.py:39 msgid "trigram" msgstr "trigramme" -#: participation/models.py:46 +#: participation/models.py:47 msgid "This trigram is forbidden." msgstr "Ce trigramme est interdit." -#: participation/models.py:52 +#: participation/models.py:53 msgid "access code" msgstr "code d'accès" -#: participation/models.py:53 +#: participation/models.py:54 msgid "The access code let other people to join the team." msgstr "Le code d'accès permet aux autres participants de rejoindre l'équipe." -#: participation/models.py:57 +#: participation/models.py:58 msgid "motivation letter" msgstr "lettre de motivation" -#: participation/models.py:98 +#: participation/models.py:99 #, python-brace-format msgid "" "The team {trigram} is not registered to any tournament. You can register the " @@ -610,11 +610,11 @@ msgstr "" "L'équipe {trigram} n'est inscrite à aucun tournoi. Vous pouvez inscrire " "l'équipe à un tournoi en cliquant sur ce lien." -#: participation/models.py:103 +#: participation/models.py:104 msgid "No tournament" msgstr "Pas de tournoi" -#: participation/models.py:109 +#: participation/models.py:110 msgid "" "Registrations for the tournament of {tournament} are ending on the {date:%Y-" "%m-%d %H:%M}." @@ -622,11 +622,11 @@ msgstr "" "Les inscriptions pour le tournoi de {tournament} se terminent le {date:%d/%m/" "%Y %H:%M}." -#: participation/models.py:114 +#: participation/models.py:115 msgid "Registrations closure" msgstr "Clôture des inscriptions" -#: participation/models.py:121 +#: participation/models.py:122 #, python-brace-format msgid "" "The team {trigram} has not uploaded a motivation letter. You can upload your " @@ -636,11 +636,11 @@ msgstr "" "envoyer votre lettre de motivation en cliquant sur ce lien." -#: participation/models.py:126 +#: participation/models.py:127 msgid "No motivation letter" msgstr "Pas de lettre de motivation" -#: participation/models.py:135 +#: participation/models.py:136 #, python-brace-format msgid "" "The team {trigram} has less than 4 students ({nb_students}). You can invite " @@ -650,11 +650,11 @@ msgstr "" "plus d'élèves à rejoindre l'équipe en utilisant le code d'invitation " "{code}." -#: participation/models.py:140 +#: participation/models.py:141 msgid "Not enough students" msgstr "Pas assez d'élèves" -#: participation/models.py:147 +#: participation/models.py:148 #, python-brace-format msgid "" "The team {trigram} has no coach. You can invite a coach to join the team " @@ -664,11 +664,11 @@ msgstr "" "encadrant⋅e à rejoindre l'équipe en utilisant le code d'invitation " "{code}." -#: participation/models.py:151 +#: participation/models.py:152 msgid "No coach" msgstr "Pas d'encadrant⋅e" -#: participation/models.py:158 +#: participation/models.py:159 #, python-brace-format msgid "" "The team {trigram} has more than 6 students ({nb_students}) or more than 2 " @@ -679,11 +679,11 @@ msgstr "" "encadrant⋅es ({nb_coaches}). Vous devez restreindre le nombre d'élèves et " "d'encadrant⋅es à 6 et 2, respectivement." -#: participation/models.py:163 +#: participation/models.py:164 msgid "Too many members" msgstr "Trop de membres" -#: participation/models.py:170 +#: participation/models.py:171 #, python-brace-format msgid "" "The team {trigram} is ready to be validated. You can request validation on " @@ -692,11 +692,11 @@ msgstr "" "L'équipe {trigram} est prête à être validée. Vous pouvez demander la " "validation sur la page de votre équipe." -#: participation/models.py:175 participation/models.py:186 +#: participation/models.py:176 participation/models.py:187 msgid "Validate team" msgstr "Valider l'équipe" -#: participation/models.py:181 +#: participation/models.py:182 #, python-brace-format msgid "" "The team {trigram} has enough participants, but is not ready to be " @@ -709,7 +709,7 @@ msgstr "" "documents requis. Pour inviter plus de participant⋅es, utilisez le code " "d'invitation {code}." -#: participation/models.py:192 +#: participation/models.py:193 #, python-brace-format msgid "" "The team {trigram} has not been validated by the organizers yet. Please be " @@ -718,107 +718,107 @@ msgstr "" "L'équipe {trigram} n'a pas encore été validée par les organisateurices. " "Merci de patienter." -#: participation/models.py:195 registration/models.py:492 +#: participation/models.py:196 registration/models.py:493 msgid "Pending validation" msgstr "Validation en attente" -#: participation/models.py:248 +#: participation/models.py:249 #, python-brace-format msgid "Team {name} ({trigram})" msgstr "Équipe {name} ({trigram})" -#: participation/models.py:267 +#: participation/models.py:268 msgid "start" msgstr "début" -#: participation/models.py:272 +#: participation/models.py:273 msgid "end" msgstr "fin" -#: participation/models.py:278 +#: participation/models.py:279 #: participation/templates/participation/tournament_detail.html:18 msgid "place" msgstr "lieu" -#: participation/models.py:282 +#: participation/models.py:283 msgid "max team count" msgstr "nombre maximal d'équipes" -#: participation/models.py:287 +#: participation/models.py:288 #: participation/templates/participation/tournament_detail.html:21 msgid "price" msgstr "prix" -#: participation/models.py:292 +#: participation/models.py:293 #: participation/templates/participation/tournament_detail.html:24 msgid "remote" msgstr "à distance" -#: participation/models.py:297 +#: participation/models.py:298 msgid "limit date for registrations" msgstr "date limite d'inscription" -#: participation/models.py:302 +#: participation/models.py:303 msgid "limit date to upload solutions" msgstr "date limite pour envoyer les solutions" -#: participation/models.py:307 +#: participation/models.py:308 msgid "random draw for solutions" msgstr "tirage au sort des solutions" -#: participation/models.py:312 +#: participation/models.py:313 msgid "limit date to upload the syntheses for the first phase" msgstr "date limite pour envoyer les notes de synthèses pour la première phase" -#: participation/models.py:317 +#: participation/models.py:318 msgid "date when the solutions for the second round become available" msgstr "date à laquelle les solutions pour le second tour sont accessibles" -#: participation/models.py:322 +#: participation/models.py:323 msgid "limit date to upload the syntheses for the second phase" msgstr "date limite d'envoi des notes de synthèse pour la seconde phase" -#: participation/models.py:327 +#: participation/models.py:328 #: participation/templates/participation/tournament_detail.html:48 msgid "description" msgstr "description" -#: participation/models.py:333 +#: participation/models.py:334 #: participation/templates/participation/tournament_detail.html:12 msgid "organizers" msgstr "organisateur⋅rices" -#: participation/models.py:338 +#: participation/models.py:339 #: participation/templates/participation/team_detail.html:133 msgid "final" msgstr "finale" -#: participation/models.py:346 +#: participation/models.py:347 msgid "Google Sheet ID" msgstr "ID de la feuille Google Sheets" -#: participation/models.py:648 registration/admin.py:125 +#: participation/models.py:649 registration/admin.py:125 msgid "tournaments" msgstr "tournois" -#: participation/models.py:677 +#: participation/models.py:678 msgid "valid team" msgstr "équipe valide" -#: participation/models.py:678 +#: participation/models.py:679 msgid "The participation got the validation of the organizers." msgstr "La participation a été validée par les organisateur⋅rices." -#: participation/models.py:684 +#: participation/models.py:685 msgid "The team is selected for the final tournament." msgstr "L'équipe est sélectionnée pour la finale." -#: participation/models.py:691 +#: participation/models.py:692 #, python-brace-format msgid "Participation of the team {name} ({trigram})" msgstr "Participation de l'équipe {name} ({trigram})" -#: participation/models.py:698 +#: participation/models.py:699 #, python-brace-format msgid "" "

The team {trigram} has {nb_missing_payments} missing payments. Each " @@ -831,11 +831,11 @@ msgstr "" "notification de bourse) pour participer au tournoi.

Les participant⋅es " "qui n'ont pas encore payé sont : {participants}.

" -#: participation/models.py:706 +#: participation/models.py:707 msgid "Missing payments" msgstr "Paiements manquants" -#: participation/models.py:713 +#: participation/models.py:714 msgid "" "

The solutions for the tournament of {tournament} are due on the {date:%Y-" "%m-%d %H:%M}.

You have currently sent {nb_solutions} " @@ -850,11 +850,11 @@ msgstr "" "pouvez envoyer vos solutions sur votre page de " "participation.

" -#: participation/models.py:722 +#: participation/models.py:723 msgid "Solutions due" msgstr "Rendu des solutions" -#: participation/models.py:728 registration/models.py:517 +#: participation/models.py:729 registration/models.py:518 msgid "" "

The draw of the solutions for the tournament {tournament} is planned on " "the {date:%Y-%m-%d %H:%M}. You can join it on this link." @@ -864,23 +864,23 @@ msgstr "" "{date:%d/%m/%Y %H:%M}. Vous pouvez y participer sur ce lien.

" -#: participation/models.py:733 registration/models.py:523 +#: participation/models.py:735 registration/models.py:525 msgid "Draw of solutions" msgstr "Tirage au sort des solutions" -#: participation/models.py:744 +#: participation/models.py:746 #, python-brace-format msgid "" "

The solutions draw is ended. You can check the result on this page.

For the first round, you will defend your solution of the problem {problem}.

" +"href='{draw_url}'>this page.

For the first round, you will defend " +"your solution of the problem {problem}.

" msgstr "" "

Le tirage au sort des solutions est terminé. Vous pouvez consulter les " -"résultats sur cette page.

Pour le premier tour, " -"vous défendrez votre solution du problème {problem}" -".

" +"résultats sur cette page.

Pour le premier " +"tour, vous défendrez votre solution du problème " +"{problem}.

" -#: participation/models.py:753 participation/models.py:785 +#: participation/models.py:755 participation/models.py:787 #, python-brace-format msgid "" "

You will oppose the solution of the team {opponent} on the problem " @@ -891,7 +891,7 @@ msgstr "" "{problem}. Vous pouvez envoyer votre note de synthèse sur cette page.

" -#: participation/models.py:759 participation/models.py:791 +#: participation/models.py:761 participation/models.py:793 #, python-brace-format msgid "" "

You will report the solution of the team {reporter} on the problem " @@ -902,11 +902,11 @@ msgstr "" "{problem}. Vous pouvez envoyer votre note de synthèse sur cette page.

" -#: participation/models.py:767 registration/models.py:537 +#: participation/models.py:769 registration/models.py:539 msgid "First round" msgstr "Premier tour" -#: participation/models.py:778 +#: participation/models.py:780 #, python-brace-format msgid "" "

For the second round, you will defend your " @@ -915,11 +915,11 @@ msgstr "" "

Pour le second tour, vous défendrez votre " "solution du problème {problem}.

" -#: participation/models.py:799 registration/models.py:548 +#: participation/models.py:801 registration/models.py:550 msgid "Second round" msgstr "Second tour" -#: participation/models.py:805 +#: participation/models.py:807 #, 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:810 +#: participation/models.py:812 msgid "Tournament ended" msgstr "Tournoi terminé" -#: participation/models.py:820 participation/models.py:853 +#: participation/models.py:822 participation/models.py:855 msgid "participations" msgstr "participations" -#: participation/models.py:835 participation/models.py:836 +#: participation/models.py:837 participation/models.py:838 #, python-brace-format msgid "Round {round}" msgstr "Tour {round}" -#: participation/models.py:859 +#: participation/models.py:861 msgid "juries" msgstr "jurys" -#: participation/models.py:868 +#: participation/models.py:870 msgid "president of the jury" msgstr "président⋅e du jury" -#: participation/models.py:875 +#: participation/models.py:877 msgid "BigBlueButton URL" msgstr "Lien BigBlueButton" -#: participation/models.py:876 +#: participation/models.py:878 msgid "The link of the BBB visio for this pool." msgstr "Le lien du salon BBB pour cette poule." -#: participation/models.py:881 +#: participation/models.py:883 msgid "results available" msgstr "résultats disponibles" -#: participation/models.py:882 +#: participation/models.py:884 msgid "" "Check this case when results become accessible to teams. They stay " "accessible to you. Only averages are given." @@ -970,37 +970,37 @@ msgstr "" "Ils restent toujours accessibles pour vous. Seules les moyennes sont " "communiquées." -#: participation/models.py:907 +#: participation/models.py:909 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:1299 +#: participation/models.py:1301 #, 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:1310 +#: participation/models.py:1312 #, 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:1330 +#: participation/models.py:1332 msgid "position" msgstr "position" -#: participation/models.py:1337 +#: participation/models.py:1339 msgid "defended solution" msgstr "solution défendue" -#: participation/models.py:1370 +#: participation/models.py:1372 msgid "observer" msgstr "observateur⋅rice" -#: participation/models.py:1375 +#: participation/models.py:1377 msgid "penalties" msgstr "pénalités" -#: participation/models.py:1377 +#: participation/models.py:1379 msgid "" "Number of penalties for the defender. The defender will loose a 0.5 " "coefficient per penalty." @@ -1008,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:1453 participation/models.py:1456 -#: participation/models.py:1459 participation/models.py:1462 +#: participation/models.py:1455 participation/models.py:1458 +#: participation/models.py:1461 participation/models.py:1464 #, 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:1467 +#: participation/models.py:1469 #, python-brace-format msgid "Passage of {defender} for problem {problem}" msgstr "Passage de {defender} pour le problème {problem}" -#: participation/models.py:1471 participation/models.py:1480 -#: participation/models.py:1565 participation/models.py:1607 +#: participation/models.py:1473 participation/models.py:1482 +#: participation/models.py:1567 participation/models.py:1609 msgid "passage" msgstr "passage" -#: participation/models.py:1472 +#: participation/models.py:1474 msgid "passages" msgstr "passages" -#: participation/models.py:1491 +#: participation/models.py:1493 msgid "difference" msgstr "différence" -#: participation/models.py:1492 +#: participation/models.py:1494 msgid "Score to add/remove on the final score" msgstr "Score à ajouter/retrancher au score final" -#: participation/models.py:1499 +#: participation/models.py:1501 msgid "tweak" msgstr "harmonisation" -#: participation/models.py:1500 +#: participation/models.py:1502 msgid "tweaks" msgstr "harmonisations" -#: participation/models.py:1528 +#: participation/models.py:1530 msgid "solution for the final tournament" msgstr "solution pour la finale" -#: participation/models.py:1533 participation/models.py:1576 +#: participation/models.py:1535 participation/models.py:1578 msgid "file" msgstr "fichier" -#: participation/models.py:1543 +#: participation/models.py:1545 #, 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:1545 +#: participation/models.py:1547 msgid "for final" msgstr "pour la finale" -#: participation/models.py:1548 +#: participation/models.py:1550 msgid "solution" msgstr "solution" -#: participation/models.py:1549 +#: participation/models.py:1551 msgid "solutions" msgstr "solutions" -#: participation/models.py:1582 +#: participation/models.py:1584 #, 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:1590 +#: participation/models.py:1592 msgid "synthesis" msgstr "note de synthèse" -#: participation/models.py:1591 +#: participation/models.py:1593 msgid "syntheses" msgstr "notes de synthèse" -#: participation/models.py:1600 +#: participation/models.py:1602 msgid "jury" msgstr "jury" -#: participation/models.py:1612 +#: participation/models.py:1614 msgid "defender writing note" msgstr "note d'écrit défenseur⋅se" -#: participation/models.py:1618 +#: participation/models.py:1620 msgid "defender oral note" msgstr "note d'oral défenseur⋅se" -#: participation/models.py:1624 +#: participation/models.py:1626 msgid "opponent writing note" msgstr "note d'écrit opposant⋅e" -#: participation/models.py:1630 +#: participation/models.py:1632 msgid "opponent oral note" msgstr "note d'oral opposant⋅e" -#: participation/models.py:1636 +#: participation/models.py:1638 msgid "reporter writing note" msgstr "note d'écrit rapporteur⋅rice" -#: participation/models.py:1642 +#: participation/models.py:1644 msgid "reporter oral note" msgstr "note d'oral du rapporteur⋅rice" -#: participation/models.py:1648 +#: participation/models.py:1650 msgid "observer note" msgstr "note de l'observation" -#: participation/models.py:1709 +#: participation/models.py:1711 #, python-brace-format msgid "Notes of {jury} for {passage}" msgstr "Notes de {jury} pour le {passage}" -#: participation/models.py:1712 +#: participation/models.py:1714 msgid "note" msgstr "note" -#: participation/models.py:1713 +#: participation/models.py:1715 msgid "notes" msgstr "notes" @@ -1593,7 +1593,7 @@ msgid "Payment of" msgstr "Paiement de" #: participation/templates/participation/team_detail.html:132 -#: registration/models.py:592 +#: registration/models.py:594 msgid "grouped" msgstr "groupé" @@ -1788,7 +1788,7 @@ msgid "Rank" msgstr "Rang" #: participation/templates/participation/tournament_harmonize.html:16 -#: registration/models.py:563 +#: registration/models.py:565 msgid "Note" msgstr "Note" @@ -1964,88 +1964,88 @@ msgstr "Notes dissimulées !" msgid "Harmonize notes of {tournament} - Day {round}" msgstr "Harmoniser les notes de {tournament} - Jour {round}" -#: participation/views.py:821 +#: participation/views.py:822 msgid "You can't upload a solution after the deadline." msgstr "Vous ne pouvez pas envoyer de solution après la date limite." -#: participation/views.py:938 +#: participation/views.py:939 #, python-brace-format msgid "Solutions of team {trigram}.zip" msgstr "Solutions de l'équipe {trigram}.zip" -#: participation/views.py:938 +#: participation/views.py:939 #, python-brace-format msgid "Syntheses of team {trigram}.zip" msgstr "Notes de synthèse de l'équipe {trigram}.zip" -#: participation/views.py:955 participation/views.py:970 +#: participation/views.py:956 participation/views.py:971 #, python-brace-format msgid "Solutions of {tournament}.zip" msgstr "Solutions de {tournament}.zip" -#: participation/views.py:955 participation/views.py:970 +#: participation/views.py:956 participation/views.py:971 #, python-brace-format msgid "Syntheses of {tournament}.zip" msgstr "Notes de synthèse de {tournament}.zip" -#: participation/views.py:979 +#: participation/views.py:980 #, python-brace-format msgid "Solutions for pool {pool} of tournament {tournament}.zip" msgstr "Solutions pour la poule {pool} du tournoi {tournament}.zip" -#: participation/views.py:980 +#: participation/views.py:981 #, python-brace-format msgid "Syntheses for pool {pool} of tournament {tournament}.zip" msgstr "Notes de synthèses pour la poule {pool} du tournoi {tournament}.zip" -#: participation/views.py:1022 +#: participation/views.py:1023 #, python-brace-format msgid "Jury of pool {pool} for {tournament} with teams {teams}" msgstr "Jury de la poule {pool} pour {tournament} avec les équipes {teams}" -#: participation/views.py:1038 +#: participation/views.py:1039 #, python-brace-format msgid "The jury {name} is already in the pool!" msgstr "{name} est déjà dans la poule !" -#: participation/views.py:1058 +#: participation/views.py:1059 msgid "New TFJM² jury account" msgstr "Nouveau compte de juré⋅e pour le TFJM²" -#: participation/views.py:1079 +#: participation/views.py:1080 #, python-brace-format msgid "The jury {name} has been successfully added!" msgstr "{name} a été ajouté⋅e avec succès en tant que juré⋅e !" -#: participation/views.py:1115 +#: participation/views.py:1116 #, python-brace-format msgid "The jury {name} has been successfully removed!" msgstr "{name} a été retiré⋅e avec succès du jury !" -#: participation/views.py:1141 +#: participation/views.py:1142 #, python-brace-format msgid "The jury {name} has been successfully promoted president!" msgstr "{name} a été nommé⋅e président⋅e du jury !" -#: participation/views.py:1169 +#: participation/views.py:1170 msgid "The following user is not registered as a jury:" msgstr "L'utilisateur⋅rice suivant n'est pas inscrit⋅e en tant que juré⋅e :" -#: participation/views.py:1186 +#: participation/views.py:1187 msgid "Notes were successfully uploaded." msgstr "Les notes ont bien été envoyées." -#: participation/views.py:1819 +#: participation/views.py:1820 #, python-brace-format msgid "Notation sheets of pool {pool} of {tournament}.zip" msgstr "Feuilles de notations pour la poule {pool} du tournoi {tournament}.zip" -#: participation/views.py:1824 +#: participation/views.py:1825 #, python-brace-format msgid "Notation sheets of {tournament}.zip" msgstr "Feuilles de notation de {tournament}.zip" -#: participation/views.py:1974 +#: participation/views.py:1976 msgid "You can't upload a synthesis after the deadline." msgstr "Vous ne pouvez pas envoyer de note de synthèse après la date limite." @@ -2084,7 +2084,7 @@ msgstr "rôle" msgid "participant" msgstr "participant⋅e" -#: registration/forms.py:25 registration/models.py:426 +#: registration/forms.py:25 registration/models.py:427 msgid "coach" msgstr "encadrant⋅e" @@ -2100,20 +2100,20 @@ msgstr "En attente" msgid "You must upload your receipt." msgstr "Vous devez envoyer votre justificatif." -#: registration/models.py:38 +#: registration/models.py:39 msgid "Grant Animath to contact me in the future about other actions" msgstr "" "Autoriser Animath à me recontacter à l'avenir à propos d'autres actions" -#: registration/models.py:43 +#: registration/models.py:44 msgid "email confirmed" msgstr "email confirmé" -#: registration/models.py:51 +#: registration/models.py:52 msgid "Activate your TFJM² account" msgstr "Activez votre compte du TFJM²" -#: registration/models.py:108 +#: registration/models.py:109 #, python-brace-format msgid "" "Your email address is not validated. Please click on the link you received " @@ -2124,52 +2124,52 @@ msgstr "" "avez reçu par mail. Vous pouvez renvoyer un mail en cliquant sur ce lien." -#: registration/models.py:128 +#: registration/models.py:129 msgid "registration" msgstr "inscription" -#: registration/models.py:129 registration/models.py:588 +#: registration/models.py:130 registration/models.py:590 msgid "registrations" msgstr "inscriptions" -#: registration/models.py:161 +#: registration/models.py:162 msgid "gender" msgstr "genre" -#: registration/models.py:163 +#: registration/models.py:164 msgid "Female" msgstr "Femme" -#: registration/models.py:164 +#: registration/models.py:165 msgid "Male" msgstr "Homme" -#: registration/models.py:165 +#: registration/models.py:166 #: registration/templates/registration/payment_form.html:89 msgid "Other" msgstr "Autre" -#: registration/models.py:172 +#: registration/models.py:173 msgid "address" msgstr "adresse" -#: registration/models.py:176 +#: registration/models.py:177 msgid "zip code" msgstr "code postal" -#: registration/models.py:182 +#: registration/models.py:183 msgid "city" msgstr "ville" -#: registration/models.py:186 +#: registration/models.py:187 msgid "phone number" msgstr "numéro de téléphone" -#: registration/models.py:191 +#: registration/models.py:192 msgid "health issues" msgstr "problèmes de santé" -#: registration/models.py:193 +#: registration/models.py:194 msgid "" "You can indicate here your allergies or anything that is important to know " "for organizers." @@ -2177,11 +2177,11 @@ msgstr "" "Vous pouvez indiquer ici vos allergies ou n'importe quoi qui peut être bon à " "savoir pour les organisateur⋅rices." -#: registration/models.py:197 +#: registration/models.py:198 msgid "housing constraints" msgstr "contraintes de logement" -#: registration/models.py:199 +#: registration/models.py:200 msgid "" "You can fill in something here if you have any housing constraints, e.g. " "medical problems, scheduling issues, gender issues, or anything else you " @@ -2194,11 +2194,11 @@ msgstr "" "organisateur⋅rices. Laissez vide si vous n'avez rien de spécifique à " "déclarer." -#: registration/models.py:206 +#: registration/models.py:207 msgid "photo authorization" msgstr "autorisation de droit à l'image" -#: registration/models.py:235 +#: registration/models.py:236 #, python-brace-format msgid "" "You are not in a team. You can create one or ou rejoindre une équipe existante pour " "participer." -#: registration/models.py:241 +#: registration/models.py:242 msgid "No team" msgstr "Pas d'équipe" -#: registration/models.py:249 +#: registration/models.py:250 #, python-brace-format msgid "" "You have not uploaded your photo authorization. You can do it by clicking on " @@ -2221,71 +2221,71 @@ msgstr "" "Vous n'avez pas envoyé votre autorisation de droit à l'image. Vous pouvez le " "faire en cliquant sur ce lien." -#: registration/models.py:254 +#: registration/models.py:255 msgid "Photo authorization" msgstr "Autorisation de droit à l'image" -#: registration/models.py:265 +#: registration/models.py:266 msgid "participant registration" msgstr "inscription de participant⋅e" -#: registration/models.py:266 +#: registration/models.py:267 msgid "participant registrations" msgstr "inscriptions de participant⋅es" -#: registration/models.py:275 +#: registration/models.py:276 msgid "birth date" msgstr "date de naissance" -#: registration/models.py:281 +#: registration/models.py:282 msgid "12th grade" msgstr "Terminale" -#: registration/models.py:282 +#: registration/models.py:283 msgid "11th grade" msgstr "Première" -#: registration/models.py:283 +#: registration/models.py:284 msgid "10th grade or lower" msgstr "Seconde ou inférieur" -#: registration/models.py:285 +#: registration/models.py:286 msgid "student class" msgstr "classe" -#: registration/models.py:290 +#: registration/models.py:291 msgid "school" msgstr "école" -#: registration/models.py:295 +#: registration/models.py:296 msgid "responsible name" msgstr "nom d'un⋅e responsable légal⋅e" -#: registration/models.py:300 +#: registration/models.py:301 msgid "responsible phone number" msgstr "numéro de téléphone d'un⋅e responsable légal⋅e" -#: registration/models.py:305 +#: registration/models.py:306 msgid "responsible email address" msgstr "adresse e-mail d'un⋅e responsable légal⋅e" -#: registration/models.py:310 +#: registration/models.py:311 msgid "parental authorization" msgstr "autorisation parentale" -#: registration/models.py:317 +#: registration/models.py:318 msgid "health sheet" msgstr "fiche sanitaire" -#: registration/models.py:324 +#: registration/models.py:325 msgid "vaccine sheet" msgstr "carnet de vaccination" -#: registration/models.py:332 +#: registration/models.py:333 msgid "student" msgstr "élève" -#: registration/models.py:343 +#: registration/models.py:344 #, python-brace-format msgid "" "You have not uploaded your parental authorization. You can do it by clicking " @@ -2294,11 +2294,11 @@ msgstr "" "Vous n'avez pas envoyé votre autorisation parentale. Vous pouvez le faire en " "cliquant sur ce lien." -#: registration/models.py:348 +#: registration/models.py:349 msgid "Parental authorization" msgstr "Autorisation parentale" -#: registration/models.py:354 +#: registration/models.py:355 #, python-brace-format msgid "" "You have not uploaded your health sheet. You can do it by clicking on ce lien." -#: registration/models.py:359 +#: registration/models.py:360 msgid "Health sheet" msgstr "Fiche sanitaire" -#: registration/models.py:365 +#: registration/models.py:366 #, python-brace-format msgid "" "You have not uploaded your vaccine sheet. You can do it by clicking on ce lien." -#: registration/models.py:370 +#: registration/models.py:371 msgid "Vaccine sheet" msgstr "Carnet de vaccination" -#: registration/models.py:379 +#: registration/models.py:380 #, python-brace-format msgid "" "You have to pay {amount} € for your registration, or send a scholarship " @@ -2335,27 +2335,27 @@ msgstr "" "notification de bourse ou un justificatif de paiement. Vous pouvez le faire " "sur la page de paiement." -#: registration/models.py:385 registration/models.py:394 +#: registration/models.py:386 registration/models.py:395 msgid "Payment" msgstr "Paiement" -#: registration/models.py:391 +#: registration/models.py:392 msgid "Your payment is under approval." msgstr "Votre paiement est en cours de validation." -#: registration/models.py:403 +#: registration/models.py:404 msgid "student registration" msgstr "inscription d'élève" -#: registration/models.py:404 +#: registration/models.py:405 msgid "student registrations" msgstr "inscriptions d'élève" -#: registration/models.py:415 +#: registration/models.py:416 msgid "most recent degree in mathematics, computer science or physics" msgstr "Dernier diplôme obtenu en mathématiques, informatique ou physique" -#: registration/models.py:416 +#: registration/models.py:417 msgid "" "Your most recent degree in maths, computer science or physics, or your last " "entrance exam (CAPES, Agrégation,…)" @@ -2363,23 +2363,23 @@ msgstr "" "Votre dernier diplôme en mathématiques, informatique ou physique, ou votre " "dernier concours obtenu (CAPES, Agrégation, …)" -#: registration/models.py:421 registration/models.py:443 +#: registration/models.py:422 registration/models.py:444 msgid "professional activity" msgstr "activité professionnelle" -#: registration/models.py:434 +#: registration/models.py:435 msgid "coach registration" msgstr "inscription d'encadrant⋅e" -#: registration/models.py:435 +#: registration/models.py:436 msgid "coach registrations" msgstr "inscriptions d'encadrant⋅es" -#: registration/models.py:447 +#: registration/models.py:448 msgid "administrator" msgstr "administrateur⋅rice" -#: registration/models.py:448 +#: registration/models.py:449 msgid "" "An administrator has all rights. Please don't give this right to all juries " "and volunteers." @@ -2387,15 +2387,15 @@ msgstr "" "Un⋅e administrateur⋅rice a tous les droits. Merci de ne pas donner ce droit " "à toustes les juré⋅es et bénévoles." -#: registration/models.py:458 +#: registration/models.py:459 msgid "admin" msgstr "admin" -#: registration/models.py:458 +#: registration/models.py:459 msgid "volunteer" msgstr "bénévole" -#: registration/models.py:471 +#: registration/models.py:472 msgid "" "Registrations for tournament {tournament} are closing on {date:%Y-%m-%d %H:" "%M}. There are for now {validated_teams} validated teams (+ {pending_teams} " @@ -2405,11 +2405,11 @@ msgstr "" "%M}. Il y a pour l'instant {validated_teams} équipes validées (+ " "{pending_teams} en attente) sur {max_teams} attendues." -#: registration/models.py:479 +#: registration/models.py:480 msgid "Registrations" msgstr "Inscriptions" -#: registration/models.py:486 +#: registration/models.py:487 #, python-brace-format msgid "" "The team {trigram} requested to be validated for the tournament of " @@ -2420,7 +2420,7 @@ msgstr "" "Vous pouvez vérifier le statut de l'équipe sur la page de " "l'équipe." -#: registration/models.py:503 +#: registration/models.py:504 #, python-brace-format msgid "" "There are {valid} validated payments, {pending} pending and {invalid} " @@ -2431,11 +2431,11 @@ msgstr "" "invalides pour le tournoi {tournament}. Vous pouvez vérifier le statut des " "paiements sur la liste des paiements." -#: registration/models.py:510 +#: registration/models.py:511 msgid "Payments" msgstr "Paiements" -#: registration/models.py:532 registration/models.py:543 +#: registration/models.py:534 registration/models.py:545 #, python-brace-format msgid "" "

You are in the jury of the pool {pool} for the tournament of " @@ -2444,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:556 +#: registration/models.py:558 #, python-brace-format msgid "" "

You don't have given any note as a jury for the passage {passage} in the " @@ -2455,15 +2455,15 @@ msgstr "" "{passage} dans la poule {pool} de {tournament}. Vous pouvez donner vos notes " "ici.

" -#: registration/models.py:572 +#: registration/models.py:574 msgid "volunteer registration" msgstr "inscription de bénévole" -#: registration/models.py:573 +#: registration/models.py:575 msgid "volunteer registrations" msgstr "inscriptions de bénévoles" -#: registration/models.py:594 +#: registration/models.py:596 msgid "" "If set to true, then one payment is made for the full team, for example if " "the school pays for all." @@ -2471,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:599 +#: registration/models.py:601 msgid "total amount" msgstr "montant total" -#: registration/models.py:600 +#: registration/models.py:602 msgid "Corresponds to the total required amount to pay, in euros." msgstr "Correspond au montant total à payer, en euros." -#: registration/models.py:605 +#: registration/models.py:607 msgid "token" msgstr "jeton" -#: registration/models.py:608 +#: registration/models.py:610 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:612 +#: registration/models.py:614 msgid "for final tournament" msgstr "pour la finale" -#: registration/models.py:617 +#: registration/models.py:619 msgid "type" msgstr "type" -#: registration/models.py:620 +#: registration/models.py:622 msgid "No payment" msgstr "Pas de paiement" -#: registration/models.py:621 +#: registration/models.py:623 #: registration/templates/registration/payment_form.html:72 msgid "Credit card" msgstr "Carte bancaire" -#: registration/models.py:622 +#: registration/models.py:624 msgid "Scholarship" msgstr "Notification de bourse" -#: registration/models.py:623 +#: registration/models.py:625 #: registration/templates/registration/payment_form.html:77 msgid "Bank transfer" msgstr "Virement bancaire" -#: registration/models.py:624 +#: registration/models.py:626 msgid "Other (please indicate)" msgstr "Autre (veuillez spécifier)" -#: registration/models.py:625 +#: registration/models.py:627 msgid "The tournament is free" msgstr "Le tournoi est gratuit" -#: registration/models.py:632 +#: registration/models.py:634 msgid "Hello Asso checkout intent ID" msgstr "ID de l'intention de paiement Hello Asso" -#: registration/models.py:639 +#: registration/models.py:641 msgid "receipt" msgstr "justificatif" -#: registration/models.py:640 +#: registration/models.py:642 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:647 +#: registration/models.py:649 msgid "additional information" msgstr "informations additionnelles" -#: registration/models.py:648 +#: registration/models.py:650 msgid "To help us to find your payment." msgstr "Pour nous aider à retrouver votre paiement, si nécessaire." -#: registration/models.py:654 +#: registration/models.py:656 msgid "payment valid" msgstr "paiement valide" -#: registration/models.py:714 +#: registration/models.py:716 msgid "Reminder for your payment" msgstr "Rappel pour votre paiement" -#: registration/models.py:725 +#: registration/models.py:727 msgid "Payment confirmation" msgstr "Confirmation de paiement" -#: registration/models.py:747 +#: registration/models.py:749 #, python-brace-format msgid "Payment of {registrations}" msgstr "Paiements de {registrations}" -#: registration/models.py:750 +#: registration/models.py:752 msgid "payment" msgstr "paiement" -#: registration/models.py:751 +#: registration/models.py:753 msgid "payments" msgstr "paiements" @@ -3393,8 +3393,8 @@ msgid "" "about other solutions." msgstr "" "Désolé, votre requête est invalide. Aucune idée de ce qui a pu se passer. Un " -"email a été envoyé aux administrateur⋅rices avec les détails de l'erreur. Vous " -"pouvez désormais retourner chercher d'autres solutions." +"email a été envoyé aux administrateur⋅rices avec les détails de l'erreur. " +"Vous pouvez désormais retourner chercher d'autres solutions." #: tfjm/templates/403.html:6 msgid "Permission denied" @@ -3431,9 +3431,9 @@ msgid "" "soon. You can now think about other solutions." msgstr "" "Désolé, une erreur est survenue lors du traitement de votre requête. Aucune " -"idée de ce qui a pu se passer. Un email a été envoyé aux administrateur⋅rices " -"avec les détails de l'erreur. Vous pouvez désormais retourner chercher " -"d'autres solutions.." +"idée de ce qui a pu se passer. Un email a été envoyé aux " +"administrateur⋅rices avec les détails de l'erreur. Vous pouvez désormais " +"retourner chercher d'autres solutions.." #: tfjm/templates/base.html:71 msgid "Search results" diff --git a/participation/models.py b/participation/models.py index 78153d4..ec16813 100644 --- a/participation/models.py +++ b/participation/models.py @@ -744,11 +744,11 @@ class Participation(models.Model): reporter_passage = pool.passages.get(reporter=self) defender_text = _("

The solutions draw is ended. You can check the result on " - "this page.

" + "this page.

" "

For the first round, you will defend " "your solution of the problem {problem}.

") draw_url = reverse_lazy("draw:index") - solution_url = reverse_lazy("solution", args=(defender_passage.defended_solution.pk,)) + solution_url = defender_passage.defended_solution.url defender_content = format_lazy(defender_text, draw_url=draw_url, solution_url=solution_url, problem=defender_passage.solution_number) @@ -780,7 +780,7 @@ 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 = reverse_lazy("solution", args=(defender_passage.defended_solution.pk,)) + solution_url = defender_passage.defended_solution.url defender_content = format_lazy(defender_text, draw_url=draw_url, solution_url=solution_url, problem=defender_passage.solution_number)