fix(audit): fermer les frontieres restantes

This commit is contained in:
GGThed
2026-08-17 14:34:06 -04:00
parent f84cb4e3b6
commit 105a72700f
28 changed files with 1511 additions and 617 deletions
+305 -224
View File
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: team-tryouts VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2026-08-16 23:22-0400\n"
"POT-Creation-Date: 2026-08-17 14:18-0400\n"
"PO-Revision-Date: 2026-08-07 20:22-0400\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language: en\n"
@@ -23,8 +23,8 @@ msgstr ""
msgid "Please log in to access this page."
msgstr "Please log in to access this page."
#: app/forms.py:37 app/routes/auth.py:228 app/routes/auth.py:387
#: app/routes/users/contracts.py:98
#: app/forms.py:37 app/routes/auth.py:229 app/routes/auth.py:388
#: app/routes/auth.py:402 app/routes/users/contracts.py:98
#, python-format
msgid "%(field)s: %(msg)s"
msgstr "%(field)s: %(msg)s"
@@ -61,7 +61,7 @@ msgstr "Username is required."
msgid "Password is required."
msgstr "Password is required."
#: app/validators.py:227 app/validators.py:294
#: app/validators.py:227 app/validators.py:324
msgid "Username must be 3-80 characters."
msgstr "Username must be 3-80 characters."
@@ -69,8 +69,8 @@ msgstr "Username must be 3-80 characters."
msgid "Email must be 120 characters or less."
msgstr "Email must be 120 characters or less."
#: app/validators.py:246 app/validators.py:309 app/validators.py:340
#: app/validators.py:403
#: app/validators.py:246 app/validators.py:339 app/validators.py:370
#: app/validators.py:433
msgid "Full name is required."
msgstr "Full name is required."
@@ -78,160 +78,200 @@ msgstr "Full name is required."
msgid "Passwords do not match."
msgstr "Passwords do not match."
#: app/validators.py:313 app/validators.py:348
msgid "Invalid role selected."
msgstr "Invalid role selected."
#: app/validators.py:443
msgid "Player must be selected."
msgstr "Player must be selected."
#: app/validators.py:446
msgid "Notes must be 2000 characters or less."
msgstr "Notes must be 2000 characters or less."
#: app/validators.py:483 app/validators.py:854
msgid "Invalid coach selection."
msgstr "Invalid coach selection."
#: app/validators.py:489 app/validators.py:860
msgid "Invalid manager selection."
msgstr "Invalid manager selection."
#: app/validators.py:507
msgid "Invalid player selection."
msgstr "Invalid player selection."
#: app/validators.py:516
msgid "Unknown roster status."
msgstr "Unknown roster status."
#: app/validators.py:539
msgid "Date must be in YYYY-MM-DD format."
msgstr "Date must be in YYYY-MM-DD format."
#: app/validators.py:540
msgid "A date is required."
msgstr "A date is required."
#: app/validators.py:546 app/validators.py:611
msgid "Start time must be in HH:MM format."
msgstr "Start time must be in HH:MM format."
#: app/validators.py:547 app/validators.py:612
msgid "A start time is required."
msgstr "A start time is required."
#: app/validators.py:553
msgid "End time must be in HH:MM format."
msgstr "End time must be in HH:MM format."
#: app/validators.py:554
msgid "An end time is required."
msgstr "An end time is required."
#: app/validators.py:558
msgid "Points must be 2000 characters or less."
msgstr "Points must be 2000 characters or less."
#: app/validators.py:573
msgid "End time must be after start time."
msgstr "End time must be after start time."
#: app/validators.py:602 app/validators.py:604
msgid "Day must be 0 (Monday) to 6 (Sunday)."
msgstr "Day must be 0 (Monday) to 6 (Sunday)."
#: app/validators.py:605
msgid "A day is required."
msgstr "A day is required."
#: app/validators.py:640
msgid "Player selection is malformed."
msgstr "Player selection is malformed."
#: app/validators.py:666 app/validators.py:776
msgid "A title is required."
msgstr "A title is required."
#: app/validators.py:675
msgid "Invalid date format."
msgstr "Invalid date format."
#: app/validators.py:680 app/validators.py:687
msgid "Invalid time format."
msgstr "Invalid time format."
#: app/validators.py:681
msgid "Start time is required. Please select a time slot."
msgstr "Start time is required. Please select a time slot."
#: app/validators.py:695
msgid "Unknown match status."
msgstr "Unknown match status."
#: app/validators.py:711
msgid "The end time must come after the start time."
msgstr "The end time must come after the start time."
#: app/validators.py:725
msgid "Unknown match type."
msgstr "Unknown match type."
#: app/validators.py:737
msgid "A team cannot play against itself."
msgstr "A team cannot play against itself."
#: app/validators.py:785
#: app/validators.py:284 app/validators.py:924
msgid "Unknown game."
msgstr "Unknown game."
#: app/validators.py:790
#: app/validators.py:291
msgid "Gamertag must be between 1 and 120 characters."
msgstr "Gamertag must be between 1 and 120 characters."
#: app/validators.py:297
msgid "Platform must be 30 characters or less."
msgstr "Platform must be 30 characters or less."
#: app/validators.py:306
msgid "Unknown platform for this game."
msgstr "Unknown platform for this game."
#: app/validators.py:343 app/validators.py:378
msgid "Invalid role selected."
msgstr "Invalid role selected."
#: app/validators.py:473 app/validators.py:596 app/validators.py:629
msgid "Player must be selected."
msgstr "Player must be selected."
#: app/validators.py:476
msgid "Notes must be 2000 characters or less."
msgstr "Notes must be 2000 characters or less."
#: app/validators.py:513 app/validators.py:993
msgid "Invalid coach selection."
msgstr "Invalid coach selection."
#: app/validators.py:519 app/validators.py:999
msgid "Invalid manager selection."
msgstr "Invalid manager selection."
#: app/validators.py:537 app/validators.py:595 app/validators.py:628
msgid "Invalid player selection."
msgstr "Invalid player selection."
#: app/validators.py:546
msgid "Unknown roster status."
msgstr "Unknown roster status."
#: app/validators.py:559
msgid "Unknown tryout status."
msgstr "Unknown tryout status."
#: app/validators.py:570
msgid "Unknown registration status."
msgstr "Unknown registration status."
#: app/validators.py:583
msgid "Team name must be between 1 and 100 characters."
msgstr "Team name must be between 1 and 100 characters."
#: app/validators.py:603
msgid "Position must be 50 characters or less."
msgstr "Position must be 50 characters or less."
#: app/validators.py:616
msgid "Note content must be between 1 and 5000 characters."
msgstr "Note content must be between 1 and 5000 characters."
#: app/validators.py:642
msgid "Select at most one note context."
msgstr "Select at most one note context."
#: app/validators.py:654
msgid "Rejection reason must be 2000 characters or less."
msgstr "Rejection reason must be 2000 characters or less."
#: app/validators.py:678
msgid "Date must be in YYYY-MM-DD format."
msgstr "Date must be in YYYY-MM-DD format."
#: app/validators.py:679
msgid "A date is required."
msgstr "A date is required."
#: app/validators.py:685 app/validators.py:750
msgid "Start time must be in HH:MM format."
msgstr "Start time must be in HH:MM format."
#: app/validators.py:686 app/validators.py:751
msgid "A start time is required."
msgstr "A start time is required."
#: app/validators.py:692
msgid "End time must be in HH:MM format."
msgstr "End time must be in HH:MM format."
#: app/validators.py:693
msgid "An end time is required."
msgstr "An end time is required."
#: app/validators.py:697
msgid "Points must be 2000 characters or less."
msgstr "Points must be 2000 characters or less."
#: app/validators.py:712
msgid "End time must be after start time."
msgstr "End time must be after start time."
#: app/validators.py:741 app/validators.py:743
msgid "Day must be 0 (Monday) to 6 (Sunday)."
msgstr "Day must be 0 (Monday) to 6 (Sunday)."
#: app/validators.py:744
msgid "A day is required."
msgstr "A day is required."
#: app/validators.py:779
msgid "Player selection is malformed."
msgstr "Player selection is malformed."
#: app/validators.py:805 app/validators.py:915
msgid "A title is required."
msgstr "A title is required."
#: app/validators.py:814
msgid "Invalid date format."
msgstr "Invalid date format."
#: app/validators.py:819 app/validators.py:826
msgid "Invalid time format."
msgstr "Invalid time format."
#: app/validators.py:820
msgid "Start time is required. Please select a time slot."
msgstr "Start time is required. Please select a time slot."
#: app/validators.py:834
msgid "Unknown match status."
msgstr "Unknown match status."
#: app/validators.py:850
msgid "The end time must come after the start time."
msgstr "The end time must come after the start time."
#: app/validators.py:864
msgid "Unknown match type."
msgstr "Unknown match type."
#: app/validators.py:876
msgid "A team cannot play against itself."
msgstr "A team cannot play against itself."
#: app/validators.py:929
msgid "Invalid start date format."
msgstr "Invalid start date format."
#: app/validators.py:791
#: app/validators.py:930
msgid "A start date is required."
msgstr "A start date is required."
#: app/validators.py:797
#: app/validators.py:936
msgid "Invalid end date format."
msgstr "Invalid end date format."
#: app/validators.py:805
#: app/validators.py:944
msgid "A tryout must allow at least one player."
msgstr "A tryout must allow at least one player."
#: app/validators.py:808
#: app/validators.py:947
msgid "The player limit must be a whole number."
msgstr "The player limit must be a whole number."
#: app/validators.py:820
#: app/validators.py:959
msgid "End date cannot be before start date."
msgstr "End date cannot be before start date."
#: app/validators.py:847 app/validators.py:848
#: app/validators.py:986 app/validators.py:987
msgid "Team name is required."
msgstr "Team name is required."
#: app/validators.py:872
#: app/validators.py:1011
msgid "Scores run from 1 to 10."
msgstr "Scores run from 1 to 10."
#: app/validators.py:873
#: app/validators.py:1012
msgid "A score must be a whole number from 1 to 10."
msgstr "A score must be a whole number from 1 to 10."
#: app/routes/auth.py:245
#: app/routes/auth.py:246
msgid "This account has been deactivated."
msgstr "This account has been deactivated."
#: app/routes/auth.py:280
#: app/routes/auth.py:281
#, python-format
msgid "Welcome back, %(username)s!"
msgstr "Welcome back, %(username)s!"
#: app/routes/auth.py:310
#: app/routes/auth.py:311
msgid ""
"Login unsuccessful. Please check your username and password, or ask a "
"president for help."
@@ -239,32 +279,32 @@ msgstr ""
"Login unsuccessful. Please check your username and password, or ask a "
"president for help."
#: app/routes/auth.py:376
#: app/routes/auth.py:377
msgid "Your registration could not be processed. Please try again."
msgstr "Your registration could not be processed. Please try again."
#: app/routes/auth.py:411 app/routes/users/accounts.py:339
#: app/routes/auth.py:419 app/routes/users/accounts.py:343
msgid "Username already exists."
msgstr "Username already exists."
#: app/routes/auth.py:415 app/routes/users/accounts.py:343
#: app/routes/auth.py:423 app/routes/users/accounts.py:347
msgid "Email already registered."
msgstr "Email already registered."
#: app/routes/auth.py:422 app/routes/auth.py:617
#: app/routes/auth.py:430 app/routes/auth.py:623
#: app/routes/users/accounts.py:121
msgid "This Discord account is already linked to another account."
msgstr "This Discord account is already linked to another account."
#: app/routes/auth.py:466
#: app/routes/auth.py:472
msgid "Your account has been created! You can now log in."
msgstr "Your account has been created! You can now log in."
#: app/routes/auth.py:491
#: app/routes/auth.py:497
msgid "Discord OAuth2 is not configured."
msgstr "Discord OAuth2 is not configured."
#: app/routes/auth.py:540
#: app/routes/auth.py:546
msgid ""
"Discord authorization could not be verified. Please start the connection "
"again from this page."
@@ -272,35 +312,35 @@ msgstr ""
"Discord authorization could not be verified. Please start the connection "
"again from this page."
#: app/routes/auth.py:549
#: app/routes/auth.py:555
msgid "Discord authorization failed. No code received."
msgstr "Discord authorization failed. No code received."
#: app/routes/auth.py:573
#: app/routes/auth.py:579
msgid "Failed to connect to Discord. Please try again."
msgstr "Failed to connect to Discord. Please try again."
#: app/routes/auth.py:577
#: app/routes/auth.py:583
msgid "Failed to obtain Discord access token."
msgstr "Failed to obtain Discord access token."
#: app/routes/auth.py:592 app/routes/auth.py:602
#: app/routes/auth.py:598 app/routes/auth.py:608
msgid "Failed to fetch Discord user profile."
msgstr "Failed to fetch Discord user profile."
#: app/routes/auth.py:609
#: app/routes/auth.py:615
msgid "Please log in to connect your Discord account."
msgstr "Please log in to connect your Discord account."
#: app/routes/auth.py:628
#: app/routes/auth.py:634
msgid "Discord account connected!"
msgstr "Discord account connected!"
#: app/routes/auth.py:675
#: app/routes/auth.py:681
msgid "Discord account connected! Your profile has been pre-filled."
msgstr "Discord account connected! Your profile has been pre-filled."
#: app/routes/auth.py:703
#: app/routes/auth.py:709
msgid "You have been logged out."
msgstr "You have been logged out."
@@ -334,10 +374,10 @@ msgstr "Evaluation updated!"
#: app/routes/evaluations.py:210 app/routes/teams.py:341
#: app/routes/teams.py:384 app/routes/teams.py:427 app/routes/teams.py:455
#: app/routes/teams.py:483 app/routes/teams.py:520 app/routes/tryouts.py:444
#: app/routes/tryouts.py:460 app/routes/tryouts.py:480
#: app/routes/tryouts.py:527 app/routes/tryouts.py:563
#: app/routes/tryouts.py:582
#: app/routes/teams.py:483 app/routes/teams.py:520 app/routes/tryouts.py:471
#: app/routes/tryouts.py:491 app/routes/tryouts.py:515
#: app/routes/tryouts.py:562 app/routes/tryouts.py:598
#: app/routes/tryouts.py:621
msgid "Permission denied."
msgstr "Permission denied."
@@ -345,35 +385,35 @@ msgstr "Permission denied."
msgid "That language is not available."
msgstr "That language is not available."
#: app/routes/matches.py:364
#: app/routes/matches.py:383
msgid "You do not have permission to schedule matches for this tryout."
msgstr "You do not have permission to schedule matches for this tryout."
#: app/routes/matches.py:368 app/routes/matches.py:448
#: app/routes/matches.py:387 app/routes/matches.py:463
msgid "This tryout has ended. Matches can no longer be created or modified."
msgstr "This tryout has ended. Matches can no longer be created or modified."
#: app/routes/matches.py:430
#: app/routes/matches.py:445
msgid "Match scheduled successfully!"
msgstr "Match scheduled successfully!"
#: app/routes/matches.py:444 app/routes/team_matches.py:220
#: app/routes/matches.py:459 app/routes/team_matches.py:220
msgid "You do not have permission to edit this match."
msgstr "You do not have permission to edit this match."
#: app/routes/matches.py:539 app/routes/team_matches.py:250
#: app/routes/matches.py:552 app/routes/team_matches.py:250
msgid "Match updated successfully!"
msgstr "Match updated successfully!"
#: app/routes/matches.py:575 app/routes/team_matches.py:265
#: app/routes/matches.py:588 app/routes/team_matches.py:265
msgid "You do not have permission to delete this match."
msgstr "You do not have permission to delete this match."
#: app/routes/matches.py:578
#: app/routes/matches.py:591
msgid "This tryout has ended. Matches can no longer be deleted."
msgstr "This tryout has ended. Matches can no longer be deleted."
#: app/routes/matches.py:591 app/routes/team_matches.py:269
#: app/routes/matches.py:604 app/routes/team_matches.py:269
msgid "Match deleted successfully."
msgstr "Match deleted successfully."
@@ -476,7 +516,7 @@ msgstr "Coach removed from %(name)s."
msgid "Manager removed from %(name)s."
msgstr "Manager removed from %(name)s."
#: app/routes/teams.py:490 app/routes/tryouts.py:489 app/routes/tryouts.py:593
#: app/routes/teams.py:490 app/routes/tryouts.py:524
msgid "Please select a player."
msgstr "Please select a player."
@@ -494,7 +534,7 @@ msgstr "%(username)s is already on %(name)s."
msgid "%(username)s added to %(name)s!"
msgstr "%(username)s added to %(name)s!"
#: app/routes/teams.py:527 app/routes/teams.py:601
#: app/routes/teams.py:527 app/routes/teams.py:605
#, python-format
msgid "%(username)s is not on %(name)s."
msgstr "%(username)s is not on %(name)s."
@@ -504,130 +544,130 @@ msgstr "%(username)s is not on %(name)s."
msgid "%(username)s removed from %(name)s."
msgstr "%(username)s removed from %(name)s."
#: app/routes/teams.py:572 app/routes/teams.py:590
#: app/routes/teams.py:572 app/routes/teams.py:594
msgid "You do not have permission to add notes to this team."
msgstr "You do not have permission to add notes to this team."
#: app/routes/teams.py:580
#: app/routes/teams.py:584
msgid "Team notes added successfully!"
msgstr "Team notes added successfully!"
#: app/routes/teams.py:595 app/routes/users/notes.py:207
#: app/routes/users/notes.py:250
#: app/routes/teams.py:599 app/routes/users/notes.py:222
#: app/routes/users/notes.py:262
msgid "Can only add notes for players."
msgstr "Can only add notes for players."
#: app/routes/teams.py:611
#: app/routes/teams.py:619
#, python-format
msgid "Note added for %(username)s!"
msgstr "Note added for %(username)s!"
#: app/routes/tryouts.py:98
#: app/routes/tryouts.py:125
msgid "You do not have permission to create tryouts."
msgstr "You do not have permission to create tryouts."
#: app/routes/tryouts.py:145
#: app/routes/tryouts.py:172
msgid "Tryout created successfully!"
msgstr "Tryout created successfully!"
#: app/routes/tryouts.py:158
#: app/routes/tryouts.py:185
msgid "You do not have permission to edit this tryout."
msgstr "You do not have permission to edit this tryout."
#: app/routes/tryouts.py:162
#: app/routes/tryouts.py:189
msgid "This tryout has ended and can no longer be modified."
msgstr "This tryout has ended and can no longer be modified."
#: app/routes/tryouts.py:202
#: app/routes/tryouts.py:229
msgid "Tryout updated successfully!"
msgstr "Tryout updated successfully!"
#: app/routes/tryouts.py:242
#: app/routes/tryouts.py:269
msgid "You do not have permission to view this tryout."
msgstr "You do not have permission to view this tryout."
#: app/routes/tryouts.py:411
#: app/routes/tryouts.py:437
msgid "Only players can register for tryouts."
msgstr "Only players can register for tryouts."
#: app/routes/tryouts.py:415
#: app/routes/tryouts.py:442
msgid "This tryout is not accepting registrations."
msgstr "This tryout is not accepting registrations."
#: app/routes/tryouts.py:422
#: app/routes/tryouts.py:449
msgid "You are already registered for this tryout."
msgstr "You are already registered for this tryout."
#: app/routes/tryouts.py:428 app/routes/tryouts.py:511
#: app/routes/tryouts.py:455 app/routes/tryouts.py:546
msgid "This tryout is full."
msgstr "This tryout is full."
#: app/routes/tryouts.py:434
#: app/routes/tryouts.py:461
msgid "Successfully registered for tryout!"
msgstr "Successfully registered for tryout!"
#: app/routes/tryouts.py:450
#: app/routes/tryouts.py:481
#, python-format
msgid "Tryout status updated to %(new_status)s."
msgstr "Tryout status updated to %(new_status)s."
#: app/routes/tryouts.py:470
#: app/routes/tryouts.py:505
msgid "Registration status updated."
msgstr "Registration status updated."
#: app/routes/tryouts.py:497
#: app/routes/tryouts.py:532
msgid "Can only register players."
msgstr "Can only register players."
#: app/routes/tryouts.py:503
#: app/routes/tryouts.py:538
#, python-format
msgid "%(username)s is already registered for this tryout."
msgstr "%(username)s is already registered for this tryout."
#: app/routes/tryouts.py:517
#: app/routes/tryouts.py:552
#, python-format
msgid "%(username)s registered for tryout!"
msgstr "%(username)s registered for tryout!"
#: app/routes/tryouts.py:553
#: app/routes/tryouts.py:588
#, python-format
msgid "%(username)s removed from tryout."
msgstr "%(username)s removed from tryout."
#: app/routes/tryouts.py:571
#: app/routes/tryouts.py:610
#, python-format
msgid "Team \"%(team_name)s\" created!"
msgstr "Team \"%(team_name)s\" created!"
#: app/routes/tryouts.py:602
#: app/routes/tryouts.py:643 app/routes/users/notes.py:350
msgid "That player is not registered for this tryout."
msgstr "That player is not registered for this tryout."
#: app/routes/tryouts.py:608
#: app/routes/tryouts.py:648
msgid "Player is already on this team."
msgstr "Player is already on this team."
#: app/routes/tryouts.py:613
#: app/routes/tryouts.py:653
msgid "Player added to team!"
msgstr "Player added to team!"
#: app/routes/tryouts.py:623
#: app/routes/tryouts.py:663
msgid "You do not have permission to delete this tryout."
msgstr "You do not have permission to delete this tryout."
#: app/routes/tryouts.py:659
#: app/routes/tryouts.py:699
msgid "Tryout deleted successfully."
msgstr "Tryout deleted successfully."
#: app/routes/users/_shared.py:51
#: app/routes/users/_shared.py:50
msgid "No file selected."
msgstr "No file selected."
#: app/routes/users/_shared.py:55
#: app/routes/users/_shared.py:54
msgid "Only PDF files are allowed for contracts."
msgstr "Only PDF files are allowed for contracts."
#: app/routes/users/_shared.py:60
#: app/routes/users/_shared.py:59
msgid "That file is not a PDF, whatever its name says."
msgstr "That file is not a PDF, whatever its name says."
@@ -643,11 +683,11 @@ msgstr "Only the president can edit users."
msgid "Email already in use by another account."
msgstr "Email already in use by another account."
#: app/routes/users/accounts.py:132
#: app/routes/users/accounts.py:138
msgid "You cannot change your own role. Ask another president to do it."
msgstr "You cannot change your own role. Ask another president to do it."
#: app/routes/users/accounts.py:145
#: app/routes/users/accounts.py:151
msgid ""
"This is the last active president. Promote another account before "
"changing this one."
@@ -655,29 +695,29 @@ msgstr ""
"This is the last active president. Promote another account before "
"changing this one."
#: app/routes/users/accounts.py:224
#: app/routes/users/accounts.py:228
#, python-format
msgid "User %(username)s updated successfully!"
msgstr "User %(username)s updated successfully!"
#: app/routes/users/accounts.py:245
#: app/routes/users/accounts.py:249
msgid "Only the president can delete users."
msgstr "Only the president can delete users."
#: app/routes/users/accounts.py:249
#: app/routes/users/accounts.py:253
msgid "You cannot delete your own account."
msgstr "You cannot delete your own account."
#: app/routes/users/accounts.py:308
#: app/routes/users/accounts.py:312
#, python-format
msgid "User %(deleted_username)s has been removed."
msgstr "User %(deleted_username)s has been removed."
#: app/routes/users/accounts.py:319
#: app/routes/users/accounts.py:323
msgid "Only the president can create users."
msgstr "Only the president can create users."
#: app/routes/users/accounts.py:367
#: app/routes/users/accounts.py:371
#, python-format
msgid "User %(full_name)s created as %(role)s!"
msgstr "User %(full_name)s created as %(role)s!"
@@ -715,54 +755,93 @@ msgstr "You do not have permission to download this contract."
msgid "No signed contract available."
msgstr "No signed contract available."
#: app/routes/users/notes.py:34
#: app/routes/users/notes.py:43
msgid "This page is for players only."
msgstr "This page is for players only."
#: app/routes/users/notes.py:71
#: app/routes/users/notes.py:80
msgid "Only coaches can access the notes dashboard."
msgstr "Only coaches can access the notes dashboard."
#: app/routes/users/notes.py:161
#: app/routes/users/notes.py:172
msgid "Only coaches can manage team notes."
msgstr "Only coaches can manage team notes."
#: app/routes/users/notes.py:167
#: app/routes/users/notes.py:178
msgid "You are not assigned to a team."
msgstr "You are not assigned to a team."
#: app/routes/users/notes.py:180
#: app/routes/users/notes.py:195
msgid "Team notes saved successfully!"
msgstr "Team notes saved successfully!"
#: app/routes/users/notes.py:195
#: app/routes/users/notes.py:210
msgid "Only coaches can manage personal notes."
msgstr "Only coaches can manage personal notes."
#: app/routes/users/notes.py:202 app/routes/users/notes.py:245
#: app/routes/users/notes.py:296 app/routes/users/notes.py:350
msgid "Player and content are required."
msgstr "Player and content are required."
#: app/routes/users/notes.py:211 app/routes/users/notes.py:254
#: app/routes/users/notes.py:300 app/routes/users/notes.py:354
#: app/routes/users/notes.py:226 app/routes/users/notes.py:266
#: app/routes/users/notes.py:346 app/routes/users/notes.py:411
msgid "You can only write notes about players you work with."
msgstr "You can only write notes about players you work with."
#: app/routes/users/notes.py:221 app/routes/users/notes.py:267
#: app/routes/users/notes.py:236 app/routes/users/notes.py:306
#, python-format
msgid "Note added for %(username)s."
msgstr "Note added for %(username)s."
#: app/routes/users/notes.py:235 app/routes/users/notes.py:281
#: app/routes/users/notes.py:334
#: app/routes/users/notes.py:250 app/routes/users/notes.py:320
#: app/routes/users/notes.py:384
msgid "Only coaches can add personal notes."
msgstr "Only coaches can add personal notes."
#: app/routes/users/notes.py:311 app/routes/users/notes.py:365
#: app/routes/users/notes.py:272
msgid "You cannot use that match as note context."
msgstr "You cannot use that match as note context."
#: app/routes/users/notes.py:275
msgid "That player did not participate in the selected match."
msgstr "That player did not participate in the selected match."
#: app/routes/users/notes.py:281
msgid "You cannot use that tryout as note context."
msgstr "You cannot use that tryout as note context."
#: app/routes/users/notes.py:284
msgid "That player is not registered for the selected tryout."
msgstr "That player is not registered for the selected tryout."
#: app/routes/users/notes.py:290
msgid "You cannot use that team as note context."
msgstr "You cannot use that team as note context."
#: app/routes/users/notes.py:293
msgid "That player is not on the selected team."
msgstr "That player is not on the selected team."
#: app/routes/users/notes.py:325
msgid "You do not have permission to add notes for this tryout."
msgstr "You do not have permission to add notes for this tryout."
#: app/routes/users/notes.py:342
msgid "Invalid tryout context."
msgstr "Invalid tryout context."
#: app/routes/users/notes.py:361 app/routes/users/notes.py:426
msgid "Note added successfully."
msgstr "Note added successfully."
#: app/routes/users/notes.py:389
msgid "You do not have permission to add notes for this match."
msgstr "You do not have permission to add notes for this match."
#: app/routes/users/notes.py:407
msgid "Invalid match context."
msgstr "Invalid match context."
#: app/routes/users/notes.py:415
msgid "That player did not participate in this match."
msgstr "That player did not participate in this match."
#: app/routes/users/one_on_one.py:23
msgid "Only players can request One on One sessions."
msgstr "Only players can request One on One sessions."
@@ -804,7 +883,7 @@ msgstr "One on One request from %(player)s has been approved!"
msgid "Only coaches can reject One on One requests."
msgstr "Only coaches can reject One on One requests."
#: app/routes/users/one_on_one.py:258
#: app/routes/users/one_on_one.py:263
#, python-format
msgid "One on One request from %(player)s has been rejected."
msgstr "One on One request from %(player)s has been rejected."
@@ -817,7 +896,7 @@ msgstr "Username already taken."
msgid "Email already in use."
msgstr "Email already in use."
#: app/routes/users/profile.py:121
#: app/routes/users/profile.py:131
msgid "Profile updated successfully!"
msgstr "Profile updated successfully!"
@@ -1213,7 +1292,7 @@ msgid "Select time slots when you're available for One on One sessions"
msgstr "Select time slots when you're available for One on One sessions"
#: app/templates/pages/coach_availability.html:14
#: app/templates/pages/profile.html:216
#: app/templates/pages/profile.html:213
msgid "Loading availability grid..."
msgstr "Loading availability grid..."
@@ -1222,7 +1301,7 @@ msgid "Save Availability"
msgstr "Save Availability"
#: app/templates/pages/coach_availability.html:22
#: app/templates/pages/profile.html:200 app/templates/pages/profile.html:220
#: app/templates/pages/profile.html:197 app/templates/pages/profile.html:217
msgid "Clear All"
msgstr "Clear All"
@@ -1998,23 +2077,23 @@ msgstr ""
msgid "Green indicators show player availability for the match date/time"
msgstr "Green indicators show player availability for the match date/time"
#: app/templates/pages/match_form.html:625
#: app/templates/pages/match_form.html:632
msgid "Click time slots consecutively to set match duration"
msgstr "Click time slots consecutively to set match duration"
#: app/templates/pages/match_form.html:892
#: app/templates/pages/match_form.html:899
msgid "No players registered"
msgstr "No players registered"
#: app/templates/pages/match_form.html:925
#: app/templates/pages/match_form.html:932
msgid "T1"
msgstr "T1"
#: app/templates/pages/match_form.html:926
#: app/templates/pages/match_form.html:933
msgid "T2"
msgstr "T2"
#: app/templates/pages/match_form.html:931
#: app/templates/pages/match_form.html:938
msgid "No players available"
msgstr "No players available"
@@ -2369,15 +2448,11 @@ msgstr ""
"Select your available time blocks for matches (5pm to 12am). Green = "
"selected, Gray = available to select."
#: app/templates/pages/profile.html:197
msgid "Save Disponibilities"
msgstr "Save Disponibilities"
#: app/templates/pages/profile.html:211
#: app/templates/pages/profile.html:208
msgid "My Coaching Availability"
msgstr "My Coaching Availability"
#: app/templates/pages/profile.html:212
#: app/templates/pages/profile.html:209
msgid ""
"Select time slots when you're available for One on One sessions (8am to "
"10pm)."
@@ -2385,7 +2460,7 @@ msgstr ""
"Select time slots when you're available for One on One sessions (8am to "
"10pm)."
#: app/templates/pages/profile.html:460
#: app/templates/pages/profile.html:457
msgid "Click or click-and-drag to select your available hours"
msgstr "Click or click-and-drag to select your available hours"
@@ -3001,3 +3076,9 @@ msgstr "View Profile"
#~ msgid "Team Tryout Management System"
#~ msgstr "Team Tryout Management System"
#~ msgid "Player and content are required."
#~ msgstr "Player and content are required."
#~ msgid "Save Disponibilities"
#~ msgstr "Save Disponibilities"