1
0
mirror of https://gitlab.com/animath/si/plateforme.git synced 2025-02-27 09:46:28 +00:00

Compare commits

..

No commits in common. "3333add7e0eb817d83ad2ff17054d0d859439f35" and "310ac70a74af40bf68fd87883b2805197fd58b92" have entirely different histories.

3 changed files with 68 additions and 76 deletions

View File

@ -481,7 +481,7 @@ class TeamDraw(models.Model):
], ],
null=True, null=True,
default=None, default=None,
verbose_name=_("purposed problem"), verbose_name=_("accepted problem"),
) )
rejected = models.JSONField( rejected = models.JSONField(

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: TFJM\n" "Project-Id-Version: TFJM\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-05-20 11:44+0200\n" "POT-Creation-Date: 2023-05-19 14:40+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Emmy D'Anello <emmy.danello@animath.fr>\n" "Last-Translator: Emmy D'Anello <emmy.danello@animath.fr>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -73,9 +73,9 @@ msgstr "Le tirage a commencé !"
msgid "The draw for the tournament {tournament} will start." msgid "The draw for the tournament {tournament} will start."
msgstr "Le tirage au sort du tournoi {tournament} va commencer." msgstr "Le tirage au sort du tournoi {tournament} va commencer."
#: draw/consumers.py:240 draw/consumers.py:266 draw/consumers.py:648 #: draw/consumers.py:240 draw/consumers.py:266 draw/consumers.py:639
#: draw/consumers.py:865 draw/consumers.py:954 draw/consumers.py:972 #: draw/consumers.py:856 draw/consumers.py:945 draw/consumers.py:963
#: draw/consumers.py:1062 draw/templates/draw/tournament_content.html:5 #: draw/consumers.py:1053 draw/templates/draw/tournament_content.html:5
msgid "The draw has not started yet." msgid "The draw has not started yet."
msgstr "Le tirage au sort n'a pas encore commencé." msgstr "Le tirage au sort n'a pas encore commencé."
@ -84,8 +84,8 @@ msgstr "Le tirage au sort n'a pas encore commencé."
msgid "The draw for the tournament {tournament} is aborted." msgid "The draw for the tournament {tournament} is aborted."
msgstr "Le tirage au sort du tournoi {tournament} est annulé." msgstr "Le tirage au sort du tournoi {tournament} est annulé."
#: draw/consumers.py:293 draw/consumers.py:314 draw/consumers.py:583 #: draw/consumers.py:293 draw/consumers.py:314 draw/consumers.py:579
#: draw/consumers.py:653 draw/consumers.py:870 #: draw/consumers.py:644 draw/consumers.py:861
msgid "This is not the time for this." msgid "This is not the time for this."
msgstr "Ce n'est pas le moment pour cela." msgstr "Ce n'est pas le moment pour cela."
@ -97,13 +97,13 @@ msgstr "Vous avez déjà lancé le dé."
msgid "It is not your turn." msgid "It is not your turn."
msgstr "Ce n'est pas votre tour." msgstr "Ce n'est pas votre tour."
#: draw/consumers.py:399 #: draw/consumers.py:395
#, python-brace-format #, python-brace-format
msgid "Dices from teams {teams} are identical. Please relaunch your dices." msgid "Dices from teams {teams} are identical. Please relaunch your dices."
msgstr "" msgstr ""
"Les dés des équipes {teams} sont identiques. Merci de relancer vos dés." "Les dés des équipes {teams} sont identiques. Merci de relancer vos dés."
#: draw/consumers.py:975 #: draw/consumers.py:966
msgid "This is only available for the final tournament." msgid "This is only available for the final tournament."
msgstr "Cela n'est possible que pour la finale." msgstr "Cela n'est possible que pour la finale."
@ -207,17 +207,17 @@ msgid "Pool {letter}{number}"
msgstr "Poule {letter}{number}" msgstr "Poule {letter}{number}"
#: draw/models.py:407 draw/models.py:434 participation/admin.py:69 #: draw/models.py:407 draw/models.py:434 participation/admin.py:69
#: participation/admin.py:88 participation/models.py:422 #: participation/admin.py:88 participation/models.py:423
#: participation/models.py:431 participation/tables.py:83 #: participation/models.py:432 participation/tables.py:83
msgid "pool" msgid "pool"
msgstr "poule" msgstr "poule"
#: draw/models.py:408 participation/models.py:423 #: draw/models.py:408 participation/models.py:424
msgid "pools" msgid "pools"
msgstr "poules" msgstr "poules"
#: draw/models.py:420 participation/models.py:342 participation/models.py:592 #: draw/models.py:420 participation/models.py:342 participation/models.py:593
#: participation/models.py:622 participation/models.py:660 #: participation/models.py:623 participation/models.py:661
msgid "participation" msgid "participation"
msgstr "participation" msgstr "participation"
@ -241,13 +241,13 @@ msgid ""
msgstr "" msgstr ""
"L'ordre de choix dans la poule, entre 0 et la taille de la poule moins 1." "L'ordre de choix dans la poule, entre 0 et la taille de la poule moins 1."
#: draw/models.py:457 draw/models.py:480 participation/models.py:445 #: draw/models.py:457 draw/models.py:480 participation/models.py:446
#: participation/models.py:629 #: participation/models.py:630
#, python-brace-format #, python-brace-format
msgid "Problem #{problem}" msgid "Problem #{problem}"
msgstr "Problème n°{problem}" msgstr "Problème n°{problem}"
#: draw/models.py:461 #: draw/models.py:461 draw/models.py:484
msgid "accepted problem" msgid "accepted problem"
msgstr "problème accepté" msgstr "problème accepté"
@ -259,10 +259,6 @@ msgstr "dé d'ordre de passage"
msgid "choice dice" msgid "choice dice"
msgstr "dé d'ordre de choix" msgstr "dé d'ordre de choix"
#: draw/models.py:484
msgid "purposed problem"
msgstr "problème proposé"
#: draw/models.py:489 #: draw/models.py:489
msgid "rejected problems" msgid "rejected problems"
msgstr "problèmes rejetés" msgstr "problèmes rejetés"
@ -447,21 +443,21 @@ msgid "selected for final"
msgstr "sélectionnée pour la finale" msgstr "sélectionnée pour la finale"
#: participation/admin.py:57 participation/admin.py:116 #: participation/admin.py:57 participation/admin.py:116
#: participation/models.py:452 participation/tables.py:111 #: participation/models.py:453 participation/tables.py:111
msgid "defender" msgid "defender"
msgstr "défenseur⋅se" msgstr "défenseur⋅se"
#: participation/admin.py:61 participation/models.py:459 #: participation/admin.py:61 participation/models.py:460
#: participation/models.py:672 #: participation/models.py:673
msgid "opponent" msgid "opponent"
msgstr "opposant⋅e" msgstr "opposant⋅e"
#: participation/admin.py:65 participation/models.py:466 #: participation/admin.py:65 participation/models.py:467
#: participation/models.py:673 #: participation/models.py:674
msgid "reporter" msgid "reporter"
msgstr "rapporteur⋅e" msgstr "rapporteur⋅e"
#: participation/admin.py:120 participation/models.py:627 #: participation/admin.py:120 participation/models.py:628
msgid "problem" msgid "problem"
msgstr "numéro de problème" msgstr "numéro de problème"
@ -714,28 +710,28 @@ msgstr ""
"Ils restent toujours accessibles pour vous. Seules les moyennes sont " "Ils restent toujours accessibles pour vous. Seules les moyennes sont "
"communiquées." "communiquées."
#: participation/models.py:416 #: participation/models.py:417
#, python-brace-format #, python-brace-format
msgid "Pool of day {round} for tournament {tournament} with teams {teams}" msgid "Pool of day {round} for tournament {tournament} with teams {teams}"
msgstr "Poule du jour {round} du tournoi {tournament} avec les équipes {teams}" msgstr "Poule du jour {round} du tournoi {tournament} avec les équipes {teams}"
#: participation/models.py:436 #: participation/models.py:437
msgid "position" msgid "position"
msgstr "position" msgstr "position"
#: participation/models.py:443 #: participation/models.py:444
msgid "defended solution" msgid "defended solution"
msgstr "solution défendue" msgstr "solution défendue"
#: participation/models.py:476 #: participation/models.py:477
msgid "observer" msgid "observer"
msgstr "observateur⋅rice" msgstr "observateur⋅rice"
#: participation/models.py:481 #: participation/models.py:482
msgid "penalties" msgid "penalties"
msgstr "pénalités" msgstr "pénalités"
#: participation/models.py:483 #: participation/models.py:484
msgid "" msgid ""
"Number of penalties for the defender. The defender will loose a 0.5 " "Number of penalties for the defender. The defender will loose a 0.5 "
"coefficient per penalty." "coefficient per penalty."
@ -743,124 +739,124 @@ msgstr ""
"Nombre de pénalités pour læ défenseur⋅se. Læ défenseur⋅se perd un " "Nombre de pénalités pour læ défenseur⋅se. Læ défenseur⋅se perd un "
"coefficient 0.5 sur sa présentation orale par pénalité." "coefficient 0.5 sur sa présentation orale par pénalité."
#: participation/models.py:559 participation/models.py:562 #: participation/models.py:560 participation/models.py:563
#: participation/models.py:565 participation/models.py:568 #: participation/models.py:566 participation/models.py:569
#, python-brace-format #, python-brace-format
msgid "Team {trigram} is not registered in the pool." msgid "Team {trigram} is not registered in the pool."
msgstr "L'équipe {trigram} n'est pas inscrite dans la poule." msgstr "L'équipe {trigram} n'est pas inscrite dans la poule."
#: participation/models.py:573 #: participation/models.py:574
#, python-brace-format #, python-brace-format
msgid "Passage of {defender} for problem {problem}" msgid "Passage of {defender} for problem {problem}"
msgstr "Passage de {defender} pour le problème {problem}" msgstr "Passage de {defender} pour le problème {problem}"
#: participation/models.py:577 participation/models.py:586 #: participation/models.py:578 participation/models.py:587
#: participation/models.py:667 participation/models.py:709 #: participation/models.py:668 participation/models.py:710
msgid "passage" msgid "passage"
msgstr "passage" msgstr "passage"
#: participation/models.py:578 #: participation/models.py:579
msgid "passages" msgid "passages"
msgstr "passages" msgstr "passages"
#: participation/models.py:597 #: participation/models.py:598
msgid "difference" msgid "difference"
msgstr "différence" msgstr "différence"
#: participation/models.py:598 #: participation/models.py:599
msgid "Score to add/remove on the final score" msgid "Score to add/remove on the final score"
msgstr "Score à ajouter/retrancher au score final" msgstr "Score à ajouter/retrancher au score final"
#: participation/models.py:605 #: participation/models.py:606
msgid "tweak" msgid "tweak"
msgstr "harmonisation" msgstr "harmonisation"
#: participation/models.py:606 #: participation/models.py:607
msgid "tweaks" msgid "tweaks"
msgstr "harmonisations" msgstr "harmonisations"
#: participation/models.py:634 #: participation/models.py:635
msgid "solution for the final tournament" msgid "solution for the final tournament"
msgstr "solution pour la finale" msgstr "solution pour la finale"
#: participation/models.py:639 participation/models.py:678 #: participation/models.py:640 participation/models.py:679
msgid "file" msgid "file"
msgstr "fichier" msgstr "fichier"
#: participation/models.py:645 #: participation/models.py:646
#, python-brace-format #, python-brace-format
msgid "Solution of team {team} for problem {problem}" msgid "Solution of team {team} for problem {problem}"
msgstr "Solution de l'équipe {team} pour le problème {problem}" msgstr "Solution de l'équipe {team} pour le problème {problem}"
#: participation/models.py:647 #: participation/models.py:648
msgid "for final" msgid "for final"
msgstr "pour la finale" msgstr "pour la finale"
#: participation/models.py:650 #: participation/models.py:651
msgid "solution" msgid "solution"
msgstr "solution" msgstr "solution"
#: participation/models.py:651 #: participation/models.py:652
msgid "solutions" msgid "solutions"
msgstr "solutions" msgstr "solutions"
#: participation/models.py:684 #: participation/models.py:685
#, python-brace-format #, python-brace-format
msgid "Synthesis of {team} as {type} for problem {problem} of {defender}" msgid "Synthesis of {team} as {type} for problem {problem} of {defender}"
msgstr "" msgstr ""
"Note de synthèse de l'équipe {team} en tant que {type} pour le problème " "Note de synthèse de l'équipe {team} en tant que {type} pour le problème "
"{problem} de {defender}" "{problem} de {defender}"
#: participation/models.py:692 #: participation/models.py:693
msgid "synthesis" msgid "synthesis"
msgstr "note de synthèse" msgstr "note de synthèse"
#: participation/models.py:693 #: participation/models.py:694
msgid "syntheses" msgid "syntheses"
msgstr "notes de synthèse" msgstr "notes de synthèse"
#: participation/models.py:702 #: participation/models.py:703
msgid "jury" msgid "jury"
msgstr "jury" msgstr "jury"
#: participation/models.py:714 #: participation/models.py:715
msgid "defender writing note" msgid "defender writing note"
msgstr "note d'écrit de læ défenseur⋅se" msgstr "note d'écrit de læ défenseur⋅se"
#: participation/models.py:720 #: participation/models.py:721
msgid "defender oral note" msgid "defender oral note"
msgstr "note d'oral de læ défenseur⋅se" msgstr "note d'oral de læ défenseur⋅se"
#: participation/models.py:726 #: participation/models.py:727
msgid "opponent writing note" msgid "opponent writing note"
msgstr "note d'écrit de l'opposant⋅e" msgstr "note d'écrit de l'opposant⋅e"
#: participation/models.py:732 #: participation/models.py:733
msgid "opponent oral note" msgid "opponent oral note"
msgstr "note d'oral de l'opposant⋅e" msgstr "note d'oral de l'opposant⋅e"
#: participation/models.py:738 #: participation/models.py:739
msgid "reporter writing note" msgid "reporter writing note"
msgstr "note d'écrit de læ rapporteur⋅e" msgstr "note d'écrit de læ rapporteur⋅e"
#: participation/models.py:744 #: participation/models.py:745
msgid "reporter oral note" msgid "reporter oral note"
msgstr "note d'oral de læ rapporteur⋅e" msgstr "note d'oral de læ rapporteur⋅e"
#: participation/models.py:750 #: participation/models.py:751
msgid "observer note" msgid "observer note"
msgstr "note de l'observateur⋅rice" msgstr "note de l'observateur⋅rice"
#: participation/models.py:779 #: participation/models.py:780
#, python-brace-format #, python-brace-format
msgid "Notes of {jury} for {passage}" msgid "Notes of {jury} for {passage}"
msgstr "Notes de {jury} pour le {passage}" msgstr "Notes de {jury} pour le {passage}"
#: participation/models.py:786 #: participation/models.py:787
msgid "note" msgid "note"
msgstr "note" msgstr "note"
#: participation/models.py:787 #: participation/models.py:788
msgid "notes" msgid "notes"
msgstr "notes" msgstr "notes"
@ -2259,23 +2255,23 @@ msgid "Impersonate"
msgstr "Impersonifier" msgstr "Impersonifier"
#: registration/templates/registration/user_detail.html:176 #: registration/templates/registration/user_detail.html:176
#: registration/views.py:312 #: registration/views.py:308
msgid "Upload photo authorization" msgid "Upload photo authorization"
msgstr "Téléverser l'autorisation de droit à l'image" msgstr "Téléverser l'autorisation de droit à l'image"
#: registration/templates/registration/user_detail.html:181 #: registration/templates/registration/user_detail.html:181
#: registration/views.py:333 #: registration/views.py:329
msgid "Upload health sheet" msgid "Upload health sheet"
msgstr "Téléverser la fiche sanitaire" msgstr "Téléverser la fiche sanitaire"
#: registration/templates/registration/user_detail.html:186 #: registration/templates/registration/user_detail.html:186
#: registration/views.py:354 #: registration/views.py:350
msgid "Upload vaccine sheet" msgid "Upload vaccine sheet"
msgstr "Téléverser le carnet de vaccination" msgstr "Téléverser le carnet de vaccination"
#: registration/templates/registration/user_detail.html:191 #: registration/templates/registration/user_detail.html:191
#: registration/templates/registration/user_detail.html:196 #: registration/templates/registration/user_detail.html:196
#: registration/views.py:375 #: registration/views.py:371
msgid "Upload parental authorization" msgid "Upload parental authorization"
msgstr "Téléverser l'autorisation parentale" msgstr "Téléverser l'autorisation parentale"
@ -2313,27 +2309,27 @@ msgstr "Détails de l'utilisateur⋅rice {user}"
msgid "Update user {user}" msgid "Update user {user}"
msgstr "Mise à jour de l'utilisateur⋅rice {user}" msgstr "Mise à jour de l'utilisateur⋅rice {user}"
#: registration/views.py:481 #: registration/views.py:477
#, python-brace-format #, python-brace-format
msgid "Photo authorization of {student}.{ext}" msgid "Photo authorization of {student}.{ext}"
msgstr "Autorisation de droit à l'image de {student}.{ext}" msgstr "Autorisation de droit à l'image de {student}.{ext}"
#: registration/views.py:504 #: registration/views.py:500
#, python-brace-format #, python-brace-format
msgid "Health sheet of {student}.{ext}" msgid "Health sheet of {student}.{ext}"
msgstr "Fiche sanitaire de {student}.{ext}" msgstr "Fiche sanitaire de {student}.{ext}"
#: registration/views.py:527 #: registration/views.py:523
#, python-brace-format #, python-brace-format
msgid "Vaccine sheet of {student}.{ext}" msgid "Vaccine sheet of {student}.{ext}"
msgstr "Carnet de vaccination de {student}.{ext}" msgstr "Carnet de vaccination de {student}.{ext}"
#: registration/views.py:550 #: registration/views.py:546
#, python-brace-format #, python-brace-format
msgid "Parental authorization of {student}.{ext}" msgid "Parental authorization of {student}.{ext}"
msgstr "Autorisation parentale de {student}.{ext}" msgstr "Autorisation parentale de {student}.{ext}"
#: registration/views.py:572 #: registration/views.py:568
#, python-brace-format #, python-brace-format
msgid "Scholarship attestation of {user}.{ext}" msgid "Scholarship attestation of {user}.{ext}"
msgstr "Notification de bourse de {user}.{ext}" msgstr "Notification de bourse de {user}.{ext}"

View File

@ -275,8 +275,6 @@ class UserUpdateView(UserMixin, UpdateView):
if not self.request.user.registration.is_admin: if not self.request.user.registration.is_admin:
if "team" in context["registration_form"].fields: if "team" in context["registration_form"].fields:
del context["registration_form"].fields["team"] del context["registration_form"].fields["team"]
if "admin" in context["registration_form"].fields:
del context["registration_form"].fields["admin"]
del context["registration_form"].fields["email_confirmed"] del context["registration_form"].fields["email_confirmed"]
return context return context
@ -288,8 +286,6 @@ class UserUpdateView(UserMixin, UpdateView):
if not self.request.user.registration.is_admin: if not self.request.user.registration.is_admin:
if "team" in registration_form.fields: if "team" in registration_form.fields:
del registration_form.fields["team"] del registration_form.fields["team"]
if "admin" in registration_form.fields:
del registration_form.fields["admin"]
del registration_form.fields["email_confirmed"] del registration_form.fields["email_confirmed"]
if not registration_form.is_valid(): if not registration_form.is_valid():