1
0
mirror of https://gitlab.com/animath/si/plateforme.git synced 2025-06-21 02:38:23 +02:00

Send email after team final selection

Signed-off-by: Emmy D'Anello <emmy.danello@animath.fr>
This commit is contained in:
Emmy D'Anello
2024-04-07 13:39:44 +02:00
parent 7073f64aa6
commit 7a0b93b151
5 changed files with 249 additions and 104 deletions

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: TFJM\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-04-07 12:35+0200\n"
"POT-Creation-Date: 2024-04-07 13:39+0200\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"
@ -31,7 +31,7 @@ msgstr "équipes"
#: participation/admin.py:79 participation/admin.py:140
#: participation/admin.py:171 participation/models.py:656
#: participation/models.py:680 participation/models.py:886
#: registration/models.py:722
#: registration/models.py:748
#: registration/templates/registration/payment_form.html:53
msgid "tournament"
msgstr "tournoi"
@ -334,7 +334,7 @@ msgstr "Continuer le tirage"
#: draw/templates/draw/tournament_content.html:216 participation/admin.py:167
#: participation/models.py:252 participation/models.py:671
#: participation/templates/participation/tournament_harmonize.html:15
#: registration/models.py:157 registration/models.py:713
#: registration/models.py:157 registration/models.py:739
#: registration/tables.py:39
#: registration/templates/registration/payment_form.html:52
msgid "team"
@ -720,7 +720,7 @@ msgstr ""
"L'équipe {trigram} n'a pas encore été validée par les organisateurices. "
"Merci de patienter."
#: participation/models.py:196 registration/models.py:541
#: participation/models.py:196 registration/models.py:567
msgid "Pending validation"
msgstr "Validation en attente"
@ -864,12 +864,12 @@ msgid ""
"<a href='{url}'>your participation page</a>.</p>"
msgstr ""
"<p>Les solutions pour le tournoi de {tournament} sont attendues pour le "
"{date:%d/%m/%Y %H:%M}.</p><p>N'oubliez pas que vous pouvez seulement apporter "
"des corrections mineures à vos solutions sans ajouter de nouvelles parties.</p>"
"<p>Vous pouvez envoyer vos solutions sur <a href='{url}'>votre page de "
"participation</a>.</p>"
"{date:%d/%m/%Y %H:%M}.</p><p>N'oubliez pas que vous pouvez seulement "
"apporter des corrections mineures à vos solutions sans ajouter de nouvelles "
"parties.</p><p>Vous pouvez envoyer vos solutions sur <a href='{url}'>votre "
"page de participation</a>.</p>"
#: participation/models.py:762 registration/models.py:566
#: participation/models.py:762 registration/models.py:592
msgid ""
"<p>The draw of the solutions for the tournament {tournament} is planned on "
"the {date:%Y-%m-%d %H:%M}. You can join it on <a href='{url}'>this link</a>."
@ -879,7 +879,7 @@ msgstr ""
"{date:%d/%m/%Y %H:%M}. Vous pouvez y participer sur <a href='{url}'>ce lien</"
"a>.</p>"
#: participation/models.py:768 registration/models.py:573
#: participation/models.py:768 registration/models.py:599
msgid "Draw of solutions"
msgstr "Tirage au sort des solutions"
@ -917,7 +917,7 @@ msgstr ""
"href='{solution_url}'>problème {problem}</a>. Vous pouvez envoyer votre note "
"de synthèse sur <a href='{passage_url}'>cette page</a>.</p>"
#: participation/models.py:813 registration/models.py:588
#: participation/models.py:813 registration/models.py:614
msgid "First round"
msgstr "Premier tour"
@ -930,7 +930,7 @@ msgstr ""
"<p>Pour le second tour, vous défendrez <a href='{solution_url}'>votre "
"solution du problème {problem}</a>.</p>"
#: participation/models.py:856 registration/models.py:599
#: participation/models.py:856 registration/models.py:625
msgid "Second round"
msgstr "Second tour"
@ -1623,7 +1623,7 @@ msgid "Payment of"
msgstr "Paiement de"
#: participation/templates/participation/team_detail.html:160
#: registration/models.py:643
#: registration/models.py:669
msgid "grouped"
msgstr "groupé"
@ -1826,7 +1826,7 @@ msgid "Rank"
msgstr "Rang"
#: participation/templates/participation/tournament_harmonize.html:16
#: registration/models.py:614
#: registration/models.py:640
msgid "Note"
msgstr "Note"
@ -2010,88 +2010,88 @@ msgstr "Notes dissimulées !"
msgid "Harmonize notes of {tournament} - Day {round}"
msgstr "Harmoniser les notes de {tournament} - Jour {round}"
#: participation/views.py:885
#: participation/views.py:893
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:1002
#: participation/views.py:1010
#, python-brace-format
msgid "Solutions of team {trigram}.zip"
msgstr "Solutions de l'équipe {trigram}.zip"
#: participation/views.py:1002
#: participation/views.py:1010
#, python-brace-format
msgid "Syntheses of team {trigram}.zip"
msgstr "Notes de synthèse de l'équipe {trigram}.zip"
#: participation/views.py:1019 participation/views.py:1034
#: participation/views.py:1027 participation/views.py:1042
#, python-brace-format
msgid "Solutions of {tournament}.zip"
msgstr "Solutions de {tournament}.zip"
#: participation/views.py:1019 participation/views.py:1034
#: participation/views.py:1027 participation/views.py:1042
#, python-brace-format
msgid "Syntheses of {tournament}.zip"
msgstr "Notes de synthèse de {tournament}.zip"
#: participation/views.py:1043
#: participation/views.py:1051
#, 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:1044
#: participation/views.py:1052
#, 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:1086
#: participation/views.py:1094
#, 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:1102
#: participation/views.py:1110
#, python-brace-format
msgid "The jury {name} is already in the pool!"
msgstr "{name} est déjà dans la poule !"
#: participation/views.py:1122
#: participation/views.py:1130
msgid "New TFJM² jury account"
msgstr "Nouveau compte de juré⋅e pour le TFJM²"
#: participation/views.py:1143
#: participation/views.py:1151
#, 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:1179
#: participation/views.py:1187
#, 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:1205
#: participation/views.py:1213
#, 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:1233
#: participation/views.py:1241
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:1250
#: participation/views.py:1258
msgid "Notes were successfully uploaded."
msgstr "Les notes ont bien été envoyées."
#: participation/views.py:1883
#: participation/views.py:1891
#, 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:1888
#: participation/views.py:1896
#, python-brace-format
msgid "Notation sheets of {tournament}.zip"
msgstr "Feuilles de notation de {tournament}.zip"
#: participation/views.py:2065
#: participation/views.py:2073
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."
@ -2130,7 +2130,7 @@ msgstr "rôle"
msgid "participant"
msgstr "participant⋅e"
#: registration/forms.py:25 registration/models.py:475
#: registration/forms.py:25 registration/models.py:501
msgid "coach"
msgstr "encadrant⋅e"
@ -2174,7 +2174,7 @@ msgstr ""
msgid "registration"
msgstr "inscription"
#: registration/models.py:130 registration/models.py:639
#: registration/models.py:130 registration/models.py:665
msgid "registrations"
msgstr "inscriptions"
@ -2284,71 +2284,75 @@ msgstr ""
"Vous n'avez pas envoyé votre autorisation de droit à l'image pour la finale. "
"Vous pouvez le faire en cliquant sur <a href=\"{photo_url}\">ce lien</a>."
#: registration/models.py:293
#: registration/models.py:297
msgid "Team selected for the final tournament"
msgstr "Équipe sélectionnée pour la finale"
#: registration/models.py:319
msgid "participant registration"
msgstr "inscription de participant⋅e"
#: registration/models.py:294
#: registration/models.py:320
msgid "participant registrations"
msgstr "inscriptions de participant⋅es"
#: registration/models.py:303
#: registration/models.py:329
msgid "birth date"
msgstr "date de naissance"
#: registration/models.py:309
#: registration/models.py:335
msgid "12th grade"
msgstr "Terminale"
#: registration/models.py:310
#: registration/models.py:336
msgid "11th grade"
msgstr "Première"
#: registration/models.py:311
#: registration/models.py:337
msgid "10th grade or lower"
msgstr "Seconde ou inférieur"
#: registration/models.py:313
#: registration/models.py:339
msgid "student class"
msgstr "classe"
#: registration/models.py:318
#: registration/models.py:344
msgid "school"
msgstr "école"
#: registration/models.py:323
#: registration/models.py:349
msgid "responsible name"
msgstr "nom d'un⋅e responsable légal⋅e"
#: registration/models.py:328
#: registration/models.py:354
msgid "responsible phone number"
msgstr "numéro de téléphone d'un⋅e responsable légal⋅e"
#: registration/models.py:333
#: registration/models.py:359
msgid "responsible email address"
msgstr "adresse e-mail d'un⋅e responsable légal⋅e"
#: registration/models.py:338
#: registration/models.py:364
msgid "parental authorization"
msgstr "autorisation parentale"
#: registration/models.py:345
#: registration/models.py:371
msgid "parental authorization (final)"
msgstr "autorisation parentale (finale)"
#: registration/models.py:352
#: registration/models.py:378
msgid "health sheet"
msgstr "fiche sanitaire"
#: registration/models.py:359
#: registration/models.py:385
msgid "vaccine sheet"
msgstr "carnet de vaccination"
#: registration/models.py:367
#: registration/models.py:393
msgid "student"
msgstr "élève"
#: registration/models.py:378
#: registration/models.py:404
#, python-brace-format
msgid ""
"You have not uploaded your parental authorization. You can do it by clicking "
@ -2357,11 +2361,11 @@ msgstr ""
"Vous n'avez pas envoyé votre autorisation parentale. Vous pouvez le faire en "
"cliquant sur <a href=\"{parental_url}\">ce lien</a>."
#: registration/models.py:383 registration/models.py:443
#: registration/models.py:409 registration/models.py:469
msgid "Parental authorization"
msgstr "Autorisation parentale"
#: registration/models.py:389
#: registration/models.py:415
#, python-brace-format
msgid ""
"You have not uploaded your health sheet. You can do it by clicking on <a "
@ -2370,11 +2374,11 @@ msgstr ""
"Vous n'avez pas envoyé votre fiche sanitaire. Vous pouvez le faire en "
"cliquant sur <a href=\"{health_url}\">ce lien</a>."
#: registration/models.py:394
#: registration/models.py:420
msgid "Health sheet"
msgstr "Fiche sanitaire"
#: registration/models.py:400
#: registration/models.py:426
#, python-brace-format
msgid ""
"You have not uploaded your vaccine sheet. You can do it by clicking on <a "
@ -2383,11 +2387,11 @@ msgstr ""
"Vous n'avez pas envoyé votre carnet de vaccination. Vous pouvez le faire en "
"cliquant sur <a href=\"{vaccine_url}\">ce lien</a>."
#: registration/models.py:405
#: registration/models.py:431
msgid "Vaccine sheet"
msgstr "Carnet de vaccination"
#: registration/models.py:414
#: registration/models.py:440
#, python-brace-format
msgid ""
"You have to pay {amount} € for your registration, or send a scholarship "
@ -2398,15 +2402,15 @@ msgstr ""
"notification de bourse ou un justificatif de paiement. Vous pouvez le faire "
"sur <a href=\"{url}\">la page de paiement</a>."
#: registration/models.py:420 registration/models.py:429
#: registration/models.py:446 registration/models.py:455
msgid "Payment"
msgstr "Paiement"
#: registration/models.py:426
#: registration/models.py:452
msgid "Your payment is under approval."
msgstr "Votre paiement est en cours de validation."
#: registration/models.py:437
#: registration/models.py:463
#, python-brace-format
msgid ""
"You have not uploaded your parental authorization for the final tournament. "
@ -2415,19 +2419,19 @@ msgstr ""
"Vous n'avez pas envoyé votre autorisation parentale pour la finale. Vous "
"pouvez le faire en cliquant sur <a href=\"{parental_url}\">ce lien</a>."
#: registration/models.py:452
#: registration/models.py:478
msgid "student registration"
msgstr "inscription d'élève"
#: registration/models.py:453
#: registration/models.py:479
msgid "student registrations"
msgstr "inscriptions d'élève"
#: registration/models.py:464
#: registration/models.py:490
msgid "most recent degree in mathematics, computer science or physics"
msgstr "Dernier diplôme obtenu en mathématiques, informatique ou physique"
#: registration/models.py:465
#: registration/models.py:491
msgid ""
"Your most recent degree in maths, computer science or physics, or your last "
"entrance exam (CAPES, Agrégation,…)"
@ -2435,23 +2439,23 @@ msgstr ""
"Votre dernier diplôme en mathématiques, informatique ou physique, ou votre "
"dernier concours obtenu (CAPES, Agrégation, …)"
#: registration/models.py:470 registration/models.py:492
#: registration/models.py:496 registration/models.py:518
msgid "professional activity"
msgstr "activité professionnelle"
#: registration/models.py:483
#: registration/models.py:509
msgid "coach registration"
msgstr "inscription d'encadrant⋅e"
#: registration/models.py:484
#: registration/models.py:510
msgid "coach registrations"
msgstr "inscriptions d'encadrant⋅es"
#: registration/models.py:496
#: registration/models.py:522
msgid "administrator"
msgstr "administrateur⋅rice"
#: registration/models.py:497
#: registration/models.py:523
msgid ""
"An administrator has all rights. Please don't give this right to all juries "
"and volunteers."
@ -2459,15 +2463,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:507
#: registration/models.py:533
msgid "admin"
msgstr "admin"
#: registration/models.py:507
#: registration/models.py:533
msgid "volunteer"
msgstr "bénévole"
#: registration/models.py:520
#: registration/models.py:546
msgid ""
"Registrations for tournament {tournament} are closing on {date:%Y-%m-%d %H:"
"%M}. There are for now {validated_teams} validated teams (+ {pending_teams} "
@ -2477,11 +2481,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:528
#: registration/models.py:554
msgid "Registrations"
msgstr "Inscriptions"
#: registration/models.py:535
#: registration/models.py:561
#, python-brace-format
msgid ""
"The team {trigram} requested to be validated for the tournament of "
@ -2492,7 +2496,7 @@ msgstr ""
"Vous pouvez vérifier le statut de l'équipe sur la <a href=\"{url}\">page de "
"l'équipe</a>."
#: registration/models.py:552
#: registration/models.py:578
#, python-brace-format
msgid ""
"There are {valid} validated payments, {pending} pending and {invalid} "
@ -2503,11 +2507,11 @@ msgstr ""
"invalides pour le tournoi {tournament}. Vous pouvez vérifier le statut des "
"paiements sur la <a href=\"{url}\">liste des paiements</a>."
#: registration/models.py:559
#: registration/models.py:585
msgid "Payments"
msgstr "Paiements"
#: registration/models.py:583 registration/models.py:594
#: registration/models.py:609 registration/models.py:620
#, python-brace-format
msgid ""
"<p>You are in the jury of the pool {pool} for the tournament of "
@ -2516,7 +2520,7 @@ msgstr ""
"<p>Vous êtes dans le jury de la poule {pool} pour le tournoi {tournament}. "
"Vous pouvez trouver la page de la poule <a href='{pool_url}'>ici</a>.</p>"
#: registration/models.py:607
#: registration/models.py:633
#, python-brace-format
msgid ""
"<p>You don't have given any note as a jury for the passage {passage} in the "
@ -2527,15 +2531,15 @@ msgstr ""
"{passage} dans la poule {pool} de {tournament}. Vous pouvez donner vos notes "
"<a href='{passage_url}'>ici</a>.</p>"
#: registration/models.py:623
#: registration/models.py:649
msgid "volunteer registration"
msgstr "inscription de bénévole"
#: registration/models.py:624
#: registration/models.py:650
msgid "volunteer registrations"
msgstr "inscriptions de bénévoles"
#: registration/models.py:645
#: registration/models.py:671
msgid ""
"If set to true, then one payment is made for the full team, for example if "
"the school pays for all."
@ -2543,100 +2547,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:650
#: registration/models.py:676
msgid "total amount"
msgstr "montant total"
#: registration/models.py:651
#: registration/models.py:677
msgid "Corresponds to the total required amount to pay, in euros."
msgstr "Correspond au montant total à payer, en euros."
#: registration/models.py:656
#: registration/models.py:682
msgid "token"
msgstr "jeton"
#: registration/models.py:659
#: registration/models.py:685
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:663
#: registration/models.py:689
msgid "for final tournament"
msgstr "pour la finale"
#: registration/models.py:668
#: registration/models.py:694
msgid "type"
msgstr "type"
#: registration/models.py:671
#: registration/models.py:697
msgid "No payment"
msgstr "Pas de paiement"
#: registration/models.py:672
#: registration/models.py:698
#: registration/templates/registration/payment_form.html:72
msgid "Credit card"
msgstr "Carte bancaire"
#: registration/models.py:673
#: registration/models.py:699
msgid "Scholarship"
msgstr "Notification de bourse"
#: registration/models.py:674
#: registration/models.py:700
#: registration/templates/registration/payment_form.html:77
msgid "Bank transfer"
msgstr "Virement bancaire"
#: registration/models.py:675
#: registration/models.py:701
msgid "Other (please indicate)"
msgstr "Autre (veuillez spécifier)"
#: registration/models.py:676
#: registration/models.py:702
msgid "The tournament is free"
msgstr "Le tournoi est gratuit"
#: registration/models.py:683
#: registration/models.py:709
msgid "Hello Asso checkout intent ID"
msgstr "ID de l'intention de paiement Hello Asso"
#: registration/models.py:690
#: registration/models.py:716
msgid "receipt"
msgstr "justificatif"
#: registration/models.py:691
#: registration/models.py:717
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:698
#: registration/models.py:724
msgid "additional information"
msgstr "informations additionnelles"
#: registration/models.py:699
#: registration/models.py:725
msgid "To help us to find your payment."
msgstr "Pour nous aider à retrouver votre paiement, si nécessaire."
#: registration/models.py:705
#: registration/models.py:731
msgid "payment valid"
msgstr "paiement valide"
#: registration/models.py:765
#: registration/models.py:791
msgid "Reminder for your payment"
msgstr "Rappel pour votre paiement"
#: registration/models.py:776
#: registration/models.py:802
msgid "Payment confirmation"
msgstr "Confirmation de paiement"
#: registration/models.py:798
#: registration/models.py:824
#, python-brace-format
msgid "Payment of {registrations}"
msgstr "Paiements de {registrations}"
#: registration/models.py:801
#: registration/models.py:827
msgid "payment"
msgstr "paiement"
#: registration/models.py:802
#: registration/models.py:828
msgid "payments"
msgstr "paiements"