1
0
mirror of https://gitlab.com/animath/si/plateforme.git synced 2024-12-25 06:22:22 +00:00

Add Google Sheets link on tournament and pool pages

Signed-off-by: Emmy D'Anello <emmy.danello@animath.fr>
This commit is contained in:
Emmy D'Anello 2024-03-30 19:15:21 +01:00
parent f1012efcaa
commit 6595409df0
Signed by: ynerant
GPG Key ID: 3A75C55819C8CF85
4 changed files with 180 additions and 145 deletions

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: TFJM\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-03-29 19:18+0100\n"
"POT-Creation-Date: 2024-03-30 19:13+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Emmy D'Anello <emmy.danello@animath.fr>\n"
"Language-Team: LANGUAGE <LL@li.org>\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:250
#: participation/admin.py:109 participation/models.py:254
#: participation/tables.py:88
msgid "teams"
msgstr "équipes"
#: draw/admin.py:53 draw/admin.py:71 draw/admin.py:88 draw/models.py:24
#: participation/admin.py:79 participation/admin.py:140
#: participation/admin.py:171 participation/models.py:419
#: participation/models.py:443 participation/models.py:513
#: participation/admin.py:171 participation/models.py:638
#: participation/models.py:662 participation/models.py:732
#: registration/models.py:618
#: registration/templates/registration/payment_form.html:53
msgid "tournament"
msgstr "tournoi"
#: draw/admin.py:92 draw/models.py:232 draw/models.py:427
#: participation/models.py:517
#: participation/models.py:736
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:255 participation/models.py:531
#: draw/models.py:255 participation/models.py:750
msgid "letter"
msgstr "lettre"
@ -214,17 +214,17 @@ msgid "Pool {letter}{number}"
msgstr "Poule {letter}{number}"
#: draw/models.py:408 draw/models.py:435 participation/admin.py:136
#: participation/admin.py:155 participation/models.py:601
#: participation/models.py:610 participation/tables.py:84
#: participation/admin.py:155 participation/models.py:1227
#: participation/models.py:1236 participation/tables.py:84
msgid "pool"
msgstr "poule"
#: draw/models.py:409 participation/models.py:602
#: draw/models.py:409 participation/models.py:1228
msgid "pools"
msgstr "poules"
#: draw/models.py:421 participation/models.py:503 participation/models.py:771
#: participation/models.py:801 participation/models.py:843
#: draw/models.py:421 participation/models.py:722 participation/models.py:1397
#: participation/models.py:1427 participation/models.py:1469
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:458 draw/models.py:481 participation/models.py:624
#: participation/models.py:808
#: draw/models.py:458 draw/models.py:481 participation/models.py:1250
#: participation/models.py:1434
#, python-brace-format
msgid "Problem #{problem}"
msgstr "Problème n°{problem}"
@ -332,7 +332,7 @@ msgid "Continue draw"
msgstr "Continuer le tirage"
#: draw/templates/draw/tournament_content.html:216 participation/admin.py:167
#: participation/models.py:249 participation/models.py:434
#: participation/models.py:253 participation/models.py:653
#: registration/models.py:156 registration/models.py:609
#: registration/tables.py:39
#: registration/templates/registration/payment_form.html:52
@ -344,10 +344,10 @@ msgstr "équipe"
#: draw/templates/draw/tournament_content.html:228
#: draw/templates/draw/tournament_content.html:229
#: draw/templates/draw/tournament_content.html:230
#: participation/templates/participation/pool_detail.html:85
#: participation/templates/participation/pool_detail.html:89
#: participation/templates/participation/pool_detail.html:94
#: participation/templates/participation/pool_detail.html:98
#: participation/templates/participation/pool_detail.html:97
#: participation/templates/participation/pool_detail.html:101
#: participation/templates/participation/pool_detail.html:106
#: participation/templates/participation/pool_detail.html:110
msgid "Room"
msgstr "Salle"
@ -451,26 +451,26 @@ msgstr "Changelog de type \"{action}\" pour le modèle {model} le {timestamp}"
msgid "valid"
msgstr "valide"
#: participation/admin.py:87 participation/models.py:455
#: participation/admin.py:87 participation/models.py:674
msgid "selected for final"
msgstr "sélectionnée pour la finale"
#: participation/admin.py:124 participation/admin.py:183
#: participation/models.py:631 participation/tables.py:112
#: participation/models.py:1257 participation/tables.py:112
msgid "defender"
msgstr "défenseur⋅se"
#: participation/admin.py:128 participation/models.py:638
#: participation/models.py:855
#: participation/admin.py:128 participation/models.py:1264
#: participation/models.py:1481
msgid "opponent"
msgstr "opposant⋅e"
#: participation/admin.py:132 participation/models.py:645
#: participation/models.py:856
#: participation/admin.py:132 participation/models.py:1271
#: participation/models.py:1482
msgid "reporter"
msgstr "rapporteur⋅e"
#: participation/admin.py:187 participation/models.py:806
#: participation/admin.py:187 participation/models.py:1432
msgid "problem"
msgstr "numéro de problème"
@ -478,7 +478,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:39
#: participation/forms.py:37 participation/models.py:43
msgid "The trigram must be composed of three uppercase letters."
msgstr "Le trigramme doit être composé de trois lettres majuscules."
@ -529,7 +529,7 @@ msgid "The PDF file must not have more than 30 pages."
msgstr "Le fichier PDF ne doit pas avoir plus de 30 pages."
#: participation/forms.py:236
#: participation/templates/participation/pool_detail.html:130
#: participation/templates/participation/pool_detail.html:142
msgid "Add"
msgstr "Ajouter"
@ -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:32 participation/models.py:260
#: participation/models.py:36 participation/models.py:264
#: participation/tables.py:18 participation/tables.py:34
msgid "name"
msgstr "nom"
#: participation/models.py:38 participation/tables.py:39
#: participation/models.py:42 participation/tables.py:39
msgid "trigram"
msgstr "trigramme"
#: participation/models.py:44
#: participation/models.py:48
msgid "This trigram is forbidden."
msgstr "Ce trigramme est interdit."
#: participation/models.py:50
#: participation/models.py:54
msgid "access code"
msgstr "code d'accès"
#: participation/models.py:51
#: participation/models.py:55
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:55
#: participation/models.py:59
msgid "motivation letter"
msgstr "lettre de motivation"
#: participation/models.py:96
#: participation/models.py:100
#, 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 <a href='{url}'>ce lien</a>."
#: participation/models.py:101
#: participation/models.py:105
msgid "No tournament"
msgstr "Pas de tournoi"
#: participation/models.py:107
#: participation/models.py:111
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:112
#: participation/models.py:116
msgid "Registrations closure"
msgstr "Clôture des inscriptions"
#: participation/models.py:119
#: participation/models.py:123
#, 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 <a href='{url}'>ce lien</"
"a>."
#: participation/models.py:124
#: participation/models.py:128
msgid "No motivation letter"
msgstr "Pas de lettre de motivation"
#: participation/models.py:133
#: participation/models.py:137
#, 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 "
"<strong>{code}</strong>."
#: participation/models.py:138
#: participation/models.py:142
msgid "Not enough students"
msgstr "Pas assez d'élèves"
#: participation/models.py:145
#: participation/models.py:149
#, 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 "
"<strong>{code}</strong>."
#: participation/models.py:149
#: participation/models.py:153
msgid "No coach"
msgstr "Pas d'encadrant⋅e"
#: participation/models.py:156
#: participation/models.py:160
#, 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:161
#: participation/models.py:165
msgid "Too many members"
msgstr "Trop de membres"
#: participation/models.py:168
#: participation/models.py:172
#, 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 <a href='{url}'>la page de votre équipe</a>."
#: participation/models.py:173 participation/models.py:184
#: participation/models.py:177 participation/models.py:188
msgid "Validate team"
msgstr "Valider l'équipe"
#: participation/models.py:179
#: participation/models.py:183
#, 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 <strong>{code}</strong>."
#: participation/models.py:190
#: participation/models.py:194
#, python-brace-format
msgid ""
"The team {trigram} has not been validated by the organizers yet. Please be "
@ -718,103 +718,107 @@ msgstr ""
"L'équipe {trigram} n'a pas encore été validée par les organisateurices. "
"Merci de patienter."
#: participation/models.py:193 registration/models.py:492
#: participation/models.py:197 registration/models.py:492
msgid "Pending validation"
msgstr "Validation en attente"
#: participation/models.py:246
#: participation/models.py:250
#, python-brace-format
msgid "Team {name} ({trigram})"
msgstr "Équipe {name} ({trigram})"
#: participation/models.py:265
#: participation/models.py:269
msgid "start"
msgstr "début"
#: participation/models.py:270
#: participation/models.py:274
msgid "end"
msgstr "fin"
#: participation/models.py:276
#: participation/models.py:280
#: participation/templates/participation/tournament_detail.html:18
msgid "place"
msgstr "lieu"
#: participation/models.py:280
#: participation/models.py:284
msgid "max team count"
msgstr "nombre maximal d'équipes"
#: participation/models.py:285
#: participation/models.py:289
#: participation/templates/participation/tournament_detail.html:21
msgid "price"
msgstr "prix"
#: participation/models.py:290
#: participation/models.py:294
#: participation/templates/participation/tournament_detail.html:24
msgid "remote"
msgstr "à distance"
#: participation/models.py:295
#: participation/models.py:299
msgid "limit date for registrations"
msgstr "date limite d'inscription"
#: participation/models.py:300
#: participation/models.py:304
msgid "limit date to upload solutions"
msgstr "date limite pour envoyer les solutions"
#: participation/models.py:305
#: participation/models.py:309
msgid "random draw for solutions"
msgstr "tirage au sort des solutions"
#: participation/models.py:310
#: participation/models.py:314
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:315
#: participation/models.py:319
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:320
#: participation/models.py:324
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:325
#: participation/models.py:329
#: participation/templates/participation/tournament_detail.html:48
msgid "description"
msgstr "description"
#: participation/models.py:331
#: participation/models.py:335
#: participation/templates/participation/tournament_detail.html:12
msgid "organizers"
msgstr "organisateur⋅rices"
#: participation/models.py:336
#: participation/models.py:340
#: participation/templates/participation/team_detail.html:133
msgid "final"
msgstr "finale"
#: participation/models.py:420 registration/admin.py:125
#: participation/models.py:348
msgid "Google Sheet ID"
msgstr "ID de la feuille Google Sheets"
#: participation/models.py:639 registration/admin.py:125
msgid "tournaments"
msgstr "tournois"
#: participation/models.py:449
#: participation/models.py:668
msgid "valid team"
msgstr "équipe valide"
#: participation/models.py:450
#: participation/models.py:669
msgid "The participation got the validation of the organizers."
msgstr "La participation a été validée par les organisateur⋅rices."
#: participation/models.py:456
#: participation/models.py:675
msgid "The team is selected for the final tournament."
msgstr "L'équipe est sélectionnée pour la finale."
#: participation/models.py:463
#: participation/models.py:682
#, python-brace-format
msgid "Participation of the team {name} ({trigram})"
msgstr "Participation de l'équipe {name} ({trigram})"
#: participation/models.py:470
#: participation/models.py:689
#, python-brace-format
msgid ""
"<p>The team {trigram} has {nb_missing_payments} missing payments. Each "
@ -827,11 +831,11 @@ msgstr ""
"notification de bourse) pour participer au tournoi.</p><p>Les participant⋅es "
"qui n'ont pas encore payé sont : {participants}.</p>"
#: participation/models.py:478
#: participation/models.py:697
msgid "Missing payments"
msgstr "Paiements manquants"
#: participation/models.py:485
#: participation/models.py:704
msgid ""
"<p>The solutions for the tournament of {tournament} are due on the {date:%Y-"
"%m-%d %H:%M}.</p><p>You have currently sent <strong>{nb_solutions}</strong> "
@ -846,40 +850,40 @@ msgstr ""
"pouvez envoyer vos solutions sur <a href='{url}'>votre page de "
"participation</a>.</p>"
#: participation/models.py:494
#: participation/models.py:713
msgid "Solutions due"
msgstr "Rendu des solutions"
#: participation/models.py:504 participation/models.py:537
#: participation/models.py:723 participation/models.py:756
msgid "participations"
msgstr "participations"
#: participation/models.py:519 participation/models.py:520
#: participation/models.py:738 participation/models.py:739
#, python-brace-format
msgid "Round {round}"
msgstr "Tour {round}"
#: participation/models.py:543
#: participation/models.py:762
msgid "juries"
msgstr "jurys"
#: participation/models.py:552
#: participation/models.py:771
msgid "president of the jury"
msgstr "président⋅e du jury"
#: participation/models.py:559
#: participation/models.py:778
msgid "BigBlueButton URL"
msgstr "Lien BigBlueButton"
#: participation/models.py:560
#: participation/models.py:779
msgid "The link of the BBB visio for this pool."
msgstr "Le lien du salon BBB pour cette poule."
#: participation/models.py:565
#: participation/models.py:784
msgid "results available"
msgstr "résultats disponibles"
#: participation/models.py:566
#: participation/models.py:785
msgid ""
"Check this case when results become accessible to teams. They stay "
"accessible to you. Only averages are given."
@ -888,32 +892,37 @@ msgstr ""
"Ils restent toujours accessibles pour vous. Seules les moyennes sont "
"communiquées."
#: participation/models.py:591
#: participation/models.py:810
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:595
#: participation/models.py:1206
#, 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:1221
#, 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:615
#: participation/models.py:1241
msgid "position"
msgstr "position"
#: participation/models.py:622
#: participation/models.py:1248
msgid "defended solution"
msgstr "solution défendue"
#: participation/models.py:655
#: participation/models.py:1281
msgid "observer"
msgstr "observateur⋅rice"
#: participation/models.py:660
#: participation/models.py:1286
msgid "penalties"
msgstr "pénalités"
#: participation/models.py:662
#: participation/models.py:1288
msgid ""
"Number of penalties for the defender. The defender will loose a 0.5 "
"coefficient per penalty."
@ -921,124 +930,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:738 participation/models.py:741
#: participation/models.py:744 participation/models.py:747
#: participation/models.py:1364 participation/models.py:1367
#: participation/models.py:1370 participation/models.py:1373
#, 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:752
#: participation/models.py:1378
#, python-brace-format
msgid "Passage of {defender} for problem {problem}"
msgstr "Passage de {defender} pour le problème {problem}"
#: participation/models.py:756 participation/models.py:765
#: participation/models.py:850 participation/models.py:892
#: participation/models.py:1382 participation/models.py:1391
#: participation/models.py:1476 participation/models.py:1518
msgid "passage"
msgstr "passage"
#: participation/models.py:757
#: participation/models.py:1383
msgid "passages"
msgstr "passages"
#: participation/models.py:776
#: participation/models.py:1402
msgid "difference"
msgstr "différence"
#: participation/models.py:777
#: participation/models.py:1403
msgid "Score to add/remove on the final score"
msgstr "Score à ajouter/retrancher au score final"
#: participation/models.py:784
#: participation/models.py:1410
msgid "tweak"
msgstr "harmonisation"
#: participation/models.py:785
#: participation/models.py:1411
msgid "tweaks"
msgstr "harmonisations"
#: participation/models.py:813
#: participation/models.py:1439
msgid "solution for the final tournament"
msgstr "solution pour la finale"
#: participation/models.py:818 participation/models.py:861
#: participation/models.py:1444 participation/models.py:1487
msgid "file"
msgstr "fichier"
#: participation/models.py:828
#: participation/models.py:1454
#, 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:830
#: participation/models.py:1456
msgid "for final"
msgstr "pour la finale"
#: participation/models.py:833
#: participation/models.py:1459
msgid "solution"
msgstr "solution"
#: participation/models.py:834
#: participation/models.py:1460
msgid "solutions"
msgstr "solutions"
#: participation/models.py:867
#: participation/models.py:1493
#, 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:875
#: participation/models.py:1501
msgid "synthesis"
msgstr "note de synthèse"
#: participation/models.py:876
#: participation/models.py:1502
msgid "syntheses"
msgstr "notes de synthèse"
#: participation/models.py:885
#: participation/models.py:1511
msgid "jury"
msgstr "jury"
#: participation/models.py:897
#: participation/models.py:1523
msgid "defender writing note"
msgstr "note d'écrit de la défense"
#: participation/models.py:903
#: participation/models.py:1529
msgid "defender oral note"
msgstr "note d'oral de la défense"
#: participation/models.py:909
#: participation/models.py:1535
msgid "opponent writing note"
msgstr "note d'écrit de l'opposition"
#: participation/models.py:915
#: participation/models.py:1541
msgid "opponent oral note"
msgstr "note d'oral de l'opposition"
#: participation/models.py:921
#: participation/models.py:1547
msgid "reporter writing note"
msgstr "note d'écrit du rapportage"
#: participation/models.py:927
#: participation/models.py:1553
msgid "reporter oral note"
msgstr "note d'oral du rapportage"
#: participation/models.py:933
#: participation/models.py:1559
msgid "observer note"
msgstr "note de l'observation"
#: participation/models.py:969
#: participation/models.py:1620
#, python-brace-format
msgid "Notes of {jury} for {passage}"
msgstr "Notes de {jury} pour le {passage}"
#: participation/models.py:972
#: participation/models.py:1623
msgid "note"
msgstr "note"
#: participation/models.py:973
#: participation/models.py:1624
msgid "notes"
msgstr "notes"
@ -1077,9 +1086,9 @@ msgstr "Pas d'équipe définie"
#: participation/templates/participation/passage_detail.html:54
#: participation/templates/participation/passage_detail.html:153
#: participation/templates/participation/passage_detail.html:159
#: participation/templates/participation/pool_detail.html:117
#: participation/templates/participation/pool_detail.html:135
#: participation/templates/participation/pool_detail.html:140
#: participation/templates/participation/pool_detail.html:129
#: participation/templates/participation/pool_detail.html:147
#: participation/templates/participation/pool_detail.html:152
#: participation/templates/participation/team_detail.html:151
#: participation/templates/participation/team_detail.html:215
#: participation/templates/participation/tournament_form.html:12
@ -1180,7 +1189,7 @@ msgstr "Envoyer une solution"
#: participation/templates/participation/participation_detail.html:65
#: participation/templates/participation/passage_detail.html:165
#: participation/templates/participation/pool_detail.html:145
#: participation/templates/participation/pool_detail.html:157
#: participation/templates/participation/team_detail.html:210
#: participation/templates/participation/upload_motivation_letter.html:13
#: participation/templates/participation/upload_notes.html:17
@ -1336,47 +1345,55 @@ msgstr "Tout télécharger"
msgid "BigBlueButton link:"
msgstr "Lien BigBlueButton :"
#: participation/templates/participation/pool_detail.html:71
#: participation/templates/participation/pool_detail.html:70
msgid "Notation sheet:"
msgstr "Feuille de notation :"
#: participation/templates/participation/pool_detail.html:74
msgid "Go to the Google Sheets page of the pool"
msgstr "Aller à la page Google Sheets de la poule"
#: participation/templates/participation/pool_detail.html:83
#: participation/templates/participation/tournament_detail.html:98
msgid "Ranking"
msgstr "Classement"
#: participation/templates/participation/pool_detail.html:85
#: participation/templates/participation/pool_detail.html:97
msgid "Download the scale sheet"
msgstr "Télécharger la feuille de barème"
#: participation/templates/participation/pool_detail.html:94
#: participation/templates/participation/pool_detail.html:106
msgid "Download the final notation sheet"
msgstr "Télécharger la fiche de notation finale"
#: participation/templates/participation/pool_detail.html:103
#: participation/templates/participation/pool_detail.html:115
msgid "Download all notation sheets"
msgstr "Télécharger toutes les fiches de notation"
#: participation/templates/participation/pool_detail.html:108
#: participation/templates/participation/pool_detail.html:120
msgid "Upload notes from a CSV file"
msgstr "Soumettre les notes à partir d'un fichier CSV"
#: participation/templates/participation/pool_detail.html:116
#: participation/templates/participation/pool_detail.html:129
#: participation/templates/participation/pool_detail.html:128
#: participation/templates/participation/pool_detail.html:141
msgid "Add passage"
msgstr "Ajouter un passage"
#: participation/templates/participation/pool_detail.html:118
#: participation/templates/participation/pool_detail.html:139
#: participation/templates/participation/pool_detail.html:130
#: participation/templates/participation/pool_detail.html:151
msgid "Update teams"
msgstr "Modifier les équipes"
#: participation/templates/participation/pool_detail.html:125
#: participation/templates/participation/pool_detail.html:137
msgid "Passages"
msgstr "Passages"
#: participation/templates/participation/pool_detail.html:134
#: participation/templates/participation/pool_detail.html:146
#: participation/templates/participation/pool_form.html:11
msgid "Update pool"
msgstr "Modifier la poule"
#: participation/templates/participation/pool_detail.html:144
#: participation/templates/participation/pool_detail.html:156
msgid "Upload notes"
msgstr "Envoyer les notes"
@ -1870,35 +1887,35 @@ msgstr "Nouveau compte de juré⋅e pour le TFJM²"
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:1038
#: participation/views.py:1039
#, 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:1064
#: participation/views.py:1065
#, 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:1092
#: participation/views.py:1093
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:1106
#: participation/views.py:1107
msgid "Notes were successfully uploaded."
msgstr "Les notes ont bien été envoyées."
#: participation/views.py:1739
#: participation/views.py:1740
#, 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:1744
#: participation/views.py:1745
#, python-brace-format
msgid "Notation sheets of {tournament}.zip"
msgstr "Feuilles de notation de {tournament}.zip"
#: participation/views.py:1922
#: participation/views.py:1924
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."

View File

@ -481,7 +481,7 @@ class Tournament(models.Model):
format_requests = []
# Set the width of the columns
column_widths = [("A", 250), ("B", 120), ("C", 120), ("D", 120), ("E", 120), ("F", 120), ("G", 120)]
column_widths = [("A", 300), ("B", 120), ("C", 120), ("D", 120), ("E", 120), ("F", 120), ("G", 120)]
for column, width in column_widths:
grid_range = a1_range_to_grid_range(column, worksheet.id)
format_requests.append({
@ -1013,7 +1013,7 @@ class Pool(models.Model):
})
# Set the width of the columns
column_widths = [("A", 250), ("B", 30)]
column_widths = [("A", 300), ("B", 30)]
for passage in passages:
column_widths.append((f"{getcol(3 + passage_width * (passage.position - 1))}"
f":{getcol(8 + passage_width * (passage.position - 1))}", 75))

View File

@ -64,6 +64,18 @@
<dt class="col-sm-3">{% trans "BigBlueButton link:" %}</dt>
<dd class="col-sm-9">{{ pool.bbb_url|urlize }}</dd>
{% if user.registration.is_admin or user.registration.is_volunteer %}
{% if user.registration.is_admin or user.registration in pool.tournament.organizers.all or user.registration == pool.jury_president %}
<dt class="col-sm-3">{% trans "Notation sheet:" %}</dt>
<dd class="col-sm-9">
<a class="btn btn-success" href="https://docs.google.com/spreadsheets/d/{{ pool.tournament.notes_sheet_id }}/edit">
<i class="fas fa-table"></i>
{% trans "Go to the Google Sheets page of the pool" %}
</a>
</dd>
{% endif %}
{% endif %}
</dl>
<div class="card bg-body shadow">

View File

@ -194,6 +194,12 @@
Archive de toutes les notes de synthèse triées par poule et par passage
</a>
</li>
<li>
<a href="https://docs.google.com/spreadsheets/d/{{ tournament.notes_sheet_id }}/edit">
<i class="fas fa-table"></i>
Tableur de notes sur Google Sheets
</a>
</li>
<li>
<a href="{% url "participation:tournament_notation_sheets" tournament_id=tournament.id %}">
Archive de toutes les feuilles de notes à imprimer triées par poule