diff --git a/locale/ar/LC_MESSAGES/django.po b/locale/ar/LC_MESSAGES/django.po index db47f1667d..e50e82e5ca 100644 --- a/locale/ar/LC_MESSAGES/django.po +++ b/locale/ar/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-20 23:04+0000\n" -"PO-Revision-Date: 2023-01-21 00:48\n" +"POT-Creation-Date: 2023-02-17 22:33+0000\n" +"PO-Revision-Date: 2023-02-18 00:49\n" "Last-Translator: \n" "Language-Team: Arabic, Saudi Arabia\n" "Language: ar_SA\n" @@ -17,91 +17,91 @@ msgstr "" "X-Crowdin-File: django.po\n" "X-Crowdin-File-ID: 10\n" -#: dmoj/settings.py:380 +#: dmoj/settings.py:392 msgid "Catalan" msgstr "الكاتالونية" -#: dmoj/settings.py:381 +#: dmoj/settings.py:393 msgid "German" msgstr "الألمانية" -#: dmoj/settings.py:382 +#: dmoj/settings.py:394 msgid "Greek" msgstr "" -#: dmoj/settings.py:383 +#: dmoj/settings.py:395 msgid "English" msgstr "الانجليزية" -#: dmoj/settings.py:384 +#: dmoj/settings.py:396 msgid "Spanish" msgstr "الإسبانية" -#: dmoj/settings.py:385 +#: dmoj/settings.py:397 msgid "French" msgstr "الفرنسية" -#: dmoj/settings.py:386 +#: dmoj/settings.py:398 msgid "Croatian" msgstr "الكرواتية" -#: dmoj/settings.py:387 +#: dmoj/settings.py:399 msgid "Hungarian" msgstr "الهنغارية" -#: dmoj/settings.py:388 +#: dmoj/settings.py:400 msgid "Japanese" msgstr "يابانية" -#: dmoj/settings.py:389 +#: dmoj/settings.py:401 msgid "Korean" msgstr "الكورية" -#: dmoj/settings.py:390 +#: dmoj/settings.py:402 msgid "Brazilian Portuguese" msgstr "البرتغالية" -#: dmoj/settings.py:391 +#: dmoj/settings.py:403 msgid "Romanian" msgstr "" -#: dmoj/settings.py:392 +#: dmoj/settings.py:404 msgid "Russian" msgstr "" -#: dmoj/settings.py:393 +#: dmoj/settings.py:405 msgid "Serbian (Latin)" msgstr "" -#: dmoj/settings.py:394 +#: dmoj/settings.py:406 msgid "Turkish" msgstr "" -#: dmoj/settings.py:395 +#: dmoj/settings.py:407 msgid "Vietnamese" msgstr "" -#: dmoj/settings.py:396 +#: dmoj/settings.py:408 msgid "Simplified Chinese" msgstr "" -#: dmoj/settings.py:397 +#: dmoj/settings.py:409 msgid "Traditional Chinese" msgstr "" -#: dmoj/urls.py:32 +#: dmoj/urls.py:31 msgid "Activation Successful!" msgstr "" -#: dmoj/urls.py:40 +#: dmoj/urls.py:39 msgid "Registration Completed" msgstr "" -#: dmoj/urls.py:44 +#: dmoj/urls.py:43 msgid "Registration Not Allowed" msgstr "" -#: dmoj/urls.py:93 templates/base.html:183 +#: dmoj/urls.py:92 templates/base.html:193 msgid "Home" msgstr "" @@ -148,8 +148,8 @@ msgid "Included contests" msgstr "" #: judge/admin/contest.py:65 templates/contest/contest.html:195 -#: templates/contest/moss.html:41 templates/problem/list.html:197 -#: templates/problem/list.html:213 templates/user/user-problems.html:58 +#: templates/contest/moss.html:41 templates/problem/list.html:188 +#: templates/problem/list.html:204 templates/user/user-problems.html:58 #: templates/user/user-problems.html:102 msgid "Problem" msgstr "مسألة" @@ -160,7 +160,7 @@ msgstr "مسألة" msgid "Problems" msgstr "" -#: judge/admin/contest.py:76 judge/admin/submission.py:249 +#: judge/admin/contest.py:76 judge/admin/submission.py:250 #: templates/admin/judge/submission/change_form.html:14 #: templates/admin/judge/submission/change_form.html:17 #: templates/submission/source.html:34 templates/submission/status.html:89 @@ -255,7 +255,7 @@ msgstr[5] "" msgid "Unlock contest submissions" msgstr "" -#: judge/admin/contest.py:280 judge/admin/submission.py:175 +#: judge/admin/contest.py:280 judge/admin/submission.py:176 #, python-format msgid "%d submission was successfully scheduled for rejudging." msgid_plural "%d submissions were successfully scheduled for rejudging." @@ -266,7 +266,7 @@ msgstr[3] "" msgstr[4] "" msgstr[5] "" -#: judge/admin/contest.py:356 +#: judge/admin/contest.py:358 #, python-format msgid "%d participation recalculated." msgid_plural "%d participations recalculated." @@ -277,15 +277,15 @@ msgstr[3] "" msgstr[4] "" msgstr[5] "" -#: judge/admin/contest.py:359 +#: judge/admin/contest.py:361 msgid "Recalculate results" msgstr "" -#: judge/admin/contest.py:363 judge/admin/organization.py:113 +#: judge/admin/contest.py:365 judge/admin/organization.py:113 msgid "username" msgstr "اسم المستخدم" -#: judge/admin/contest.py:368 templates/base.html:249 +#: judge/admin/contest.py:370 templates/base.html:259 msgid "virtual" msgstr "افتراضي" @@ -298,8 +298,8 @@ msgid "Summary" msgstr "ملخص" #: judge/admin/interface.py:124 judge/models/contest.py:491 -#: judge/models/contest.py:623 judge/models/profile.py:331 -#: judge/models/profile.py:362 judge/models/submission.py:67 +#: judge/models/contest.py:623 judge/models/profile.py:347 +#: judge/models/profile.py:378 judge/models/submission.py:67 #: judge/models/ticket.py:32 msgid "user" msgstr "مستخدم" @@ -330,8 +330,8 @@ msgid "Taxonomy" msgstr "" #: judge/admin/problem.py:133 templates/contest/contest.html:196 -#: templates/problem/data.html:380 templates/problem/list.html:202 -#: templates/problem/list.html:224 templates/user/base-users-table.html:10 +#: templates/problem/data.html:381 templates/problem/list.html:193 +#: templates/problem/list.html:215 templates/user/base-users-table.html:11 #: templates/user/user-problems.html:60 msgid "Points" msgstr "" @@ -340,9 +340,9 @@ msgstr "" msgid "Limits" msgstr "" -#: judge/admin/problem.py:135 judge/admin/submission.py:243 +#: judge/admin/problem.py:135 judge/admin/submission.py:244 #: templates/problem/submission-diff.html:65 templates/stats/tabs.html:4 -#: templates/submission/list.html:317 +#: templates/submission/list.html:319 msgid "Language" msgstr "" @@ -411,19 +411,19 @@ msgstr "" msgid "timezone" msgstr "" -#: judge/admin/profile.py:98 judge/admin/submission.py:222 +#: judge/admin/profile.py:98 judge/admin/submission.py:223 #: templates/organization/requests/log.html:9 #: templates/organization/requests/pending.html:12 -#: templates/ticket/list.html:201 +#: templates/ticket/list.html:202 msgid "User" msgstr "" -#: judge/admin/profile.py:103 templates/registration/registration_form.html:149 +#: judge/admin/profile.py:103 templates/registration/registration_form.html:145 msgid "Email" msgstr "" #: judge/admin/profile.py:108 judge/views/register.py:28 -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "Timezone" msgstr "" @@ -446,26 +446,26 @@ msgstr[5] "" msgid "Recalculate scores" msgstr "" -#: judge/admin/runtime.py:50 templates/user/edit-profile.html:124 -#: templates/user/edit-profile.html:246 templates/user/edit-profile.html:366 -#: templates/user/edit-profile.html:396 +#: judge/admin/runtime.py:52 templates/user/edit-profile.html:119 +#: templates/user/edit-profile.html:241 templates/user/edit-profile.html:353 +#: templates/user/edit-profile.html:383 msgid "Regenerate" msgstr "" -#: judge/admin/runtime.py:64 +#: judge/admin/runtime.py:66 msgid "Description" msgstr "" -#: judge/admin/runtime.py:65 +#: judge/admin/runtime.py:67 msgid "Information" msgstr "" -#: judge/admin/runtime.py:66 +#: judge/admin/runtime.py:68 msgid "Capabilities" msgstr "" #: judge/admin/submission.py:24 judge/admin/submission.py:43 -#: judge/admin/submission.py:232 +#: judge/admin/submission.py:233 msgid "None" msgstr "" @@ -497,19 +497,19 @@ msgctxt "contest problem" msgid "%(problem)s in %(contest)s" msgstr "" -#: judge/admin/submission.py:160 judge/admin/submission.py:182 +#: judge/admin/submission.py:161 judge/admin/submission.py:183 msgid "You do not have the permission to rejudge submissions." msgstr "" -#: judge/admin/submission.py:166 +#: judge/admin/submission.py:167 msgid "You do not have the permission to rejudge THAT many submissions." msgstr "" -#: judge/admin/submission.py:178 +#: judge/admin/submission.py:179 msgid "Rejudge the selected submissions" msgstr "" -#: judge/admin/submission.py:204 judge/views/problem_manage.py:129 +#: judge/admin/submission.py:205 judge/views/problem_manage.py:129 #, python-format msgid "%d submission was successfully rescored." msgid_plural "%d submissions were successfully rescored." @@ -520,38 +520,38 @@ msgstr[3] "" msgstr[4] "" msgstr[5] "" -#: judge/admin/submission.py:207 +#: judge/admin/submission.py:208 msgid "Rescore the selected submissions" msgstr "" -#: judge/admin/submission.py:211 +#: judge/admin/submission.py:212 msgid "Problem code" msgstr "" -#: judge/admin/submission.py:216 +#: judge/admin/submission.py:217 msgid "Problem name" msgstr "" -#: judge/admin/submission.py:226 templates/organization/requests/log.html:10 +#: judge/admin/submission.py:227 templates/organization/requests/log.html:10 #: templates/organization/requests/pending.html:13 msgid "Time" msgstr "" -#: judge/admin/submission.py:234 +#: judge/admin/submission.py:235 #, python-format msgid "%d KB" msgstr "" -#: judge/admin/submission.py:236 +#: judge/admin/submission.py:237 #, python-format msgid "%.2f MB" msgstr "" -#: judge/admin/submission.py:238 +#: judge/admin/submission.py:239 msgid "Memory" msgstr "" -#: judge/admin/submission.py:247 +#: judge/admin/submission.py:248 msgid "Locked" msgstr "" @@ -576,6 +576,7 @@ msgid "Comment body" msgstr "" #: judge/comments.py:47 judge/views/comment.py:40 judge/views/ticket.py:46 +#: judge/views/user.py:347 msgid "Your part is silent, little toad." msgstr "" @@ -695,7 +696,7 @@ msgstr "" msgid "Scratch codes must be 16 Base32 characters." msgstr "" -#: judge/forms.py:39 judge/forms.py:265 +#: judge/forms.py:39 judge/forms.py:266 msgid "Invalid scratch code." msgstr "" @@ -722,83 +723,83 @@ msgstr[3] "" msgstr[4] "" msgstr[5] "" -#: judge/forms.py:98 +#: judge/forms.py:99 msgid "Download comments?" msgstr "" -#: judge/forms.py:99 +#: judge/forms.py:100 msgid "Download submissions?" msgstr "" -#: judge/forms.py:100 +#: judge/forms.py:101 msgid "Filter by problem code glob:" msgstr "" -#: judge/forms.py:104 +#: judge/forms.py:105 msgid "Leave empty to include all submissions" msgstr "" -#: judge/forms.py:107 templates/problem/manage_submission.html:142 +#: judge/forms.py:108 templates/problem/manage_submission.html:144 msgid "Filter by result:" msgstr "" -#: judge/forms.py:113 +#: judge/forms.py:114 msgid "Please select at least one thing to download." msgstr "" -#: judge/forms.py:139 +#: judge/forms.py:140 msgid "Any judge" msgstr "" -#: judge/forms.py:160 judge/views/register.py:25 +#: judge/forms.py:161 judge/views/register.py:25 #: templates/problem/submission-diff.html:63 -#: templates/registration/registration_form.html:143 -#: templates/user/base-users-table.html:5 +#: templates/registration/registration_form.html:139 +#: templates/user/base-users-table.html:6 msgid "Username" msgstr "" -#: judge/forms.py:161 templates/registration/registration_form.html:155 -#: templates/registration/registration_form.html:169 +#: judge/forms.py:162 templates/registration/registration_form.html:151 +#: templates/registration/registration_form.html:165 msgid "Password" msgstr "" -#: judge/forms.py:193 +#: judge/forms.py:194 msgid "Invalid code length." msgstr "" -#: judge/forms.py:224 +#: judge/forms.py:225 msgid "Invalid WebAuthn response." msgstr "" -#: judge/forms.py:227 +#: judge/forms.py:228 msgid "No WebAuthn challenge issued." msgstr "" -#: judge/forms.py:233 +#: judge/forms.py:234 msgid "Invalid WebAuthn credential ID." msgstr "" -#: judge/forms.py:263 +#: judge/forms.py:264 msgid "Invalid two-factor authentication token or scratch code." msgstr "" -#: judge/forms.py:267 +#: judge/forms.py:268 msgid "Must specify either totp_token or webauthn_response." msgstr "" -#: judge/forms.py:271 judge/models/problem.py:118 +#: judge/forms.py:272 judge/models/problem.py:118 msgid "Problem code must be ^[a-z0-9]+$" msgstr "" -#: judge/forms.py:276 +#: judge/forms.py:277 msgid "Problem with code already exists." msgstr "" -#: judge/forms.py:281 judge/models/contest.py:68 +#: judge/forms.py:282 judge/models/contest.py:68 msgid "Contest id must be ^[a-z0-9]+$" msgstr "" -#: judge/forms.py:286 +#: judge/forms.py:287 msgid "Contest with key already exists." msgstr "" @@ -821,26 +822,42 @@ msgstr "" msgid "Unrated" msgstr "" -#: judge/models/choices.py:59 -msgid "Leave as LaTeX" +#: judge/models/choices.py:24 +msgid "Follow site theme" msgstr "" #: judge/models/choices.py:60 -msgid "SVG only" +msgid "Leave as LaTeX" msgstr "" #: judge/models/choices.py:61 -msgid "MathML only" +msgid "SVG only" msgstr "" #: judge/models/choices.py:62 -msgid "MathJax with SVG fallback" +msgid "MathML only" msgstr "" #: judge/models/choices.py:63 +msgid "MathJax with SVG fallback" +msgstr "" + +#: judge/models/choices.py:64 msgid "Detect best quality" msgstr "" +#: judge/models/choices.py:70 +msgid "Follow system default" +msgstr "" + +#: judge/models/choices.py:71 +msgid "Light" +msgstr "" + +#: judge/models/choices.py:72 +msgid "Dark" +msgstr "" + #: judge/models/comment.py:25 msgid "Page code must be ^[pcs]:[a-z0-9]+$|^b:\\d+$" msgstr "" @@ -1953,7 +1970,7 @@ msgid "Non-trailing spaces" msgstr "" #: judge/models/problem_data.py:28 -msgid "Unordered" +msgid "Sorted" msgstr "" #: judge/models/problem_data.py:29 @@ -2125,7 +2142,7 @@ msgid "Edit all organizations" msgstr "" #: judge/models/profile.py:98 judge/models/profile.py:103 -#: judge/models/profile.py:160 judge/models/profile.py:363 +#: judge/models/profile.py:161 judge/models/profile.py:379 msgid "organization" msgstr "" @@ -2166,7 +2183,7 @@ msgstr "" msgid "%(class)s in %(organization)s" msgstr "" -#: judge/models/profile.py:142 judge/models/profile.py:371 +#: judge/models/profile.py:142 judge/models/profile.py:387 msgid "class" msgstr "" @@ -2191,26 +2208,30 @@ msgid "Ace theme" msgstr "" #: judge/models/profile.py:158 -msgid "last access time" +msgid "site theme" msgstr "" #: judge/models/profile.py:159 +msgid "last access time" +msgstr "" + +#: judge/models/profile.py:160 msgid "last IP" msgstr "" -#: judge/models/profile.py:162 +#: judge/models/profile.py:163 msgid "display rank" msgstr "" -#: judge/models/profile.py:164 +#: judge/models/profile.py:165 msgid "Normal User" msgstr "" -#: judge/models/profile.py:165 +#: judge/models/profile.py:166 msgid "Problem Setter" msgstr "" -#: judge/models/profile.py:166 templates/base.html:211 +#: judge/models/profile.py:167 templates/base.html:221 #: templates/comments/list.html:97 templates/contest/contest-list-tabs.html:25 #: templates/contest/ranking-table.html:51 #: templates/problem/problem-list-tabs.html:6 @@ -2220,200 +2241,200 @@ msgstr "" msgid "Admin" msgstr "" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "comment mute" msgstr "" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "Some users are at their best when silent." msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "unlisted user" msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "User will not be ranked." msgstr "" -#: judge/models/profile.py:172 +#: judge/models/profile.py:173 msgid "banned from voting on problem point values" msgstr "" -#: judge/models/profile.py:173 +#: judge/models/profile.py:174 msgid "User will not be able to vote on problems' point values." msgstr "" -#: judge/models/profile.py:177 +#: judge/models/profile.py:178 msgid "user script" msgstr "" -#: judge/models/profile.py:178 +#: judge/models/profile.py:179 msgid "User-defined JavaScript for site customization." msgstr "" -#: judge/models/profile.py:179 +#: judge/models/profile.py:180 msgid "current contest" msgstr "" -#: judge/models/profile.py:181 +#: judge/models/profile.py:182 msgid "math engine" msgstr "" -#: judge/models/profile.py:183 +#: judge/models/profile.py:184 msgid "The rendering engine used to render math." msgstr "" -#: judge/models/profile.py:184 +#: judge/models/profile.py:185 msgid "TOTP 2FA enabled" msgstr "" -#: judge/models/profile.py:185 +#: judge/models/profile.py:186 msgid "Check to enable TOTP-based two-factor authentication." msgstr "" -#: judge/models/profile.py:186 +#: judge/models/profile.py:187 msgid "WebAuthn 2FA enabled" msgstr "" -#: judge/models/profile.py:187 +#: judge/models/profile.py:188 msgid "Check to enable WebAuthn-based two-factor authentication." msgstr "" -#: judge/models/profile.py:188 +#: judge/models/profile.py:189 msgid "TOTP key" msgstr "" -#: judge/models/profile.py:189 +#: judge/models/profile.py:190 msgid "32-character Base32-encoded key for TOTP." msgstr "" -#: judge/models/profile.py:191 +#: judge/models/profile.py:192 msgid "TOTP key must be empty or Base32." msgstr "" -#: judge/models/profile.py:192 +#: judge/models/profile.py:193 msgid "scratch codes" msgstr "" -#: judge/models/profile.py:193 +#: judge/models/profile.py:194 msgid "JSON array of 16-character Base32-encoded codes for scratch codes." msgstr "" -#: judge/models/profile.py:197 +#: judge/models/profile.py:198 msgid "Scratch codes must be empty or a JSON array of 16-character Base32 codes." msgstr "" -#: judge/models/profile.py:199 +#: judge/models/profile.py:200 msgid "last TOTP timecode" msgstr "" -#: judge/models/profile.py:200 +#: judge/models/profile.py:201 msgid "API token" msgstr "" -#: judge/models/profile.py:201 +#: judge/models/profile.py:202 msgid "64-character hex-encoded API access token." msgstr "" -#: judge/models/profile.py:203 +#: judge/models/profile.py:204 msgid "API token must be None or hexadecimal" msgstr "" -#: judge/models/profile.py:204 +#: judge/models/profile.py:205 msgid "internal notes" msgstr "" -#: judge/models/profile.py:205 +#: judge/models/profile.py:206 msgid "Notes for administrators regarding this user." msgstr "" -#: judge/models/profile.py:206 +#: judge/models/profile.py:207 msgid "last data download time" msgstr "" -#: judge/models/profile.py:207 +#: judge/models/profile.py:208 msgid "display name override" msgstr "" -#: judge/models/profile.py:208 +#: judge/models/profile.py:209 msgid "Name displayed in place of username." msgstr "" -#: judge/models/profile.py:323 +#: judge/models/profile.py:333 msgid "Shows in-progress development stuff" msgstr "" -#: judge/models/profile.py:324 +#: judge/models/profile.py:334 msgid "Edit TOTP settings" msgstr "" -#: judge/models/profile.py:326 +#: judge/models/profile.py:336 msgid "user profile" msgstr "" -#: judge/models/profile.py:327 +#: judge/models/profile.py:337 msgid "user profiles" msgstr "" -#: judge/models/profile.py:333 +#: judge/models/profile.py:349 msgid "device name" msgstr "" -#: judge/models/profile.py:334 +#: judge/models/profile.py:350 msgid "credential ID" msgstr "" -#: judge/models/profile.py:335 +#: judge/models/profile.py:351 msgid "public key" msgstr "" -#: judge/models/profile.py:336 +#: judge/models/profile.py:352 msgid "sign counter" msgstr "" -#: judge/models/profile.py:354 +#: judge/models/profile.py:370 #, python-format msgid "WebAuthn credential: %(name)s" msgstr "" -#: judge/models/profile.py:357 +#: judge/models/profile.py:373 msgid "WebAuthn credential" msgstr "" -#: judge/models/profile.py:358 +#: judge/models/profile.py:374 msgid "WebAuthn credentials" msgstr "" -#: judge/models/profile.py:365 +#: judge/models/profile.py:381 msgid "request time" msgstr "" -#: judge/models/profile.py:366 +#: judge/models/profile.py:382 msgid "state" msgstr "" -#: judge/models/profile.py:367 templates/organization/requests/tabs.html:4 +#: judge/models/profile.py:383 templates/organization/requests/tabs.html:4 msgid "Pending" msgstr "" -#: judge/models/profile.py:368 templates/organization/requests/tabs.html:10 +#: judge/models/profile.py:384 templates/organization/requests/tabs.html:10 msgid "Approved" msgstr "" -#: judge/models/profile.py:369 templates/organization/requests/tabs.html:13 +#: judge/models/profile.py:385 templates/organization/requests/tabs.html:13 msgid "Rejected" msgstr "" -#: judge/models/profile.py:372 +#: judge/models/profile.py:388 msgid "reason" msgstr "" -#: judge/models/profile.py:381 +#: judge/models/profile.py:397 msgid "organization join request" msgstr "" -#: judge/models/profile.py:382 +#: judge/models/profile.py:398 msgid "organization join requests" msgstr "" @@ -2656,15 +2677,15 @@ msgstr "" msgid "submission time" msgstr "" -#: judge/models/submission.py:70 judge/models/submission.py:255 +#: judge/models/submission.py:70 judge/models/submission.py:265 msgid "execution time" msgstr "" -#: judge/models/submission.py:71 judge/models/submission.py:256 +#: judge/models/submission.py:71 judge/models/submission.py:266 msgid "memory usage" msgstr "" -#: judge/models/submission.py:72 judge/models/submission.py:257 +#: judge/models/submission.py:72 judge/models/submission.py:267 msgid "points granted" msgstr "" @@ -2753,60 +2774,60 @@ msgstr "" msgid "submissions" msgstr "" -#: judge/models/submission.py:235 judge/models/submission.py:251 +#: judge/models/submission.py:245 judge/models/submission.py:261 msgid "associated submission" msgstr "" -#: judge/models/submission.py:237 +#: judge/models/submission.py:247 msgid "source code" msgstr "" -#: judge/models/submission.py:240 +#: judge/models/submission.py:250 #, python-format msgid "Source of %(submission)s" msgstr "" -#: judge/models/submission.py:243 +#: judge/models/submission.py:253 msgid "submission source" msgstr "" -#: judge/models/submission.py:244 +#: judge/models/submission.py:254 msgid "submission sources" msgstr "" -#: judge/models/submission.py:253 +#: judge/models/submission.py:263 msgid "test case ID" msgstr "" -#: judge/models/submission.py:254 +#: judge/models/submission.py:264 msgid "status flag" msgstr "" -#: judge/models/submission.py:258 +#: judge/models/submission.py:268 msgid "points possible" msgstr "" -#: judge/models/submission.py:259 +#: judge/models/submission.py:269 msgid "batch number" msgstr "" -#: judge/models/submission.py:260 +#: judge/models/submission.py:270 msgid "judging feedback" msgstr "" -#: judge/models/submission.py:261 +#: judge/models/submission.py:271 msgid "extended judging feedback" msgstr "" -#: judge/models/submission.py:262 +#: judge/models/submission.py:272 msgid "program output" msgstr "" -#: judge/models/submission.py:276 +#: judge/models/submission.py:286 msgid "submission test case" msgstr "" -#: judge/models/submission.py:277 +#: judge/models/submission.py:287 msgid "submission test cases" msgstr "" @@ -3036,7 +3057,7 @@ msgctxt "hours and minutes" msgid "%h:%m" msgstr "" -#: judge/views/blog.py:36 +#: judge/views/blog.py:37 #, python-format msgid "Page %d of Posts" msgstr "" @@ -3545,11 +3566,11 @@ msgstr "" msgid "Register" msgstr "" -#: judge/views/register.py:103 +#: judge/views/register.py:101 msgid "Activation Key Invalid" msgstr "" -#: judge/views/register.py:114 +#: judge/views/register.py:112 msgid "Authentication failure" msgstr "" @@ -3561,7 +3582,7 @@ msgstr "" msgid "Language statistics" msgstr "" -#: judge/views/status.py:23 templates/submission/list.html:308 +#: judge/views/status.py:23 templates/submission/list.html:310 msgid "Status" msgstr "" @@ -3744,41 +3765,45 @@ msgstr "" msgid "Preparing your data..." msgstr "" -#: judge/views/user.py:298 templates/user/edit-profile.html:345 +#: judge/views/user.py:298 templates/user/edit-profile.html:344 msgid "Download your data" msgstr "" +#: judge/views/user.py:347 +msgid "Can't edit profile" +msgstr "" + #: judge/views/user.py:354 msgid "Updated on site" msgstr "" -#: judge/views/user.py:387 templates/admin/auth/user/change_form.html:14 -#: templates/admin/auth/user/change_form.html:17 templates/base.html:213 +#: judge/views/user.py:386 templates/admin/auth/user/change_form.html:14 +#: templates/admin/auth/user/change_form.html:17 templates/base.html:223 #: templates/user/user-tabs.html:16 msgid "Edit profile" msgstr "" -#: judge/views/user.py:402 +#: judge/views/user.py:400 msgid "Generated API token for user" msgstr "" -#: judge/views/user.py:414 +#: judge/views/user.py:412 msgid "Removed API token for user" msgstr "" -#: judge/views/user.py:424 +#: judge/views/user.py:422 msgid "Generated scratch codes for user" msgstr "" -#: judge/views/user.py:430 templates/user/user-list-tabs.html:4 +#: judge/views/user.py:428 templates/user/user-list-tabs.html:4 msgid "Leaderboard" msgstr "" -#: judge/views/user.py:491 +#: judge/views/user.py:489 msgid "You have been successfully logged out." msgstr "" -#: judge/views/user.py:508 +#: judge/views/user.py:506 msgid "You have sent too many password reset requests. Please try again later." msgstr "" @@ -3807,13 +3832,13 @@ msgstr "" #: templates/admin/judge/judge/change_form.html:27 #: templates/admin/judge/judge/change_form.html:30 -#: templates/user/edit-profile.html:355 templates/user/edit-profile.html:358 +#: templates/user/edit-profile.html:372 templates/user/edit-profile.html:375 msgid "Disable" msgstr "" #: templates/admin/judge/judge/change_form.html:33 #: templates/admin/judge/judge/change_form.html:36 -#: templates/user/edit-profile.html:386 +#: templates/user/edit-profile.html:403 msgid "Enable" msgstr "" @@ -3833,48 +3858,48 @@ msgstr "" msgid "Edit user" msgstr "" -#: templates/base.html:206 +#: templates/base.html:216 #, python-format msgid "Hello, %(username)s." msgstr "" -#: templates/base.html:215 +#: templates/base.html:225 msgid "Stop impersonating" msgstr "" -#: templates/base.html:220 +#: templates/base.html:230 msgid "Log out" msgstr "" -#: templates/base.html:229 +#: templates/base.html:239 #: templates/registration/password_reset_complete.html:4 msgid "Log in" msgstr "" -#: templates/base.html:230 templates/registration/registration_form.html:181 +#: templates/base.html:240 templates/registration/registration_form.html:177 msgid "or" msgstr "" -#: templates/base.html:231 +#: templates/base.html:241 msgid "Sign up" msgstr "" -#: templates/base.html:243 +#: templates/base.html:253 msgid "spectating" msgstr "" -#: templates/base.html:256 +#: templates/base.html:266 msgid "This site works best with JavaScript enabled." msgstr "" -#: templates/base.html:283 +#: templates/base.html:293 msgid "proudly powered by **DMOJ**" msgstr "" #: templates/blog/content.html:13 templates/comments/list.html:89 #: templates/comments/list.html:105 templates/contest/contest-tabs.html:23 #: templates/contest/tag-title.html:9 templates/flatpages/admin_link.html:3 -#: templates/license.html:10 templates/problem/data.html:423 +#: templates/license.html:10 templates/problem/data.html:424 #: templates/problem/editorial.html:14 msgid "Edit" msgstr "" @@ -4075,15 +4100,15 @@ msgstr "" msgid "No votes" msgstr "" -#: templates/common-content.html:32 templates/user/edit-profile.html:219 +#: templates/common-content.html:32 templates/user/edit-profile.html:214 msgid "Click to copy" msgstr "" -#: templates/common-content.html:33 templates/user/edit-profile.html:220 +#: templates/common-content.html:33 templates/user/edit-profile.html:215 msgid "Copy" msgstr "" -#: templates/common-content.html:44 templates/user/edit-profile.html:231 +#: templates/common-content.html:44 templates/user/edit-profile.html:226 msgid "Copied!" msgstr "" @@ -4164,7 +4189,7 @@ msgstr "" msgid "Info" msgstr "" -#: templates/contest/contest-tabs.html:6 templates/submission/list.html:334 +#: templates/contest/contest-tabs.html:6 templates/submission/list.html:336 msgid "Statistics" msgstr "" @@ -4391,7 +4416,7 @@ msgstr "" #: templates/contest/contest.html:198 templates/contest/list.html:152 #: templates/contest/list.html:194 templates/contest/list.html:271 -#: templates/problem/list.html:203 templates/problem/list.html:235 +#: templates/problem/list.html:194 templates/problem/list.html:226 msgid "Users" msgstr "" @@ -4399,7 +4424,7 @@ msgstr "" msgid "Editorials" msgstr "" -#: templates/contest/contest.html:226 templates/problem/list.html:229 +#: templates/contest/contest.html:226 templates/problem/list.html:220 msgid "Editorial" msgstr "" @@ -4568,19 +4593,19 @@ msgstr "" msgid "Disqualify" msgstr "" -#: templates/contest/ranking.html:151 +#: templates/contest/ranking.html:46 msgid "Are you sure you want to disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:156 +#: templates/contest/ranking.html:51 msgid "Are you sure you want to un-disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:228 +#: templates/contest/ranking.html:124 msgid "View user participation" msgstr "" -#: templates/contest/ranking.html:232 +#: templates/contest/ranking.html:128 msgid "Show organizations" msgstr "" @@ -4767,7 +4792,7 @@ msgid "There are no requests to approve." msgstr "" #: templates/organization/requests/pending.html:17 -#: templates/problem/data.html:387 +#: templates/problem/data.html:388 msgid "Delete?" msgstr "" @@ -4803,59 +4828,59 @@ msgstr "" msgid "Enter a new code for the cloned problem:" msgstr "" -#: templates/problem/data.html:70 +#: templates/problem/data.html:71 msgid "precision (decimal digits)" msgstr "" -#: templates/problem/data.html:339 +#: templates/problem/data.html:340 msgid "View YAML" msgstr "" -#: templates/problem/data.html:355 +#: templates/problem/data.html:356 msgid "Show columns:" msgstr "" -#: templates/problem/data.html:358 templates/problem/data.html:382 +#: templates/problem/data.html:359 templates/problem/data.html:383 msgid "Output prefix" msgstr "" -#: templates/problem/data.html:362 templates/problem/data.html:383 +#: templates/problem/data.html:363 templates/problem/data.html:384 msgid "Output limit" msgstr "" -#: templates/problem/data.html:366 templates/problem/data.html:384 +#: templates/problem/data.html:367 templates/problem/data.html:385 msgid "Checker" msgstr "" -#: templates/problem/data.html:370 templates/problem/data.html:385 +#: templates/problem/data.html:371 templates/problem/data.html:386 msgid "Generator args" msgstr "" -#: templates/problem/data.html:377 +#: templates/problem/data.html:378 msgid "Type" msgstr "" -#: templates/problem/data.html:378 +#: templates/problem/data.html:379 msgid "Input file" msgstr "" -#: templates/problem/data.html:379 +#: templates/problem/data.html:380 msgid "Output file" msgstr "" -#: templates/problem/data.html:381 +#: templates/problem/data.html:382 msgid "Pretest?" msgstr "" -#: templates/problem/data.html:433 templates/problem/submit.html:256 +#: templates/problem/data.html:434 templates/problem/submit.html:190 msgid "Submit!" msgstr "" -#: templates/problem/data.html:434 +#: templates/problem/data.html:435 msgid "Add new case" msgstr "" -#: templates/problem/data.html:436 +#: templates/problem/data.html:437 msgid "Save" msgstr "" @@ -4877,86 +4902,86 @@ msgstr[3] "" msgstr[4] "" msgstr[5] "" -#: templates/problem/list.html:58 +#: templates/problem/list.html:49 msgid "Filter by type..." msgstr "" -#: templates/problem/list.html:176 +#: templates/problem/list.html:167 msgid "Hot problems" msgstr "" -#: templates/problem/list.html:198 templates/problem/list.html:216 +#: templates/problem/list.html:189 templates/problem/list.html:207 #: templates/problem/search-form.html:35 templates/user/user-problems.html:59 msgid "Category" msgstr "" -#: templates/problem/list.html:200 templates/problem/list.html:220 +#: templates/problem/list.html:191 templates/problem/list.html:211 msgid "Types" msgstr "" -#: templates/problem/list.html:227 +#: templates/problem/list.html:218 #, python-format msgid "AC %%" msgstr "" -#: templates/problem/manage_submission.html:55 +#: templates/problem/manage_submission.html:56 msgid "Leave empty to not filter by language" msgstr "" -#: templates/problem/manage_submission.html:60 +#: templates/problem/manage_submission.html:62 msgid "Leave empty to not filter by result" msgstr "" -#: templates/problem/manage_submission.html:79 +#: templates/problem/manage_submission.html:81 msgid "Need valid values for both start and end IDs." msgstr "" -#: templates/problem/manage_submission.html:82 +#: templates/problem/manage_submission.html:84 msgid "End ID must be after start ID." msgstr "" -#: templates/problem/manage_submission.html:90 +#: templates/problem/manage_submission.html:92 #, python-brace-format msgid "You are about to rejudge {count} submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:96 +#: templates/problem/manage_submission.html:98 msgid "You are about to rejudge a few submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:115 +#: templates/problem/manage_submission.html:117 msgid "Rejudge Submissions" msgstr "" -#: templates/problem/manage_submission.html:120 +#: templates/problem/manage_submission.html:122 msgid "Filter by ID:" msgstr "" -#: templates/problem/manage_submission.html:123 +#: templates/problem/manage_submission.html:125 msgid "Starting ID:" msgstr "" -#: templates/problem/manage_submission.html:127 +#: templates/problem/manage_submission.html:129 msgid "Ending ID:" msgstr "" -#: templates/problem/manage_submission.html:131 +#: templates/problem/manage_submission.html:133 msgid "This range includes both endpoints." msgstr "" -#: templates/problem/manage_submission.html:134 +#: templates/problem/manage_submission.html:136 msgid "Filter by language:" msgstr "" -#: templates/problem/manage_submission.html:150 +#: templates/problem/manage_submission.html:152 msgid "Rejudge selected submissions" msgstr "" -#: templates/problem/manage_submission.html:157 +#: templates/problem/manage_submission.html:159 msgid "Rescore Everything" msgstr "" -#: templates/problem/manage_submission.html:158 +#: templates/problem/manage_submission.html:160 #, python-format msgid "This will rescore %(count)s submission." msgid_plural "This will rescore %(count)s submissions." @@ -4967,7 +4992,7 @@ msgstr[3] "" msgstr[4] "" msgstr[5] "" -#: templates/problem/manage_submission.html:166 +#: templates/problem/manage_submission.html:168 #, python-format msgid "Are you sure you want to rescore %(count)s submission?" msgid_plural "Are you sure you want to rescore %(count)s submissions?" @@ -4978,7 +5003,7 @@ msgstr[3] "" msgstr[4] "" msgstr[5] "" -#: templates/problem/manage_submission.html:171 +#: templates/problem/manage_submission.html:173 msgid "Rescore all submissions" msgstr "" @@ -5153,8 +5178,8 @@ msgstr "" msgid "Point range" msgstr "" -#: templates/problem/search-form.html:68 templates/submission/list.html:326 -#: templates/ticket/list.html:188 +#: templates/problem/search-form.html:68 templates/submission/list.html:328 +#: templates/ticket/list.html:189 msgid "Go" msgstr "" @@ -5163,7 +5188,7 @@ msgid "Random" msgstr "" #: templates/problem/submission-diff.html:62 -#: templates/status/language-list.html:34 templates/ticket/list.html:199 +#: templates/status/language-list.html:34 templates/ticket/list.html:200 msgid "ID" msgstr "" @@ -5175,20 +5200,20 @@ msgstr "" msgid "Date" msgstr "" -#: templates/problem/submit.html:117 +#: templates/problem/submit.html:118 msgid "Your source code must contain at most 65536 characters." msgstr "" -#: templates/problem/submit.html:204 +#: templates/problem/submit.html:138 msgid "Warning!" msgstr "" -#: templates/problem/submit.html:205 +#: templates/problem/submit.html:139 #, python-format msgid "Your default language, %(language)s, is unavailable for this problem and has been deselected." msgstr "" -#: templates/problem/submit.html:213 +#: templates/problem/submit.html:147 #, python-format msgid "You have %(left)s submission left" msgid_plural "You have %(left)s submissions left" @@ -5199,11 +5224,11 @@ msgstr[3] "" msgstr[4] "" msgstr[5] "" -#: templates/problem/submit.html:218 +#: templates/problem/submit.html:152 msgid "You have 0 submissions left" msgstr "" -#: templates/problem/submit.html:252 +#: templates/problem/submit.html:186 msgid "No judge is available for this problem." msgstr "" @@ -5419,7 +5444,7 @@ msgstr "" msgid "Password reset on %(site_name)s" msgstr "" -#: templates/registration/profile_creation.html:44 +#: templates/registration/profile_creation.html:38 #: templates/registration/username_select.html:7 msgid "Continue >" msgstr "" @@ -5432,36 +5457,36 @@ msgstr "" msgid "You have successfully been registered. An email has been sent to the email address you provided to confirm your registration." msgstr "" -#: templates/registration/registration_form.html:170 +#: templates/registration/registration_form.html:166 msgid "(again, for confirmation)" msgstr "" -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "(select your closest major city)" msgstr "" -#: templates/registration/registration_form.html:182 +#: templates/registration/registration_form.html:178 msgid "pick from map" msgstr "" -#: templates/registration/registration_form.html:187 +#: templates/registration/registration_form.html:183 msgid "Default language" msgstr "" -#: templates/registration/registration_form.html:190 +#: templates/registration/registration_form.html:186 msgid "Affiliated organizations" msgstr "" -#: templates/registration/registration_form.html:199 -#: templates/user/edit-profile.html:322 +#: templates/registration/registration_form.html:195 +#: templates/user/edit-profile.html:321 msgid "Notify me about upcoming contests" msgstr "" -#: templates/registration/registration_form.html:213 +#: templates/registration/registration_form.html:209 msgid "By registering, you agree to our [Terms & Conditions][0]." msgstr "" -#: templates/registration/registration_form.html:216 +#: templates/registration/registration_form.html:212 msgid "Register!" msgstr "" @@ -5503,17 +5528,17 @@ msgid "Enable Two Factor Authentication" msgstr "" #: templates/registration/totp_enable.html:98 -#: templates/user/edit-profile.html:374 +#: templates/user/edit-profile.html:391 msgid "Below is a list of one-time use scratch codes." msgstr "" #: templates/registration/totp_enable.html:99 -#: templates/user/edit-profile.html:375 +#: templates/user/edit-profile.html:392 msgid "These codes can only be used once and are for emergency use." msgstr "" #: templates/registration/totp_enable.html:100 -#: templates/user/edit-profile.html:376 +#: templates/user/edit-profile.html:393 msgid "You can use these codes to login to your account or disable two-factor authentication." msgstr "" @@ -5522,7 +5547,7 @@ msgid "If you ever need more scratch codes, you can regenerate them on the edit msgstr "" #: templates/registration/totp_enable.html:102 -#: templates/user/edit-profile.html:378 +#: templates/user/edit-profile.html:395 msgid "Please write these down and keep them in a secure location." msgstr "" @@ -5540,12 +5565,12 @@ msgid "If you lose your authentication device and are unable to use your scratch msgstr "" #: templates/registration/two_factor_auth.html:33 -#: templates/user/edit-profile.html:164 +#: templates/user/edit-profile.html:159 msgid "WebAuthn is not supported by your browser." msgstr "" #: templates/registration/two_factor_auth.html:54 -#: templates/user/edit-profile.html:188 +#: templates/user/edit-profile.html:183 msgid "Failed to contact server." msgstr "" @@ -5643,23 +5668,23 @@ msgstr "" msgid "Are you sure you want to rejudge?" msgstr "" -#: templates/submission/list.html:74 +#: templates/submission/list.html:75 msgid "Filter by status..." msgstr "" -#: templates/submission/list.html:80 +#: templates/submission/list.html:82 msgid "Filter by language..." msgstr "" -#: templates/submission/list.html:304 +#: templates/submission/list.html:306 msgid "Filter submissions" msgstr "" -#: templates/submission/list.html:340 +#: templates/submission/list.html:342 msgid "Total:" msgstr "" -#: templates/submission/list.html:350 +#: templates/submission/list.html:352 msgid "You were disconnected. Refresh to show latest updates." msgstr "" @@ -5823,23 +5848,23 @@ msgstr "" msgid "Closed: " msgstr "" -#: templates/ticket/list.html:156 +#: templates/ticket/list.html:157 msgid "Use desktop notification" msgstr "" -#: templates/ticket/list.html:162 +#: templates/ticket/list.html:163 msgid "Hide closed tickets" msgstr "" -#: templates/ticket/list.html:167 +#: templates/ticket/list.html:168 msgid "Show my tickets only" msgstr "" -#: templates/ticket/list.html:171 +#: templates/ticket/list.html:172 msgid "Filing user" msgstr "" -#: templates/ticket/list.html:180 templates/ticket/ticket.html:196 +#: templates/ticket/list.html:181 templates/ticket/ticket.html:196 msgid "Assignee" msgid_plural "Assignees" msgstr[0] "" @@ -5849,11 +5874,11 @@ msgstr[3] "" msgstr[4] "" msgstr[5] "" -#: templates/ticket/list.html:200 +#: templates/ticket/list.html:201 msgid "Title" msgstr "" -#: templates/ticket/list.html:202 +#: templates/ticket/list.html:203 msgid "Assignees" msgstr "" @@ -5904,129 +5929,133 @@ msgstr "" msgid "Nothing here." msgstr "" -#: templates/user/base-users-table.html:3 +#: templates/user/base-users-table.html:4 msgid "Rank" msgstr "" -#: templates/user/base-users.html:14 templates/user/base-users.html:57 +#: templates/user/base-users.html:15 templates/user/base-users.html:58 msgid "Search by handle..." msgstr "" -#: templates/user/edit-profile.html:107 +#: templates/user/edit-profile.html:102 msgid "The administrators for this site require all the staff to have Two-factor Authentication enabled, so it may not be disabled at this time." msgstr "" -#: templates/user/edit-profile.html:112 +#: templates/user/edit-profile.html:107 msgid "Are you sure you want to generate or regenerate your API token?" msgstr "" -#: templates/user/edit-profile.html:113 +#: templates/user/edit-profile.html:108 msgid "This will invalidate any previous API tokens." msgstr "" -#: templates/user/edit-profile.html:114 +#: templates/user/edit-profile.html:109 msgid "It also allows access to your account without Two-factor Authentication." msgstr "" -#: templates/user/edit-profile.html:115 +#: templates/user/edit-profile.html:110 msgid "You will not be able to view your API token after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:116 templates/user/edit-profile.html:210 +#: templates/user/edit-profile.html:111 templates/user/edit-profile.html:205 msgid "Generating..." msgstr "" -#: templates/user/edit-profile.html:130 templates/user/edit-profile.html:398 +#: templates/user/edit-profile.html:125 templates/user/edit-profile.html:355 msgid "Remove" msgstr "" -#: templates/user/edit-profile.html:140 +#: templates/user/edit-profile.html:135 msgid "Are you sure you want to remove your API token?" msgstr "" -#: templates/user/edit-profile.html:147 templates/user/edit-profile.html:370 -#: templates/user/edit-profile.html:402 +#: templates/user/edit-profile.html:142 templates/user/edit-profile.html:359 +#: templates/user/edit-profile.html:387 msgid "Generate" msgstr "" -#: templates/user/edit-profile.html:193 +#: templates/user/edit-profile.html:188 msgid "Are you sure you want to delete this security key?" msgstr "" -#: templates/user/edit-profile.html:207 +#: templates/user/edit-profile.html:202 msgid "Are you sure you want to generate or regenerate a new set of scratch codes?" msgstr "" -#: templates/user/edit-profile.html:208 +#: templates/user/edit-profile.html:203 msgid "This will invalidate any previous scratch codes you have." msgstr "" -#: templates/user/edit-profile.html:209 templates/user/edit-profile.html:379 +#: templates/user/edit-profile.html:204 templates/user/edit-profile.html:396 msgid "You will not be able to view your scratch codes after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:278 +#: templates/user/edit-profile.html:273 msgid "Self-description:" msgstr "" -#: templates/user/edit-profile.html:285 +#: templates/user/edit-profile.html:280 msgid "Select your closest major city" msgstr "" -#: templates/user/edit-profile.html:286 +#: templates/user/edit-profile.html:281 msgid "Time zone:" msgstr "" -#: templates/user/edit-profile.html:290 +#: templates/user/edit-profile.html:285 msgid "Language:" msgstr "" -#: templates/user/edit-profile.html:294 +#: templates/user/edit-profile.html:289 +msgid "Site theme:" +msgstr "" + +#: templates/user/edit-profile.html:293 msgid "Editor theme:" msgstr "" -#: templates/user/edit-profile.html:299 +#: templates/user/edit-profile.html:298 msgid "Math engine:" msgstr "" -#: templates/user/edit-profile.html:308 +#: templates/user/edit-profile.html:307 msgid "Affiliated organizations:" msgstr "" -#: templates/user/edit-profile.html:334 +#: templates/user/edit-profile.html:333 msgid "Change your avatar" msgstr "" -#: templates/user/edit-profile.html:339 +#: templates/user/edit-profile.html:338 msgid "Change your password" msgstr "" -#: templates/user/edit-profile.html:352 -msgid "Two-factor Authentication is enabled:" +#: templates/user/edit-profile.html:350 +msgid "API token:" msgstr "" -#: templates/user/edit-profile.html:360 -msgid "Refresh" +#: templates/user/edit-profile.html:356 templates/user/edit-profile.html:384 +msgid "Hidden" msgstr "" -#: templates/user/edit-profile.html:363 -msgid "Scratch codes:" +#: templates/user/edit-profile.html:369 +msgid "Two-factor authentication is enabled:" msgstr "" -#: templates/user/edit-profile.html:367 templates/user/edit-profile.html:399 -msgid "Hidden" +#: templates/user/edit-profile.html:377 +msgid "Refresh" msgstr "" -#: templates/user/edit-profile.html:377 -msgid "If you ever need more scratch codes, you can regenerate them here." +#: templates/user/edit-profile.html:380 +msgid "Scratch codes:" msgstr "" -#: templates/user/edit-profile.html:385 -msgid "Two-factor Authentication is disabled:" +#: templates/user/edit-profile.html:394 +msgid "If you ever need more scratch codes, you can regenerate them here." msgstr "" -#: templates/user/edit-profile.html:393 -msgid "API token:" +#: templates/user/edit-profile.html:402 +msgid "Two-factor Authentication is disabled:" msgstr "" #: templates/user/edit-profile.html:410 diff --git a/locale/ar/LC_MESSAGES/djangojs.po b/locale/ar/LC_MESSAGES/djangojs.po index 57b4abeb27..0c7125f53a 100644 --- a/locale/ar/LC_MESSAGES/djangojs.po +++ b/locale/ar/LC_MESSAGES/djangojs.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-20 23:43+0000\n" -"PO-Revision-Date: 2022-12-21 00:43\n" +"POT-Creation-Date: 2023-01-23 05:23+0000\n" +"PO-Revision-Date: 2023-01-24 00:51\n" "Last-Translator: \n" "Language-Team: Arabic, Saudi Arabia\n" "Language: ar_SA\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: djangojs.po\n" "X-Crowdin-File-ID: 12\n" -#: resources/common.js:195 +#: resources/common.js:194 msgctxt "time format with day" msgid "%d day %h:%m:%s" msgid_plural "%d days %h:%m:%s" @@ -28,7 +28,7 @@ msgstr[3] "" msgstr[4] "" msgstr[5] "" -#: resources/common.js:198 +#: resources/common.js:197 msgctxt "time format without day" msgid "%h:%m:%s" msgstr " " diff --git a/locale/ca/LC_MESSAGES/django.po b/locale/ca/LC_MESSAGES/django.po index 09559a19fa..87ff406e0a 100644 --- a/locale/ca/LC_MESSAGES/django.po +++ b/locale/ca/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-20 23:04+0000\n" -"PO-Revision-Date: 2023-01-22 00:51\n" +"POT-Creation-Date: 2023-02-17 22:33+0000\n" +"PO-Revision-Date: 2023-02-18 00:49\n" "Last-Translator: \n" "Language-Team: Catalan\n" "Language: ca_ES\n" @@ -17,91 +17,91 @@ msgstr "" "X-Crowdin-File: django.po\n" "X-Crowdin-File-ID: 10\n" -#: dmoj/settings.py:380 +#: dmoj/settings.py:392 msgid "Catalan" msgstr "Català" -#: dmoj/settings.py:381 +#: dmoj/settings.py:393 msgid "German" msgstr "Alemany" -#: dmoj/settings.py:382 +#: dmoj/settings.py:394 msgid "Greek" msgstr "Grec" -#: dmoj/settings.py:383 +#: dmoj/settings.py:395 msgid "English" msgstr "Anglès" -#: dmoj/settings.py:384 +#: dmoj/settings.py:396 msgid "Spanish" msgstr "Castellà" -#: dmoj/settings.py:385 +#: dmoj/settings.py:397 msgid "French" msgstr "Francès" -#: dmoj/settings.py:386 +#: dmoj/settings.py:398 msgid "Croatian" msgstr "Croat" -#: dmoj/settings.py:387 +#: dmoj/settings.py:399 msgid "Hungarian" msgstr "Hongarès" -#: dmoj/settings.py:388 +#: dmoj/settings.py:400 msgid "Japanese" msgstr "Japonès" -#: dmoj/settings.py:389 +#: dmoj/settings.py:401 msgid "Korean" msgstr "Coreà" -#: dmoj/settings.py:390 +#: dmoj/settings.py:402 msgid "Brazilian Portuguese" msgstr "Portuguès (Brasil)" -#: dmoj/settings.py:391 +#: dmoj/settings.py:403 msgid "Romanian" msgstr "Romanès" -#: dmoj/settings.py:392 +#: dmoj/settings.py:404 msgid "Russian" msgstr "Rus" -#: dmoj/settings.py:393 +#: dmoj/settings.py:405 msgid "Serbian (Latin)" msgstr "Serbi (llatí)" -#: dmoj/settings.py:394 +#: dmoj/settings.py:406 msgid "Turkish" msgstr "Turc" -#: dmoj/settings.py:395 +#: dmoj/settings.py:407 msgid "Vietnamese" msgstr "Vietnamita" -#: dmoj/settings.py:396 +#: dmoj/settings.py:408 msgid "Simplified Chinese" msgstr "Xinès simplificat" -#: dmoj/settings.py:397 +#: dmoj/settings.py:409 msgid "Traditional Chinese" msgstr "Xinès tradicional" -#: dmoj/urls.py:32 +#: dmoj/urls.py:31 msgid "Activation Successful!" msgstr "" -#: dmoj/urls.py:40 +#: dmoj/urls.py:39 msgid "Registration Completed" msgstr "" -#: dmoj/urls.py:44 +#: dmoj/urls.py:43 msgid "Registration Not Allowed" msgstr "" -#: dmoj/urls.py:93 templates/base.html:183 +#: dmoj/urls.py:92 templates/base.html:193 msgid "Home" msgstr "Inici" @@ -140,8 +140,8 @@ msgid "Included contests" msgstr "Concursos inclosos" #: judge/admin/contest.py:65 templates/contest/contest.html:195 -#: templates/contest/moss.html:41 templates/problem/list.html:197 -#: templates/problem/list.html:213 templates/user/user-problems.html:58 +#: templates/contest/moss.html:41 templates/problem/list.html:188 +#: templates/problem/list.html:204 templates/user/user-problems.html:58 #: templates/user/user-problems.html:102 msgid "Problem" msgstr "Problema" @@ -152,7 +152,7 @@ msgstr "Problema" msgid "Problems" msgstr "Problemes" -#: judge/admin/contest.py:76 judge/admin/submission.py:249 +#: judge/admin/contest.py:76 judge/admin/submission.py:250 #: templates/admin/judge/submission/change_form.html:14 #: templates/admin/judge/submission/change_form.html:17 #: templates/submission/source.html:34 templates/submission/status.html:89 @@ -231,29 +231,29 @@ msgstr[1] "Concursos %d desbloquejats amb èxit." msgid "Unlock contest submissions" msgstr "Desbloqueja els enviaments al concurs" -#: judge/admin/contest.py:280 judge/admin/submission.py:175 +#: judge/admin/contest.py:280 judge/admin/submission.py:176 #, python-format msgid "%d submission was successfully scheduled for rejudging." msgid_plural "%d submissions were successfully scheduled for rejudging." msgstr[0] "Enviament %d s'ha planificat per a ser rejutjat amb èxit." msgstr[1] "Enviaments %d s'han planificat per a ser rejutjats amb èxit." -#: judge/admin/contest.py:356 +#: judge/admin/contest.py:358 #, python-format msgid "%d participation recalculated." msgid_plural "%d participations recalculated." msgstr[0] "Participació %d recalculada." msgstr[1] "Participacions %d recalculades." -#: judge/admin/contest.py:359 +#: judge/admin/contest.py:361 msgid "Recalculate results" msgstr "Recalcular els resultats" -#: judge/admin/contest.py:363 judge/admin/organization.py:113 +#: judge/admin/contest.py:365 judge/admin/organization.py:113 msgid "username" msgstr "nom d'usuari" -#: judge/admin/contest.py:368 templates/base.html:249 +#: judge/admin/contest.py:370 templates/base.html:259 msgid "virtual" msgstr "virtual" @@ -266,8 +266,8 @@ msgid "Summary" msgstr "Resum" #: judge/admin/interface.py:124 judge/models/contest.py:491 -#: judge/models/contest.py:623 judge/models/profile.py:331 -#: judge/models/profile.py:362 judge/models/submission.py:67 +#: judge/models/contest.py:623 judge/models/profile.py:347 +#: judge/models/profile.py:378 judge/models/submission.py:67 #: judge/models/ticket.py:32 msgid "user" msgstr "usuari" @@ -298,8 +298,8 @@ msgid "Taxonomy" msgstr "Taxonomia" #: judge/admin/problem.py:133 templates/contest/contest.html:196 -#: templates/problem/data.html:380 templates/problem/list.html:202 -#: templates/problem/list.html:224 templates/user/base-users-table.html:10 +#: templates/problem/data.html:381 templates/problem/list.html:193 +#: templates/problem/list.html:215 templates/user/base-users-table.html:11 #: templates/user/user-problems.html:60 msgid "Points" msgstr "Punts" @@ -308,9 +308,9 @@ msgstr "Punts" msgid "Limits" msgstr "Límits" -#: judge/admin/problem.py:135 judge/admin/submission.py:243 +#: judge/admin/problem.py:135 judge/admin/submission.py:244 #: templates/problem/submission-diff.html:65 templates/stats/tabs.html:4 -#: templates/submission/list.html:317 +#: templates/submission/list.html:319 msgid "Language" msgstr "Llenguatge" @@ -367,19 +367,19 @@ msgstr "problema" msgid "timezone" msgstr "zona horària" -#: judge/admin/profile.py:98 judge/admin/submission.py:222 +#: judge/admin/profile.py:98 judge/admin/submission.py:223 #: templates/organization/requests/log.html:9 #: templates/organization/requests/pending.html:12 -#: templates/ticket/list.html:201 +#: templates/ticket/list.html:202 msgid "User" msgstr "Usuari" -#: judge/admin/profile.py:103 templates/registration/registration_form.html:149 +#: judge/admin/profile.py:103 templates/registration/registration_form.html:145 msgid "Email" msgstr "Correu electrònic" #: judge/admin/profile.py:108 judge/views/register.py:28 -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "Timezone" msgstr "Zona horària" @@ -398,26 +398,26 @@ msgstr[1] "S'ha recalculat la puntuació dels usuaris %d." msgid "Recalculate scores" msgstr "Recalcular les puntuacions" -#: judge/admin/runtime.py:50 templates/user/edit-profile.html:124 -#: templates/user/edit-profile.html:246 templates/user/edit-profile.html:366 -#: templates/user/edit-profile.html:396 +#: judge/admin/runtime.py:52 templates/user/edit-profile.html:119 +#: templates/user/edit-profile.html:241 templates/user/edit-profile.html:353 +#: templates/user/edit-profile.html:383 msgid "Regenerate" msgstr "Regenera" -#: judge/admin/runtime.py:64 +#: judge/admin/runtime.py:66 msgid "Description" msgstr "Descripció" -#: judge/admin/runtime.py:65 +#: judge/admin/runtime.py:67 msgid "Information" msgstr "Informació" -#: judge/admin/runtime.py:66 +#: judge/admin/runtime.py:68 msgid "Capabilities" msgstr "Característiques" #: judge/admin/submission.py:24 judge/admin/submission.py:43 -#: judge/admin/submission.py:232 +#: judge/admin/submission.py:233 msgid "None" msgstr "Cap" @@ -449,57 +449,57 @@ msgctxt "contest problem" msgid "%(problem)s in %(contest)s" msgstr "%(problem)s en %(contest)s" -#: judge/admin/submission.py:160 judge/admin/submission.py:182 +#: judge/admin/submission.py:161 judge/admin/submission.py:183 msgid "You do not have the permission to rejudge submissions." msgstr "No tens permís per rejutjar enviaments." -#: judge/admin/submission.py:166 +#: judge/admin/submission.py:167 msgid "You do not have the permission to rejudge THAT many submissions." msgstr "No tens permís per rejutjar TANTS enviaments." -#: judge/admin/submission.py:178 +#: judge/admin/submission.py:179 msgid "Rejudge the selected submissions" msgstr "Rejutja els enviaments seleccionats" -#: judge/admin/submission.py:204 judge/views/problem_manage.py:129 +#: judge/admin/submission.py:205 judge/views/problem_manage.py:129 #, python-format msgid "%d submission was successfully rescored." msgid_plural "%d submissions were successfully rescored." msgstr[0] "Enviament %d ha estat requalificat amb èxit." msgstr[1] "Enviaments %d han estat requalificats amb èxit." -#: judge/admin/submission.py:207 +#: judge/admin/submission.py:208 msgid "Rescore the selected submissions" msgstr "Requalifica els enviaments seleccionats" -#: judge/admin/submission.py:211 +#: judge/admin/submission.py:212 msgid "Problem code" msgstr "Codi del problema" -#: judge/admin/submission.py:216 +#: judge/admin/submission.py:217 msgid "Problem name" msgstr "Nom del problema" -#: judge/admin/submission.py:226 templates/organization/requests/log.html:10 +#: judge/admin/submission.py:227 templates/organization/requests/log.html:10 #: templates/organization/requests/pending.html:13 msgid "Time" msgstr "Temps" -#: judge/admin/submission.py:234 +#: judge/admin/submission.py:235 #, python-format msgid "%d KB" msgstr "%d KB" -#: judge/admin/submission.py:236 +#: judge/admin/submission.py:237 #, python-format msgid "%.2f MB" msgstr "%.2f MB" -#: judge/admin/submission.py:238 +#: judge/admin/submission.py:239 msgid "Memory" msgstr "Memòria" -#: judge/admin/submission.py:247 +#: judge/admin/submission.py:248 msgid "Locked" msgstr "Bloquejat" @@ -524,6 +524,7 @@ msgid "Comment body" msgstr "Cos del comentari" #: judge/comments.py:47 judge/views/comment.py:40 judge/views/ticket.py:46 +#: judge/views/user.py:347 msgid "Your part is silent, little toad." msgstr "No se suposa que hagis de parlar, patufet." @@ -631,7 +632,7 @@ msgstr "Token d'autenticació en dos passos invàlid." msgid "Scratch codes must be 16 Base32 characters." msgstr "Els codis Scratch han de ser de 16 caràcters en Base32." -#: judge/forms.py:39 judge/forms.py:265 +#: judge/forms.py:39 judge/forms.py:266 msgid "Invalid scratch code." msgstr "El codi Scratch no és vàlid." @@ -654,83 +655,83 @@ msgid_plural "You may not be part of more than {count} public organizations." msgstr[0] "No pots formar part de més d'{count} organització pública." msgstr[1] "No pots formar part de més de {count} organitzacions públiques." -#: judge/forms.py:98 +#: judge/forms.py:99 msgid "Download comments?" msgstr "Descarregar comentaris?" -#: judge/forms.py:99 +#: judge/forms.py:100 msgid "Download submissions?" msgstr "Descarregar enviaments?" -#: judge/forms.py:100 +#: judge/forms.py:101 msgid "Filter by problem code glob:" msgstr "Filtrar per el glob del codi de problema:" -#: judge/forms.py:104 +#: judge/forms.py:105 msgid "Leave empty to include all submissions" msgstr "Deixar-ho buit per a incluir tots els enviaments" -#: judge/forms.py:107 templates/problem/manage_submission.html:142 +#: judge/forms.py:108 templates/problem/manage_submission.html:144 msgid "Filter by result:" msgstr "Filtra per resultats:" -#: judge/forms.py:113 +#: judge/forms.py:114 msgid "Please select at least one thing to download." msgstr "Siusplau, seleccioneu com a mínim una cosa a descarregar." -#: judge/forms.py:139 +#: judge/forms.py:140 msgid "Any judge" msgstr "Qualsevol jutge" -#: judge/forms.py:160 judge/views/register.py:25 +#: judge/forms.py:161 judge/views/register.py:25 #: templates/problem/submission-diff.html:63 -#: templates/registration/registration_form.html:143 -#: templates/user/base-users-table.html:5 +#: templates/registration/registration_form.html:139 +#: templates/user/base-users-table.html:6 msgid "Username" msgstr "Nom d'usuari" -#: judge/forms.py:161 templates/registration/registration_form.html:155 -#: templates/registration/registration_form.html:169 +#: judge/forms.py:162 templates/registration/registration_form.html:151 +#: templates/registration/registration_form.html:165 msgid "Password" msgstr "Contrasenya" -#: judge/forms.py:193 +#: judge/forms.py:194 msgid "Invalid code length." msgstr "Longitud del codi invàlida." -#: judge/forms.py:224 +#: judge/forms.py:225 msgid "Invalid WebAuthn response." msgstr "Resposta WebAuthn invàlida." -#: judge/forms.py:227 +#: judge/forms.py:228 msgid "No WebAuthn challenge issued." msgstr "No hi ha hagut resposta WebAuthn." -#: judge/forms.py:233 +#: judge/forms.py:234 msgid "Invalid WebAuthn credential ID." msgstr "Credencial WebAuthn invàlida." -#: judge/forms.py:263 +#: judge/forms.py:264 msgid "Invalid two-factor authentication token or scratch code." msgstr "Token d'autenticació en dos passos o codi Scratch invàlid." -#: judge/forms.py:267 +#: judge/forms.py:268 msgid "Must specify either totp_token or webauthn_response." msgstr "S'ha d'especificar un totp_token o una webauthn_response." -#: judge/forms.py:271 judge/models/problem.py:118 +#: judge/forms.py:272 judge/models/problem.py:118 msgid "Problem code must be ^[a-z0-9]+$" msgstr "El codi del problema ha de ser ^[a-z0-9]+$" -#: judge/forms.py:276 +#: judge/forms.py:277 msgid "Problem with code already exists." msgstr "Ja existeix un problema amb aquest codi." -#: judge/forms.py:281 judge/models/contest.py:68 +#: judge/forms.py:282 judge/models/contest.py:68 msgid "Contest id must be ^[a-z0-9]+$" msgstr "La id del concurs ha de ser ^[a-z0-9]+$" -#: judge/forms.py:286 +#: judge/forms.py:287 msgid "Contest with key already exists." msgstr "Ja existeix un concurs amb aquesta clau." @@ -753,26 +754,42 @@ msgstr "en {time}" msgid "Unrated" msgstr "" -#: judge/models/choices.py:59 +#: judge/models/choices.py:24 +msgid "Follow site theme" +msgstr "" + +#: judge/models/choices.py:60 msgid "Leave as LaTeX" msgstr "Deixar-ho com LaTeX" -#: judge/models/choices.py:60 +#: judge/models/choices.py:61 msgid "SVG only" msgstr "Només SVG" -#: judge/models/choices.py:61 +#: judge/models/choices.py:62 msgid "MathML only" msgstr "Només MathML" -#: judge/models/choices.py:62 +#: judge/models/choices.py:63 msgid "MathJax with SVG fallback" msgstr "MathJax amb SVG en cas d'errada" -#: judge/models/choices.py:63 +#: judge/models/choices.py:64 msgid "Detect best quality" msgstr "Detectar la millor qualitat" +#: judge/models/choices.py:70 +msgid "Follow system default" +msgstr "" + +#: judge/models/choices.py:71 +msgid "Light" +msgstr "" + +#: judge/models/choices.py:72 +msgid "Dark" +msgstr "" + #: judge/models/comment.py:25 msgid "Page code must be ^[pcs]:[a-z0-9]+$|^b:\\d+$" msgstr "El codi de la pàgina ha de ser ^[pcs]:[a-z0-9]+$|^b:\\d+$" @@ -1885,8 +1902,8 @@ msgid "Non-trailing spaces" msgstr "Espais que no estan al principi ni al final" #: judge/models/problem_data.py:28 -msgid "Unordered" -msgstr "No-ordenat" +msgid "Sorted" +msgstr "Ordenat" #: judge/models/problem_data.py:29 msgid "Byte identical" @@ -2057,7 +2074,7 @@ msgid "Edit all organizations" msgstr "Edita totes les organitzacions" #: judge/models/profile.py:98 judge/models/profile.py:103 -#: judge/models/profile.py:160 judge/models/profile.py:363 +#: judge/models/profile.py:161 judge/models/profile.py:379 msgid "organization" msgstr "organització" @@ -2098,7 +2115,7 @@ msgstr "membres" msgid "%(class)s in %(organization)s" msgstr "" -#: judge/models/profile.py:142 judge/models/profile.py:371 +#: judge/models/profile.py:142 judge/models/profile.py:387 msgid "class" msgstr "" @@ -2123,26 +2140,30 @@ msgid "Ace theme" msgstr "" #: judge/models/profile.py:158 +msgid "site theme" +msgstr "" + +#: judge/models/profile.py:159 msgid "last access time" msgstr "data últim accés" -#: judge/models/profile.py:159 +#: judge/models/profile.py:160 msgid "last IP" msgstr "última IP" -#: judge/models/profile.py:162 +#: judge/models/profile.py:163 msgid "display rank" msgstr "mostrar rang" -#: judge/models/profile.py:164 +#: judge/models/profile.py:165 msgid "Normal User" msgstr "Usuari Normal" -#: judge/models/profile.py:165 +#: judge/models/profile.py:166 msgid "Problem Setter" msgstr "Creador de Problemes" -#: judge/models/profile.py:166 templates/base.html:211 +#: judge/models/profile.py:167 templates/base.html:221 #: templates/comments/list.html:97 templates/contest/contest-list-tabs.html:25 #: templates/contest/ranking-table.html:51 #: templates/problem/problem-list-tabs.html:6 @@ -2152,200 +2173,200 @@ msgstr "Creador de Problemes" msgid "Admin" msgstr "Administrador" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "comment mute" msgstr "silenciar el comentari" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "Some users are at their best when silent." msgstr "Alguns usuaris son més macos callats." -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "unlisted user" msgstr "usuari desllistat" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "User will not be ranked." msgstr "Aquest usuari no serà classificat." -#: judge/models/profile.py:172 +#: judge/models/profile.py:173 msgid "banned from voting on problem point values" msgstr "" -#: judge/models/profile.py:173 +#: judge/models/profile.py:174 msgid "User will not be able to vote on problems' point values." msgstr "" -#: judge/models/profile.py:177 +#: judge/models/profile.py:178 msgid "user script" msgstr "script d'usuari" -#: judge/models/profile.py:178 +#: judge/models/profile.py:179 msgid "User-defined JavaScript for site customization." msgstr "JavaScript definit per l'usuari per a la personalització del lloc." -#: judge/models/profile.py:179 +#: judge/models/profile.py:180 msgid "current contest" msgstr "concurs actual" -#: judge/models/profile.py:181 +#: judge/models/profile.py:182 msgid "math engine" msgstr "motor matemàtic" -#: judge/models/profile.py:183 +#: judge/models/profile.py:184 msgid "The rendering engine used to render math." msgstr "El motor fet servir per a representar les matemàtiques." -#: judge/models/profile.py:184 +#: judge/models/profile.py:185 msgid "TOTP 2FA enabled" msgstr "TOTP 2FA activat" -#: judge/models/profile.py:185 +#: judge/models/profile.py:186 msgid "Check to enable TOTP-based two-factor authentication." msgstr "Fes clic per a activar l'Autenticació de dos passos basada en TOTP." -#: judge/models/profile.py:186 +#: judge/models/profile.py:187 msgid "WebAuthn 2FA enabled" msgstr "WebAuthn 2FA activat" -#: judge/models/profile.py:187 +#: judge/models/profile.py:188 msgid "Check to enable WebAuthn-based two-factor authentication." msgstr "Fes clic per a activar l'Autenticació de dos passos basada en WebAuthn." -#: judge/models/profile.py:188 +#: judge/models/profile.py:189 msgid "TOTP key" msgstr "clau TOTP" -#: judge/models/profile.py:189 +#: judge/models/profile.py:190 msgid "32-character Base32-encoded key for TOTP." msgstr "Clau de 32 caràcters en Base32 per a TOTP." -#: judge/models/profile.py:191 +#: judge/models/profile.py:192 msgid "TOTP key must be empty or Base32." msgstr "La clau TOTP ha d'estar buida o ser Base32." -#: judge/models/profile.py:192 +#: judge/models/profile.py:193 msgid "scratch codes" msgstr "codis Scratch" -#: judge/models/profile.py:193 +#: judge/models/profile.py:194 msgid "JSON array of 16-character Base32-encoded codes for scratch codes." msgstr "Array JSON de codis de 16 caràcters en Base32." -#: judge/models/profile.py:197 +#: judge/models/profile.py:198 msgid "Scratch codes must be empty or a JSON array of 16-character Base32 codes." msgstr "Els codis Scratch han d'estar buits o ser un Array JSON de codis de 16 caràcters en Base32." -#: judge/models/profile.py:199 +#: judge/models/profile.py:200 msgid "last TOTP timecode" msgstr "" -#: judge/models/profile.py:200 +#: judge/models/profile.py:201 msgid "API token" msgstr "Token de l'API" -#: judge/models/profile.py:201 +#: judge/models/profile.py:202 msgid "64-character hex-encoded API access token." msgstr "Token d'accés a l'API de 64 caràcters hexadecimals." -#: judge/models/profile.py:203 +#: judge/models/profile.py:204 msgid "API token must be None or hexadecimal" msgstr "El token de l'API ha d'estar buit o ser hexadecimal" -#: judge/models/profile.py:204 +#: judge/models/profile.py:205 msgid "internal notes" msgstr "notes internes" -#: judge/models/profile.py:205 +#: judge/models/profile.py:206 msgid "Notes for administrators regarding this user." msgstr "Notes dels administradors sobre aquest usuari." -#: judge/models/profile.py:206 +#: judge/models/profile.py:207 msgid "last data download time" msgstr "última data de descàrrega de dades" -#: judge/models/profile.py:207 +#: judge/models/profile.py:208 msgid "display name override" msgstr "" -#: judge/models/profile.py:208 +#: judge/models/profile.py:209 msgid "Name displayed in place of username." msgstr "" -#: judge/models/profile.py:323 +#: judge/models/profile.py:333 msgid "Shows in-progress development stuff" msgstr "Mostra coses de desenvolupament en progrès" -#: judge/models/profile.py:324 +#: judge/models/profile.py:334 msgid "Edit TOTP settings" msgstr "Editar ajustos de TOTP" -#: judge/models/profile.py:326 +#: judge/models/profile.py:336 msgid "user profile" msgstr "perfil d'usuari" -#: judge/models/profile.py:327 +#: judge/models/profile.py:337 msgid "user profiles" msgstr "perfils d'usuaris" -#: judge/models/profile.py:333 +#: judge/models/profile.py:349 msgid "device name" msgstr "nom de dispositiu" -#: judge/models/profile.py:334 +#: judge/models/profile.py:350 msgid "credential ID" msgstr "ID de la credencial" -#: judge/models/profile.py:335 +#: judge/models/profile.py:351 msgid "public key" msgstr "clau pública" -#: judge/models/profile.py:336 +#: judge/models/profile.py:352 msgid "sign counter" msgstr "comptador de firmes" -#: judge/models/profile.py:354 +#: judge/models/profile.py:370 #, python-format msgid "WebAuthn credential: %(name)s" msgstr "" -#: judge/models/profile.py:357 +#: judge/models/profile.py:373 msgid "WebAuthn credential" msgstr "" -#: judge/models/profile.py:358 +#: judge/models/profile.py:374 msgid "WebAuthn credentials" msgstr "" -#: judge/models/profile.py:365 +#: judge/models/profile.py:381 msgid "request time" msgstr "data de solicitud" -#: judge/models/profile.py:366 +#: judge/models/profile.py:382 msgid "state" msgstr "estat" -#: judge/models/profile.py:367 templates/organization/requests/tabs.html:4 +#: judge/models/profile.py:383 templates/organization/requests/tabs.html:4 msgid "Pending" msgstr "Pendent" -#: judge/models/profile.py:368 templates/organization/requests/tabs.html:10 +#: judge/models/profile.py:384 templates/organization/requests/tabs.html:10 msgid "Approved" msgstr "Aprovat" -#: judge/models/profile.py:369 templates/organization/requests/tabs.html:13 +#: judge/models/profile.py:385 templates/organization/requests/tabs.html:13 msgid "Rejected" msgstr "Rebutjat" -#: judge/models/profile.py:372 +#: judge/models/profile.py:388 msgid "reason" msgstr "motiu" -#: judge/models/profile.py:381 +#: judge/models/profile.py:397 msgid "organization join request" msgstr "petició d'unir-se a organització" -#: judge/models/profile.py:382 +#: judge/models/profile.py:398 msgid "organization join requests" msgstr "peticions d'unir-se a organització" @@ -2588,15 +2609,15 @@ msgstr "Error Intern (error en el servidor del jutge)" msgid "submission time" msgstr "temps d'enviament" -#: judge/models/submission.py:70 judge/models/submission.py:255 +#: judge/models/submission.py:70 judge/models/submission.py:265 msgid "execution time" msgstr "temps d'execució" -#: judge/models/submission.py:71 judge/models/submission.py:256 +#: judge/models/submission.py:71 judge/models/submission.py:266 msgid "memory usage" msgstr "ús de memòria" -#: judge/models/submission.py:72 judge/models/submission.py:257 +#: judge/models/submission.py:72 judge/models/submission.py:267 msgid "points granted" msgstr "punts atorgats" @@ -2685,60 +2706,60 @@ msgstr "Canviar l'estat de bloqueig d'un enviament" msgid "submissions" msgstr "enviaments" -#: judge/models/submission.py:235 judge/models/submission.py:251 +#: judge/models/submission.py:245 judge/models/submission.py:261 msgid "associated submission" msgstr "enviament associat" -#: judge/models/submission.py:237 +#: judge/models/submission.py:247 msgid "source code" msgstr "codi font" -#: judge/models/submission.py:240 +#: judge/models/submission.py:250 #, python-format msgid "Source of %(submission)s" msgstr "" -#: judge/models/submission.py:243 +#: judge/models/submission.py:253 msgid "submission source" msgstr "" -#: judge/models/submission.py:244 +#: judge/models/submission.py:254 msgid "submission sources" msgstr "" -#: judge/models/submission.py:253 +#: judge/models/submission.py:263 msgid "test case ID" msgstr "Id del cas de proves" -#: judge/models/submission.py:254 +#: judge/models/submission.py:264 msgid "status flag" msgstr "flag d'estat" -#: judge/models/submission.py:258 +#: judge/models/submission.py:268 msgid "points possible" msgstr "punts possibles" -#: judge/models/submission.py:259 +#: judge/models/submission.py:269 msgid "batch number" msgstr "nombre de lot (batch)" -#: judge/models/submission.py:260 +#: judge/models/submission.py:270 msgid "judging feedback" msgstr "resultat del jutge" -#: judge/models/submission.py:261 +#: judge/models/submission.py:271 msgid "extended judging feedback" msgstr "resultat extés del jutge" -#: judge/models/submission.py:262 +#: judge/models/submission.py:272 msgid "program output" msgstr "sortida del programa" -#: judge/models/submission.py:276 +#: judge/models/submission.py:286 msgid "submission test case" msgstr "cas de prova de l'enviament" -#: judge/models/submission.py:277 +#: judge/models/submission.py:287 msgid "submission test cases" msgstr "casos de prova de l'enviament" @@ -2956,7 +2977,7 @@ msgctxt "hours and minutes" msgid "%h:%m" msgstr "%h:%m" -#: judge/views/blog.py:36 +#: judge/views/blog.py:37 #, python-format msgid "Page %d of Posts" msgstr "Pàgina %d d'Entradres" @@ -3445,11 +3466,11 @@ msgstr "El teu proveïdor de correu electrònic no està permés degut a un hist msgid "Register" msgstr "Registra't" -#: judge/views/register.py:103 +#: judge/views/register.py:101 msgid "Activation Key Invalid" msgstr "Clau d'Activació Invàlida" -#: judge/views/register.py:114 +#: judge/views/register.py:112 msgid "Authentication failure" msgstr "Error d'autenticació" @@ -3461,7 +3482,7 @@ msgstr "" msgid "Language statistics" msgstr "Estadístiques de llenguatge" -#: judge/views/status.py:23 templates/submission/list.html:308 +#: judge/views/status.py:23 templates/submission/list.html:310 msgid "Status" msgstr "Estat" @@ -3644,41 +3665,45 @@ msgstr "j M Y, G:i" msgid "Preparing your data..." msgstr "Preparant les teves dates..." -#: judge/views/user.py:298 templates/user/edit-profile.html:345 +#: judge/views/user.py:298 templates/user/edit-profile.html:344 msgid "Download your data" msgstr "Descarrega les teves dades" +#: judge/views/user.py:347 +msgid "Can't edit profile" +msgstr "No es pot editar el perfil" + #: judge/views/user.py:354 msgid "Updated on site" msgstr "Actualitzat al lloc web" -#: judge/views/user.py:387 templates/admin/auth/user/change_form.html:14 -#: templates/admin/auth/user/change_form.html:17 templates/base.html:213 +#: judge/views/user.py:386 templates/admin/auth/user/change_form.html:14 +#: templates/admin/auth/user/change_form.html:17 templates/base.html:223 #: templates/user/user-tabs.html:16 msgid "Edit profile" msgstr "Edita el perfil" -#: judge/views/user.py:402 +#: judge/views/user.py:400 msgid "Generated API token for user" msgstr "Token API de l'usuari generat" -#: judge/views/user.py:414 +#: judge/views/user.py:412 msgid "Removed API token for user" msgstr "Token API de l'usuari esborrat" -#: judge/views/user.py:424 +#: judge/views/user.py:422 msgid "Generated scratch codes for user" msgstr "Codis Scratch de l'usuari generat" -#: judge/views/user.py:430 templates/user/user-list-tabs.html:4 +#: judge/views/user.py:428 templates/user/user-list-tabs.html:4 msgid "Leaderboard" msgstr "Taula de classificació" -#: judge/views/user.py:491 +#: judge/views/user.py:489 msgid "You have been successfully logged out." msgstr "" -#: judge/views/user.py:508 +#: judge/views/user.py:506 msgid "You have sent too many password reset requests. Please try again later." msgstr "" @@ -3707,13 +3732,13 @@ msgstr "Acaba" #: templates/admin/judge/judge/change_form.html:27 #: templates/admin/judge/judge/change_form.html:30 -#: templates/user/edit-profile.html:355 templates/user/edit-profile.html:358 +#: templates/user/edit-profile.html:372 templates/user/edit-profile.html:375 msgid "Disable" msgstr "Inhabilita" #: templates/admin/judge/judge/change_form.html:33 #: templates/admin/judge/judge/change_form.html:36 -#: templates/user/edit-profile.html:386 +#: templates/user/edit-profile.html:403 msgid "Enable" msgstr "Habilita" @@ -3733,48 +3758,48 @@ msgstr "" msgid "Edit user" msgstr "Editar usuari" -#: templates/base.html:206 +#: templates/base.html:216 #, python-format msgid "Hello, %(username)s." msgstr "Hola, %(username)s." -#: templates/base.html:215 +#: templates/base.html:225 msgid "Stop impersonating" msgstr "" -#: templates/base.html:220 +#: templates/base.html:230 msgid "Log out" msgstr "Tanca la sessió" -#: templates/base.html:229 +#: templates/base.html:239 #: templates/registration/password_reset_complete.html:4 msgid "Log in" msgstr "Iniciar sessió" -#: templates/base.html:230 templates/registration/registration_form.html:181 +#: templates/base.html:240 templates/registration/registration_form.html:177 msgid "or" msgstr "o" -#: templates/base.html:231 +#: templates/base.html:241 msgid "Sign up" msgstr "Registra't" -#: templates/base.html:243 +#: templates/base.html:253 msgid "spectating" msgstr "espectador" -#: templates/base.html:256 +#: templates/base.html:266 msgid "This site works best with JavaScript enabled." msgstr "Aquesta aplicació funciona millor amb JavaScript activat." -#: templates/base.html:283 +#: templates/base.html:293 msgid "proudly powered by **DMOJ**" msgstr "" #: templates/blog/content.html:13 templates/comments/list.html:89 #: templates/comments/list.html:105 templates/contest/contest-tabs.html:23 #: templates/contest/tag-title.html:9 templates/flatpages/admin_link.html:3 -#: templates/license.html:10 templates/problem/data.html:423 +#: templates/license.html:10 templates/problem/data.html:424 #: templates/problem/editorial.html:14 msgid "Edit" msgstr "Editar" @@ -3975,15 +4000,15 @@ msgstr "Puntuació" msgid "No votes" msgstr "Sense vots" -#: templates/common-content.html:32 templates/user/edit-profile.html:219 +#: templates/common-content.html:32 templates/user/edit-profile.html:214 msgid "Click to copy" msgstr "" -#: templates/common-content.html:33 templates/user/edit-profile.html:220 +#: templates/common-content.html:33 templates/user/edit-profile.html:215 msgid "Copy" msgstr "" -#: templates/common-content.html:44 templates/user/edit-profile.html:231 +#: templates/common-content.html:44 templates/user/edit-profile.html:226 msgid "Copied!" msgstr "" @@ -4064,7 +4089,7 @@ msgstr "Calendari" msgid "Info" msgstr "Informació" -#: templates/contest/contest-tabs.html:6 templates/submission/list.html:334 +#: templates/contest/contest-tabs.html:6 templates/submission/list.html:336 msgid "Statistics" msgstr "Estadístiques" @@ -4279,7 +4304,7 @@ msgstr "Tasa de AC" #: templates/contest/contest.html:198 templates/contest/list.html:152 #: templates/contest/list.html:194 templates/contest/list.html:271 -#: templates/problem/list.html:203 templates/problem/list.html:235 +#: templates/problem/list.html:194 templates/problem/list.html:226 msgid "Users" msgstr "Usuaris" @@ -4287,7 +4312,7 @@ msgstr "Usuaris" msgid "Editorials" msgstr "Editorials" -#: templates/contest/contest.html:226 templates/problem/list.html:229 +#: templates/contest/contest.html:226 templates/problem/list.html:220 msgid "Editorial" msgstr "Editorial" @@ -4452,19 +4477,19 @@ msgstr "Eliminar la Descalificació" msgid "Disqualify" msgstr "Descalificar" -#: templates/contest/ranking.html:151 +#: templates/contest/ranking.html:46 msgid "Are you sure you want to disqualify this participation?" msgstr "Estàs segur que vols descalificar aquesta participació?" -#: templates/contest/ranking.html:156 +#: templates/contest/ranking.html:51 msgid "Are you sure you want to un-disqualify this participation?" msgstr "Estàs segur que vols eliminar la descalificació d'aquesta participació?" -#: templates/contest/ranking.html:228 +#: templates/contest/ranking.html:124 msgid "View user participation" msgstr "Veure la participació de l'usuari" -#: templates/contest/ranking.html:232 +#: templates/contest/ranking.html:128 msgid "Show organizations" msgstr "Mostrar organitzacions" @@ -4651,7 +4676,7 @@ msgid "There are no requests to approve." msgstr "No hi ha cap solicitud per a aprovar." #: templates/organization/requests/pending.html:17 -#: templates/problem/data.html:387 +#: templates/problem/data.html:388 msgid "Delete?" msgstr "Esborrar?" @@ -4687,59 +4712,59 @@ msgstr "" msgid "Enter a new code for the cloned problem:" msgstr "Entra un nou codi per al problema clonat:" -#: templates/problem/data.html:70 +#: templates/problem/data.html:71 msgid "precision (decimal digits)" msgstr "" -#: templates/problem/data.html:339 +#: templates/problem/data.html:340 msgid "View YAML" msgstr "Veure el YAML" -#: templates/problem/data.html:355 +#: templates/problem/data.html:356 msgid "Show columns:" msgstr "Mostra les columnes:" -#: templates/problem/data.html:358 templates/problem/data.html:382 +#: templates/problem/data.html:359 templates/problem/data.html:383 msgid "Output prefix" msgstr "Prefixe de sortida" -#: templates/problem/data.html:362 templates/problem/data.html:383 +#: templates/problem/data.html:363 templates/problem/data.html:384 msgid "Output limit" msgstr "Límit de sortida" -#: templates/problem/data.html:366 templates/problem/data.html:384 +#: templates/problem/data.html:367 templates/problem/data.html:385 msgid "Checker" msgstr "Verificador" -#: templates/problem/data.html:370 templates/problem/data.html:385 +#: templates/problem/data.html:371 templates/problem/data.html:386 msgid "Generator args" msgstr "Arguments del generador" -#: templates/problem/data.html:377 +#: templates/problem/data.html:378 msgid "Type" msgstr "Tipus" -#: templates/problem/data.html:378 +#: templates/problem/data.html:379 msgid "Input file" msgstr "Fitxer d'entrada" -#: templates/problem/data.html:379 +#: templates/problem/data.html:380 msgid "Output file" msgstr "Fitxer de sortida" -#: templates/problem/data.html:381 +#: templates/problem/data.html:382 msgid "Pretest?" msgstr "Casos de prova preliminars?" -#: templates/problem/data.html:433 templates/problem/submit.html:256 +#: templates/problem/data.html:434 templates/problem/submit.html:190 msgid "Submit!" msgstr "Envia!" -#: templates/problem/data.html:434 +#: templates/problem/data.html:435 msgid "Add new case" msgstr "Afegeix nou cas" -#: templates/problem/data.html:436 +#: templates/problem/data.html:437 msgid "Save" msgstr "" @@ -4757,100 +4782,100 @@ msgid_plural "Authors:" msgstr[0] "Autor/a:" msgstr[1] "Autors/es:" -#: templates/problem/list.html:58 +#: templates/problem/list.html:49 msgid "Filter by type..." msgstr "Filtra per tipus..." -#: templates/problem/list.html:176 +#: templates/problem/list.html:167 msgid "Hot problems" msgstr "Problemes populars" -#: templates/problem/list.html:198 templates/problem/list.html:216 +#: templates/problem/list.html:189 templates/problem/list.html:207 #: templates/problem/search-form.html:35 templates/user/user-problems.html:59 msgid "Category" msgstr "Categoria" -#: templates/problem/list.html:200 templates/problem/list.html:220 +#: templates/problem/list.html:191 templates/problem/list.html:211 msgid "Types" msgstr "Tipus" -#: templates/problem/list.html:227 +#: templates/problem/list.html:218 #, python-format msgid "AC %%" msgstr "AC %%" -#: templates/problem/manage_submission.html:55 +#: templates/problem/manage_submission.html:56 msgid "Leave empty to not filter by language" msgstr "Deixa-ho buit per no filtrar per llenguatge" -#: templates/problem/manage_submission.html:60 +#: templates/problem/manage_submission.html:62 msgid "Leave empty to not filter by result" msgstr "Deixa-ho buit per no filtrar per resultat" -#: templates/problem/manage_submission.html:79 +#: templates/problem/manage_submission.html:81 msgid "Need valid values for both start and end IDs." msgstr "Es necessiten valors vàlids per les ID d'inici i de finalització." -#: templates/problem/manage_submission.html:82 +#: templates/problem/manage_submission.html:84 msgid "End ID must be after start ID." msgstr "La ID de finalització ha de ser posterior a la d'inici." -#: templates/problem/manage_submission.html:90 +#: templates/problem/manage_submission.html:92 #, python-brace-format msgid "You are about to rejudge {count} submissions. Are you sure you want to do this?" msgstr "Esteu a punt de rejutjar {count} enviaments. Segur?" -#: templates/problem/manage_submission.html:96 +#: templates/problem/manage_submission.html:98 msgid "You are about to rejudge a few submissions. Are you sure you want to do this?" msgstr "Esteu a punt de rejutjar uns quants enviaments. Segur?" -#: templates/problem/manage_submission.html:115 +#: templates/problem/manage_submission.html:117 msgid "Rejudge Submissions" msgstr "Rejutjar Enviaments" -#: templates/problem/manage_submission.html:120 +#: templates/problem/manage_submission.html:122 msgid "Filter by ID:" msgstr "Filtra per ID:" -#: templates/problem/manage_submission.html:123 +#: templates/problem/manage_submission.html:125 msgid "Starting ID:" msgstr "ID d'inici:" -#: templates/problem/manage_submission.html:127 +#: templates/problem/manage_submission.html:129 msgid "Ending ID:" msgstr "ID de final:" -#: templates/problem/manage_submission.html:131 +#: templates/problem/manage_submission.html:133 msgid "This range includes both endpoints." msgstr "Aquest rang inclou ambdós punts." -#: templates/problem/manage_submission.html:134 +#: templates/problem/manage_submission.html:136 msgid "Filter by language:" msgstr "Filtra per llenguatge:" -#: templates/problem/manage_submission.html:150 +#: templates/problem/manage_submission.html:152 msgid "Rejudge selected submissions" msgstr "Rejutja els enviaments seleccionats" -#: templates/problem/manage_submission.html:157 +#: templates/problem/manage_submission.html:159 msgid "Rescore Everything" msgstr "Recalifica Tot" -#: templates/problem/manage_submission.html:158 +#: templates/problem/manage_submission.html:160 #, python-format msgid "This will rescore %(count)s submission." msgid_plural "This will rescore %(count)s submissions." msgstr[0] "Això repuntuarà %(count)s enviament." msgstr[1] "Això repuntuarà %(count)s enviaments." -#: templates/problem/manage_submission.html:166 +#: templates/problem/manage_submission.html:168 #, python-format msgid "Are you sure you want to rescore %(count)s submission?" msgid_plural "Are you sure you want to rescore %(count)s submissions?" msgstr[0] "Estàs segur que vols repuntuar %(count)s enviament?" msgstr[1] "Estàs segur que vols repuntuar %(count)s enviaments?" -#: templates/problem/manage_submission.html:171 +#: templates/problem/manage_submission.html:173 msgid "Rescore all submissions" msgstr "Repuntua tots els enviaments" @@ -5013,8 +5038,8 @@ msgstr "Tipus de problemes" msgid "Point range" msgstr "Rang de punts" -#: templates/problem/search-form.html:68 templates/submission/list.html:326 -#: templates/ticket/list.html:188 +#: templates/problem/search-form.html:68 templates/submission/list.html:328 +#: templates/ticket/list.html:189 msgid "Go" msgstr "Vés" @@ -5023,7 +5048,7 @@ msgid "Random" msgstr "Aleatori" #: templates/problem/submission-diff.html:62 -#: templates/status/language-list.html:34 templates/ticket/list.html:199 +#: templates/status/language-list.html:34 templates/ticket/list.html:200 msgid "ID" msgstr "ID" @@ -5035,31 +5060,31 @@ msgstr "Resultat" msgid "Date" msgstr "Data" -#: templates/problem/submit.html:117 +#: templates/problem/submit.html:118 msgid "Your source code must contain at most 65536 characters." msgstr "El teu codi pot contenir com a màxim 65536 caràcters." -#: templates/problem/submit.html:204 +#: templates/problem/submit.html:138 msgid "Warning!" msgstr "Atenció!" -#: templates/problem/submit.html:205 +#: templates/problem/submit.html:139 #, python-format msgid "Your default language, %(language)s, is unavailable for this problem and has been deselected." msgstr "El teu llenguatge per defecte, %(language)s, no està disponible per aquest problema i ha estat deseleccionat." -#: templates/problem/submit.html:213 +#: templates/problem/submit.html:147 #, python-format msgid "You have %(left)s submission left" msgid_plural "You have %(left)s submissions left" msgstr[0] "" msgstr[1] "" -#: templates/problem/submit.html:218 +#: templates/problem/submit.html:152 msgid "You have 0 submissions left" msgstr "Tens 0 enviaments disponibles" -#: templates/problem/submit.html:252 +#: templates/problem/submit.html:186 msgid "No judge is available for this problem." msgstr "No hi ha cap jutge disponible per a aquest problema." @@ -5267,7 +5292,7 @@ msgstr "L'equip de %(site_name)s" msgid "Password reset on %(site_name)s" msgstr "Reinici de contrasenya en %(site_name)s" -#: templates/registration/profile_creation.html:44 +#: templates/registration/profile_creation.html:38 #: templates/registration/username_select.html:7 msgid "Continue >" msgstr "Continua >" @@ -5280,36 +5305,36 @@ msgstr "El registre està tancat actualment. Siusplau contacta amb un administra msgid "You have successfully been registered. An email has been sent to the email address you provided to confirm your registration." msgstr "T'has registrat amb èxit. Un correu ha estat enviat a l'adreça que has proporcionat per a confirmar el teu registre." -#: templates/registration/registration_form.html:170 +#: templates/registration/registration_form.html:166 msgid "(again, for confirmation)" msgstr "(de nou, per confirmar)" -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "(select your closest major city)" msgstr "(tria la ciutat més propera)" -#: templates/registration/registration_form.html:182 +#: templates/registration/registration_form.html:178 msgid "pick from map" msgstr "tria del mapa" -#: templates/registration/registration_form.html:187 +#: templates/registration/registration_form.html:183 msgid "Default language" msgstr "Llenguatge per defecte" -#: templates/registration/registration_form.html:190 +#: templates/registration/registration_form.html:186 msgid "Affiliated organizations" msgstr "Organitzacions afiliades" -#: templates/registration/registration_form.html:199 -#: templates/user/edit-profile.html:322 +#: templates/registration/registration_form.html:195 +#: templates/user/edit-profile.html:321 msgid "Notify me about upcoming contests" msgstr "Avisa'm sobre concursos vinents" -#: templates/registration/registration_form.html:213 +#: templates/registration/registration_form.html:209 msgid "By registering, you agree to our [Terms & Conditions][0]." msgstr "" -#: templates/registration/registration_form.html:216 +#: templates/registration/registration_form.html:212 msgid "Register!" msgstr "Registra't!" @@ -5351,17 +5376,17 @@ msgid "Enable Two Factor Authentication" msgstr "Activar Autenticació en Dos Passos" #: templates/registration/totp_enable.html:98 -#: templates/user/edit-profile.html:374 +#: templates/user/edit-profile.html:391 msgid "Below is a list of one-time use scratch codes." msgstr "" #: templates/registration/totp_enable.html:99 -#: templates/user/edit-profile.html:375 +#: templates/user/edit-profile.html:392 msgid "These codes can only be used once and are for emergency use." msgstr "" #: templates/registration/totp_enable.html:100 -#: templates/user/edit-profile.html:376 +#: templates/user/edit-profile.html:393 msgid "You can use these codes to login to your account or disable two-factor authentication." msgstr "" @@ -5370,7 +5395,7 @@ msgid "If you ever need more scratch codes, you can regenerate them on the edit msgstr "" #: templates/registration/totp_enable.html:102 -#: templates/user/edit-profile.html:378 +#: templates/user/edit-profile.html:395 msgid "Please write these down and keep them in a secure location." msgstr "" @@ -5388,12 +5413,12 @@ msgid "If you lose your authentication device and are unable to use your scratch msgstr "" #: templates/registration/two_factor_auth.html:33 -#: templates/user/edit-profile.html:164 +#: templates/user/edit-profile.html:159 msgid "WebAuthn is not supported by your browser." msgstr "WebAuthn no és suportat pel teu navegador." #: templates/registration/two_factor_auth.html:54 -#: templates/user/edit-profile.html:188 +#: templates/user/edit-profile.html:183 msgid "Failed to contact server." msgstr "No s'ha pogut connectar amb el servidor." @@ -5491,23 +5516,23 @@ msgstr "Informació d'error" msgid "Are you sure you want to rejudge?" msgstr "Estàs segur que vols rejutjar?" -#: templates/submission/list.html:74 +#: templates/submission/list.html:75 msgid "Filter by status..." msgstr "Filtra per estat..." -#: templates/submission/list.html:80 +#: templates/submission/list.html:82 msgid "Filter by language..." msgstr "Filtra per llenguatge..." -#: templates/submission/list.html:304 +#: templates/submission/list.html:306 msgid "Filter submissions" msgstr "Filtra enviaments" -#: templates/submission/list.html:340 +#: templates/submission/list.html:342 msgid "Total:" msgstr "Total:" -#: templates/submission/list.html:350 +#: templates/submission/list.html:352 msgid "You were disconnected. Refresh to show latest updates." msgstr "Has estat desconnectat. Actualitza la pàgina per mostrar les últimes actualitzacions." @@ -5671,33 +5696,33 @@ msgstr "Reobert: " msgid "Closed: " msgstr "Tancat: " -#: templates/ticket/list.html:156 +#: templates/ticket/list.html:157 msgid "Use desktop notification" msgstr "Activar les notificacions d'escriptori" -#: templates/ticket/list.html:162 +#: templates/ticket/list.html:163 msgid "Hide closed tickets" msgstr "" -#: templates/ticket/list.html:167 +#: templates/ticket/list.html:168 msgid "Show my tickets only" msgstr "Mostra només els meus tickets" -#: templates/ticket/list.html:171 +#: templates/ticket/list.html:172 msgid "Filing user" msgstr "Usuari remitent" -#: templates/ticket/list.html:180 templates/ticket/ticket.html:196 +#: templates/ticket/list.html:181 templates/ticket/ticket.html:196 msgid "Assignee" msgid_plural "Assignees" msgstr[0] "" msgstr[1] "" -#: templates/ticket/list.html:200 +#: templates/ticket/list.html:201 msgid "Title" msgstr "Títol" -#: templates/ticket/list.html:202 +#: templates/ticket/list.html:203 msgid "Assignees" msgstr "Destinataris" @@ -5748,131 +5773,135 @@ msgstr "Notes de la persona assignada" msgid "Nothing here." msgstr "Aquí no hi ha res." -#: templates/user/base-users-table.html:3 +#: templates/user/base-users-table.html:4 msgid "Rank" msgstr "Classificació" -#: templates/user/base-users.html:14 templates/user/base-users.html:57 +#: templates/user/base-users.html:15 templates/user/base-users.html:58 msgid "Search by handle..." msgstr "Cerca per l'adreça..." -#: templates/user/edit-profile.html:107 +#: templates/user/edit-profile.html:102 msgid "The administrators for this site require all the staff to have Two-factor Authentication enabled, so it may not be disabled at this time." msgstr "" -#: templates/user/edit-profile.html:112 +#: templates/user/edit-profile.html:107 msgid "Are you sure you want to generate or regenerate your API token?" msgstr "Esteu segur que voleu generar o regenerar el token API?" -#: templates/user/edit-profile.html:113 +#: templates/user/edit-profile.html:108 msgid "This will invalidate any previous API tokens." msgstr "Això invalidarà qualsevol token API anterior." -#: templates/user/edit-profile.html:114 +#: templates/user/edit-profile.html:109 msgid "It also allows access to your account without Two-factor Authentication." msgstr "També permet accés a la compta sense l'Autenticació de dos passos." -#: templates/user/edit-profile.html:115 +#: templates/user/edit-profile.html:110 msgid "You will not be able to view your API token after you leave this page!" msgstr "No podràs veure el teu token API després de que deixis aquesta pàgina!" -#: templates/user/edit-profile.html:116 templates/user/edit-profile.html:210 +#: templates/user/edit-profile.html:111 templates/user/edit-profile.html:205 msgid "Generating..." msgstr "Generant..." -#: templates/user/edit-profile.html:130 templates/user/edit-profile.html:398 +#: templates/user/edit-profile.html:125 templates/user/edit-profile.html:355 msgid "Remove" msgstr "Elimina" -#: templates/user/edit-profile.html:140 +#: templates/user/edit-profile.html:135 msgid "Are you sure you want to remove your API token?" msgstr "Estàs segur que vols suprimir el teu token API?" -#: templates/user/edit-profile.html:147 templates/user/edit-profile.html:370 -#: templates/user/edit-profile.html:402 +#: templates/user/edit-profile.html:142 templates/user/edit-profile.html:359 +#: templates/user/edit-profile.html:387 msgid "Generate" msgstr "Generar" -#: templates/user/edit-profile.html:193 +#: templates/user/edit-profile.html:188 msgid "Are you sure you want to delete this security key?" msgstr "Segur que vols suprimir aquesta clau de seguretat?" -#: templates/user/edit-profile.html:207 +#: templates/user/edit-profile.html:202 msgid "Are you sure you want to generate or regenerate a new set of scratch codes?" msgstr "" -#: templates/user/edit-profile.html:208 +#: templates/user/edit-profile.html:203 msgid "This will invalidate any previous scratch codes you have." msgstr "" -#: templates/user/edit-profile.html:209 templates/user/edit-profile.html:379 +#: templates/user/edit-profile.html:204 templates/user/edit-profile.html:396 msgid "You will not be able to view your scratch codes after you leave this page!" msgstr "No podràs veure els teus codis Scratch després de que deixis aquesta pàgina!" -#: templates/user/edit-profile.html:278 +#: templates/user/edit-profile.html:273 msgid "Self-description:" msgstr "Autodescripció:" -#: templates/user/edit-profile.html:285 +#: templates/user/edit-profile.html:280 msgid "Select your closest major city" msgstr "Tria la ciutat més propera" -#: templates/user/edit-profile.html:286 +#: templates/user/edit-profile.html:281 msgid "Time zone:" msgstr "Zona horària:" -#: templates/user/edit-profile.html:290 +#: templates/user/edit-profile.html:285 msgid "Language:" msgstr "Llenguatge:" -#: templates/user/edit-profile.html:294 +#: templates/user/edit-profile.html:289 +msgid "Site theme:" +msgstr "" + +#: templates/user/edit-profile.html:293 msgid "Editor theme:" msgstr "Tema de l'editor:" -#: templates/user/edit-profile.html:299 +#: templates/user/edit-profile.html:298 msgid "Math engine:" msgstr "Motor matemàtic:" -#: templates/user/edit-profile.html:308 +#: templates/user/edit-profile.html:307 msgid "Affiliated organizations:" msgstr "Organitzacions afiliades:" -#: templates/user/edit-profile.html:334 +#: templates/user/edit-profile.html:333 msgid "Change your avatar" msgstr "Canviar avatar" -#: templates/user/edit-profile.html:339 +#: templates/user/edit-profile.html:338 msgid "Change your password" msgstr "Canvia la teva contrasenya" -#: templates/user/edit-profile.html:352 -msgid "Two-factor Authentication is enabled:" -msgstr "S'ha activat l'autenticació de dos passos:" +#: templates/user/edit-profile.html:350 +msgid "API token:" +msgstr "Token de l'API:" -#: templates/user/edit-profile.html:360 +#: templates/user/edit-profile.html:356 templates/user/edit-profile.html:384 +msgid "Hidden" +msgstr "Ocult" + +#: templates/user/edit-profile.html:369 +msgid "Two-factor authentication is enabled:" +msgstr "" + +#: templates/user/edit-profile.html:377 msgid "Refresh" msgstr "" -#: templates/user/edit-profile.html:363 +#: templates/user/edit-profile.html:380 msgid "Scratch codes:" msgstr "Codis Scratch:" -#: templates/user/edit-profile.html:367 templates/user/edit-profile.html:399 -msgid "Hidden" -msgstr "Ocult" - -#: templates/user/edit-profile.html:377 +#: templates/user/edit-profile.html:394 msgid "If you ever need more scratch codes, you can regenerate them here." msgstr "" -#: templates/user/edit-profile.html:385 +#: templates/user/edit-profile.html:402 msgid "Two-factor Authentication is disabled:" msgstr "S'ha desactivat l'autenticació de dos passos:" -#: templates/user/edit-profile.html:393 -msgid "API token:" -msgstr "Token de l'API:" - #: templates/user/edit-profile.html:410 msgid "Security keys:" msgstr "Claus de seguretat:" diff --git a/locale/ca/LC_MESSAGES/djangojs.po b/locale/ca/LC_MESSAGES/djangojs.po index c8e6d1c6c2..c6be9021ba 100644 --- a/locale/ca/LC_MESSAGES/djangojs.po +++ b/locale/ca/LC_MESSAGES/djangojs.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-20 23:43+0000\n" -"PO-Revision-Date: 2022-12-21 00:43\n" +"POT-Creation-Date: 2023-01-23 05:23+0000\n" +"PO-Revision-Date: 2023-01-24 00:51\n" "Last-Translator: \n" "Language-Team: Catalan\n" "Language: ca_ES\n" @@ -17,14 +17,14 @@ msgstr "" "X-Crowdin-File: djangojs.po\n" "X-Crowdin-File-ID: 12\n" -#: resources/common.js:195 +#: resources/common.js:194 msgctxt "time format with day" msgid "%d day %h:%m:%s" msgid_plural "%d days %h:%m:%s" msgstr[0] "%d dia %h:%m:%s" msgstr[1] "%d dies %h:%m:%s" -#: resources/common.js:198 +#: resources/common.js:197 msgctxt "time format without day" msgid "%h:%m:%s" msgstr "%h:%m:%s" diff --git a/locale/de/LC_MESSAGES/django.po b/locale/de/LC_MESSAGES/django.po index 0747eaa223..91b3afd693 100644 --- a/locale/de/LC_MESSAGES/django.po +++ b/locale/de/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-20 23:04+0000\n" -"PO-Revision-Date: 2023-01-21 00:49\n" +"POT-Creation-Date: 2023-02-17 22:33+0000\n" +"PO-Revision-Date: 2023-02-18 00:49\n" "Last-Translator: \n" "Language-Team: German\n" "Language: de_DE\n" @@ -17,91 +17,91 @@ msgstr "" "X-Crowdin-File: django.po\n" "X-Crowdin-File-ID: 10\n" -#: dmoj/settings.py:380 +#: dmoj/settings.py:392 msgid "Catalan" msgstr "Katalanisch" -#: dmoj/settings.py:381 +#: dmoj/settings.py:393 msgid "German" msgstr "Deutsch" -#: dmoj/settings.py:382 +#: dmoj/settings.py:394 msgid "Greek" msgstr "" -#: dmoj/settings.py:383 +#: dmoj/settings.py:395 msgid "English" msgstr "Englisch" -#: dmoj/settings.py:384 +#: dmoj/settings.py:396 msgid "Spanish" msgstr "Spanisch" -#: dmoj/settings.py:385 +#: dmoj/settings.py:397 msgid "French" msgstr "Französisch" -#: dmoj/settings.py:386 +#: dmoj/settings.py:398 msgid "Croatian" msgstr "Kroatisch" -#: dmoj/settings.py:387 +#: dmoj/settings.py:399 msgid "Hungarian" msgstr "Ungarisch" -#: dmoj/settings.py:388 +#: dmoj/settings.py:400 msgid "Japanese" msgstr "Japanisch" -#: dmoj/settings.py:389 +#: dmoj/settings.py:401 msgid "Korean" msgstr "Koreanisch" -#: dmoj/settings.py:390 +#: dmoj/settings.py:402 msgid "Brazilian Portuguese" msgstr "Brasilianisches Portugiesisch" -#: dmoj/settings.py:391 +#: dmoj/settings.py:403 msgid "Romanian" msgstr "Rumänisch" -#: dmoj/settings.py:392 +#: dmoj/settings.py:404 msgid "Russian" msgstr "Russisch" -#: dmoj/settings.py:393 +#: dmoj/settings.py:405 msgid "Serbian (Latin)" msgstr "Serbisch (Lateinisches Alphabet)" -#: dmoj/settings.py:394 +#: dmoj/settings.py:406 msgid "Turkish" msgstr "Türkisch" -#: dmoj/settings.py:395 +#: dmoj/settings.py:407 msgid "Vietnamese" msgstr "Vietnamesisch" -#: dmoj/settings.py:396 +#: dmoj/settings.py:408 msgid "Simplified Chinese" msgstr "Chinesisch (vereinfacht)" -#: dmoj/settings.py:397 +#: dmoj/settings.py:409 msgid "Traditional Chinese" msgstr "Chinesisch (traditionell)" -#: dmoj/urls.py:32 +#: dmoj/urls.py:31 msgid "Activation Successful!" msgstr "Aktivierung Erfolgreich!" -#: dmoj/urls.py:40 +#: dmoj/urls.py:39 msgid "Registration Completed" msgstr "Registrierung abgeschlossen" -#: dmoj/urls.py:44 +#: dmoj/urls.py:43 msgid "Registration Not Allowed" msgstr "Registrierung nicht erlaubt" -#: dmoj/urls.py:93 templates/base.html:183 +#: dmoj/urls.py:92 templates/base.html:193 msgid "Home" msgstr "Startseite" @@ -140,8 +140,8 @@ msgid "Included contests" msgstr "" #: judge/admin/contest.py:65 templates/contest/contest.html:195 -#: templates/contest/moss.html:41 templates/problem/list.html:197 -#: templates/problem/list.html:213 templates/user/user-problems.html:58 +#: templates/contest/moss.html:41 templates/problem/list.html:188 +#: templates/problem/list.html:204 templates/user/user-problems.html:58 #: templates/user/user-problems.html:102 msgid "Problem" msgstr "Problem" @@ -152,7 +152,7 @@ msgstr "Problem" msgid "Problems" msgstr "" -#: judge/admin/contest.py:76 judge/admin/submission.py:249 +#: judge/admin/contest.py:76 judge/admin/submission.py:250 #: templates/admin/judge/submission/change_form.html:14 #: templates/admin/judge/submission/change_form.html:17 #: templates/submission/source.html:34 templates/submission/status.html:89 @@ -231,29 +231,29 @@ msgstr[1] "" msgid "Unlock contest submissions" msgstr "" -#: judge/admin/contest.py:280 judge/admin/submission.py:175 +#: judge/admin/contest.py:280 judge/admin/submission.py:176 #, python-format msgid "%d submission was successfully scheduled for rejudging." msgid_plural "%d submissions were successfully scheduled for rejudging." msgstr[0] "" msgstr[1] "" -#: judge/admin/contest.py:356 +#: judge/admin/contest.py:358 #, python-format msgid "%d participation recalculated." msgid_plural "%d participations recalculated." msgstr[0] "" msgstr[1] "" -#: judge/admin/contest.py:359 +#: judge/admin/contest.py:361 msgid "Recalculate results" msgstr "" -#: judge/admin/contest.py:363 judge/admin/organization.py:113 +#: judge/admin/contest.py:365 judge/admin/organization.py:113 msgid "username" msgstr "" -#: judge/admin/contest.py:368 templates/base.html:249 +#: judge/admin/contest.py:370 templates/base.html:259 msgid "virtual" msgstr "" @@ -266,8 +266,8 @@ msgid "Summary" msgstr "" #: judge/admin/interface.py:124 judge/models/contest.py:491 -#: judge/models/contest.py:623 judge/models/profile.py:331 -#: judge/models/profile.py:362 judge/models/submission.py:67 +#: judge/models/contest.py:623 judge/models/profile.py:347 +#: judge/models/profile.py:378 judge/models/submission.py:67 #: judge/models/ticket.py:32 msgid "user" msgstr "" @@ -298,8 +298,8 @@ msgid "Taxonomy" msgstr "Systematik" #: judge/admin/problem.py:133 templates/contest/contest.html:196 -#: templates/problem/data.html:380 templates/problem/list.html:202 -#: templates/problem/list.html:224 templates/user/base-users-table.html:10 +#: templates/problem/data.html:381 templates/problem/list.html:193 +#: templates/problem/list.html:215 templates/user/base-users-table.html:11 #: templates/user/user-problems.html:60 msgid "Points" msgstr "" @@ -308,9 +308,9 @@ msgstr "" msgid "Limits" msgstr "Grenzen" -#: judge/admin/problem.py:135 judge/admin/submission.py:243 +#: judge/admin/problem.py:135 judge/admin/submission.py:244 #: templates/problem/submission-diff.html:65 templates/stats/tabs.html:4 -#: templates/submission/list.html:317 +#: templates/submission/list.html:319 msgid "Language" msgstr "Programmiersprache" @@ -367,19 +367,19 @@ msgstr "" msgid "timezone" msgstr "" -#: judge/admin/profile.py:98 judge/admin/submission.py:222 +#: judge/admin/profile.py:98 judge/admin/submission.py:223 #: templates/organization/requests/log.html:9 #: templates/organization/requests/pending.html:12 -#: templates/ticket/list.html:201 +#: templates/ticket/list.html:202 msgid "User" msgstr "" -#: judge/admin/profile.py:103 templates/registration/registration_form.html:149 +#: judge/admin/profile.py:103 templates/registration/registration_form.html:145 msgid "Email" msgstr "" #: judge/admin/profile.py:108 judge/views/register.py:28 -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "Timezone" msgstr "" @@ -398,26 +398,26 @@ msgstr[1] "" msgid "Recalculate scores" msgstr "" -#: judge/admin/runtime.py:50 templates/user/edit-profile.html:124 -#: templates/user/edit-profile.html:246 templates/user/edit-profile.html:366 -#: templates/user/edit-profile.html:396 +#: judge/admin/runtime.py:52 templates/user/edit-profile.html:119 +#: templates/user/edit-profile.html:241 templates/user/edit-profile.html:353 +#: templates/user/edit-profile.html:383 msgid "Regenerate" msgstr "" -#: judge/admin/runtime.py:64 +#: judge/admin/runtime.py:66 msgid "Description" msgstr "" -#: judge/admin/runtime.py:65 +#: judge/admin/runtime.py:67 msgid "Information" msgstr "" -#: judge/admin/runtime.py:66 +#: judge/admin/runtime.py:68 msgid "Capabilities" msgstr "" #: judge/admin/submission.py:24 judge/admin/submission.py:43 -#: judge/admin/submission.py:232 +#: judge/admin/submission.py:233 msgid "None" msgstr "Nicht" @@ -449,57 +449,57 @@ msgctxt "contest problem" msgid "%(problem)s in %(contest)s" msgstr "" -#: judge/admin/submission.py:160 judge/admin/submission.py:182 +#: judge/admin/submission.py:161 judge/admin/submission.py:183 msgid "You do not have the permission to rejudge submissions." msgstr "" -#: judge/admin/submission.py:166 +#: judge/admin/submission.py:167 msgid "You do not have the permission to rejudge THAT many submissions." msgstr "" -#: judge/admin/submission.py:178 +#: judge/admin/submission.py:179 msgid "Rejudge the selected submissions" msgstr "" -#: judge/admin/submission.py:204 judge/views/problem_manage.py:129 +#: judge/admin/submission.py:205 judge/views/problem_manage.py:129 #, python-format msgid "%d submission was successfully rescored." msgid_plural "%d submissions were successfully rescored." msgstr[0] "" msgstr[1] "" -#: judge/admin/submission.py:207 +#: judge/admin/submission.py:208 msgid "Rescore the selected submissions" msgstr "" -#: judge/admin/submission.py:211 +#: judge/admin/submission.py:212 msgid "Problem code" msgstr "" -#: judge/admin/submission.py:216 +#: judge/admin/submission.py:217 msgid "Problem name" msgstr "" -#: judge/admin/submission.py:226 templates/organization/requests/log.html:10 +#: judge/admin/submission.py:227 templates/organization/requests/log.html:10 #: templates/organization/requests/pending.html:13 msgid "Time" msgstr "" -#: judge/admin/submission.py:234 +#: judge/admin/submission.py:235 #, python-format msgid "%d KB" msgstr "" -#: judge/admin/submission.py:236 +#: judge/admin/submission.py:237 #, python-format msgid "%.2f MB" msgstr "" -#: judge/admin/submission.py:238 +#: judge/admin/submission.py:239 msgid "Memory" msgstr "" -#: judge/admin/submission.py:247 +#: judge/admin/submission.py:248 msgid "Locked" msgstr "" @@ -524,6 +524,7 @@ msgid "Comment body" msgstr "" #: judge/comments.py:47 judge/views/comment.py:40 judge/views/ticket.py:46 +#: judge/views/user.py:347 msgid "Your part is silent, little toad." msgstr "" @@ -631,7 +632,7 @@ msgstr "" msgid "Scratch codes must be 16 Base32 characters." msgstr "" -#: judge/forms.py:39 judge/forms.py:265 +#: judge/forms.py:39 judge/forms.py:266 msgid "Invalid scratch code." msgstr "" @@ -654,83 +655,83 @@ msgid_plural "You may not be part of more than {count} public organizations." msgstr[0] "" msgstr[1] "" -#: judge/forms.py:98 +#: judge/forms.py:99 msgid "Download comments?" msgstr "" -#: judge/forms.py:99 +#: judge/forms.py:100 msgid "Download submissions?" msgstr "" -#: judge/forms.py:100 +#: judge/forms.py:101 msgid "Filter by problem code glob:" msgstr "" -#: judge/forms.py:104 +#: judge/forms.py:105 msgid "Leave empty to include all submissions" msgstr "" -#: judge/forms.py:107 templates/problem/manage_submission.html:142 +#: judge/forms.py:108 templates/problem/manage_submission.html:144 msgid "Filter by result:" msgstr "" -#: judge/forms.py:113 +#: judge/forms.py:114 msgid "Please select at least one thing to download." msgstr "" -#: judge/forms.py:139 +#: judge/forms.py:140 msgid "Any judge" msgstr "" -#: judge/forms.py:160 judge/views/register.py:25 +#: judge/forms.py:161 judge/views/register.py:25 #: templates/problem/submission-diff.html:63 -#: templates/registration/registration_form.html:143 -#: templates/user/base-users-table.html:5 +#: templates/registration/registration_form.html:139 +#: templates/user/base-users-table.html:6 msgid "Username" msgstr "" -#: judge/forms.py:161 templates/registration/registration_form.html:155 -#: templates/registration/registration_form.html:169 +#: judge/forms.py:162 templates/registration/registration_form.html:151 +#: templates/registration/registration_form.html:165 msgid "Password" msgstr "" -#: judge/forms.py:193 +#: judge/forms.py:194 msgid "Invalid code length." msgstr "" -#: judge/forms.py:224 +#: judge/forms.py:225 msgid "Invalid WebAuthn response." msgstr "" -#: judge/forms.py:227 +#: judge/forms.py:228 msgid "No WebAuthn challenge issued." msgstr "" -#: judge/forms.py:233 +#: judge/forms.py:234 msgid "Invalid WebAuthn credential ID." msgstr "" -#: judge/forms.py:263 +#: judge/forms.py:264 msgid "Invalid two-factor authentication token or scratch code." msgstr "" -#: judge/forms.py:267 +#: judge/forms.py:268 msgid "Must specify either totp_token or webauthn_response." msgstr "" -#: judge/forms.py:271 judge/models/problem.py:118 +#: judge/forms.py:272 judge/models/problem.py:118 msgid "Problem code must be ^[a-z0-9]+$" msgstr "" -#: judge/forms.py:276 +#: judge/forms.py:277 msgid "Problem with code already exists." msgstr "" -#: judge/forms.py:281 judge/models/contest.py:68 +#: judge/forms.py:282 judge/models/contest.py:68 msgid "Contest id must be ^[a-z0-9]+$" msgstr "" -#: judge/forms.py:286 +#: judge/forms.py:287 msgid "Contest with key already exists." msgstr "" @@ -753,26 +754,42 @@ msgstr "" msgid "Unrated" msgstr "" -#: judge/models/choices.py:59 -msgid "Leave as LaTeX" +#: judge/models/choices.py:24 +msgid "Follow site theme" msgstr "" #: judge/models/choices.py:60 -msgid "SVG only" +msgid "Leave as LaTeX" msgstr "" #: judge/models/choices.py:61 -msgid "MathML only" +msgid "SVG only" msgstr "" #: judge/models/choices.py:62 -msgid "MathJax with SVG fallback" +msgid "MathML only" msgstr "" #: judge/models/choices.py:63 +msgid "MathJax with SVG fallback" +msgstr "" + +#: judge/models/choices.py:64 msgid "Detect best quality" msgstr "" +#: judge/models/choices.py:70 +msgid "Follow system default" +msgstr "" + +#: judge/models/choices.py:71 +msgid "Light" +msgstr "" + +#: judge/models/choices.py:72 +msgid "Dark" +msgstr "" + #: judge/models/comment.py:25 msgid "Page code must be ^[pcs]:[a-z0-9]+$|^b:\\d+$" msgstr "" @@ -1885,7 +1902,7 @@ msgid "Non-trailing spaces" msgstr "" #: judge/models/problem_data.py:28 -msgid "Unordered" +msgid "Sorted" msgstr "" #: judge/models/problem_data.py:29 @@ -2057,7 +2074,7 @@ msgid "Edit all organizations" msgstr "" #: judge/models/profile.py:98 judge/models/profile.py:103 -#: judge/models/profile.py:160 judge/models/profile.py:363 +#: judge/models/profile.py:161 judge/models/profile.py:379 msgid "organization" msgstr "" @@ -2098,7 +2115,7 @@ msgstr "" msgid "%(class)s in %(organization)s" msgstr "" -#: judge/models/profile.py:142 judge/models/profile.py:371 +#: judge/models/profile.py:142 judge/models/profile.py:387 msgid "class" msgstr "" @@ -2123,26 +2140,30 @@ msgid "Ace theme" msgstr "" #: judge/models/profile.py:158 -msgid "last access time" +msgid "site theme" msgstr "" #: judge/models/profile.py:159 +msgid "last access time" +msgstr "" + +#: judge/models/profile.py:160 msgid "last IP" msgstr "" -#: judge/models/profile.py:162 +#: judge/models/profile.py:163 msgid "display rank" msgstr "" -#: judge/models/profile.py:164 +#: judge/models/profile.py:165 msgid "Normal User" msgstr "" -#: judge/models/profile.py:165 +#: judge/models/profile.py:166 msgid "Problem Setter" msgstr "" -#: judge/models/profile.py:166 templates/base.html:211 +#: judge/models/profile.py:167 templates/base.html:221 #: templates/comments/list.html:97 templates/contest/contest-list-tabs.html:25 #: templates/contest/ranking-table.html:51 #: templates/problem/problem-list-tabs.html:6 @@ -2152,200 +2173,200 @@ msgstr "" msgid "Admin" msgstr "" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "comment mute" msgstr "" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "Some users are at their best when silent." msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "unlisted user" msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "User will not be ranked." msgstr "" -#: judge/models/profile.py:172 +#: judge/models/profile.py:173 msgid "banned from voting on problem point values" msgstr "" -#: judge/models/profile.py:173 +#: judge/models/profile.py:174 msgid "User will not be able to vote on problems' point values." msgstr "" -#: judge/models/profile.py:177 +#: judge/models/profile.py:178 msgid "user script" msgstr "" -#: judge/models/profile.py:178 +#: judge/models/profile.py:179 msgid "User-defined JavaScript for site customization." msgstr "" -#: judge/models/profile.py:179 +#: judge/models/profile.py:180 msgid "current contest" msgstr "" -#: judge/models/profile.py:181 +#: judge/models/profile.py:182 msgid "math engine" msgstr "" -#: judge/models/profile.py:183 +#: judge/models/profile.py:184 msgid "The rendering engine used to render math." msgstr "" -#: judge/models/profile.py:184 +#: judge/models/profile.py:185 msgid "TOTP 2FA enabled" msgstr "" -#: judge/models/profile.py:185 +#: judge/models/profile.py:186 msgid "Check to enable TOTP-based two-factor authentication." msgstr "" -#: judge/models/profile.py:186 +#: judge/models/profile.py:187 msgid "WebAuthn 2FA enabled" msgstr "" -#: judge/models/profile.py:187 +#: judge/models/profile.py:188 msgid "Check to enable WebAuthn-based two-factor authentication." msgstr "" -#: judge/models/profile.py:188 +#: judge/models/profile.py:189 msgid "TOTP key" msgstr "" -#: judge/models/profile.py:189 +#: judge/models/profile.py:190 msgid "32-character Base32-encoded key for TOTP." msgstr "" -#: judge/models/profile.py:191 +#: judge/models/profile.py:192 msgid "TOTP key must be empty or Base32." msgstr "" -#: judge/models/profile.py:192 +#: judge/models/profile.py:193 msgid "scratch codes" msgstr "" -#: judge/models/profile.py:193 +#: judge/models/profile.py:194 msgid "JSON array of 16-character Base32-encoded codes for scratch codes." msgstr "" -#: judge/models/profile.py:197 +#: judge/models/profile.py:198 msgid "Scratch codes must be empty or a JSON array of 16-character Base32 codes." msgstr "" -#: judge/models/profile.py:199 +#: judge/models/profile.py:200 msgid "last TOTP timecode" msgstr "" -#: judge/models/profile.py:200 +#: judge/models/profile.py:201 msgid "API token" msgstr "" -#: judge/models/profile.py:201 +#: judge/models/profile.py:202 msgid "64-character hex-encoded API access token." msgstr "" -#: judge/models/profile.py:203 +#: judge/models/profile.py:204 msgid "API token must be None or hexadecimal" msgstr "" -#: judge/models/profile.py:204 +#: judge/models/profile.py:205 msgid "internal notes" msgstr "" -#: judge/models/profile.py:205 +#: judge/models/profile.py:206 msgid "Notes for administrators regarding this user." msgstr "" -#: judge/models/profile.py:206 +#: judge/models/profile.py:207 msgid "last data download time" msgstr "" -#: judge/models/profile.py:207 +#: judge/models/profile.py:208 msgid "display name override" msgstr "" -#: judge/models/profile.py:208 +#: judge/models/profile.py:209 msgid "Name displayed in place of username." msgstr "" -#: judge/models/profile.py:323 +#: judge/models/profile.py:333 msgid "Shows in-progress development stuff" msgstr "" -#: judge/models/profile.py:324 +#: judge/models/profile.py:334 msgid "Edit TOTP settings" msgstr "" -#: judge/models/profile.py:326 +#: judge/models/profile.py:336 msgid "user profile" msgstr "" -#: judge/models/profile.py:327 +#: judge/models/profile.py:337 msgid "user profiles" msgstr "" -#: judge/models/profile.py:333 +#: judge/models/profile.py:349 msgid "device name" msgstr "" -#: judge/models/profile.py:334 +#: judge/models/profile.py:350 msgid "credential ID" msgstr "" -#: judge/models/profile.py:335 +#: judge/models/profile.py:351 msgid "public key" msgstr "" -#: judge/models/profile.py:336 +#: judge/models/profile.py:352 msgid "sign counter" msgstr "" -#: judge/models/profile.py:354 +#: judge/models/profile.py:370 #, python-format msgid "WebAuthn credential: %(name)s" msgstr "" -#: judge/models/profile.py:357 +#: judge/models/profile.py:373 msgid "WebAuthn credential" msgstr "" -#: judge/models/profile.py:358 +#: judge/models/profile.py:374 msgid "WebAuthn credentials" msgstr "" -#: judge/models/profile.py:365 +#: judge/models/profile.py:381 msgid "request time" msgstr "" -#: judge/models/profile.py:366 +#: judge/models/profile.py:382 msgid "state" msgstr "" -#: judge/models/profile.py:367 templates/organization/requests/tabs.html:4 +#: judge/models/profile.py:383 templates/organization/requests/tabs.html:4 msgid "Pending" msgstr "" -#: judge/models/profile.py:368 templates/organization/requests/tabs.html:10 +#: judge/models/profile.py:384 templates/organization/requests/tabs.html:10 msgid "Approved" msgstr "" -#: judge/models/profile.py:369 templates/organization/requests/tabs.html:13 +#: judge/models/profile.py:385 templates/organization/requests/tabs.html:13 msgid "Rejected" msgstr "" -#: judge/models/profile.py:372 +#: judge/models/profile.py:388 msgid "reason" msgstr "" -#: judge/models/profile.py:381 +#: judge/models/profile.py:397 msgid "organization join request" msgstr "" -#: judge/models/profile.py:382 +#: judge/models/profile.py:398 msgid "organization join requests" msgstr "" @@ -2588,15 +2609,15 @@ msgstr "" msgid "submission time" msgstr "" -#: judge/models/submission.py:70 judge/models/submission.py:255 +#: judge/models/submission.py:70 judge/models/submission.py:265 msgid "execution time" msgstr "" -#: judge/models/submission.py:71 judge/models/submission.py:256 +#: judge/models/submission.py:71 judge/models/submission.py:266 msgid "memory usage" msgstr "" -#: judge/models/submission.py:72 judge/models/submission.py:257 +#: judge/models/submission.py:72 judge/models/submission.py:267 msgid "points granted" msgstr "" @@ -2685,60 +2706,60 @@ msgstr "" msgid "submissions" msgstr "" -#: judge/models/submission.py:235 judge/models/submission.py:251 +#: judge/models/submission.py:245 judge/models/submission.py:261 msgid "associated submission" msgstr "" -#: judge/models/submission.py:237 +#: judge/models/submission.py:247 msgid "source code" msgstr "" -#: judge/models/submission.py:240 +#: judge/models/submission.py:250 #, python-format msgid "Source of %(submission)s" msgstr "" -#: judge/models/submission.py:243 +#: judge/models/submission.py:253 msgid "submission source" msgstr "" -#: judge/models/submission.py:244 +#: judge/models/submission.py:254 msgid "submission sources" msgstr "" -#: judge/models/submission.py:253 +#: judge/models/submission.py:263 msgid "test case ID" msgstr "" -#: judge/models/submission.py:254 +#: judge/models/submission.py:264 msgid "status flag" msgstr "" -#: judge/models/submission.py:258 +#: judge/models/submission.py:268 msgid "points possible" msgstr "" -#: judge/models/submission.py:259 +#: judge/models/submission.py:269 msgid "batch number" msgstr "" -#: judge/models/submission.py:260 +#: judge/models/submission.py:270 msgid "judging feedback" msgstr "" -#: judge/models/submission.py:261 +#: judge/models/submission.py:271 msgid "extended judging feedback" msgstr "" -#: judge/models/submission.py:262 +#: judge/models/submission.py:272 msgid "program output" msgstr "" -#: judge/models/submission.py:276 +#: judge/models/submission.py:286 msgid "submission test case" msgstr "" -#: judge/models/submission.py:277 +#: judge/models/submission.py:287 msgid "submission test cases" msgstr "" @@ -2956,7 +2977,7 @@ msgctxt "hours and minutes" msgid "%h:%m" msgstr "" -#: judge/views/blog.py:36 +#: judge/views/blog.py:37 #, python-format msgid "Page %d of Posts" msgstr "" @@ -3445,11 +3466,11 @@ msgstr "" msgid "Register" msgstr "" -#: judge/views/register.py:103 +#: judge/views/register.py:101 msgid "Activation Key Invalid" msgstr "" -#: judge/views/register.py:114 +#: judge/views/register.py:112 msgid "Authentication failure" msgstr "" @@ -3461,7 +3482,7 @@ msgstr "" msgid "Language statistics" msgstr "" -#: judge/views/status.py:23 templates/submission/list.html:308 +#: judge/views/status.py:23 templates/submission/list.html:310 msgid "Status" msgstr "" @@ -3644,41 +3665,45 @@ msgstr "" msgid "Preparing your data..." msgstr "" -#: judge/views/user.py:298 templates/user/edit-profile.html:345 +#: judge/views/user.py:298 templates/user/edit-profile.html:344 msgid "Download your data" msgstr "" +#: judge/views/user.py:347 +msgid "Can't edit profile" +msgstr "" + #: judge/views/user.py:354 msgid "Updated on site" msgstr "" -#: judge/views/user.py:387 templates/admin/auth/user/change_form.html:14 -#: templates/admin/auth/user/change_form.html:17 templates/base.html:213 +#: judge/views/user.py:386 templates/admin/auth/user/change_form.html:14 +#: templates/admin/auth/user/change_form.html:17 templates/base.html:223 #: templates/user/user-tabs.html:16 msgid "Edit profile" msgstr "" -#: judge/views/user.py:402 +#: judge/views/user.py:400 msgid "Generated API token for user" msgstr "" -#: judge/views/user.py:414 +#: judge/views/user.py:412 msgid "Removed API token for user" msgstr "" -#: judge/views/user.py:424 +#: judge/views/user.py:422 msgid "Generated scratch codes for user" msgstr "" -#: judge/views/user.py:430 templates/user/user-list-tabs.html:4 +#: judge/views/user.py:428 templates/user/user-list-tabs.html:4 msgid "Leaderboard" msgstr "" -#: judge/views/user.py:491 +#: judge/views/user.py:489 msgid "You have been successfully logged out." msgstr "" -#: judge/views/user.py:508 +#: judge/views/user.py:506 msgid "You have sent too many password reset requests. Please try again later." msgstr "" @@ -3707,13 +3732,13 @@ msgstr "" #: templates/admin/judge/judge/change_form.html:27 #: templates/admin/judge/judge/change_form.html:30 -#: templates/user/edit-profile.html:355 templates/user/edit-profile.html:358 +#: templates/user/edit-profile.html:372 templates/user/edit-profile.html:375 msgid "Disable" msgstr "" #: templates/admin/judge/judge/change_form.html:33 #: templates/admin/judge/judge/change_form.html:36 -#: templates/user/edit-profile.html:386 +#: templates/user/edit-profile.html:403 msgid "Enable" msgstr "" @@ -3733,48 +3758,48 @@ msgstr "" msgid "Edit user" msgstr "" -#: templates/base.html:206 +#: templates/base.html:216 #, python-format msgid "Hello, %(username)s." msgstr "" -#: templates/base.html:215 +#: templates/base.html:225 msgid "Stop impersonating" msgstr "" -#: templates/base.html:220 +#: templates/base.html:230 msgid "Log out" msgstr "" -#: templates/base.html:229 +#: templates/base.html:239 #: templates/registration/password_reset_complete.html:4 msgid "Log in" msgstr "" -#: templates/base.html:230 templates/registration/registration_form.html:181 +#: templates/base.html:240 templates/registration/registration_form.html:177 msgid "or" msgstr "" -#: templates/base.html:231 +#: templates/base.html:241 msgid "Sign up" msgstr "" -#: templates/base.html:243 +#: templates/base.html:253 msgid "spectating" msgstr "" -#: templates/base.html:256 +#: templates/base.html:266 msgid "This site works best with JavaScript enabled." msgstr "" -#: templates/base.html:283 +#: templates/base.html:293 msgid "proudly powered by **DMOJ**" msgstr "" #: templates/blog/content.html:13 templates/comments/list.html:89 #: templates/comments/list.html:105 templates/contest/contest-tabs.html:23 #: templates/contest/tag-title.html:9 templates/flatpages/admin_link.html:3 -#: templates/license.html:10 templates/problem/data.html:423 +#: templates/license.html:10 templates/problem/data.html:424 #: templates/problem/editorial.html:14 msgid "Edit" msgstr "" @@ -3975,15 +4000,15 @@ msgstr "" msgid "No votes" msgstr "" -#: templates/common-content.html:32 templates/user/edit-profile.html:219 +#: templates/common-content.html:32 templates/user/edit-profile.html:214 msgid "Click to copy" msgstr "" -#: templates/common-content.html:33 templates/user/edit-profile.html:220 +#: templates/common-content.html:33 templates/user/edit-profile.html:215 msgid "Copy" msgstr "" -#: templates/common-content.html:44 templates/user/edit-profile.html:231 +#: templates/common-content.html:44 templates/user/edit-profile.html:226 msgid "Copied!" msgstr "" @@ -4064,7 +4089,7 @@ msgstr "" msgid "Info" msgstr "" -#: templates/contest/contest-tabs.html:6 templates/submission/list.html:334 +#: templates/contest/contest-tabs.html:6 templates/submission/list.html:336 msgid "Statistics" msgstr "" @@ -4279,7 +4304,7 @@ msgstr "" #: templates/contest/contest.html:198 templates/contest/list.html:152 #: templates/contest/list.html:194 templates/contest/list.html:271 -#: templates/problem/list.html:203 templates/problem/list.html:235 +#: templates/problem/list.html:194 templates/problem/list.html:226 msgid "Users" msgstr "" @@ -4287,7 +4312,7 @@ msgstr "" msgid "Editorials" msgstr "" -#: templates/contest/contest.html:226 templates/problem/list.html:229 +#: templates/contest/contest.html:226 templates/problem/list.html:220 msgid "Editorial" msgstr "" @@ -4452,19 +4477,19 @@ msgstr "" msgid "Disqualify" msgstr "" -#: templates/contest/ranking.html:151 +#: templates/contest/ranking.html:46 msgid "Are you sure you want to disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:156 +#: templates/contest/ranking.html:51 msgid "Are you sure you want to un-disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:228 +#: templates/contest/ranking.html:124 msgid "View user participation" msgstr "" -#: templates/contest/ranking.html:232 +#: templates/contest/ranking.html:128 msgid "Show organizations" msgstr "" @@ -4651,7 +4676,7 @@ msgid "There are no requests to approve." msgstr "" #: templates/organization/requests/pending.html:17 -#: templates/problem/data.html:387 +#: templates/problem/data.html:388 msgid "Delete?" msgstr "" @@ -4687,59 +4712,59 @@ msgstr "" msgid "Enter a new code for the cloned problem:" msgstr "" -#: templates/problem/data.html:70 +#: templates/problem/data.html:71 msgid "precision (decimal digits)" msgstr "" -#: templates/problem/data.html:339 +#: templates/problem/data.html:340 msgid "View YAML" msgstr "" -#: templates/problem/data.html:355 +#: templates/problem/data.html:356 msgid "Show columns:" msgstr "" -#: templates/problem/data.html:358 templates/problem/data.html:382 +#: templates/problem/data.html:359 templates/problem/data.html:383 msgid "Output prefix" msgstr "" -#: templates/problem/data.html:362 templates/problem/data.html:383 +#: templates/problem/data.html:363 templates/problem/data.html:384 msgid "Output limit" msgstr "" -#: templates/problem/data.html:366 templates/problem/data.html:384 +#: templates/problem/data.html:367 templates/problem/data.html:385 msgid "Checker" msgstr "" -#: templates/problem/data.html:370 templates/problem/data.html:385 +#: templates/problem/data.html:371 templates/problem/data.html:386 msgid "Generator args" msgstr "" -#: templates/problem/data.html:377 +#: templates/problem/data.html:378 msgid "Type" msgstr "" -#: templates/problem/data.html:378 +#: templates/problem/data.html:379 msgid "Input file" msgstr "" -#: templates/problem/data.html:379 +#: templates/problem/data.html:380 msgid "Output file" msgstr "" -#: templates/problem/data.html:381 +#: templates/problem/data.html:382 msgid "Pretest?" msgstr "" -#: templates/problem/data.html:433 templates/problem/submit.html:256 +#: templates/problem/data.html:434 templates/problem/submit.html:190 msgid "Submit!" msgstr "" -#: templates/problem/data.html:434 +#: templates/problem/data.html:435 msgid "Add new case" msgstr "" -#: templates/problem/data.html:436 +#: templates/problem/data.html:437 msgid "Save" msgstr "" @@ -4757,100 +4782,100 @@ msgid_plural "Authors:" msgstr[0] "" msgstr[1] "" -#: templates/problem/list.html:58 +#: templates/problem/list.html:49 msgid "Filter by type..." msgstr "" -#: templates/problem/list.html:176 +#: templates/problem/list.html:167 msgid "Hot problems" msgstr "" -#: templates/problem/list.html:198 templates/problem/list.html:216 +#: templates/problem/list.html:189 templates/problem/list.html:207 #: templates/problem/search-form.html:35 templates/user/user-problems.html:59 msgid "Category" msgstr "" -#: templates/problem/list.html:200 templates/problem/list.html:220 +#: templates/problem/list.html:191 templates/problem/list.html:211 msgid "Types" msgstr "" -#: templates/problem/list.html:227 +#: templates/problem/list.html:218 #, python-format msgid "AC %%" msgstr "" -#: templates/problem/manage_submission.html:55 +#: templates/problem/manage_submission.html:56 msgid "Leave empty to not filter by language" msgstr "" -#: templates/problem/manage_submission.html:60 +#: templates/problem/manage_submission.html:62 msgid "Leave empty to not filter by result" msgstr "" -#: templates/problem/manage_submission.html:79 +#: templates/problem/manage_submission.html:81 msgid "Need valid values for both start and end IDs." msgstr "" -#: templates/problem/manage_submission.html:82 +#: templates/problem/manage_submission.html:84 msgid "End ID must be after start ID." msgstr "" -#: templates/problem/manage_submission.html:90 +#: templates/problem/manage_submission.html:92 #, python-brace-format msgid "You are about to rejudge {count} submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:96 +#: templates/problem/manage_submission.html:98 msgid "You are about to rejudge a few submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:115 +#: templates/problem/manage_submission.html:117 msgid "Rejudge Submissions" msgstr "" -#: templates/problem/manage_submission.html:120 +#: templates/problem/manage_submission.html:122 msgid "Filter by ID:" msgstr "" -#: templates/problem/manage_submission.html:123 +#: templates/problem/manage_submission.html:125 msgid "Starting ID:" msgstr "" -#: templates/problem/manage_submission.html:127 +#: templates/problem/manage_submission.html:129 msgid "Ending ID:" msgstr "" -#: templates/problem/manage_submission.html:131 +#: templates/problem/manage_submission.html:133 msgid "This range includes both endpoints." msgstr "" -#: templates/problem/manage_submission.html:134 +#: templates/problem/manage_submission.html:136 msgid "Filter by language:" msgstr "" -#: templates/problem/manage_submission.html:150 +#: templates/problem/manage_submission.html:152 msgid "Rejudge selected submissions" msgstr "" -#: templates/problem/manage_submission.html:157 +#: templates/problem/manage_submission.html:159 msgid "Rescore Everything" msgstr "" -#: templates/problem/manage_submission.html:158 +#: templates/problem/manage_submission.html:160 #, python-format msgid "This will rescore %(count)s submission." msgid_plural "This will rescore %(count)s submissions." msgstr[0] "" msgstr[1] "" -#: templates/problem/manage_submission.html:166 +#: templates/problem/manage_submission.html:168 #, python-format msgid "Are you sure you want to rescore %(count)s submission?" msgid_plural "Are you sure you want to rescore %(count)s submissions?" msgstr[0] "" msgstr[1] "" -#: templates/problem/manage_submission.html:171 +#: templates/problem/manage_submission.html:173 msgid "Rescore all submissions" msgstr "" @@ -5013,8 +5038,8 @@ msgstr "" msgid "Point range" msgstr "" -#: templates/problem/search-form.html:68 templates/submission/list.html:326 -#: templates/ticket/list.html:188 +#: templates/problem/search-form.html:68 templates/submission/list.html:328 +#: templates/ticket/list.html:189 msgid "Go" msgstr "" @@ -5023,7 +5048,7 @@ msgid "Random" msgstr "" #: templates/problem/submission-diff.html:62 -#: templates/status/language-list.html:34 templates/ticket/list.html:199 +#: templates/status/language-list.html:34 templates/ticket/list.html:200 msgid "ID" msgstr "" @@ -5035,31 +5060,31 @@ msgstr "" msgid "Date" msgstr "" -#: templates/problem/submit.html:117 +#: templates/problem/submit.html:118 msgid "Your source code must contain at most 65536 characters." msgstr "" -#: templates/problem/submit.html:204 +#: templates/problem/submit.html:138 msgid "Warning!" msgstr "" -#: templates/problem/submit.html:205 +#: templates/problem/submit.html:139 #, python-format msgid "Your default language, %(language)s, is unavailable for this problem and has been deselected." msgstr "" -#: templates/problem/submit.html:213 +#: templates/problem/submit.html:147 #, python-format msgid "You have %(left)s submission left" msgid_plural "You have %(left)s submissions left" msgstr[0] "" msgstr[1] "" -#: templates/problem/submit.html:218 +#: templates/problem/submit.html:152 msgid "You have 0 submissions left" msgstr "" -#: templates/problem/submit.html:252 +#: templates/problem/submit.html:186 msgid "No judge is available for this problem." msgstr "" @@ -5267,7 +5292,7 @@ msgstr "" msgid "Password reset on %(site_name)s" msgstr "" -#: templates/registration/profile_creation.html:44 +#: templates/registration/profile_creation.html:38 #: templates/registration/username_select.html:7 msgid "Continue >" msgstr "" @@ -5280,36 +5305,36 @@ msgstr "" msgid "You have successfully been registered. An email has been sent to the email address you provided to confirm your registration." msgstr "" -#: templates/registration/registration_form.html:170 +#: templates/registration/registration_form.html:166 msgid "(again, for confirmation)" msgstr "" -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "(select your closest major city)" msgstr "" -#: templates/registration/registration_form.html:182 +#: templates/registration/registration_form.html:178 msgid "pick from map" msgstr "" -#: templates/registration/registration_form.html:187 +#: templates/registration/registration_form.html:183 msgid "Default language" msgstr "" -#: templates/registration/registration_form.html:190 +#: templates/registration/registration_form.html:186 msgid "Affiliated organizations" msgstr "" -#: templates/registration/registration_form.html:199 -#: templates/user/edit-profile.html:322 +#: templates/registration/registration_form.html:195 +#: templates/user/edit-profile.html:321 msgid "Notify me about upcoming contests" msgstr "" -#: templates/registration/registration_form.html:213 +#: templates/registration/registration_form.html:209 msgid "By registering, you agree to our [Terms & Conditions][0]." msgstr "" -#: templates/registration/registration_form.html:216 +#: templates/registration/registration_form.html:212 msgid "Register!" msgstr "" @@ -5351,17 +5376,17 @@ msgid "Enable Two Factor Authentication" msgstr "" #: templates/registration/totp_enable.html:98 -#: templates/user/edit-profile.html:374 +#: templates/user/edit-profile.html:391 msgid "Below is a list of one-time use scratch codes." msgstr "" #: templates/registration/totp_enable.html:99 -#: templates/user/edit-profile.html:375 +#: templates/user/edit-profile.html:392 msgid "These codes can only be used once and are for emergency use." msgstr "" #: templates/registration/totp_enable.html:100 -#: templates/user/edit-profile.html:376 +#: templates/user/edit-profile.html:393 msgid "You can use these codes to login to your account or disable two-factor authentication." msgstr "" @@ -5370,7 +5395,7 @@ msgid "If you ever need more scratch codes, you can regenerate them on the edit msgstr "" #: templates/registration/totp_enable.html:102 -#: templates/user/edit-profile.html:378 +#: templates/user/edit-profile.html:395 msgid "Please write these down and keep them in a secure location." msgstr "" @@ -5388,12 +5413,12 @@ msgid "If you lose your authentication device and are unable to use your scratch msgstr "" #: templates/registration/two_factor_auth.html:33 -#: templates/user/edit-profile.html:164 +#: templates/user/edit-profile.html:159 msgid "WebAuthn is not supported by your browser." msgstr "" #: templates/registration/two_factor_auth.html:54 -#: templates/user/edit-profile.html:188 +#: templates/user/edit-profile.html:183 msgid "Failed to contact server." msgstr "" @@ -5491,23 +5516,23 @@ msgstr "" msgid "Are you sure you want to rejudge?" msgstr "" -#: templates/submission/list.html:74 +#: templates/submission/list.html:75 msgid "Filter by status..." msgstr "" -#: templates/submission/list.html:80 +#: templates/submission/list.html:82 msgid "Filter by language..." msgstr "" -#: templates/submission/list.html:304 +#: templates/submission/list.html:306 msgid "Filter submissions" msgstr "" -#: templates/submission/list.html:340 +#: templates/submission/list.html:342 msgid "Total:" msgstr "" -#: templates/submission/list.html:350 +#: templates/submission/list.html:352 msgid "You were disconnected. Refresh to show latest updates." msgstr "" @@ -5671,33 +5696,33 @@ msgstr "" msgid "Closed: " msgstr "" -#: templates/ticket/list.html:156 +#: templates/ticket/list.html:157 msgid "Use desktop notification" msgstr "" -#: templates/ticket/list.html:162 +#: templates/ticket/list.html:163 msgid "Hide closed tickets" msgstr "" -#: templates/ticket/list.html:167 +#: templates/ticket/list.html:168 msgid "Show my tickets only" msgstr "" -#: templates/ticket/list.html:171 +#: templates/ticket/list.html:172 msgid "Filing user" msgstr "" -#: templates/ticket/list.html:180 templates/ticket/ticket.html:196 +#: templates/ticket/list.html:181 templates/ticket/ticket.html:196 msgid "Assignee" msgid_plural "Assignees" msgstr[0] "" msgstr[1] "" -#: templates/ticket/list.html:200 +#: templates/ticket/list.html:201 msgid "Title" msgstr "" -#: templates/ticket/list.html:202 +#: templates/ticket/list.html:203 msgid "Assignees" msgstr "" @@ -5748,129 +5773,133 @@ msgstr "" msgid "Nothing here." msgstr "" -#: templates/user/base-users-table.html:3 +#: templates/user/base-users-table.html:4 msgid "Rank" msgstr "" -#: templates/user/base-users.html:14 templates/user/base-users.html:57 +#: templates/user/base-users.html:15 templates/user/base-users.html:58 msgid "Search by handle..." msgstr "" -#: templates/user/edit-profile.html:107 +#: templates/user/edit-profile.html:102 msgid "The administrators for this site require all the staff to have Two-factor Authentication enabled, so it may not be disabled at this time." msgstr "" -#: templates/user/edit-profile.html:112 +#: templates/user/edit-profile.html:107 msgid "Are you sure you want to generate or regenerate your API token?" msgstr "" -#: templates/user/edit-profile.html:113 +#: templates/user/edit-profile.html:108 msgid "This will invalidate any previous API tokens." msgstr "" -#: templates/user/edit-profile.html:114 +#: templates/user/edit-profile.html:109 msgid "It also allows access to your account without Two-factor Authentication." msgstr "" -#: templates/user/edit-profile.html:115 +#: templates/user/edit-profile.html:110 msgid "You will not be able to view your API token after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:116 templates/user/edit-profile.html:210 +#: templates/user/edit-profile.html:111 templates/user/edit-profile.html:205 msgid "Generating..." msgstr "" -#: templates/user/edit-profile.html:130 templates/user/edit-profile.html:398 +#: templates/user/edit-profile.html:125 templates/user/edit-profile.html:355 msgid "Remove" msgstr "" -#: templates/user/edit-profile.html:140 +#: templates/user/edit-profile.html:135 msgid "Are you sure you want to remove your API token?" msgstr "" -#: templates/user/edit-profile.html:147 templates/user/edit-profile.html:370 -#: templates/user/edit-profile.html:402 +#: templates/user/edit-profile.html:142 templates/user/edit-profile.html:359 +#: templates/user/edit-profile.html:387 msgid "Generate" msgstr "" -#: templates/user/edit-profile.html:193 +#: templates/user/edit-profile.html:188 msgid "Are you sure you want to delete this security key?" msgstr "" -#: templates/user/edit-profile.html:207 +#: templates/user/edit-profile.html:202 msgid "Are you sure you want to generate or regenerate a new set of scratch codes?" msgstr "" -#: templates/user/edit-profile.html:208 +#: templates/user/edit-profile.html:203 msgid "This will invalidate any previous scratch codes you have." msgstr "" -#: templates/user/edit-profile.html:209 templates/user/edit-profile.html:379 +#: templates/user/edit-profile.html:204 templates/user/edit-profile.html:396 msgid "You will not be able to view your scratch codes after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:278 +#: templates/user/edit-profile.html:273 msgid "Self-description:" msgstr "" -#: templates/user/edit-profile.html:285 +#: templates/user/edit-profile.html:280 msgid "Select your closest major city" msgstr "" -#: templates/user/edit-profile.html:286 +#: templates/user/edit-profile.html:281 msgid "Time zone:" msgstr "" -#: templates/user/edit-profile.html:290 +#: templates/user/edit-profile.html:285 msgid "Language:" msgstr "" -#: templates/user/edit-profile.html:294 +#: templates/user/edit-profile.html:289 +msgid "Site theme:" +msgstr "" + +#: templates/user/edit-profile.html:293 msgid "Editor theme:" msgstr "" -#: templates/user/edit-profile.html:299 +#: templates/user/edit-profile.html:298 msgid "Math engine:" msgstr "" -#: templates/user/edit-profile.html:308 +#: templates/user/edit-profile.html:307 msgid "Affiliated organizations:" msgstr "" -#: templates/user/edit-profile.html:334 +#: templates/user/edit-profile.html:333 msgid "Change your avatar" msgstr "" -#: templates/user/edit-profile.html:339 +#: templates/user/edit-profile.html:338 msgid "Change your password" msgstr "" -#: templates/user/edit-profile.html:352 -msgid "Two-factor Authentication is enabled:" +#: templates/user/edit-profile.html:350 +msgid "API token:" msgstr "" -#: templates/user/edit-profile.html:360 -msgid "Refresh" +#: templates/user/edit-profile.html:356 templates/user/edit-profile.html:384 +msgid "Hidden" msgstr "" -#: templates/user/edit-profile.html:363 -msgid "Scratch codes:" +#: templates/user/edit-profile.html:369 +msgid "Two-factor authentication is enabled:" msgstr "" -#: templates/user/edit-profile.html:367 templates/user/edit-profile.html:399 -msgid "Hidden" +#: templates/user/edit-profile.html:377 +msgid "Refresh" msgstr "" -#: templates/user/edit-profile.html:377 -msgid "If you ever need more scratch codes, you can regenerate them here." +#: templates/user/edit-profile.html:380 +msgid "Scratch codes:" msgstr "" -#: templates/user/edit-profile.html:385 -msgid "Two-factor Authentication is disabled:" +#: templates/user/edit-profile.html:394 +msgid "If you ever need more scratch codes, you can regenerate them here." msgstr "" -#: templates/user/edit-profile.html:393 -msgid "API token:" +#: templates/user/edit-profile.html:402 +msgid "Two-factor Authentication is disabled:" msgstr "" #: templates/user/edit-profile.html:410 diff --git a/locale/de/LC_MESSAGES/djangojs.po b/locale/de/LC_MESSAGES/djangojs.po index 47a3764a81..b4d4c6eebc 100644 --- a/locale/de/LC_MESSAGES/djangojs.po +++ b/locale/de/LC_MESSAGES/djangojs.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-20 23:43+0000\n" -"PO-Revision-Date: 2022-12-21 00:43\n" +"POT-Creation-Date: 2023-01-23 05:23+0000\n" +"PO-Revision-Date: 2023-01-24 00:51\n" "Last-Translator: \n" "Language-Team: German\n" "Language: de_DE\n" @@ -17,14 +17,14 @@ msgstr "" "X-Crowdin-File: djangojs.po\n" "X-Crowdin-File-ID: 12\n" -#: resources/common.js:195 +#: resources/common.js:194 msgctxt "time format with day" msgid "%d day %h:%m:%s" msgid_plural "%d days %h:%m:%s" msgstr[0] "" msgstr[1] "" -#: resources/common.js:198 +#: resources/common.js:197 msgctxt "time format without day" msgid "%h:%m:%s" msgstr "" diff --git a/locale/el/LC_MESSAGES/django.po b/locale/el/LC_MESSAGES/django.po index be4d314149..73e01e736c 100644 --- a/locale/el/LC_MESSAGES/django.po +++ b/locale/el/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-20 23:04+0000\n" -"PO-Revision-Date: 2023-01-22 00:52\n" +"POT-Creation-Date: 2023-02-17 22:33+0000\n" +"PO-Revision-Date: 2023-02-18 00:49\n" "Last-Translator: \n" "Language-Team: Greek\n" "Language: el_GR\n" @@ -17,91 +17,91 @@ msgstr "" "X-Crowdin-File: django.po\n" "X-Crowdin-File-ID: 10\n" -#: dmoj/settings.py:380 +#: dmoj/settings.py:392 msgid "Catalan" msgstr "Καταλανικά" -#: dmoj/settings.py:381 +#: dmoj/settings.py:393 msgid "German" msgstr "Γερμανικά" -#: dmoj/settings.py:382 +#: dmoj/settings.py:394 msgid "Greek" msgstr "Ελληνικά" -#: dmoj/settings.py:383 +#: dmoj/settings.py:395 msgid "English" msgstr "Αγγλικά" -#: dmoj/settings.py:384 +#: dmoj/settings.py:396 msgid "Spanish" msgstr "Ισπανικά" -#: dmoj/settings.py:385 +#: dmoj/settings.py:397 msgid "French" msgstr "Γαλλικά" -#: dmoj/settings.py:386 +#: dmoj/settings.py:398 msgid "Croatian" msgstr "Κροάτικα" -#: dmoj/settings.py:387 +#: dmoj/settings.py:399 msgid "Hungarian" msgstr "Ουγγρικά" -#: dmoj/settings.py:388 +#: dmoj/settings.py:400 msgid "Japanese" msgstr "Ιαπωνικά" -#: dmoj/settings.py:389 +#: dmoj/settings.py:401 msgid "Korean" msgstr "Κορεατικά" -#: dmoj/settings.py:390 +#: dmoj/settings.py:402 msgid "Brazilian Portuguese" msgstr "Πορτογαλικά Βραζιλίας" -#: dmoj/settings.py:391 +#: dmoj/settings.py:403 msgid "Romanian" msgstr "Ρουμανικά" -#: dmoj/settings.py:392 +#: dmoj/settings.py:404 msgid "Russian" msgstr "Ρωσικά" -#: dmoj/settings.py:393 +#: dmoj/settings.py:405 msgid "Serbian (Latin)" msgstr "Σερβικά (Λατινικά)" -#: dmoj/settings.py:394 +#: dmoj/settings.py:406 msgid "Turkish" msgstr "Τουρκικά" -#: dmoj/settings.py:395 +#: dmoj/settings.py:407 msgid "Vietnamese" msgstr "Βιετναμέζικα" -#: dmoj/settings.py:396 +#: dmoj/settings.py:408 msgid "Simplified Chinese" msgstr "Απλοποιημένα Κινέζικα" -#: dmoj/settings.py:397 +#: dmoj/settings.py:409 msgid "Traditional Chinese" msgstr "Παραδοσιακά Κινέζικα" -#: dmoj/urls.py:32 +#: dmoj/urls.py:31 msgid "Activation Successful!" msgstr "Επιτυχής Ενεργοποίηση!" -#: dmoj/urls.py:40 +#: dmoj/urls.py:39 msgid "Registration Completed" msgstr "Η Εγγραφή Ολοκληρώθηκε" -#: dmoj/urls.py:44 +#: dmoj/urls.py:43 msgid "Registration Not Allowed" msgstr "Δεν Επιτρέπεται Εγγραφή" -#: dmoj/urls.py:93 templates/base.html:183 +#: dmoj/urls.py:92 templates/base.html:193 msgid "Home" msgstr "Αρχική" @@ -140,8 +140,8 @@ msgid "Included contests" msgstr "Συμπεριλαμβανόμενοι διαγωνισμοί" #: judge/admin/contest.py:65 templates/contest/contest.html:195 -#: templates/contest/moss.html:41 templates/problem/list.html:197 -#: templates/problem/list.html:213 templates/user/user-problems.html:58 +#: templates/contest/moss.html:41 templates/problem/list.html:188 +#: templates/problem/list.html:204 templates/user/user-problems.html:58 #: templates/user/user-problems.html:102 msgid "Problem" msgstr "Πρόβλημα" @@ -152,7 +152,7 @@ msgstr "Πρόβλημα" msgid "Problems" msgstr "Προβλήματα" -#: judge/admin/contest.py:76 judge/admin/submission.py:249 +#: judge/admin/contest.py:76 judge/admin/submission.py:250 #: templates/admin/judge/submission/change_form.html:14 #: templates/admin/judge/submission/change_form.html:17 #: templates/submission/source.html:34 templates/submission/status.html:89 @@ -231,29 +231,29 @@ msgstr[1] "%d διαγωνισμοί ξεκλειδώθηκαν επιτυχώς msgid "Unlock contest submissions" msgstr "Ξεκλείδωμα υποβολής διαγωνισμών" -#: judge/admin/contest.py:280 judge/admin/submission.py:175 +#: judge/admin/contest.py:280 judge/admin/submission.py:176 #, python-format msgid "%d submission was successfully scheduled for rejudging." msgid_plural "%d submissions were successfully scheduled for rejudging." msgstr[0] "%d υποβολή προγραμματίστηκε επιτυχώς για επανεξέταση." msgstr[1] "%d υποβολές προγραμματίστηκαν επιτυχώς για επανεξέταση." -#: judge/admin/contest.py:356 +#: judge/admin/contest.py:358 #, python-format msgid "%d participation recalculated." msgid_plural "%d participations recalculated." msgstr[0] "%d συμμετοχή επανυπολογίστηκε." msgstr[1] "%d συμμετοχές επανυπολογίστηκαν." -#: judge/admin/contest.py:359 +#: judge/admin/contest.py:361 msgid "Recalculate results" msgstr "Επανυπολογισμός αποτελεσμάτων" -#: judge/admin/contest.py:363 judge/admin/organization.py:113 +#: judge/admin/contest.py:365 judge/admin/organization.py:113 msgid "username" msgstr "όνομα χρήστη" -#: judge/admin/contest.py:368 templates/base.html:249 +#: judge/admin/contest.py:370 templates/base.html:259 msgid "virtual" msgstr "εικονικό" @@ -266,8 +266,8 @@ msgid "Summary" msgstr "Περίληψη" #: judge/admin/interface.py:124 judge/models/contest.py:491 -#: judge/models/contest.py:623 judge/models/profile.py:331 -#: judge/models/profile.py:362 judge/models/submission.py:67 +#: judge/models/contest.py:623 judge/models/profile.py:347 +#: judge/models/profile.py:378 judge/models/submission.py:67 #: judge/models/ticket.py:32 msgid "user" msgstr "χρήστης" @@ -298,8 +298,8 @@ msgid "Taxonomy" msgstr "Ταξινομία" #: judge/admin/problem.py:133 templates/contest/contest.html:196 -#: templates/problem/data.html:380 templates/problem/list.html:202 -#: templates/problem/list.html:224 templates/user/base-users-table.html:10 +#: templates/problem/data.html:381 templates/problem/list.html:193 +#: templates/problem/list.html:215 templates/user/base-users-table.html:11 #: templates/user/user-problems.html:60 msgid "Points" msgstr "Πόντοι" @@ -308,9 +308,9 @@ msgstr "Πόντοι" msgid "Limits" msgstr "Όρια" -#: judge/admin/problem.py:135 judge/admin/submission.py:243 +#: judge/admin/problem.py:135 judge/admin/submission.py:244 #: templates/problem/submission-diff.html:65 templates/stats/tabs.html:4 -#: templates/submission/list.html:317 +#: templates/submission/list.html:319 msgid "Language" msgstr "Γλώσσα" @@ -367,19 +367,19 @@ msgstr "πρόβλημα" msgid "timezone" msgstr "ζώνη ώρας" -#: judge/admin/profile.py:98 judge/admin/submission.py:222 +#: judge/admin/profile.py:98 judge/admin/submission.py:223 #: templates/organization/requests/log.html:9 #: templates/organization/requests/pending.html:12 -#: templates/ticket/list.html:201 +#: templates/ticket/list.html:202 msgid "User" msgstr "Χρήστης" -#: judge/admin/profile.py:103 templates/registration/registration_form.html:149 +#: judge/admin/profile.py:103 templates/registration/registration_form.html:145 msgid "Email" msgstr "Email" #: judge/admin/profile.py:108 judge/views/register.py:28 -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "Timezone" msgstr "Ζώνη ώρας" @@ -398,26 +398,26 @@ msgstr[1] "%d χρήστες επανυπολογίζουν τη βαθμολο msgid "Recalculate scores" msgstr "Επανυπολογισμός βαθμολογίας" -#: judge/admin/runtime.py:50 templates/user/edit-profile.html:124 -#: templates/user/edit-profile.html:246 templates/user/edit-profile.html:366 -#: templates/user/edit-profile.html:396 +#: judge/admin/runtime.py:52 templates/user/edit-profile.html:119 +#: templates/user/edit-profile.html:241 templates/user/edit-profile.html:353 +#: templates/user/edit-profile.html:383 msgid "Regenerate" msgstr "Αναπαραγωγή" -#: judge/admin/runtime.py:64 +#: judge/admin/runtime.py:66 msgid "Description" msgstr "Περιγραφή" -#: judge/admin/runtime.py:65 +#: judge/admin/runtime.py:67 msgid "Information" msgstr "Πληροφορίες" -#: judge/admin/runtime.py:66 +#: judge/admin/runtime.py:68 msgid "Capabilities" msgstr "Δυνατότητες" #: judge/admin/submission.py:24 judge/admin/submission.py:43 -#: judge/admin/submission.py:232 +#: judge/admin/submission.py:233 msgid "None" msgstr "Κανένα" @@ -449,57 +449,57 @@ msgctxt "contest problem" msgid "%(problem)s in %(contest)s" msgstr "%(problem)s σε %(contest)s" -#: judge/admin/submission.py:160 judge/admin/submission.py:182 +#: judge/admin/submission.py:161 judge/admin/submission.py:183 msgid "You do not have the permission to rejudge submissions." msgstr "Δεν έχετε την άδεια να επανεξετάσετε υποβολές." -#: judge/admin/submission.py:166 +#: judge/admin/submission.py:167 msgid "You do not have the permission to rejudge THAT many submissions." msgstr "Δεν έχετε την άδεια να επανεξετάσετε ΤΟΣΕΣ πολλές υποβολές." -#: judge/admin/submission.py:178 +#: judge/admin/submission.py:179 msgid "Rejudge the selected submissions" msgstr "Επανεξέταση των επιλεγμένων υποβολών" -#: judge/admin/submission.py:204 judge/views/problem_manage.py:129 +#: judge/admin/submission.py:205 judge/views/problem_manage.py:129 #, python-format msgid "%d submission was successfully rescored." msgid_plural "%d submissions were successfully rescored." msgstr[0] "%d υποβολή αναβαθμολογήθηκε επιτυχώς." msgstr[1] "%d υποβολές αναβαθμολογήθηκαν επιτυχώς." -#: judge/admin/submission.py:207 +#: judge/admin/submission.py:208 msgid "Rescore the selected submissions" msgstr "Αναβαθμολόγηση των επιλεγμένων υποβολών" -#: judge/admin/submission.py:211 +#: judge/admin/submission.py:212 msgid "Problem code" msgstr "Κωδικός προβλήματος" -#: judge/admin/submission.py:216 +#: judge/admin/submission.py:217 msgid "Problem name" msgstr "Όνομα προβλήματος" -#: judge/admin/submission.py:226 templates/organization/requests/log.html:10 +#: judge/admin/submission.py:227 templates/organization/requests/log.html:10 #: templates/organization/requests/pending.html:13 msgid "Time" msgstr "Ώρα" -#: judge/admin/submission.py:234 +#: judge/admin/submission.py:235 #, python-format msgid "%d KB" msgstr "%d KB" -#: judge/admin/submission.py:236 +#: judge/admin/submission.py:237 #, python-format msgid "%.2f MB" msgstr "%.2f MB" -#: judge/admin/submission.py:238 +#: judge/admin/submission.py:239 msgid "Memory" msgstr "Μνήμη" -#: judge/admin/submission.py:247 +#: judge/admin/submission.py:248 msgid "Locked" msgstr "Κλειδωμένο" @@ -524,6 +524,7 @@ msgid "Comment body" msgstr "Σώμα σχολίου" #: judge/comments.py:47 judge/views/comment.py:40 judge/views/ticket.py:46 +#: judge/views/user.py:347 msgid "Your part is silent, little toad." msgstr "Το κομμάτι σου είναι σιωπηλό, μικρέ βάτραχε." @@ -631,7 +632,7 @@ msgstr "Μη έγκυρο διακριτικό ελέγχου ταυτότητα msgid "Scratch codes must be 16 Base32 characters." msgstr "Οι κωδικοί scratch πρέπει να είναι 16 χαρακτήρες βάσης32." -#: judge/forms.py:39 judge/forms.py:265 +#: judge/forms.py:39 judge/forms.py:266 msgid "Invalid scratch code." msgstr "Μη έγκυρος κωδικός scratch." @@ -654,83 +655,83 @@ msgid_plural "You may not be part of more than {count} public organizations." msgstr[0] "Δεν μπορείτε να είστε μέρος σε περισσότερους από {count} δημόσιου οργανισμού." msgstr[1] "Δεν μπορείτε να είστε μέλος σε περισσότερους από {count} δημόσιους οργανισμούς." -#: judge/forms.py:98 +#: judge/forms.py:99 msgid "Download comments?" msgstr "Λήψη σχολίων;" -#: judge/forms.py:99 +#: judge/forms.py:100 msgid "Download submissions?" msgstr "Λήψη υποβολών;" -#: judge/forms.py:100 +#: judge/forms.py:101 msgid "Filter by problem code glob:" msgstr "Φιλτράρισμα ανά glob κώδικα προγράμματος:" -#: judge/forms.py:104 +#: judge/forms.py:105 msgid "Leave empty to include all submissions" msgstr "Αφήστε κενό για να συμπεριλάβετε όλες τις υποβολές" -#: judge/forms.py:107 templates/problem/manage_submission.html:142 +#: judge/forms.py:108 templates/problem/manage_submission.html:144 msgid "Filter by result:" msgstr "Φιλτράρισμα κατά αποτέλεσμα:" -#: judge/forms.py:113 +#: judge/forms.py:114 msgid "Please select at least one thing to download." msgstr "Παρακαλώ επιλέξτε τουλάχιστον ένα πράγμα για λήψη." -#: judge/forms.py:139 +#: judge/forms.py:140 msgid "Any judge" msgstr "Οποιοσδήποτε κριτής" -#: judge/forms.py:160 judge/views/register.py:25 +#: judge/forms.py:161 judge/views/register.py:25 #: templates/problem/submission-diff.html:63 -#: templates/registration/registration_form.html:143 -#: templates/user/base-users-table.html:5 +#: templates/registration/registration_form.html:139 +#: templates/user/base-users-table.html:6 msgid "Username" msgstr "Όνομα Χρήστη" -#: judge/forms.py:161 templates/registration/registration_form.html:155 -#: templates/registration/registration_form.html:169 +#: judge/forms.py:162 templates/registration/registration_form.html:151 +#: templates/registration/registration_form.html:165 msgid "Password" msgstr "Κωδικόs πρόσβασης" -#: judge/forms.py:193 +#: judge/forms.py:194 msgid "Invalid code length." msgstr "Μη έγκυρο μήκος κωδικού." -#: judge/forms.py:224 +#: judge/forms.py:225 msgid "Invalid WebAuthn response." msgstr "Άκυρη WebAuthn απάντηση." -#: judge/forms.py:227 +#: judge/forms.py:228 msgid "No WebAuthn challenge issued." msgstr "Δεν υπάρχει πρόκληση WebAuthn." -#: judge/forms.py:233 +#: judge/forms.py:234 msgid "Invalid WebAuthn credential ID." msgstr "Μη έγκυρο αναγνωριστικό ID διαπιστευτηρίου WebAuthn." -#: judge/forms.py:263 +#: judge/forms.py:264 msgid "Invalid two-factor authentication token or scratch code." msgstr "Μη έγκυρο διακριτικό ελέγχου ταυτότητας δύο παραγόντων ή κωδικού scratch." -#: judge/forms.py:267 +#: judge/forms.py:268 msgid "Must specify either totp_token or webauthn_response." msgstr "Πρέπει να καθορίσετε είτε totp_token ή webauthn_response." -#: judge/forms.py:271 judge/models/problem.py:118 +#: judge/forms.py:272 judge/models/problem.py:118 msgid "Problem code must be ^[a-z0-9]+$" msgstr "Ο κωδικός προβλήματος πρέπει να είναι ^[a-z0-9]+$" -#: judge/forms.py:276 +#: judge/forms.py:277 msgid "Problem with code already exists." msgstr "Πρόβλημα με αυτόν τον κωδικό υπάρχει ήδη." -#: judge/forms.py:281 judge/models/contest.py:68 +#: judge/forms.py:282 judge/models/contest.py:68 msgid "Contest id must be ^[a-z0-9]+$" msgstr "Το αναγνωριστικό του διαγωνισμού πρέπει να είναι ^[a-z0-9]+$" -#: judge/forms.py:286 +#: judge/forms.py:287 msgid "Contest with key already exists." msgstr "Διαγωνισμός με αυτό το κλειδί υπάρχει ήδη." @@ -753,26 +754,42 @@ msgstr "στις {time}" msgid "Unrated" msgstr "Μη αξιολογημένο" -#: judge/models/choices.py:59 +#: judge/models/choices.py:24 +msgid "Follow site theme" +msgstr "" + +#: judge/models/choices.py:60 msgid "Leave as LaTeX" msgstr "Αφήστε ως LaTeX" -#: judge/models/choices.py:60 +#: judge/models/choices.py:61 msgid "SVG only" msgstr "SVG μόνο" -#: judge/models/choices.py:61 +#: judge/models/choices.py:62 msgid "MathML only" msgstr "MathML μόνο" -#: judge/models/choices.py:62 +#: judge/models/choices.py:63 msgid "MathJax with SVG fallback" msgstr "MathJax με SVG εναλλακτική" -#: judge/models/choices.py:63 +#: judge/models/choices.py:64 msgid "Detect best quality" msgstr "Ανίχνευση καλύτερης ποιότητας" +#: judge/models/choices.py:70 +msgid "Follow system default" +msgstr "" + +#: judge/models/choices.py:71 +msgid "Light" +msgstr "Φωτεινό" + +#: judge/models/choices.py:72 +msgid "Dark" +msgstr "Σκοτεινό" + #: judge/models/comment.py:25 msgid "Page code must be ^[pcs]:[a-z0-9]+$|^b:\\d+$" msgstr "Ο κωδικός σελίδας πρέπει να είναι ^[pcs]:[a-z0-9]+$|^b:\\d+$" @@ -1885,8 +1902,8 @@ msgid "Non-trailing spaces" msgstr "Χωρίς κενά στο τέλος" #: judge/models/problem_data.py:28 -msgid "Unordered" -msgstr "Μη ταξινομημένο" +msgid "Sorted" +msgstr "" #: judge/models/problem_data.py:29 msgid "Byte identical" @@ -2057,7 +2074,7 @@ msgid "Edit all organizations" msgstr "Επεξεργασία όλων των οργανισμών" #: judge/models/profile.py:98 judge/models/profile.py:103 -#: judge/models/profile.py:160 judge/models/profile.py:363 +#: judge/models/profile.py:161 judge/models/profile.py:379 msgid "organization" msgstr "οργανισμός" @@ -2098,7 +2115,7 @@ msgstr "μέλη" msgid "%(class)s in %(organization)s" msgstr "" -#: judge/models/profile.py:142 judge/models/profile.py:371 +#: judge/models/profile.py:142 judge/models/profile.py:387 msgid "class" msgstr "κατηγορία" @@ -2123,26 +2140,30 @@ msgid "Ace theme" msgstr "Ace θέμα" #: judge/models/profile.py:158 +msgid "site theme" +msgstr "" + +#: judge/models/profile.py:159 msgid "last access time" msgstr "τελευταία ώρα πρόσβασης" -#: judge/models/profile.py:159 +#: judge/models/profile.py:160 msgid "last IP" msgstr "τελευταία IP" -#: judge/models/profile.py:162 +#: judge/models/profile.py:163 msgid "display rank" msgstr "εμφάνιση βαθμίδας" -#: judge/models/profile.py:164 +#: judge/models/profile.py:165 msgid "Normal User" msgstr "Κανονικός Χρήστης" -#: judge/models/profile.py:165 +#: judge/models/profile.py:166 msgid "Problem Setter" msgstr "Δημιουργός Προβλημάτων" -#: judge/models/profile.py:166 templates/base.html:211 +#: judge/models/profile.py:167 templates/base.html:221 #: templates/comments/list.html:97 templates/contest/contest-list-tabs.html:25 #: templates/contest/ranking-table.html:51 #: templates/problem/problem-list-tabs.html:6 @@ -2152,200 +2173,200 @@ msgstr "Δημιουργός Προβλημάτων" msgid "Admin" msgstr "Διαχειριστής" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "comment mute" msgstr "σίγαση σχολίου" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "Some users are at their best when silent." msgstr "Μερικοί χρήστες είναι στα καλύτερά τους όταν είναι σιωπηλοί." -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "unlisted user" msgstr "μη καταχωρημένος χρήστης" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "User will not be ranked." msgstr "Ο χρήστης δεν θα βαθμονομηθεί." -#: judge/models/profile.py:172 +#: judge/models/profile.py:173 msgid "banned from voting on problem point values" msgstr "" -#: judge/models/profile.py:173 +#: judge/models/profile.py:174 msgid "User will not be able to vote on problems' point values." msgstr "" -#: judge/models/profile.py:177 +#: judge/models/profile.py:178 msgid "user script" msgstr "script χρήστη" -#: judge/models/profile.py:178 +#: judge/models/profile.py:179 msgid "User-defined JavaScript for site customization." msgstr "Καθορισμένη από το χρήστη JavaScript για εξατομίκευση ιστότοπου." -#: judge/models/profile.py:179 +#: judge/models/profile.py:180 msgid "current contest" msgstr "τρέχων διαγωνισμός" -#: judge/models/profile.py:181 +#: judge/models/profile.py:182 msgid "math engine" msgstr "μηχανή μαθηματικών" -#: judge/models/profile.py:183 +#: judge/models/profile.py:184 msgid "The rendering engine used to render math." msgstr "Η μηχανή απεικόνισης που χρησιμοποιείται για την απεικόνιση μαθηματικών." -#: judge/models/profile.py:184 +#: judge/models/profile.py:185 msgid "TOTP 2FA enabled" msgstr "TOTP 2FA ενεργοποιημένο" -#: judge/models/profile.py:185 +#: judge/models/profile.py:186 msgid "Check to enable TOTP-based two-factor authentication." msgstr "Τσεκάρετε για να ενεργοποιήσετε τον έλεγχο ταυτότητας δύο παραγόντων βάσει TOTP." -#: judge/models/profile.py:186 +#: judge/models/profile.py:187 msgid "WebAuthn 2FA enabled" msgstr "WebAuthn 2FA ενεργοποιημένο" -#: judge/models/profile.py:187 +#: judge/models/profile.py:188 msgid "Check to enable WebAuthn-based two-factor authentication." msgstr "Τσεκάρετε για να ενεργοποιήσετε τον έλεγχο ταυτότητας δύο παραγόντων βάσει WebAuthn." -#: judge/models/profile.py:188 +#: judge/models/profile.py:189 msgid "TOTP key" msgstr "TOTP κλειδί" -#: judge/models/profile.py:189 +#: judge/models/profile.py:190 msgid "32-character Base32-encoded key for TOTP." msgstr "32 χαρακτήρων βάσης32-κωδικοποιημένο κλειδί για TOTP." -#: judge/models/profile.py:191 +#: judge/models/profile.py:192 msgid "TOTP key must be empty or Base32." msgstr "Το κλειδί TOTP πρέπει να είναι άδειο ή βάσης32." -#: judge/models/profile.py:192 +#: judge/models/profile.py:193 msgid "scratch codes" msgstr "κωδικοί scratch" -#: judge/models/profile.py:193 +#: judge/models/profile.py:194 msgid "JSON array of 16-character Base32-encoded codes for scratch codes." msgstr "JSON πίνακας 16 χαρακτήρων βάσης32-κωδικοποιημένων κωδικών για scratch." -#: judge/models/profile.py:197 +#: judge/models/profile.py:198 msgid "Scratch codes must be empty or a JSON array of 16-character Base32 codes." msgstr "Οι κωδικοί scratch πρέπει να είναι κενοί ή πίνακας JSON κωδικών 16 χαρακτήρων βάσης32." -#: judge/models/profile.py:199 +#: judge/models/profile.py:200 msgid "last TOTP timecode" msgstr "τελευταίος κωδικός χρόνου TOTP" -#: judge/models/profile.py:200 +#: judge/models/profile.py:201 msgid "API token" msgstr "Διακριτικό API" -#: judge/models/profile.py:201 +#: judge/models/profile.py:202 msgid "64-character hex-encoded API access token." msgstr "Hex-κωδικοποιημένο διακριτικό πρόσβασης API 64 χαρακτήρων." -#: judge/models/profile.py:203 +#: judge/models/profile.py:204 msgid "API token must be None or hexadecimal" msgstr "Το διακριτικό API πρέπει να είναι Κανένα ή δεκαεξαδικό" -#: judge/models/profile.py:204 +#: judge/models/profile.py:205 msgid "internal notes" msgstr "εσωτερικές σημειώσεις" -#: judge/models/profile.py:205 +#: judge/models/profile.py:206 msgid "Notes for administrators regarding this user." msgstr "Σημειώσεις για διαχειριστές σχετικά με αυτόν τον χρήστη." -#: judge/models/profile.py:206 +#: judge/models/profile.py:207 msgid "last data download time" msgstr "ώρα τελευταίας λήψης δεδομένων" -#: judge/models/profile.py:207 +#: judge/models/profile.py:208 msgid "display name override" msgstr "παράκαμψη εμφάνιση ονόματος" -#: judge/models/profile.py:208 +#: judge/models/profile.py:209 msgid "Name displayed in place of username." msgstr "Εμφάνιση ονόματος στη θέση του ονόματος χρήστη." -#: judge/models/profile.py:323 +#: judge/models/profile.py:333 msgid "Shows in-progress development stuff" msgstr "Δείχνει πράγματα ανάπτυξης σε εξέλιξη" -#: judge/models/profile.py:324 +#: judge/models/profile.py:334 msgid "Edit TOTP settings" msgstr "Επεξεργασία ρυθμίσεων TOTP" -#: judge/models/profile.py:326 +#: judge/models/profile.py:336 msgid "user profile" msgstr "προφίλ χρήστη" -#: judge/models/profile.py:327 +#: judge/models/profile.py:337 msgid "user profiles" msgstr "προφίλ χρηστών" -#: judge/models/profile.py:333 +#: judge/models/profile.py:349 msgid "device name" msgstr "όνομα συσκευής" -#: judge/models/profile.py:334 +#: judge/models/profile.py:350 msgid "credential ID" msgstr "διαπιστευτήρια ID" -#: judge/models/profile.py:335 +#: judge/models/profile.py:351 msgid "public key" msgstr "δημόσιο κλειδί" -#: judge/models/profile.py:336 +#: judge/models/profile.py:352 msgid "sign counter" msgstr "μετρητής υπογραφής" -#: judge/models/profile.py:354 +#: judge/models/profile.py:370 #, python-format msgid "WebAuthn credential: %(name)s" msgstr "WebAuthn διαπιστευτήριο: %(name)s" -#: judge/models/profile.py:357 +#: judge/models/profile.py:373 msgid "WebAuthn credential" msgstr "WebAuthn διαπιστευτήριο" -#: judge/models/profile.py:358 +#: judge/models/profile.py:374 msgid "WebAuthn credentials" msgstr "WebAuthn διαπιστευτήρια" -#: judge/models/profile.py:365 +#: judge/models/profile.py:381 msgid "request time" msgstr "ώρα αιτήματος" -#: judge/models/profile.py:366 +#: judge/models/profile.py:382 msgid "state" msgstr "κατάσταση" -#: judge/models/profile.py:367 templates/organization/requests/tabs.html:4 +#: judge/models/profile.py:383 templates/organization/requests/tabs.html:4 msgid "Pending" msgstr "Εκκρεμεί" -#: judge/models/profile.py:368 templates/organization/requests/tabs.html:10 +#: judge/models/profile.py:384 templates/organization/requests/tabs.html:10 msgid "Approved" msgstr "Εγκρίθηκε" -#: judge/models/profile.py:369 templates/organization/requests/tabs.html:13 +#: judge/models/profile.py:385 templates/organization/requests/tabs.html:13 msgid "Rejected" msgstr "Απορρίφθηκε" -#: judge/models/profile.py:372 +#: judge/models/profile.py:388 msgid "reason" msgstr "αιτία" -#: judge/models/profile.py:381 +#: judge/models/profile.py:397 msgid "organization join request" msgstr "αίτηση συμμετοχής οργανισμού" -#: judge/models/profile.py:382 +#: judge/models/profile.py:398 msgid "organization join requests" msgstr "αιτήσεις συμμετοχής οργανισμού" @@ -2588,15 +2609,15 @@ msgstr "Εσωτερικό Σφάλμα (εκτίμηση σφάλματος δ msgid "submission time" msgstr "ώρα υποβολής" -#: judge/models/submission.py:70 judge/models/submission.py:255 +#: judge/models/submission.py:70 judge/models/submission.py:265 msgid "execution time" msgstr "χρόνος εκτέλεσης" -#: judge/models/submission.py:71 judge/models/submission.py:256 +#: judge/models/submission.py:71 judge/models/submission.py:266 msgid "memory usage" msgstr "χρήση μνήμης" -#: judge/models/submission.py:72 judge/models/submission.py:257 +#: judge/models/submission.py:72 judge/models/submission.py:267 msgid "points granted" msgstr "χορηγηθέντες πόντοι" @@ -2685,60 +2706,60 @@ msgstr "Αλλαγή κατάστασης κλειδώματος υποβολή msgid "submissions" msgstr "υποβολές" -#: judge/models/submission.py:235 judge/models/submission.py:251 +#: judge/models/submission.py:245 judge/models/submission.py:261 msgid "associated submission" msgstr "συσχετιζόμενη υποβολή" -#: judge/models/submission.py:237 +#: judge/models/submission.py:247 msgid "source code" msgstr "πηγαίος κώδικας" -#: judge/models/submission.py:240 +#: judge/models/submission.py:250 #, python-format msgid "Source of %(submission)s" msgstr "" -#: judge/models/submission.py:243 +#: judge/models/submission.py:253 msgid "submission source" msgstr "πηγή υποβολής" -#: judge/models/submission.py:244 +#: judge/models/submission.py:254 msgid "submission sources" msgstr "πηγές υποβολής" -#: judge/models/submission.py:253 +#: judge/models/submission.py:263 msgid "test case ID" msgstr "ID δοκιμαστικής περίπτωσης" -#: judge/models/submission.py:254 +#: judge/models/submission.py:264 msgid "status flag" msgstr "σημαία κατάστασης" -#: judge/models/submission.py:258 +#: judge/models/submission.py:268 msgid "points possible" msgstr "δυνατοί πόντοι" -#: judge/models/submission.py:259 +#: judge/models/submission.py:269 msgid "batch number" msgstr "αριθμός δεσμίδας" -#: judge/models/submission.py:260 +#: judge/models/submission.py:270 msgid "judging feedback" msgstr "σχόλια κριτή" -#: judge/models/submission.py:261 +#: judge/models/submission.py:271 msgid "extended judging feedback" msgstr "εκτενή σχόλια κριτή" -#: judge/models/submission.py:262 +#: judge/models/submission.py:272 msgid "program output" msgstr "έξοδος προγράμματος" -#: judge/models/submission.py:276 +#: judge/models/submission.py:286 msgid "submission test case" msgstr "δοκιμαστική περίπτωση υποβολής" -#: judge/models/submission.py:277 +#: judge/models/submission.py:287 msgid "submission test cases" msgstr "δοκιμαστικές περιπτώσεις υποβολής" @@ -2956,7 +2977,7 @@ msgctxt "hours and minutes" msgid "%h:%m" msgstr "%h:%m" -#: judge/views/blog.py:36 +#: judge/views/blog.py:37 #, python-format msgid "Page %d of Posts" msgstr "Σελίδα %d Αναρτήσεων" @@ -3445,11 +3466,11 @@ msgstr "Ο πάροχος email σας δεν επιτρέπεται λόγω ι msgid "Register" msgstr "Εγγραφή" -#: judge/views/register.py:103 +#: judge/views/register.py:101 msgid "Activation Key Invalid" msgstr "Μη Έγκυρο Κλειδί Ενεργοποίησης" -#: judge/views/register.py:114 +#: judge/views/register.py:112 msgid "Authentication failure" msgstr "Αποτυχία ελέγχου ταυτότητας" @@ -3461,7 +3482,7 @@ msgstr "" msgid "Language statistics" msgstr "Στατιστικά γλωσσών" -#: judge/views/status.py:23 templates/submission/list.html:308 +#: judge/views/status.py:23 templates/submission/list.html:310 msgid "Status" msgstr "Κατάσταση" @@ -3644,41 +3665,45 @@ msgstr "j M Y, G:i" msgid "Preparing your data..." msgstr "Προετοιμασία των δεδομένων σας..." -#: judge/views/user.py:298 templates/user/edit-profile.html:345 +#: judge/views/user.py:298 templates/user/edit-profile.html:344 msgid "Download your data" msgstr "Λήψη των δεδομένων σας" +#: judge/views/user.py:347 +msgid "Can't edit profile" +msgstr "" + #: judge/views/user.py:354 msgid "Updated on site" msgstr "Ενημερώθηκε στην ιστοσελίδα" -#: judge/views/user.py:387 templates/admin/auth/user/change_form.html:14 -#: templates/admin/auth/user/change_form.html:17 templates/base.html:213 +#: judge/views/user.py:386 templates/admin/auth/user/change_form.html:14 +#: templates/admin/auth/user/change_form.html:17 templates/base.html:223 #: templates/user/user-tabs.html:16 msgid "Edit profile" msgstr "Επεξεργασία προφίλ" -#: judge/views/user.py:402 +#: judge/views/user.py:400 msgid "Generated API token for user" msgstr "Παρήχθη διακριτικό API για το χρήστη" -#: judge/views/user.py:414 +#: judge/views/user.py:412 msgid "Removed API token for user" msgstr "Αφαιρέθηκε διακριτικό API για το χρήστη" -#: judge/views/user.py:424 +#: judge/views/user.py:422 msgid "Generated scratch codes for user" msgstr "Παρήχθη κωδικός scratch για το χρήστη" -#: judge/views/user.py:430 templates/user/user-list-tabs.html:4 +#: judge/views/user.py:428 templates/user/user-list-tabs.html:4 msgid "Leaderboard" msgstr "Πίνακας Κατάταξης" -#: judge/views/user.py:491 +#: judge/views/user.py:489 msgid "You have been successfully logged out." msgstr "Αποσυνδεθήκατε επιτυχώς." -#: judge/views/user.py:508 +#: judge/views/user.py:506 msgid "You have sent too many password reset requests. Please try again later." msgstr "" @@ -3707,13 +3732,13 @@ msgstr "Τερματισμός" #: templates/admin/judge/judge/change_form.html:27 #: templates/admin/judge/judge/change_form.html:30 -#: templates/user/edit-profile.html:355 templates/user/edit-profile.html:358 +#: templates/user/edit-profile.html:372 templates/user/edit-profile.html:375 msgid "Disable" msgstr "Απενεργοποίηση" #: templates/admin/judge/judge/change_form.html:33 #: templates/admin/judge/judge/change_form.html:36 -#: templates/user/edit-profile.html:386 +#: templates/user/edit-profile.html:403 msgid "Enable" msgstr "Ενεργοποίηση" @@ -3733,48 +3758,48 @@ msgstr "" msgid "Edit user" msgstr "Επεξεργασία χρήστη" -#: templates/base.html:206 +#: templates/base.html:216 #, python-format msgid "Hello, %(username)s." msgstr "Γεια σας, %(username)s." -#: templates/base.html:215 +#: templates/base.html:225 msgid "Stop impersonating" msgstr "Σταματήστε την προσωποποίηση" -#: templates/base.html:220 +#: templates/base.html:230 msgid "Log out" msgstr "Αποσύνδεση" -#: templates/base.html:229 +#: templates/base.html:239 #: templates/registration/password_reset_complete.html:4 msgid "Log in" msgstr "Σύνδεση" -#: templates/base.html:230 templates/registration/registration_form.html:181 +#: templates/base.html:240 templates/registration/registration_form.html:177 msgid "or" msgstr "ή" -#: templates/base.html:231 +#: templates/base.html:241 msgid "Sign up" msgstr "Εγγραφή" -#: templates/base.html:243 +#: templates/base.html:253 msgid "spectating" msgstr "παρακολουθεί" -#: templates/base.html:256 +#: templates/base.html:266 msgid "This site works best with JavaScript enabled." msgstr "Αυτός ο ιστότοπος λειτουργεί καλύτερα με ενεργοποιημένη JavaScript." -#: templates/base.html:283 +#: templates/base.html:293 msgid "proudly powered by **DMOJ**" msgstr "παρέχεται περήφανα από **DMOJ**" #: templates/blog/content.html:13 templates/comments/list.html:89 #: templates/comments/list.html:105 templates/contest/contest-tabs.html:23 #: templates/contest/tag-title.html:9 templates/flatpages/admin_link.html:3 -#: templates/license.html:10 templates/problem/data.html:423 +#: templates/license.html:10 templates/problem/data.html:424 #: templates/problem/editorial.html:14 msgid "Edit" msgstr "Επεξεργασία" @@ -3975,15 +4000,15 @@ msgstr "Βαθμολογία" msgid "No votes" msgstr "Δεν υπάρχουν ψήφοι" -#: templates/common-content.html:32 templates/user/edit-profile.html:219 +#: templates/common-content.html:32 templates/user/edit-profile.html:214 msgid "Click to copy" msgstr "" -#: templates/common-content.html:33 templates/user/edit-profile.html:220 +#: templates/common-content.html:33 templates/user/edit-profile.html:215 msgid "Copy" msgstr "" -#: templates/common-content.html:44 templates/user/edit-profile.html:231 +#: templates/common-content.html:44 templates/user/edit-profile.html:226 msgid "Copied!" msgstr "" @@ -4064,7 +4089,7 @@ msgstr "Ημερολόγιο" msgid "Info" msgstr "Πληροφορίες" -#: templates/contest/contest-tabs.html:6 templates/submission/list.html:334 +#: templates/contest/contest-tabs.html:6 templates/submission/list.html:336 msgid "Statistics" msgstr "Στατιστικά" @@ -4279,7 +4304,7 @@ msgstr "Ποσοστό AC" #: templates/contest/contest.html:198 templates/contest/list.html:152 #: templates/contest/list.html:194 templates/contest/list.html:271 -#: templates/problem/list.html:203 templates/problem/list.html:235 +#: templates/problem/list.html:194 templates/problem/list.html:226 msgid "Users" msgstr "Χρήστες" @@ -4287,7 +4312,7 @@ msgstr "Χρήστες" msgid "Editorials" msgstr "Εξηγήσεις" -#: templates/contest/contest.html:226 templates/problem/list.html:229 +#: templates/contest/contest.html:226 templates/problem/list.html:220 msgid "Editorial" msgstr "Εξήγηση" @@ -4452,19 +4477,19 @@ msgstr "Αναίρεση Αποκλεισμού" msgid "Disqualify" msgstr "Αποκλεισμός" -#: templates/contest/ranking.html:151 +#: templates/contest/ranking.html:46 msgid "Are you sure you want to disqualify this participation?" msgstr "Είστε βέβαιοι ότι θέλετε να αποκλείσετε αυτή τη συμμετοχή;" -#: templates/contest/ranking.html:156 +#: templates/contest/ranking.html:51 msgid "Are you sure you want to un-disqualify this participation?" msgstr "Είστε βέβαιοι ότι θέλετε να αναιρέσεται τον αποκλεισμό αυτής της συμμετοχής;" -#: templates/contest/ranking.html:228 +#: templates/contest/ranking.html:124 msgid "View user participation" msgstr "Προβολή συμμετοχής χρήστη" -#: templates/contest/ranking.html:232 +#: templates/contest/ranking.html:128 msgid "Show organizations" msgstr "Εμφάνιση οργανισμών" @@ -4651,7 +4676,7 @@ msgid "There are no requests to approve." msgstr "Δεν υπάρχουν αιτήσεις για έγκριση." #: templates/organization/requests/pending.html:17 -#: templates/problem/data.html:387 +#: templates/problem/data.html:388 msgid "Delete?" msgstr "Διαγραφή;" @@ -4687,59 +4712,59 @@ msgstr "Ενημέρωση προεπισκόπησης" msgid "Enter a new code for the cloned problem:" msgstr "Εισάγετε έναν νέο κωδικό για το κλωνοποιημένο πρόβλημα:" -#: templates/problem/data.html:70 +#: templates/problem/data.html:71 msgid "precision (decimal digits)" msgstr "" -#: templates/problem/data.html:339 +#: templates/problem/data.html:340 msgid "View YAML" msgstr "Προβολή YAML" -#: templates/problem/data.html:355 +#: templates/problem/data.html:356 msgid "Show columns:" msgstr "Εμφάνιση στηλών:" -#: templates/problem/data.html:358 templates/problem/data.html:382 +#: templates/problem/data.html:359 templates/problem/data.html:383 msgid "Output prefix" msgstr "Πρόθεμα εξόδου" -#: templates/problem/data.html:362 templates/problem/data.html:383 +#: templates/problem/data.html:363 templates/problem/data.html:384 msgid "Output limit" msgstr "Όριο εξόδου" -#: templates/problem/data.html:366 templates/problem/data.html:384 +#: templates/problem/data.html:367 templates/problem/data.html:385 msgid "Checker" msgstr "Ελεγκτής" -#: templates/problem/data.html:370 templates/problem/data.html:385 +#: templates/problem/data.html:371 templates/problem/data.html:386 msgid "Generator args" msgstr "Ορίσματα γεννήτριας" -#: templates/problem/data.html:377 +#: templates/problem/data.html:378 msgid "Type" msgstr "Τύπος" -#: templates/problem/data.html:378 +#: templates/problem/data.html:379 msgid "Input file" msgstr "Αρχείο εισόδου" -#: templates/problem/data.html:379 +#: templates/problem/data.html:380 msgid "Output file" msgstr "Αρχείο εξόδου" -#: templates/problem/data.html:381 +#: templates/problem/data.html:382 msgid "Pretest?" msgstr "Προδοκιμή;" -#: templates/problem/data.html:433 templates/problem/submit.html:256 +#: templates/problem/data.html:434 templates/problem/submit.html:190 msgid "Submit!" msgstr "Υποβολή!" -#: templates/problem/data.html:434 +#: templates/problem/data.html:435 msgid "Add new case" msgstr "Προσθήκη νέας περίπτωσης" -#: templates/problem/data.html:436 +#: templates/problem/data.html:437 msgid "Save" msgstr "Αποθήκευση" @@ -4757,100 +4782,100 @@ msgid_plural "Authors:" msgstr[0] "Συγγραφέας:" msgstr[1] "Συγγραφείς:" -#: templates/problem/list.html:58 +#: templates/problem/list.html:49 msgid "Filter by type..." msgstr "Φιλτράρισμα ανά τύπο..." -#: templates/problem/list.html:176 +#: templates/problem/list.html:167 msgid "Hot problems" msgstr "Χοτ προβλήματα" -#: templates/problem/list.html:198 templates/problem/list.html:216 +#: templates/problem/list.html:189 templates/problem/list.html:207 #: templates/problem/search-form.html:35 templates/user/user-problems.html:59 msgid "Category" msgstr "Κατηγορία" -#: templates/problem/list.html:200 templates/problem/list.html:220 +#: templates/problem/list.html:191 templates/problem/list.html:211 msgid "Types" msgstr "Τύποι" -#: templates/problem/list.html:227 +#: templates/problem/list.html:218 #, python-format msgid "AC %%" msgstr "AC %%" -#: templates/problem/manage_submission.html:55 +#: templates/problem/manage_submission.html:56 msgid "Leave empty to not filter by language" msgstr "Αφήστε κενό για να μην φιλτράρετε ανά γλώσσα" -#: templates/problem/manage_submission.html:60 +#: templates/problem/manage_submission.html:62 msgid "Leave empty to not filter by result" msgstr "Αφήστε κενό για να μην φιλτράρετε ανά αποτέλεσμα" -#: templates/problem/manage_submission.html:79 +#: templates/problem/manage_submission.html:81 msgid "Need valid values for both start and end IDs." msgstr "Χρειάζονται έγκυρες τιμές τόσο για αναγνωριστικά (ID) έναρξης όσο και τέλους." -#: templates/problem/manage_submission.html:82 +#: templates/problem/manage_submission.html:84 msgid "End ID must be after start ID." msgstr "Το ID λήξης πρέπει να βρίσκεται μετά το ID έναρξης." -#: templates/problem/manage_submission.html:90 +#: templates/problem/manage_submission.html:92 #, python-brace-format msgid "You are about to rejudge {count} submissions. Are you sure you want to do this?" msgstr "Πρόκειται να κρίνετε εκ νέου {count} υποβολές. Είστε σίγουροι ότι θέλετε να το κάνετε;" -#: templates/problem/manage_submission.html:96 +#: templates/problem/manage_submission.html:98 msgid "You are about to rejudge a few submissions. Are you sure you want to do this?" msgstr "Πρόκειται να κρίνετε εκ νέου μερικές υποβολές. Είστε σίγουροι ότι θέλετε να το κάνετε;" -#: templates/problem/manage_submission.html:115 +#: templates/problem/manage_submission.html:117 msgid "Rejudge Submissions" msgstr "Κρίση εκ νέου Υποβολών" -#: templates/problem/manage_submission.html:120 +#: templates/problem/manage_submission.html:122 msgid "Filter by ID:" msgstr "Φιλτράρισμα ανά ID:" -#: templates/problem/manage_submission.html:123 +#: templates/problem/manage_submission.html:125 msgid "Starting ID:" msgstr "ID Έναρξης:" -#: templates/problem/manage_submission.html:127 +#: templates/problem/manage_submission.html:129 msgid "Ending ID:" msgstr "ID Λήξης:" -#: templates/problem/manage_submission.html:131 +#: templates/problem/manage_submission.html:133 msgid "This range includes both endpoints." msgstr "Αυτό το εύρος περιλαμβάνει και τα δύο τελικά σημεία." -#: templates/problem/manage_submission.html:134 +#: templates/problem/manage_submission.html:136 msgid "Filter by language:" msgstr "Φιλτράρισμα ανά γλώσσα:" -#: templates/problem/manage_submission.html:150 +#: templates/problem/manage_submission.html:152 msgid "Rejudge selected submissions" msgstr "Κρίση εκ νέου επιλεγμένων υποβολών" -#: templates/problem/manage_submission.html:157 +#: templates/problem/manage_submission.html:159 msgid "Rescore Everything" msgstr "Αναβαθμολόγηση Όλων" -#: templates/problem/manage_submission.html:158 +#: templates/problem/manage_submission.html:160 #, python-format msgid "This will rescore %(count)s submission." msgid_plural "This will rescore %(count)s submissions." msgstr[0] "Αυτό θα αναβαθμολογήσει %(count)s υποβολή." msgstr[1] "Αυτό θα αναβαθμολογήσει %(count)s υποβολές." -#: templates/problem/manage_submission.html:166 +#: templates/problem/manage_submission.html:168 #, python-format msgid "Are you sure you want to rescore %(count)s submission?" msgid_plural "Are you sure you want to rescore %(count)s submissions?" msgstr[0] "Είστε βέβαιοι ότι θέλετε να αναβαθμολογήσετε %(count)s υποβολή;" msgstr[1] "Είστε βέβαιοι ότι θέλετε να αναβαθμολογήσετε %(count)s υποβολές;" -#: templates/problem/manage_submission.html:171 +#: templates/problem/manage_submission.html:173 msgid "Rescore all submissions" msgstr "Αναβαθμολόγηση όλων των υποβολών" @@ -5013,8 +5038,8 @@ msgstr "Τύποι προβλήματος" msgid "Point range" msgstr "Εύρος πόντων" -#: templates/problem/search-form.html:68 templates/submission/list.html:326 -#: templates/ticket/list.html:188 +#: templates/problem/search-form.html:68 templates/submission/list.html:328 +#: templates/ticket/list.html:189 msgid "Go" msgstr "Μετάβαση" @@ -5023,7 +5048,7 @@ msgid "Random" msgstr "Τυχαίο" #: templates/problem/submission-diff.html:62 -#: templates/status/language-list.html:34 templates/ticket/list.html:199 +#: templates/status/language-list.html:34 templates/ticket/list.html:200 msgid "ID" msgstr "ID" @@ -5035,31 +5060,31 @@ msgstr "Αποτέλεσμα" msgid "Date" msgstr "Ημερομηνία" -#: templates/problem/submit.html:117 +#: templates/problem/submit.html:118 msgid "Your source code must contain at most 65536 characters." msgstr "Ο πηγαίος κώδικας σας πρέπει να περιέχει το πολύ 65536 χαρακτήρες." -#: templates/problem/submit.html:204 +#: templates/problem/submit.html:138 msgid "Warning!" msgstr "Προσοχή!" -#: templates/problem/submit.html:205 +#: templates/problem/submit.html:139 #, python-format msgid "Your default language, %(language)s, is unavailable for this problem and has been deselected." msgstr "Η προεπιλεγμένη σας γλώσσα, %(language)s, δεν είναι διαθέσιμη για αυτό το πρόβλημα και έχει αποεπιλεγεί." -#: templates/problem/submit.html:213 +#: templates/problem/submit.html:147 #, python-format msgid "You have %(left)s submission left" msgid_plural "You have %(left)s submissions left" msgstr[0] "Σας έχει απομείνει %(left)s υποβολή" msgstr[1] "Σας έχουν απομείνει %(left)s υποβολές" -#: templates/problem/submit.html:218 +#: templates/problem/submit.html:152 msgid "You have 0 submissions left" msgstr "Σας έχουν απομείνει 0 υποβολές" -#: templates/problem/submit.html:252 +#: templates/problem/submit.html:186 msgid "No judge is available for this problem." msgstr "Κανένας κριτής δεν είναι διαθέσιμος για αυτό το πρόβλημα." @@ -5267,7 +5292,7 @@ msgstr "Η %(site_name)s ομάδα" msgid "Password reset on %(site_name)s" msgstr "Επαναφορά κωδικού πρόσβασης στο %(site_name)s" -#: templates/registration/profile_creation.html:44 +#: templates/registration/profile_creation.html:38 #: templates/registration/username_select.html:7 msgid "Continue >" msgstr "Συνέχεια >" @@ -5280,36 +5305,36 @@ msgstr "Οι εγγραφές είναι κλειστές. Επικοινωνή msgid "You have successfully been registered. An email has been sent to the email address you provided to confirm your registration." msgstr "Έχετε εγγραφεί με επιτυχία. Ένα μήνυμα ηλεκτρονικού ταχυδρομείου έχει σταλεί στη διεύθυνση που δώσατε για επιβεβαίωση της εγγραφής σας." -#: templates/registration/registration_form.html:170 +#: templates/registration/registration_form.html:166 msgid "(again, for confirmation)" msgstr "(ξανά, για επιβεβαίωση)" -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "(select your closest major city)" msgstr "(επιλέξτε την κοντινότερη μεγάλη πόλη)" -#: templates/registration/registration_form.html:182 +#: templates/registration/registration_form.html:178 msgid "pick from map" msgstr "επιλογή από χάρτη" -#: templates/registration/registration_form.html:187 +#: templates/registration/registration_form.html:183 msgid "Default language" msgstr "Προεπιλεγμένη γλώσσα" -#: templates/registration/registration_form.html:190 +#: templates/registration/registration_form.html:186 msgid "Affiliated organizations" msgstr "Συνδεδεμένοι οργανισμοί" -#: templates/registration/registration_form.html:199 -#: templates/user/edit-profile.html:322 +#: templates/registration/registration_form.html:195 +#: templates/user/edit-profile.html:321 msgid "Notify me about upcoming contests" msgstr "Ειδοποιήστε με για επερχόμενους διαγωνισμούς" -#: templates/registration/registration_form.html:213 +#: templates/registration/registration_form.html:209 msgid "By registering, you agree to our [Terms & Conditions][0]." msgstr "Με την εγγραφή σας, συμφωνείτε με τους [Όροι & Προϋποθέσεις][0] μας." -#: templates/registration/registration_form.html:216 +#: templates/registration/registration_form.html:212 msgid "Register!" msgstr "Εγγραφή!" @@ -5351,17 +5376,17 @@ msgid "Enable Two Factor Authentication" msgstr "Ενεργοποίηση Ταυτοποίησης Δύο Παραγόντων" #: templates/registration/totp_enable.html:98 -#: templates/user/edit-profile.html:374 +#: templates/user/edit-profile.html:391 msgid "Below is a list of one-time use scratch codes." msgstr "Παρακάτω είναι μια λίστα μίας χρήσης κωδικών scratch." #: templates/registration/totp_enable.html:99 -#: templates/user/edit-profile.html:375 +#: templates/user/edit-profile.html:392 msgid "These codes can only be used once and are for emergency use." msgstr "Οι κωδικοί αυτοί μπορούν να χρησιμοποιηθούν μόνο μία φορά και προορίζονται για επείγουσα χρήση." #: templates/registration/totp_enable.html:100 -#: templates/user/edit-profile.html:376 +#: templates/user/edit-profile.html:393 msgid "You can use these codes to login to your account or disable two-factor authentication." msgstr "Μπορείτε να χρησιμοποιήσετε αυτούς τους κωδικούς για να συνδεθείτε στο λογαριασμό σας ή να απενεργοποιήσετε τον έλεγχο ταυτότητας δύο παραγόντων." @@ -5370,7 +5395,7 @@ msgid "If you ever need more scratch codes, you can regenerate them on the edit msgstr "Εάν χρειάζεστε ποτέ περισσότερους κώδικες scratch, μπορείτε να τους παράξετε εκ νέου στην καρτέλα επεξεργασίας προφίλ." #: templates/registration/totp_enable.html:102 -#: templates/user/edit-profile.html:378 +#: templates/user/edit-profile.html:395 msgid "Please write these down and keep them in a secure location." msgstr "Παρακαλώ καταγράψτε και αποθηκεύστε τους σε ασφαλές σημείο." @@ -5388,12 +5413,12 @@ msgid "If you lose your authentication device and are unable to use your scratch msgstr "Αν χάσετε τη συσκευή ελέγχου ταυτότητας και δεν μπορείτε να χρησιμοποιήσετε τους κωδικούς scratch, %(site_name)s διαχειριστές ΔΕΝ θα είναι σε θέση να ανακτήσουν το λογαριασμό σας. Παρακαλώ κρατήστε τους κωδικούς scratch σας ασφαλείς!" #: templates/registration/two_factor_auth.html:33 -#: templates/user/edit-profile.html:164 +#: templates/user/edit-profile.html:159 msgid "WebAuthn is not supported by your browser." msgstr "Το πρόγραμμα περιήγησης σας δεν υποστηρίζει WebAuthn." #: templates/registration/two_factor_auth.html:54 -#: templates/user/edit-profile.html:188 +#: templates/user/edit-profile.html:183 msgid "Failed to contact server." msgstr "Αποτυχία επικοινωνίας με το διακομιστή." @@ -5491,23 +5516,23 @@ msgstr "Πληροφορίες σφάλματος" msgid "Are you sure you want to rejudge?" msgstr "" -#: templates/submission/list.html:74 +#: templates/submission/list.html:75 msgid "Filter by status..." msgstr "Φιλτράρισμα ανά κατάσταση..." -#: templates/submission/list.html:80 +#: templates/submission/list.html:82 msgid "Filter by language..." msgstr "Φιλτράρισμα ανά γλώσσα..." -#: templates/submission/list.html:304 +#: templates/submission/list.html:306 msgid "Filter submissions" msgstr "Φίλτρο υποβολών" -#: templates/submission/list.html:340 +#: templates/submission/list.html:342 msgid "Total:" msgstr "Σύνολο:" -#: templates/submission/list.html:350 +#: templates/submission/list.html:352 msgid "You were disconnected. Refresh to show latest updates." msgstr "Αποσυνδεθήκατε. Ανανεώστε για να εμφανιστούν οι τελευταίες ενημερώσεις." @@ -5671,33 +5696,33 @@ msgstr "Ανοιγμένα εκ νέου: " msgid "Closed: " msgstr "Κλειστά: " -#: templates/ticket/list.html:156 +#: templates/ticket/list.html:157 msgid "Use desktop notification" msgstr "Χρήση ειδοποίησης επιφάνειας εργασίας" -#: templates/ticket/list.html:162 +#: templates/ticket/list.html:163 msgid "Hide closed tickets" msgstr "Απόκρυψη κλειστών αιτημάτων" -#: templates/ticket/list.html:167 +#: templates/ticket/list.html:168 msgid "Show my tickets only" msgstr "Εμφάνιση μόνο των αιτημάτων μου" -#: templates/ticket/list.html:171 +#: templates/ticket/list.html:172 msgid "Filing user" msgstr "Χρήστης αρχειοθέτης" -#: templates/ticket/list.html:180 templates/ticket/ticket.html:196 +#: templates/ticket/list.html:181 templates/ticket/ticket.html:196 msgid "Assignee" msgid_plural "Assignees" msgstr[0] "Υπεύθυνος" msgstr[1] "Υπεύθυνοι" -#: templates/ticket/list.html:200 +#: templates/ticket/list.html:201 msgid "Title" msgstr "Τίτλος" -#: templates/ticket/list.html:202 +#: templates/ticket/list.html:203 msgid "Assignees" msgstr "Υπεύθυνοι" @@ -5748,131 +5773,135 @@ msgstr "Σημειώσεις υπεύθυνου" msgid "Nothing here." msgstr "Δεν υπάρχει κάτι εδώ." -#: templates/user/base-users-table.html:3 +#: templates/user/base-users-table.html:4 msgid "Rank" msgstr "Βαθμίδα" -#: templates/user/base-users.html:14 templates/user/base-users.html:57 +#: templates/user/base-users.html:15 templates/user/base-users.html:58 msgid "Search by handle..." msgstr "Αναζήτηση με ανγνωριστικό..." -#: templates/user/edit-profile.html:107 +#: templates/user/edit-profile.html:102 msgid "The administrators for this site require all the staff to have Two-factor Authentication enabled, so it may not be disabled at this time." msgstr "" -#: templates/user/edit-profile.html:112 +#: templates/user/edit-profile.html:107 msgid "Are you sure you want to generate or regenerate your API token?" msgstr "Είστε βέβαιοι ότι θέλετε να παράξετε ή να αναπαράξετε το API διακριτικό σας;" -#: templates/user/edit-profile.html:113 +#: templates/user/edit-profile.html:108 msgid "This will invalidate any previous API tokens." msgstr "Αυτό θα ακυρώσει τυχόν προηγούμενα διακριτικά API." -#: templates/user/edit-profile.html:114 +#: templates/user/edit-profile.html:109 msgid "It also allows access to your account without Two-factor Authentication." msgstr "Επιτρέπει επίσης πρόσβαση στο λογαριασμό σας χωρίς έλεγχο ταυτότητας δύο παραγόντων." -#: templates/user/edit-profile.html:115 +#: templates/user/edit-profile.html:110 msgid "You will not be able to view your API token after you leave this page!" msgstr "Δεν θα είστε σε θέση να δείτε το API διακριτικό σας αφού φύγετε από αυτή τη σελίδα!" -#: templates/user/edit-profile.html:116 templates/user/edit-profile.html:210 +#: templates/user/edit-profile.html:111 templates/user/edit-profile.html:205 msgid "Generating..." msgstr "Δημιουργία..." -#: templates/user/edit-profile.html:130 templates/user/edit-profile.html:398 +#: templates/user/edit-profile.html:125 templates/user/edit-profile.html:355 msgid "Remove" msgstr "Διαγραφή" -#: templates/user/edit-profile.html:140 +#: templates/user/edit-profile.html:135 msgid "Are you sure you want to remove your API token?" msgstr "Είστε βέβαιοι ότι θέλετε να διαγράψετε το API διακριτικό σας;" -#: templates/user/edit-profile.html:147 templates/user/edit-profile.html:370 -#: templates/user/edit-profile.html:402 +#: templates/user/edit-profile.html:142 templates/user/edit-profile.html:359 +#: templates/user/edit-profile.html:387 msgid "Generate" msgstr "Παραγωγή" -#: templates/user/edit-profile.html:193 +#: templates/user/edit-profile.html:188 msgid "Are you sure you want to delete this security key?" msgstr "Είστε βέβαιοι ότι θέλετε να διαγράψετε αυτό το κλειδί ασφαλείας;" -#: templates/user/edit-profile.html:207 +#: templates/user/edit-profile.html:202 msgid "Are you sure you want to generate or regenerate a new set of scratch codes?" msgstr "" -#: templates/user/edit-profile.html:208 +#: templates/user/edit-profile.html:203 msgid "This will invalidate any previous scratch codes you have." msgstr "" -#: templates/user/edit-profile.html:209 templates/user/edit-profile.html:379 +#: templates/user/edit-profile.html:204 templates/user/edit-profile.html:396 msgid "You will not be able to view your scratch codes after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:278 +#: templates/user/edit-profile.html:273 msgid "Self-description:" msgstr "Αυτο-περιγραφή:" -#: templates/user/edit-profile.html:285 +#: templates/user/edit-profile.html:280 msgid "Select your closest major city" msgstr "Επιλέξτε την κοντινότερη μεγάλη πόλη" -#: templates/user/edit-profile.html:286 +#: templates/user/edit-profile.html:281 msgid "Time zone:" msgstr "Ζώνη ώρας:" -#: templates/user/edit-profile.html:290 +#: templates/user/edit-profile.html:285 msgid "Language:" msgstr "Γλώσσα:" -#: templates/user/edit-profile.html:294 +#: templates/user/edit-profile.html:289 +msgid "Site theme:" +msgstr "" + +#: templates/user/edit-profile.html:293 msgid "Editor theme:" msgstr "Μοτίβο συντάκτη:" -#: templates/user/edit-profile.html:299 +#: templates/user/edit-profile.html:298 msgid "Math engine:" msgstr "Μηχανή μαθηματικών:" -#: templates/user/edit-profile.html:308 +#: templates/user/edit-profile.html:307 msgid "Affiliated organizations:" msgstr "Συνδεδεμένοι οργανισμοί:" -#: templates/user/edit-profile.html:334 +#: templates/user/edit-profile.html:333 msgid "Change your avatar" msgstr "Αλλάξτε το avatar σας" -#: templates/user/edit-profile.html:339 +#: templates/user/edit-profile.html:338 msgid "Change your password" msgstr "Αλλάξτε τον κωδικό σας" -#: templates/user/edit-profile.html:352 -msgid "Two-factor Authentication is enabled:" -msgstr "Η ταυτοποίηση δύο παραγόντων είναι ενεργοποιημένη:" +#: templates/user/edit-profile.html:350 +msgid "API token:" +msgstr "Διακριτικό API:" -#: templates/user/edit-profile.html:360 +#: templates/user/edit-profile.html:356 templates/user/edit-profile.html:384 +msgid "Hidden" +msgstr "Κρυφό" + +#: templates/user/edit-profile.html:369 +msgid "Two-factor authentication is enabled:" +msgstr "" + +#: templates/user/edit-profile.html:377 msgid "Refresh" msgstr "Ανανέωση" -#: templates/user/edit-profile.html:363 +#: templates/user/edit-profile.html:380 msgid "Scratch codes:" msgstr "Κωδικοί scratch:" -#: templates/user/edit-profile.html:367 templates/user/edit-profile.html:399 -msgid "Hidden" -msgstr "Κρυφό" - -#: templates/user/edit-profile.html:377 +#: templates/user/edit-profile.html:394 msgid "If you ever need more scratch codes, you can regenerate them here." msgstr "" -#: templates/user/edit-profile.html:385 +#: templates/user/edit-profile.html:402 msgid "Two-factor Authentication is disabled:" msgstr "Η ταυτοποίηση δύο παραγόντων είναι απενεργοποιημένη:" -#: templates/user/edit-profile.html:393 -msgid "API token:" -msgstr "Διακριτικό API:" - #: templates/user/edit-profile.html:410 msgid "Security keys:" msgstr "Κλειδιά ασφαλείας:" diff --git a/locale/el/LC_MESSAGES/djangojs.po b/locale/el/LC_MESSAGES/djangojs.po index eda77dbdc8..a89d14d942 100644 --- a/locale/el/LC_MESSAGES/djangojs.po +++ b/locale/el/LC_MESSAGES/djangojs.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-20 23:43+0000\n" -"PO-Revision-Date: 2022-12-21 00:43\n" +"POT-Creation-Date: 2023-01-23 05:23+0000\n" +"PO-Revision-Date: 2023-01-24 00:51\n" "Last-Translator: \n" "Language-Team: Greek\n" "Language: el_GR\n" @@ -17,14 +17,14 @@ msgstr "" "X-Crowdin-File: djangojs.po\n" "X-Crowdin-File-ID: 12\n" -#: resources/common.js:195 +#: resources/common.js:194 msgctxt "time format with day" msgid "%d day %h:%m:%s" msgid_plural "%d days %h:%m:%s" msgstr[0] "%d ημέρα %h:%m:%s" msgstr[1] "%d ημέρες %h:%m:%s" -#: resources/common.js:198 +#: resources/common.js:197 msgctxt "time format without day" msgid "%h:%m:%s" msgstr "%h:%m:%s" diff --git a/locale/en/LC_MESSAGES/django.po b/locale/en/LC_MESSAGES/django.po index 4c97b8e3b2..e32ab6b5cd 100644 --- a/locale/en/LC_MESSAGES/django.po +++ b/locale/en/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-21 00:48+0000\n" +"POT-Creation-Date: 2023-02-18 00:49+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,91 +18,91 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: dmoj/settings.py:380 +#: dmoj/settings.py:392 msgid "Catalan" msgstr "" -#: dmoj/settings.py:381 +#: dmoj/settings.py:393 msgid "German" msgstr "" -#: dmoj/settings.py:382 +#: dmoj/settings.py:394 msgid "Greek" msgstr "" -#: dmoj/settings.py:383 +#: dmoj/settings.py:395 msgid "English" msgstr "" -#: dmoj/settings.py:384 +#: dmoj/settings.py:396 msgid "Spanish" msgstr "" -#: dmoj/settings.py:385 +#: dmoj/settings.py:397 msgid "French" msgstr "" -#: dmoj/settings.py:386 +#: dmoj/settings.py:398 msgid "Croatian" msgstr "" -#: dmoj/settings.py:387 +#: dmoj/settings.py:399 msgid "Hungarian" msgstr "" -#: dmoj/settings.py:388 +#: dmoj/settings.py:400 msgid "Japanese" msgstr "" -#: dmoj/settings.py:389 +#: dmoj/settings.py:401 msgid "Korean" msgstr "" -#: dmoj/settings.py:390 +#: dmoj/settings.py:402 msgid "Brazilian Portuguese" msgstr "" -#: dmoj/settings.py:391 +#: dmoj/settings.py:403 msgid "Romanian" msgstr "" -#: dmoj/settings.py:392 +#: dmoj/settings.py:404 msgid "Russian" msgstr "" -#: dmoj/settings.py:393 +#: dmoj/settings.py:405 msgid "Serbian (Latin)" msgstr "" -#: dmoj/settings.py:394 +#: dmoj/settings.py:406 msgid "Turkish" msgstr "" -#: dmoj/settings.py:395 +#: dmoj/settings.py:407 msgid "Vietnamese" msgstr "" -#: dmoj/settings.py:396 +#: dmoj/settings.py:408 msgid "Simplified Chinese" msgstr "" -#: dmoj/settings.py:397 +#: dmoj/settings.py:409 msgid "Traditional Chinese" msgstr "" -#: dmoj/urls.py:32 +#: dmoj/urls.py:31 msgid "Activation Successful!" msgstr "" -#: dmoj/urls.py:40 +#: dmoj/urls.py:39 msgid "Registration Completed" msgstr "" -#: dmoj/urls.py:44 +#: dmoj/urls.py:43 msgid "Registration Not Allowed" msgstr "" -#: dmoj/urls.py:93 templates/base.html:183 +#: dmoj/urls.py:92 templates/base.html:193 msgid "Home" msgstr "" @@ -141,8 +141,8 @@ msgid "Included contests" msgstr "" #: judge/admin/contest.py:65 templates/contest/contest.html:195 -#: templates/contest/moss.html:41 templates/problem/list.html:197 -#: templates/problem/list.html:213 templates/user/user-problems.html:58 +#: templates/contest/moss.html:41 templates/problem/list.html:188 +#: templates/problem/list.html:204 templates/user/user-problems.html:58 #: templates/user/user-problems.html:102 msgid "Problem" msgstr "" @@ -153,7 +153,7 @@ msgstr "" msgid "Problems" msgstr "" -#: judge/admin/contest.py:76 judge/admin/submission.py:249 +#: judge/admin/contest.py:76 judge/admin/submission.py:250 #: templates/admin/judge/submission/change_form.html:14 #: templates/admin/judge/submission/change_form.html:17 #: templates/submission/source.html:34 templates/submission/status.html:89 @@ -232,29 +232,29 @@ msgstr[1] "" msgid "Unlock contest submissions" msgstr "" -#: judge/admin/contest.py:280 judge/admin/submission.py:175 +#: judge/admin/contest.py:280 judge/admin/submission.py:176 #, python-format msgid "%d submission was successfully scheduled for rejudging." msgid_plural "%d submissions were successfully scheduled for rejudging." msgstr[0] "" msgstr[1] "" -#: judge/admin/contest.py:356 +#: judge/admin/contest.py:358 #, python-format msgid "%d participation recalculated." msgid_plural "%d participations recalculated." msgstr[0] "" msgstr[1] "" -#: judge/admin/contest.py:359 +#: judge/admin/contest.py:361 msgid "Recalculate results" msgstr "" -#: judge/admin/contest.py:363 judge/admin/organization.py:113 +#: judge/admin/contest.py:365 judge/admin/organization.py:113 msgid "username" msgstr "" -#: judge/admin/contest.py:368 templates/base.html:249 +#: judge/admin/contest.py:370 templates/base.html:259 msgid "virtual" msgstr "" @@ -267,8 +267,8 @@ msgid "Summary" msgstr "" #: judge/admin/interface.py:124 judge/models/contest.py:491 -#: judge/models/contest.py:623 judge/models/profile.py:331 -#: judge/models/profile.py:362 judge/models/submission.py:67 +#: judge/models/contest.py:623 judge/models/profile.py:347 +#: judge/models/profile.py:378 judge/models/submission.py:67 #: judge/models/ticket.py:32 msgid "user" msgstr "" @@ -299,8 +299,8 @@ msgid "Taxonomy" msgstr "" #: judge/admin/problem.py:133 templates/contest/contest.html:196 -#: templates/problem/data.html:380 templates/problem/list.html:202 -#: templates/problem/list.html:224 templates/user/base-users-table.html:10 +#: templates/problem/data.html:381 templates/problem/list.html:193 +#: templates/problem/list.html:215 templates/user/base-users-table.html:11 #: templates/user/user-problems.html:60 msgid "Points" msgstr "" @@ -309,9 +309,9 @@ msgstr "" msgid "Limits" msgstr "" -#: judge/admin/problem.py:135 judge/admin/submission.py:243 +#: judge/admin/problem.py:135 judge/admin/submission.py:244 #: templates/problem/submission-diff.html:65 templates/stats/tabs.html:4 -#: templates/submission/list.html:317 +#: templates/submission/list.html:319 msgid "Language" msgstr "" @@ -368,19 +368,19 @@ msgstr "" msgid "timezone" msgstr "" -#: judge/admin/profile.py:98 judge/admin/submission.py:222 +#: judge/admin/profile.py:98 judge/admin/submission.py:223 #: templates/organization/requests/log.html:9 #: templates/organization/requests/pending.html:12 -#: templates/ticket/list.html:201 +#: templates/ticket/list.html:202 msgid "User" msgstr "" -#: judge/admin/profile.py:103 templates/registration/registration_form.html:149 +#: judge/admin/profile.py:103 templates/registration/registration_form.html:145 msgid "Email" msgstr "" #: judge/admin/profile.py:108 judge/views/register.py:28 -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "Timezone" msgstr "" @@ -399,26 +399,26 @@ msgstr[1] "" msgid "Recalculate scores" msgstr "" -#: judge/admin/runtime.py:50 templates/user/edit-profile.html:124 -#: templates/user/edit-profile.html:246 templates/user/edit-profile.html:366 -#: templates/user/edit-profile.html:396 +#: judge/admin/runtime.py:52 templates/user/edit-profile.html:119 +#: templates/user/edit-profile.html:241 templates/user/edit-profile.html:353 +#: templates/user/edit-profile.html:383 msgid "Regenerate" msgstr "" -#: judge/admin/runtime.py:64 +#: judge/admin/runtime.py:66 msgid "Description" msgstr "" -#: judge/admin/runtime.py:65 +#: judge/admin/runtime.py:67 msgid "Information" msgstr "" -#: judge/admin/runtime.py:66 +#: judge/admin/runtime.py:68 msgid "Capabilities" msgstr "" #: judge/admin/submission.py:24 judge/admin/submission.py:43 -#: judge/admin/submission.py:232 +#: judge/admin/submission.py:233 msgid "None" msgstr "" @@ -450,57 +450,57 @@ msgctxt "contest problem" msgid "%(problem)s in %(contest)s" msgstr "" -#: judge/admin/submission.py:160 judge/admin/submission.py:182 +#: judge/admin/submission.py:161 judge/admin/submission.py:183 msgid "You do not have the permission to rejudge submissions." msgstr "" -#: judge/admin/submission.py:166 +#: judge/admin/submission.py:167 msgid "You do not have the permission to rejudge THAT many submissions." msgstr "" -#: judge/admin/submission.py:178 +#: judge/admin/submission.py:179 msgid "Rejudge the selected submissions" msgstr "" -#: judge/admin/submission.py:204 judge/views/problem_manage.py:129 +#: judge/admin/submission.py:205 judge/views/problem_manage.py:129 #, python-format msgid "%d submission was successfully rescored." msgid_plural "%d submissions were successfully rescored." msgstr[0] "" msgstr[1] "" -#: judge/admin/submission.py:207 +#: judge/admin/submission.py:208 msgid "Rescore the selected submissions" msgstr "" -#: judge/admin/submission.py:211 +#: judge/admin/submission.py:212 msgid "Problem code" msgstr "" -#: judge/admin/submission.py:216 +#: judge/admin/submission.py:217 msgid "Problem name" msgstr "" -#: judge/admin/submission.py:226 templates/organization/requests/log.html:10 +#: judge/admin/submission.py:227 templates/organization/requests/log.html:10 #: templates/organization/requests/pending.html:13 msgid "Time" msgstr "" -#: judge/admin/submission.py:234 +#: judge/admin/submission.py:235 #, python-format msgid "%d KB" msgstr "" -#: judge/admin/submission.py:236 +#: judge/admin/submission.py:237 #, python-format msgid "%.2f MB" msgstr "" -#: judge/admin/submission.py:238 +#: judge/admin/submission.py:239 msgid "Memory" msgstr "" -#: judge/admin/submission.py:247 +#: judge/admin/submission.py:248 msgid "Locked" msgstr "" @@ -525,6 +525,7 @@ msgid "Comment body" msgstr "" #: judge/comments.py:47 judge/views/comment.py:40 judge/views/ticket.py:46 +#: judge/views/user.py:347 msgid "Your part is silent, little toad." msgstr "" @@ -651,7 +652,7 @@ msgstr "" msgid "Scratch codes must be 16 Base32 characters." msgstr "" -#: judge/forms.py:39 judge/forms.py:265 +#: judge/forms.py:39 judge/forms.py:266 msgid "Invalid scratch code." msgstr "" @@ -674,83 +675,83 @@ msgid_plural "You may not be part of more than {count} public organizations." msgstr[0] "" msgstr[1] "" -#: judge/forms.py:98 +#: judge/forms.py:99 msgid "Download comments?" msgstr "" -#: judge/forms.py:99 +#: judge/forms.py:100 msgid "Download submissions?" msgstr "" -#: judge/forms.py:100 +#: judge/forms.py:101 msgid "Filter by problem code glob:" msgstr "" -#: judge/forms.py:104 +#: judge/forms.py:105 msgid "Leave empty to include all submissions" msgstr "" -#: judge/forms.py:107 templates/problem/manage_submission.html:142 +#: judge/forms.py:108 templates/problem/manage_submission.html:144 msgid "Filter by result:" msgstr "" -#: judge/forms.py:113 +#: judge/forms.py:114 msgid "Please select at least one thing to download." msgstr "" -#: judge/forms.py:139 +#: judge/forms.py:140 msgid "Any judge" msgstr "" -#: judge/forms.py:160 judge/views/register.py:25 +#: judge/forms.py:161 judge/views/register.py:25 #: templates/problem/submission-diff.html:63 -#: templates/registration/registration_form.html:143 -#: templates/user/base-users-table.html:5 +#: templates/registration/registration_form.html:139 +#: templates/user/base-users-table.html:6 msgid "Username" msgstr "" -#: judge/forms.py:161 templates/registration/registration_form.html:155 -#: templates/registration/registration_form.html:169 +#: judge/forms.py:162 templates/registration/registration_form.html:151 +#: templates/registration/registration_form.html:165 msgid "Password" msgstr "" -#: judge/forms.py:193 +#: judge/forms.py:194 msgid "Invalid code length." msgstr "" -#: judge/forms.py:224 +#: judge/forms.py:225 msgid "Invalid WebAuthn response." msgstr "" -#: judge/forms.py:227 +#: judge/forms.py:228 msgid "No WebAuthn challenge issued." msgstr "" -#: judge/forms.py:233 +#: judge/forms.py:234 msgid "Invalid WebAuthn credential ID." msgstr "" -#: judge/forms.py:263 +#: judge/forms.py:264 msgid "Invalid two-factor authentication token or scratch code." msgstr "" -#: judge/forms.py:267 +#: judge/forms.py:268 msgid "Must specify either totp_token or webauthn_response." msgstr "" -#: judge/forms.py:271 judge/models/problem.py:118 +#: judge/forms.py:272 judge/models/problem.py:118 msgid "Problem code must be ^[a-z0-9]+$" msgstr "" -#: judge/forms.py:276 +#: judge/forms.py:277 msgid "Problem with code already exists." msgstr "" -#: judge/forms.py:281 judge/models/contest.py:68 +#: judge/forms.py:282 judge/models/contest.py:68 msgid "Contest id must be ^[a-z0-9]+$" msgstr "" -#: judge/forms.py:286 +#: judge/forms.py:287 msgid "Contest with key already exists." msgstr "" @@ -773,26 +774,42 @@ msgstr "" msgid "Unrated" msgstr "" -#: judge/models/choices.py:59 -msgid "Leave as LaTeX" +#: judge/models/choices.py:24 +msgid "Follow site theme" msgstr "" #: judge/models/choices.py:60 -msgid "SVG only" +msgid "Leave as LaTeX" msgstr "" #: judge/models/choices.py:61 -msgid "MathML only" +msgid "SVG only" msgstr "" #: judge/models/choices.py:62 -msgid "MathJax with SVG fallback" +msgid "MathML only" msgstr "" #: judge/models/choices.py:63 +msgid "MathJax with SVG fallback" +msgstr "" + +#: judge/models/choices.py:64 msgid "Detect best quality" msgstr "" +#: judge/models/choices.py:70 +msgid "Follow system default" +msgstr "" + +#: judge/models/choices.py:71 +msgid "Light" +msgstr "" + +#: judge/models/choices.py:72 +msgid "Dark" +msgstr "" + #: judge/models/comment.py:25 msgid "Page code must be ^[pcs]:[a-z0-9]+$|^b:\\d+$" msgstr "" @@ -1935,7 +1952,7 @@ msgid "Non-trailing spaces" msgstr "" #: judge/models/problem_data.py:28 -msgid "Unordered" +msgid "Sorted" msgstr "" #: judge/models/problem_data.py:29 @@ -2112,7 +2129,7 @@ msgid "Edit all organizations" msgstr "" #: judge/models/profile.py:98 judge/models/profile.py:103 -#: judge/models/profile.py:160 judge/models/profile.py:363 +#: judge/models/profile.py:161 judge/models/profile.py:379 msgid "organization" msgstr "" @@ -2153,7 +2170,7 @@ msgstr "" msgid "%(class)s in %(organization)s" msgstr "" -#: judge/models/profile.py:142 judge/models/profile.py:371 +#: judge/models/profile.py:142 judge/models/profile.py:387 msgid "class" msgstr "" @@ -2178,26 +2195,30 @@ msgid "Ace theme" msgstr "" #: judge/models/profile.py:158 -msgid "last access time" +msgid "site theme" msgstr "" #: judge/models/profile.py:159 +msgid "last access time" +msgstr "" + +#: judge/models/profile.py:160 msgid "last IP" msgstr "" -#: judge/models/profile.py:162 +#: judge/models/profile.py:163 msgid "display rank" msgstr "" -#: judge/models/profile.py:164 +#: judge/models/profile.py:165 msgid "Normal User" msgstr "" -#: judge/models/profile.py:165 +#: judge/models/profile.py:166 msgid "Problem Setter" msgstr "" -#: judge/models/profile.py:166 templates/base.html:211 +#: judge/models/profile.py:167 templates/base.html:221 #: templates/comments/list.html:97 templates/contest/contest-list-tabs.html:25 #: templates/contest/ranking-table.html:51 #: templates/problem/problem-list-tabs.html:6 @@ -2207,201 +2228,201 @@ msgstr "" msgid "Admin" msgstr "" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "comment mute" msgstr "" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "Some users are at their best when silent." msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "unlisted user" msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "User will not be ranked." msgstr "" -#: judge/models/profile.py:172 +#: judge/models/profile.py:173 msgid "banned from voting on problem point values" msgstr "" -#: judge/models/profile.py:173 +#: judge/models/profile.py:174 msgid "User will not be able to vote on problems' point values." msgstr "" -#: judge/models/profile.py:177 +#: judge/models/profile.py:178 msgid "user script" msgstr "" -#: judge/models/profile.py:178 +#: judge/models/profile.py:179 msgid "User-defined JavaScript for site customization." msgstr "" -#: judge/models/profile.py:179 +#: judge/models/profile.py:180 msgid "current contest" msgstr "" -#: judge/models/profile.py:181 +#: judge/models/profile.py:182 msgid "math engine" msgstr "" -#: judge/models/profile.py:183 +#: judge/models/profile.py:184 msgid "The rendering engine used to render math." msgstr "" -#: judge/models/profile.py:184 +#: judge/models/profile.py:185 msgid "TOTP 2FA enabled" msgstr "" -#: judge/models/profile.py:185 +#: judge/models/profile.py:186 msgid "Check to enable TOTP-based two-factor authentication." msgstr "" -#: judge/models/profile.py:186 +#: judge/models/profile.py:187 msgid "WebAuthn 2FA enabled" msgstr "" -#: judge/models/profile.py:187 +#: judge/models/profile.py:188 msgid "Check to enable WebAuthn-based two-factor authentication." msgstr "" -#: judge/models/profile.py:188 +#: judge/models/profile.py:189 msgid "TOTP key" msgstr "" -#: judge/models/profile.py:189 +#: judge/models/profile.py:190 msgid "32-character Base32-encoded key for TOTP." msgstr "" -#: judge/models/profile.py:191 +#: judge/models/profile.py:192 msgid "TOTP key must be empty or Base32." msgstr "" -#: judge/models/profile.py:192 +#: judge/models/profile.py:193 msgid "scratch codes" msgstr "" -#: judge/models/profile.py:193 +#: judge/models/profile.py:194 msgid "JSON array of 16-character Base32-encoded codes for scratch codes." msgstr "" -#: judge/models/profile.py:197 +#: judge/models/profile.py:198 msgid "" "Scratch codes must be empty or a JSON array of 16-character Base32 codes." msgstr "" -#: judge/models/profile.py:199 +#: judge/models/profile.py:200 msgid "last TOTP timecode" msgstr "" -#: judge/models/profile.py:200 +#: judge/models/profile.py:201 msgid "API token" msgstr "" -#: judge/models/profile.py:201 +#: judge/models/profile.py:202 msgid "64-character hex-encoded API access token." msgstr "" -#: judge/models/profile.py:203 +#: judge/models/profile.py:204 msgid "API token must be None or hexadecimal" msgstr "" -#: judge/models/profile.py:204 +#: judge/models/profile.py:205 msgid "internal notes" msgstr "" -#: judge/models/profile.py:205 +#: judge/models/profile.py:206 msgid "Notes for administrators regarding this user." msgstr "" -#: judge/models/profile.py:206 +#: judge/models/profile.py:207 msgid "last data download time" msgstr "" -#: judge/models/profile.py:207 +#: judge/models/profile.py:208 msgid "display name override" msgstr "" -#: judge/models/profile.py:208 +#: judge/models/profile.py:209 msgid "Name displayed in place of username." msgstr "" -#: judge/models/profile.py:323 +#: judge/models/profile.py:333 msgid "Shows in-progress development stuff" msgstr "" -#: judge/models/profile.py:324 +#: judge/models/profile.py:334 msgid "Edit TOTP settings" msgstr "" -#: judge/models/profile.py:326 +#: judge/models/profile.py:336 msgid "user profile" msgstr "" -#: judge/models/profile.py:327 +#: judge/models/profile.py:337 msgid "user profiles" msgstr "" -#: judge/models/profile.py:333 +#: judge/models/profile.py:349 msgid "device name" msgstr "" -#: judge/models/profile.py:334 +#: judge/models/profile.py:350 msgid "credential ID" msgstr "" -#: judge/models/profile.py:335 +#: judge/models/profile.py:351 msgid "public key" msgstr "" -#: judge/models/profile.py:336 +#: judge/models/profile.py:352 msgid "sign counter" msgstr "" -#: judge/models/profile.py:354 +#: judge/models/profile.py:370 #, python-format msgid "WebAuthn credential: %(name)s" msgstr "" -#: judge/models/profile.py:357 +#: judge/models/profile.py:373 msgid "WebAuthn credential" msgstr "" -#: judge/models/profile.py:358 +#: judge/models/profile.py:374 msgid "WebAuthn credentials" msgstr "" -#: judge/models/profile.py:365 +#: judge/models/profile.py:381 msgid "request time" msgstr "" -#: judge/models/profile.py:366 +#: judge/models/profile.py:382 msgid "state" msgstr "" -#: judge/models/profile.py:367 templates/organization/requests/tabs.html:4 +#: judge/models/profile.py:383 templates/organization/requests/tabs.html:4 msgid "Pending" msgstr "" -#: judge/models/profile.py:368 templates/organization/requests/tabs.html:10 +#: judge/models/profile.py:384 templates/organization/requests/tabs.html:10 msgid "Approved" msgstr "" -#: judge/models/profile.py:369 templates/organization/requests/tabs.html:13 +#: judge/models/profile.py:385 templates/organization/requests/tabs.html:13 msgid "Rejected" msgstr "" -#: judge/models/profile.py:372 +#: judge/models/profile.py:388 msgid "reason" msgstr "" -#: judge/models/profile.py:381 +#: judge/models/profile.py:397 msgid "organization join request" msgstr "" -#: judge/models/profile.py:382 +#: judge/models/profile.py:398 msgid "organization join requests" msgstr "" @@ -2657,15 +2678,15 @@ msgstr "" msgid "submission time" msgstr "" -#: judge/models/submission.py:70 judge/models/submission.py:255 +#: judge/models/submission.py:70 judge/models/submission.py:265 msgid "execution time" msgstr "" -#: judge/models/submission.py:71 judge/models/submission.py:256 +#: judge/models/submission.py:71 judge/models/submission.py:266 msgid "memory usage" msgstr "" -#: judge/models/submission.py:72 judge/models/submission.py:257 +#: judge/models/submission.py:72 judge/models/submission.py:267 msgid "points granted" msgstr "" @@ -2754,60 +2775,60 @@ msgstr "" msgid "submissions" msgstr "" -#: judge/models/submission.py:235 judge/models/submission.py:251 +#: judge/models/submission.py:245 judge/models/submission.py:261 msgid "associated submission" msgstr "" -#: judge/models/submission.py:237 +#: judge/models/submission.py:247 msgid "source code" msgstr "" -#: judge/models/submission.py:240 +#: judge/models/submission.py:250 #, python-format msgid "Source of %(submission)s" msgstr "" -#: judge/models/submission.py:243 +#: judge/models/submission.py:253 msgid "submission source" msgstr "" -#: judge/models/submission.py:244 +#: judge/models/submission.py:254 msgid "submission sources" msgstr "" -#: judge/models/submission.py:253 +#: judge/models/submission.py:263 msgid "test case ID" msgstr "" -#: judge/models/submission.py:254 +#: judge/models/submission.py:264 msgid "status flag" msgstr "" -#: judge/models/submission.py:258 +#: judge/models/submission.py:268 msgid "points possible" msgstr "" -#: judge/models/submission.py:259 +#: judge/models/submission.py:269 msgid "batch number" msgstr "" -#: judge/models/submission.py:260 +#: judge/models/submission.py:270 msgid "judging feedback" msgstr "" -#: judge/models/submission.py:261 +#: judge/models/submission.py:271 msgid "extended judging feedback" msgstr "" -#: judge/models/submission.py:262 +#: judge/models/submission.py:272 msgid "program output" msgstr "" -#: judge/models/submission.py:276 +#: judge/models/submission.py:286 msgid "submission test case" msgstr "" -#: judge/models/submission.py:277 +#: judge/models/submission.py:287 msgid "submission test cases" msgstr "" @@ -3025,7 +3046,7 @@ msgctxt "hours and minutes" msgid "%h:%m" msgstr "" -#: judge/views/blog.py:36 +#: judge/views/blog.py:37 #, python-format msgid "Page %d of Posts" msgstr "" @@ -3522,11 +3543,11 @@ msgstr "" msgid "Register" msgstr "" -#: judge/views/register.py:103 +#: judge/views/register.py:101 msgid "Activation Key Invalid" msgstr "" -#: judge/views/register.py:114 +#: judge/views/register.py:112 msgid "Authentication failure" msgstr "" @@ -3538,7 +3559,7 @@ msgstr "" msgid "Language statistics" msgstr "" -#: judge/views/status.py:23 templates/submission/list.html:308 +#: judge/views/status.py:23 templates/submission/list.html:310 msgid "Status" msgstr "" @@ -3721,41 +3742,45 @@ msgstr "" msgid "Preparing your data..." msgstr "" -#: judge/views/user.py:298 templates/user/edit-profile.html:345 +#: judge/views/user.py:298 templates/user/edit-profile.html:344 msgid "Download your data" msgstr "" +#: judge/views/user.py:347 +msgid "Can't edit profile" +msgstr "" + #: judge/views/user.py:354 msgid "Updated on site" msgstr "" -#: judge/views/user.py:387 templates/admin/auth/user/change_form.html:14 -#: templates/admin/auth/user/change_form.html:17 templates/base.html:213 +#: judge/views/user.py:386 templates/admin/auth/user/change_form.html:14 +#: templates/admin/auth/user/change_form.html:17 templates/base.html:223 #: templates/user/user-tabs.html:16 msgid "Edit profile" msgstr "" -#: judge/views/user.py:402 +#: judge/views/user.py:400 msgid "Generated API token for user" msgstr "" -#: judge/views/user.py:414 +#: judge/views/user.py:412 msgid "Removed API token for user" msgstr "" -#: judge/views/user.py:424 +#: judge/views/user.py:422 msgid "Generated scratch codes for user" msgstr "" -#: judge/views/user.py:430 templates/user/user-list-tabs.html:4 +#: judge/views/user.py:428 templates/user/user-list-tabs.html:4 msgid "Leaderboard" msgstr "" -#: judge/views/user.py:491 +#: judge/views/user.py:489 msgid "You have been successfully logged out." msgstr "" -#: judge/views/user.py:508 +#: judge/views/user.py:506 msgid "You have sent too many password reset requests. Please try again later." msgstr "" @@ -3784,13 +3809,13 @@ msgstr "" #: templates/admin/judge/judge/change_form.html:27 #: templates/admin/judge/judge/change_form.html:30 -#: templates/user/edit-profile.html:355 templates/user/edit-profile.html:358 +#: templates/user/edit-profile.html:372 templates/user/edit-profile.html:375 msgid "Disable" msgstr "" #: templates/admin/judge/judge/change_form.html:33 #: templates/admin/judge/judge/change_form.html:36 -#: templates/user/edit-profile.html:386 +#: templates/user/edit-profile.html:403 msgid "Enable" msgstr "" @@ -3810,48 +3835,48 @@ msgstr "" msgid "Edit user" msgstr "" -#: templates/base.html:206 +#: templates/base.html:216 #, python-format msgid "Hello, %(username)s." msgstr "" -#: templates/base.html:215 +#: templates/base.html:225 msgid "Stop impersonating" msgstr "" -#: templates/base.html:220 +#: templates/base.html:230 msgid "Log out" msgstr "" -#: templates/base.html:229 +#: templates/base.html:239 #: templates/registration/password_reset_complete.html:4 msgid "Log in" msgstr "" -#: templates/base.html:230 templates/registration/registration_form.html:181 +#: templates/base.html:240 templates/registration/registration_form.html:177 msgid "or" msgstr "" -#: templates/base.html:231 +#: templates/base.html:241 msgid "Sign up" msgstr "" -#: templates/base.html:243 +#: templates/base.html:253 msgid "spectating" msgstr "" -#: templates/base.html:256 +#: templates/base.html:266 msgid "This site works best with JavaScript enabled." msgstr "" -#: templates/base.html:283 +#: templates/base.html:293 msgid "proudly powered by **DMOJ**" msgstr "" #: templates/blog/content.html:13 templates/comments/list.html:89 #: templates/comments/list.html:105 templates/contest/contest-tabs.html:23 #: templates/contest/tag-title.html:9 templates/flatpages/admin_link.html:3 -#: templates/license.html:10 templates/problem/data.html:423 +#: templates/license.html:10 templates/problem/data.html:424 #: templates/problem/editorial.html:14 msgid "Edit" msgstr "" @@ -4052,15 +4077,15 @@ msgstr "" msgid "No votes" msgstr "" -#: templates/common-content.html:32 templates/user/edit-profile.html:219 +#: templates/common-content.html:32 templates/user/edit-profile.html:214 msgid "Click to copy" msgstr "" -#: templates/common-content.html:33 templates/user/edit-profile.html:220 +#: templates/common-content.html:33 templates/user/edit-profile.html:215 msgid "Copy" msgstr "" -#: templates/common-content.html:44 templates/user/edit-profile.html:231 +#: templates/common-content.html:44 templates/user/edit-profile.html:226 msgid "Copied!" msgstr "" @@ -4141,7 +4166,7 @@ msgstr "" msgid "Info" msgstr "" -#: templates/contest/contest-tabs.html:6 templates/submission/list.html:334 +#: templates/contest/contest-tabs.html:6 templates/submission/list.html:336 msgid "Statistics" msgstr "" @@ -4373,7 +4398,7 @@ msgstr "" #: templates/contest/contest.html:198 templates/contest/list.html:152 #: templates/contest/list.html:194 templates/contest/list.html:271 -#: templates/problem/list.html:203 templates/problem/list.html:235 +#: templates/problem/list.html:194 templates/problem/list.html:226 msgid "Users" msgstr "" @@ -4381,7 +4406,7 @@ msgstr "" msgid "Editorials" msgstr "" -#: templates/contest/contest.html:226 templates/problem/list.html:229 +#: templates/contest/contest.html:226 templates/problem/list.html:220 msgid "Editorial" msgstr "" @@ -4551,19 +4576,19 @@ msgstr "" msgid "Disqualify" msgstr "" -#: templates/contest/ranking.html:151 +#: templates/contest/ranking.html:46 msgid "Are you sure you want to disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:156 +#: templates/contest/ranking.html:51 msgid "Are you sure you want to un-disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:228 +#: templates/contest/ranking.html:124 msgid "View user participation" msgstr "" -#: templates/contest/ranking.html:232 +#: templates/contest/ranking.html:128 msgid "Show organizations" msgstr "" @@ -4758,7 +4783,7 @@ msgid "There are no requests to approve." msgstr "" #: templates/organization/requests/pending.html:17 -#: templates/problem/data.html:387 +#: templates/problem/data.html:388 msgid "Delete?" msgstr "" @@ -4794,59 +4819,59 @@ msgstr "" msgid "Enter a new code for the cloned problem:" msgstr "" -#: templates/problem/data.html:70 +#: templates/problem/data.html:71 msgid "precision (decimal digits)" msgstr "" -#: templates/problem/data.html:339 +#: templates/problem/data.html:340 msgid "View YAML" msgstr "" -#: templates/problem/data.html:355 +#: templates/problem/data.html:356 msgid "Show columns:" msgstr "" -#: templates/problem/data.html:358 templates/problem/data.html:382 +#: templates/problem/data.html:359 templates/problem/data.html:383 msgid "Output prefix" msgstr "" -#: templates/problem/data.html:362 templates/problem/data.html:383 +#: templates/problem/data.html:363 templates/problem/data.html:384 msgid "Output limit" msgstr "" -#: templates/problem/data.html:366 templates/problem/data.html:384 +#: templates/problem/data.html:367 templates/problem/data.html:385 msgid "Checker" msgstr "" -#: templates/problem/data.html:370 templates/problem/data.html:385 +#: templates/problem/data.html:371 templates/problem/data.html:386 msgid "Generator args" msgstr "" -#: templates/problem/data.html:377 +#: templates/problem/data.html:378 msgid "Type" msgstr "" -#: templates/problem/data.html:378 +#: templates/problem/data.html:379 msgid "Input file" msgstr "" -#: templates/problem/data.html:379 +#: templates/problem/data.html:380 msgid "Output file" msgstr "" -#: templates/problem/data.html:381 +#: templates/problem/data.html:382 msgid "Pretest?" msgstr "" -#: templates/problem/data.html:433 templates/problem/submit.html:256 +#: templates/problem/data.html:434 templates/problem/submit.html:190 msgid "Submit!" msgstr "" -#: templates/problem/data.html:434 +#: templates/problem/data.html:435 msgid "Add new case" msgstr "" -#: templates/problem/data.html:436 +#: templates/problem/data.html:437 msgid "Save" msgstr "" @@ -4868,103 +4893,103 @@ msgid_plural "Authors:" msgstr[0] "" msgstr[1] "" -#: templates/problem/list.html:58 +#: templates/problem/list.html:49 msgid "Filter by type..." msgstr "" -#: templates/problem/list.html:176 +#: templates/problem/list.html:167 msgid "Hot problems" msgstr "" -#: templates/problem/list.html:198 templates/problem/list.html:216 +#: templates/problem/list.html:189 templates/problem/list.html:207 #: templates/problem/search-form.html:35 templates/user/user-problems.html:59 msgid "Category" msgstr "" -#: templates/problem/list.html:200 templates/problem/list.html:220 +#: templates/problem/list.html:191 templates/problem/list.html:211 msgid "Types" msgstr "" -#: templates/problem/list.html:227 +#: templates/problem/list.html:218 #, python-format msgid "AC %%" msgstr "" -#: templates/problem/manage_submission.html:55 +#: templates/problem/manage_submission.html:56 msgid "Leave empty to not filter by language" msgstr "" -#: templates/problem/manage_submission.html:60 +#: templates/problem/manage_submission.html:62 msgid "Leave empty to not filter by result" msgstr "" -#: templates/problem/manage_submission.html:79 +#: templates/problem/manage_submission.html:81 msgid "Need valid values for both start and end IDs." msgstr "" -#: templates/problem/manage_submission.html:82 +#: templates/problem/manage_submission.html:84 msgid "End ID must be after start ID." msgstr "" -#: templates/problem/manage_submission.html:90 +#: templates/problem/manage_submission.html:92 #, python-brace-format msgid "" "You are about to rejudge {count} submissions. Are you sure you want to do " "this?" msgstr "" -#: templates/problem/manage_submission.html:96 +#: templates/problem/manage_submission.html:98 msgid "" "You are about to rejudge a few submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:115 +#: templates/problem/manage_submission.html:117 msgid "Rejudge Submissions" msgstr "" -#: templates/problem/manage_submission.html:120 +#: templates/problem/manage_submission.html:122 msgid "Filter by ID:" msgstr "" -#: templates/problem/manage_submission.html:123 +#: templates/problem/manage_submission.html:125 msgid "Starting ID:" msgstr "" -#: templates/problem/manage_submission.html:127 +#: templates/problem/manage_submission.html:129 msgid "Ending ID:" msgstr "" -#: templates/problem/manage_submission.html:131 +#: templates/problem/manage_submission.html:133 msgid "This range includes both endpoints." msgstr "" -#: templates/problem/manage_submission.html:134 +#: templates/problem/manage_submission.html:136 msgid "Filter by language:" msgstr "" -#: templates/problem/manage_submission.html:150 +#: templates/problem/manage_submission.html:152 msgid "Rejudge selected submissions" msgstr "" -#: templates/problem/manage_submission.html:157 +#: templates/problem/manage_submission.html:159 msgid "Rescore Everything" msgstr "" -#: templates/problem/manage_submission.html:158 +#: templates/problem/manage_submission.html:160 #, python-format msgid "This will rescore %(count)s submission." msgid_plural "This will rescore %(count)s submissions." msgstr[0] "" msgstr[1] "" -#: templates/problem/manage_submission.html:166 +#: templates/problem/manage_submission.html:168 #, python-format msgid "Are you sure you want to rescore %(count)s submission?" msgid_plural "Are you sure you want to rescore %(count)s submissions?" msgstr[0] "" msgstr[1] "" -#: templates/problem/manage_submission.html:171 +#: templates/problem/manage_submission.html:173 msgid "Rescore all submissions" msgstr "" @@ -5127,8 +5152,8 @@ msgstr "" msgid "Point range" msgstr "" -#: templates/problem/search-form.html:68 templates/submission/list.html:326 -#: templates/ticket/list.html:188 +#: templates/problem/search-form.html:68 templates/submission/list.html:328 +#: templates/ticket/list.html:189 msgid "Go" msgstr "" @@ -5137,7 +5162,7 @@ msgid "Random" msgstr "" #: templates/problem/submission-diff.html:62 -#: templates/status/language-list.html:34 templates/ticket/list.html:199 +#: templates/status/language-list.html:34 templates/ticket/list.html:200 msgid "ID" msgstr "" @@ -5149,33 +5174,33 @@ msgstr "" msgid "Date" msgstr "" -#: templates/problem/submit.html:117 +#: templates/problem/submit.html:118 msgid "Your source code must contain at most 65536 characters." msgstr "" -#: templates/problem/submit.html:204 +#: templates/problem/submit.html:138 msgid "Warning!" msgstr "" -#: templates/problem/submit.html:205 +#: templates/problem/submit.html:139 #, python-format msgid "" "Your default language, %(language)s, is unavailable for this problem and has " "been deselected." msgstr "" -#: templates/problem/submit.html:213 +#: templates/problem/submit.html:147 #, python-format msgid "You have %(left)s submission left" msgid_plural "You have %(left)s submissions left" msgstr[0] "" msgstr[1] "" -#: templates/problem/submit.html:218 +#: templates/problem/submit.html:152 msgid "You have 0 submissions left" msgstr "" -#: templates/problem/submit.html:252 +#: templates/problem/submit.html:186 msgid "No judge is available for this problem." msgstr "" @@ -5405,7 +5430,7 @@ msgstr "" msgid "Password reset on %(site_name)s" msgstr "" -#: templates/registration/profile_creation.html:44 +#: templates/registration/profile_creation.html:38 #: templates/registration/username_select.html:7 msgid "Continue >" msgstr "" @@ -5420,36 +5445,36 @@ msgid "" "address you provided to confirm your registration." msgstr "" -#: templates/registration/registration_form.html:170 +#: templates/registration/registration_form.html:166 msgid "(again, for confirmation)" msgstr "" -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "(select your closest major city)" msgstr "" -#: templates/registration/registration_form.html:182 +#: templates/registration/registration_form.html:178 msgid "pick from map" msgstr "" -#: templates/registration/registration_form.html:187 +#: templates/registration/registration_form.html:183 msgid "Default language" msgstr "" -#: templates/registration/registration_form.html:190 +#: templates/registration/registration_form.html:186 msgid "Affiliated organizations" msgstr "" -#: templates/registration/registration_form.html:199 -#: templates/user/edit-profile.html:322 +#: templates/registration/registration_form.html:195 +#: templates/user/edit-profile.html:321 msgid "Notify me about upcoming contests" msgstr "" -#: templates/registration/registration_form.html:213 +#: templates/registration/registration_form.html:209 msgid "By registering, you agree to our [Terms & Conditions][0]." msgstr "" -#: templates/registration/registration_form.html:216 +#: templates/registration/registration_form.html:212 msgid "Register!" msgstr "" @@ -5495,17 +5520,17 @@ msgid "Enable Two Factor Authentication" msgstr "" #: templates/registration/totp_enable.html:98 -#: templates/user/edit-profile.html:374 +#: templates/user/edit-profile.html:391 msgid "Below is a list of one-time use scratch codes." msgstr "" #: templates/registration/totp_enable.html:99 -#: templates/user/edit-profile.html:375 +#: templates/user/edit-profile.html:392 msgid "These codes can only be used once and are for emergency use." msgstr "" #: templates/registration/totp_enable.html:100 -#: templates/user/edit-profile.html:376 +#: templates/user/edit-profile.html:393 msgid "" "You can use these codes to login to your account or disable two-factor " "authentication." @@ -5518,7 +5543,7 @@ msgid "" msgstr "" #: templates/registration/totp_enable.html:102 -#: templates/user/edit-profile.html:378 +#: templates/user/edit-profile.html:395 msgid "Please write these down and keep them in a secure location." msgstr "" @@ -5541,12 +5566,12 @@ msgid "" msgstr "" #: templates/registration/two_factor_auth.html:33 -#: templates/user/edit-profile.html:164 +#: templates/user/edit-profile.html:159 msgid "WebAuthn is not supported by your browser." msgstr "" #: templates/registration/two_factor_auth.html:54 -#: templates/user/edit-profile.html:188 +#: templates/user/edit-profile.html:183 msgid "Failed to contact server." msgstr "" @@ -5648,23 +5673,23 @@ msgstr "" msgid "Are you sure you want to rejudge?" msgstr "" -#: templates/submission/list.html:74 +#: templates/submission/list.html:75 msgid "Filter by status..." msgstr "" -#: templates/submission/list.html:80 +#: templates/submission/list.html:82 msgid "Filter by language..." msgstr "" -#: templates/submission/list.html:304 +#: templates/submission/list.html:306 msgid "Filter submissions" msgstr "" -#: templates/submission/list.html:340 +#: templates/submission/list.html:342 msgid "Total:" msgstr "" -#: templates/submission/list.html:350 +#: templates/submission/list.html:352 msgid "You were disconnected. Refresh to show latest updates." msgstr "" @@ -5828,33 +5853,33 @@ msgstr "" msgid "Closed: " msgstr "" -#: templates/ticket/list.html:156 +#: templates/ticket/list.html:157 msgid "Use desktop notification" msgstr "" -#: templates/ticket/list.html:162 +#: templates/ticket/list.html:163 msgid "Hide closed tickets" msgstr "" -#: templates/ticket/list.html:167 +#: templates/ticket/list.html:168 msgid "Show my tickets only" msgstr "" -#: templates/ticket/list.html:171 +#: templates/ticket/list.html:172 msgid "Filing user" msgstr "" -#: templates/ticket/list.html:180 templates/ticket/ticket.html:196 +#: templates/ticket/list.html:181 templates/ticket/ticket.html:196 msgid "Assignee" msgid_plural "Assignees" msgstr[0] "" msgstr[1] "" -#: templates/ticket/list.html:200 +#: templates/ticket/list.html:201 msgid "Title" msgstr "" -#: templates/ticket/list.html:202 +#: templates/ticket/list.html:203 msgid "Assignees" msgstr "" @@ -5908,134 +5933,138 @@ msgstr "" msgid "Nothing here." msgstr "" -#: templates/user/base-users-table.html:3 +#: templates/user/base-users-table.html:4 msgid "Rank" msgstr "" -#: templates/user/base-users.html:14 templates/user/base-users.html:57 +#: templates/user/base-users.html:15 templates/user/base-users.html:58 msgid "Search by handle..." msgstr "" -#: templates/user/edit-profile.html:107 +#: templates/user/edit-profile.html:102 msgid "" "The administrators for this site require all the staff to have Two-factor " "Authentication enabled, so it may not be disabled at this time." msgstr "" -#: templates/user/edit-profile.html:112 +#: templates/user/edit-profile.html:107 msgid "Are you sure you want to generate or regenerate your API token?" msgstr "" -#: templates/user/edit-profile.html:113 +#: templates/user/edit-profile.html:108 msgid "This will invalidate any previous API tokens." msgstr "" -#: templates/user/edit-profile.html:114 +#: templates/user/edit-profile.html:109 msgid "" "It also allows access to your account without Two-factor Authentication." msgstr "" -#: templates/user/edit-profile.html:115 +#: templates/user/edit-profile.html:110 msgid "You will not be able to view your API token after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:116 templates/user/edit-profile.html:210 +#: templates/user/edit-profile.html:111 templates/user/edit-profile.html:205 msgid "Generating..." msgstr "" -#: templates/user/edit-profile.html:130 templates/user/edit-profile.html:398 +#: templates/user/edit-profile.html:125 templates/user/edit-profile.html:355 msgid "Remove" msgstr "" -#: templates/user/edit-profile.html:140 +#: templates/user/edit-profile.html:135 msgid "Are you sure you want to remove your API token?" msgstr "" -#: templates/user/edit-profile.html:147 templates/user/edit-profile.html:370 -#: templates/user/edit-profile.html:402 +#: templates/user/edit-profile.html:142 templates/user/edit-profile.html:359 +#: templates/user/edit-profile.html:387 msgid "Generate" msgstr "" -#: templates/user/edit-profile.html:193 +#: templates/user/edit-profile.html:188 msgid "Are you sure you want to delete this security key?" msgstr "" -#: templates/user/edit-profile.html:207 +#: templates/user/edit-profile.html:202 msgid "" "Are you sure you want to generate or regenerate a new set of scratch codes?" msgstr "" -#: templates/user/edit-profile.html:208 +#: templates/user/edit-profile.html:203 msgid "This will invalidate any previous scratch codes you have." msgstr "" -#: templates/user/edit-profile.html:209 templates/user/edit-profile.html:379 +#: templates/user/edit-profile.html:204 templates/user/edit-profile.html:396 msgid "" "You will not be able to view your scratch codes after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:278 +#: templates/user/edit-profile.html:273 msgid "Self-description:" msgstr "" -#: templates/user/edit-profile.html:285 +#: templates/user/edit-profile.html:280 msgid "Select your closest major city" msgstr "" -#: templates/user/edit-profile.html:286 +#: templates/user/edit-profile.html:281 msgid "Time zone:" msgstr "" -#: templates/user/edit-profile.html:290 +#: templates/user/edit-profile.html:285 msgid "Language:" msgstr "" -#: templates/user/edit-profile.html:294 +#: templates/user/edit-profile.html:289 +msgid "Site theme:" +msgstr "" + +#: templates/user/edit-profile.html:293 msgid "Editor theme:" msgstr "" -#: templates/user/edit-profile.html:299 +#: templates/user/edit-profile.html:298 msgid "Math engine:" msgstr "" -#: templates/user/edit-profile.html:308 +#: templates/user/edit-profile.html:307 msgid "Affiliated organizations:" msgstr "" -#: templates/user/edit-profile.html:334 +#: templates/user/edit-profile.html:333 msgid "Change your avatar" msgstr "" -#: templates/user/edit-profile.html:339 +#: templates/user/edit-profile.html:338 msgid "Change your password" msgstr "" -#: templates/user/edit-profile.html:352 -msgid "Two-factor Authentication is enabled:" +#: templates/user/edit-profile.html:350 +msgid "API token:" msgstr "" -#: templates/user/edit-profile.html:360 -msgid "Refresh" +#: templates/user/edit-profile.html:356 templates/user/edit-profile.html:384 +msgid "Hidden" msgstr "" -#: templates/user/edit-profile.html:363 -msgid "Scratch codes:" +#: templates/user/edit-profile.html:369 +msgid "Two-factor authentication is enabled:" msgstr "" -#: templates/user/edit-profile.html:367 templates/user/edit-profile.html:399 -msgid "Hidden" +#: templates/user/edit-profile.html:377 +msgid "Refresh" msgstr "" -#: templates/user/edit-profile.html:377 -msgid "If you ever need more scratch codes, you can regenerate them here." +#: templates/user/edit-profile.html:380 +msgid "Scratch codes:" msgstr "" -#: templates/user/edit-profile.html:385 -msgid "Two-factor Authentication is disabled:" +#: templates/user/edit-profile.html:394 +msgid "If you ever need more scratch codes, you can regenerate them here." msgstr "" -#: templates/user/edit-profile.html:393 -msgid "API token:" +#: templates/user/edit-profile.html:402 +msgid "Two-factor Authentication is disabled:" msgstr "" #: templates/user/edit-profile.html:410 diff --git a/locale/en/LC_MESSAGES/djangojs.po b/locale/en/LC_MESSAGES/djangojs.po index 7962f58b09..c721b38970 100644 --- a/locale/en/LC_MESSAGES/djangojs.po +++ b/locale/en/LC_MESSAGES/djangojs.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-21 00:43+0000\n" +"POT-Creation-Date: 2023-01-24 00:51+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,14 +18,14 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: resources/common.js:195 +#: resources/common.js:194 msgctxt "time format with day" msgid "%d day %h:%m:%s" msgid_plural "%d days %h:%m:%s" msgstr[0] "" msgstr[1] "" -#: resources/common.js:198 +#: resources/common.js:197 msgctxt "time format without day" msgid "%h:%m:%s" msgstr "" diff --git a/locale/es/LC_MESSAGES/django.po b/locale/es/LC_MESSAGES/django.po index 338344349d..326d62964c 100644 --- a/locale/es/LC_MESSAGES/django.po +++ b/locale/es/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-20 23:04+0000\n" -"PO-Revision-Date: 2023-01-22 00:52\n" +"POT-Creation-Date: 2023-02-17 22:33+0000\n" +"PO-Revision-Date: 2023-02-18 00:50\n" "Last-Translator: \n" "Language-Team: Spanish\n" "Language: es_ES\n" @@ -17,91 +17,91 @@ msgstr "" "X-Crowdin-File: django.po\n" "X-Crowdin-File-ID: 10\n" -#: dmoj/settings.py:380 +#: dmoj/settings.py:392 msgid "Catalan" msgstr "Catalán" -#: dmoj/settings.py:381 +#: dmoj/settings.py:393 msgid "German" msgstr "Alemán" -#: dmoj/settings.py:382 +#: dmoj/settings.py:394 msgid "Greek" msgstr "Griego" -#: dmoj/settings.py:383 +#: dmoj/settings.py:395 msgid "English" msgstr "Inglés" -#: dmoj/settings.py:384 +#: dmoj/settings.py:396 msgid "Spanish" msgstr "Español" -#: dmoj/settings.py:385 +#: dmoj/settings.py:397 msgid "French" msgstr "Francés" -#: dmoj/settings.py:386 +#: dmoj/settings.py:398 msgid "Croatian" msgstr "Croata" -#: dmoj/settings.py:387 +#: dmoj/settings.py:399 msgid "Hungarian" msgstr "Húngaro" -#: dmoj/settings.py:388 +#: dmoj/settings.py:400 msgid "Japanese" msgstr "Japonés" -#: dmoj/settings.py:389 +#: dmoj/settings.py:401 msgid "Korean" msgstr "Coreano" -#: dmoj/settings.py:390 +#: dmoj/settings.py:402 msgid "Brazilian Portuguese" msgstr "Portugués (Brasil)" -#: dmoj/settings.py:391 +#: dmoj/settings.py:403 msgid "Romanian" msgstr "Rumano" -#: dmoj/settings.py:392 +#: dmoj/settings.py:404 msgid "Russian" msgstr "Ruso" -#: dmoj/settings.py:393 +#: dmoj/settings.py:405 msgid "Serbian (Latin)" msgstr "Serbio (Latino)" -#: dmoj/settings.py:394 +#: dmoj/settings.py:406 msgid "Turkish" msgstr "Turco" -#: dmoj/settings.py:395 +#: dmoj/settings.py:407 msgid "Vietnamese" msgstr "Vietnamita" -#: dmoj/settings.py:396 +#: dmoj/settings.py:408 msgid "Simplified Chinese" msgstr "Chino Simplificado" -#: dmoj/settings.py:397 +#: dmoj/settings.py:409 msgid "Traditional Chinese" msgstr "Chino Tradicional" -#: dmoj/urls.py:32 +#: dmoj/urls.py:31 msgid "Activation Successful!" msgstr "¡Activación con Éxito!" -#: dmoj/urls.py:40 +#: dmoj/urls.py:39 msgid "Registration Completed" msgstr "Registro Completado" -#: dmoj/urls.py:44 +#: dmoj/urls.py:43 msgid "Registration Not Allowed" msgstr "Registro No Permitido" -#: dmoj/urls.py:93 templates/base.html:183 +#: dmoj/urls.py:92 templates/base.html:193 msgid "Home" msgstr "Inicio" @@ -140,8 +140,8 @@ msgid "Included contests" msgstr "Concursos incluidos" #: judge/admin/contest.py:65 templates/contest/contest.html:195 -#: templates/contest/moss.html:41 templates/problem/list.html:197 -#: templates/problem/list.html:213 templates/user/user-problems.html:58 +#: templates/contest/moss.html:41 templates/problem/list.html:188 +#: templates/problem/list.html:204 templates/user/user-problems.html:58 #: templates/user/user-problems.html:102 msgid "Problem" msgstr "Problema" @@ -152,7 +152,7 @@ msgstr "Problema" msgid "Problems" msgstr "Problemas" -#: judge/admin/contest.py:76 judge/admin/submission.py:249 +#: judge/admin/contest.py:76 judge/admin/submission.py:250 #: templates/admin/judge/submission/change_form.html:14 #: templates/admin/judge/submission/change_form.html:17 #: templates/submission/source.html:34 templates/submission/status.html:89 @@ -231,29 +231,29 @@ msgstr[1] "%d concursos desbloqueados exitosamente." msgid "Unlock contest submissions" msgstr "Desbloquear envíos del concurso" -#: judge/admin/contest.py:280 judge/admin/submission.py:175 +#: judge/admin/contest.py:280 judge/admin/submission.py:176 #, python-format msgid "%d submission was successfully scheduled for rejudging." msgid_plural "%d submissions were successfully scheduled for rejudging." msgstr[0] "%d envío ha sido añadido a la cola para rejuzgar con éxito." msgstr[1] "%d envíos han sido añadidos a la cola para rejuzgar con éxito." -#: judge/admin/contest.py:356 +#: judge/admin/contest.py:358 #, python-format msgid "%d participation recalculated." msgid_plural "%d participations recalculated." msgstr[0] "%d participación recalculada." msgstr[1] "%d participaciones recalculadas." -#: judge/admin/contest.py:359 +#: judge/admin/contest.py:361 msgid "Recalculate results" msgstr "Recalcular resultados" -#: judge/admin/contest.py:363 judge/admin/organization.py:113 +#: judge/admin/contest.py:365 judge/admin/organization.py:113 msgid "username" msgstr "nombre de usuario" -#: judge/admin/contest.py:368 templates/base.html:249 +#: judge/admin/contest.py:370 templates/base.html:259 msgid "virtual" msgstr "virtual" @@ -266,8 +266,8 @@ msgid "Summary" msgstr "Resumen" #: judge/admin/interface.py:124 judge/models/contest.py:491 -#: judge/models/contest.py:623 judge/models/profile.py:331 -#: judge/models/profile.py:362 judge/models/submission.py:67 +#: judge/models/contest.py:623 judge/models/profile.py:347 +#: judge/models/profile.py:378 judge/models/submission.py:67 #: judge/models/ticket.py:32 msgid "user" msgstr "usuario" @@ -298,8 +298,8 @@ msgid "Taxonomy" msgstr "Taxonomía" #: judge/admin/problem.py:133 templates/contest/contest.html:196 -#: templates/problem/data.html:380 templates/problem/list.html:202 -#: templates/problem/list.html:224 templates/user/base-users-table.html:10 +#: templates/problem/data.html:381 templates/problem/list.html:193 +#: templates/problem/list.html:215 templates/user/base-users-table.html:11 #: templates/user/user-problems.html:60 msgid "Points" msgstr "Puntos" @@ -308,9 +308,9 @@ msgstr "Puntos" msgid "Limits" msgstr "Límites" -#: judge/admin/problem.py:135 judge/admin/submission.py:243 +#: judge/admin/problem.py:135 judge/admin/submission.py:244 #: templates/problem/submission-diff.html:65 templates/stats/tabs.html:4 -#: templates/submission/list.html:317 +#: templates/submission/list.html:319 msgid "Language" msgstr "Lenguaje" @@ -367,19 +367,19 @@ msgstr "problema" msgid "timezone" msgstr "zona horaria" -#: judge/admin/profile.py:98 judge/admin/submission.py:222 +#: judge/admin/profile.py:98 judge/admin/submission.py:223 #: templates/organization/requests/log.html:9 #: templates/organization/requests/pending.html:12 -#: templates/ticket/list.html:201 +#: templates/ticket/list.html:202 msgid "User" msgstr "Usuario" -#: judge/admin/profile.py:103 templates/registration/registration_form.html:149 +#: judge/admin/profile.py:103 templates/registration/registration_form.html:145 msgid "Email" msgstr "Email" #: judge/admin/profile.py:108 judge/views/register.py:28 -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "Timezone" msgstr "Zona horaria" @@ -398,26 +398,26 @@ msgstr[1] "Se ha recalculado la puntuación de %d usuarios." msgid "Recalculate scores" msgstr "Recalcular puntuaciones" -#: judge/admin/runtime.py:50 templates/user/edit-profile.html:124 -#: templates/user/edit-profile.html:246 templates/user/edit-profile.html:366 -#: templates/user/edit-profile.html:396 +#: judge/admin/runtime.py:52 templates/user/edit-profile.html:119 +#: templates/user/edit-profile.html:241 templates/user/edit-profile.html:353 +#: templates/user/edit-profile.html:383 msgid "Regenerate" msgstr "Regenerar" -#: judge/admin/runtime.py:64 +#: judge/admin/runtime.py:66 msgid "Description" msgstr "Descripción" -#: judge/admin/runtime.py:65 +#: judge/admin/runtime.py:67 msgid "Information" msgstr "Información" -#: judge/admin/runtime.py:66 +#: judge/admin/runtime.py:68 msgid "Capabilities" msgstr "Capacidades" #: judge/admin/submission.py:24 judge/admin/submission.py:43 -#: judge/admin/submission.py:232 +#: judge/admin/submission.py:233 msgid "None" msgstr "Ninguno" @@ -449,57 +449,57 @@ msgctxt "contest problem" msgid "%(problem)s in %(contest)s" msgstr "%(problem)s en %(contest)s" -#: judge/admin/submission.py:160 judge/admin/submission.py:182 +#: judge/admin/submission.py:161 judge/admin/submission.py:183 msgid "You do not have the permission to rejudge submissions." msgstr "No tienes permiso para rejuzgar envíos." -#: judge/admin/submission.py:166 +#: judge/admin/submission.py:167 msgid "You do not have the permission to rejudge THAT many submissions." msgstr "No tienes permiso para rejuzgar TANTOS envíos." -#: judge/admin/submission.py:178 +#: judge/admin/submission.py:179 msgid "Rejudge the selected submissions" msgstr "Rejuzgar los envíos seleccionados" -#: judge/admin/submission.py:204 judge/views/problem_manage.py:129 +#: judge/admin/submission.py:205 judge/views/problem_manage.py:129 #, python-format msgid "%d submission was successfully rescored." msgid_plural "%d submissions were successfully rescored." msgstr[0] "%d envío fue reevaluado con éxito." msgstr[1] "%d envíos fueron reevaluados con éxito." -#: judge/admin/submission.py:207 +#: judge/admin/submission.py:208 msgid "Rescore the selected submissions" msgstr "Reevaluar los envíos seleccionados" -#: judge/admin/submission.py:211 +#: judge/admin/submission.py:212 msgid "Problem code" msgstr "Código del problema" -#: judge/admin/submission.py:216 +#: judge/admin/submission.py:217 msgid "Problem name" msgstr "Nombre del problema" -#: judge/admin/submission.py:226 templates/organization/requests/log.html:10 +#: judge/admin/submission.py:227 templates/organization/requests/log.html:10 #: templates/organization/requests/pending.html:13 msgid "Time" msgstr "Tiempo" -#: judge/admin/submission.py:234 +#: judge/admin/submission.py:235 #, python-format msgid "%d KB" msgstr "%d KB" -#: judge/admin/submission.py:236 +#: judge/admin/submission.py:237 #, python-format msgid "%.2f MB" msgstr "%.2f MB" -#: judge/admin/submission.py:238 +#: judge/admin/submission.py:239 msgid "Memory" msgstr "Memoria" -#: judge/admin/submission.py:247 +#: judge/admin/submission.py:248 msgid "Locked" msgstr "Bloqueado" @@ -524,6 +524,7 @@ msgid "Comment body" msgstr "Cuerpo del comentario" #: judge/comments.py:47 judge/views/comment.py:40 judge/views/ticket.py:46 +#: judge/views/user.py:347 msgid "Your part is silent, little toad." msgstr "No se supone que deberías hablar, pequeñuelo." @@ -631,7 +632,7 @@ msgstr "Token de autenticación de dos pasos no válido." msgid "Scratch codes must be 16 Base32 characters." msgstr "Los códigos de Scratch deben tener 16 caracteres Base32." -#: judge/forms.py:39 judge/forms.py:265 +#: judge/forms.py:39 judge/forms.py:266 msgid "Invalid scratch code." msgstr "Código de scratch inválido." @@ -654,83 +655,83 @@ msgid_plural "You may not be part of more than {count} public organizations." msgstr[0] "No puedes formar parte de más de {count} organización pública." msgstr[1] "No puedes formar parte de más de {count} organizaciones públicas." -#: judge/forms.py:98 +#: judge/forms.py:99 msgid "Download comments?" msgstr "¿Descargar comentarios?" -#: judge/forms.py:99 +#: judge/forms.py:100 msgid "Download submissions?" msgstr "¿Descargar envíos?" -#: judge/forms.py:100 +#: judge/forms.py:101 msgid "Filter by problem code glob:" msgstr "Filtrar por código glob del problema:" -#: judge/forms.py:104 +#: judge/forms.py:105 msgid "Leave empty to include all submissions" msgstr "Dejar en blanco para incluir todos los envíos" -#: judge/forms.py:107 templates/problem/manage_submission.html:142 +#: judge/forms.py:108 templates/problem/manage_submission.html:144 msgid "Filter by result:" msgstr "Filtrar por resultado:" -#: judge/forms.py:113 +#: judge/forms.py:114 msgid "Please select at least one thing to download." msgstr "Por favor selecciona por lo menos una cosa para descargar." -#: judge/forms.py:139 +#: judge/forms.py:140 msgid "Any judge" msgstr "Cualquier juez" -#: judge/forms.py:160 judge/views/register.py:25 +#: judge/forms.py:161 judge/views/register.py:25 #: templates/problem/submission-diff.html:63 -#: templates/registration/registration_form.html:143 -#: templates/user/base-users-table.html:5 +#: templates/registration/registration_form.html:139 +#: templates/user/base-users-table.html:6 msgid "Username" msgstr "Nombre de usuario" -#: judge/forms.py:161 templates/registration/registration_form.html:155 -#: templates/registration/registration_form.html:169 +#: judge/forms.py:162 templates/registration/registration_form.html:151 +#: templates/registration/registration_form.html:165 msgid "Password" msgstr "Contraseña" -#: judge/forms.py:193 +#: judge/forms.py:194 msgid "Invalid code length." msgstr "Longitud de código inválida." -#: judge/forms.py:224 +#: judge/forms.py:225 msgid "Invalid WebAuthn response." msgstr "Respuesta WebAuthn inválida." -#: judge/forms.py:227 +#: judge/forms.py:228 msgid "No WebAuthn challenge issued." msgstr "Ningúna respuesta de WebAuthn emitida." -#: judge/forms.py:233 +#: judge/forms.py:234 msgid "Invalid WebAuthn credential ID." msgstr "ID de credencial de WebAuthn inválida." -#: judge/forms.py:263 +#: judge/forms.py:264 msgid "Invalid two-factor authentication token or scratch code." msgstr "Token de autenticación de dos pasos o código de scratch no válido." -#: judge/forms.py:267 +#: judge/forms.py:268 msgid "Must specify either totp_token or webauthn_response." msgstr "Debe especificar o totp_token o webauthn_response." -#: judge/forms.py:271 judge/models/problem.py:118 +#: judge/forms.py:272 judge/models/problem.py:118 msgid "Problem code must be ^[a-z0-9]+$" msgstr "El código del problema debe ser ^[a-z0-9]+$" -#: judge/forms.py:276 +#: judge/forms.py:277 msgid "Problem with code already exists." msgstr "Ya existe un problema con este código." -#: judge/forms.py:281 judge/models/contest.py:68 +#: judge/forms.py:282 judge/models/contest.py:68 msgid "Contest id must be ^[a-z0-9]+$" msgstr "La id del concurso debe ser ^[a-z0-9]+$" -#: judge/forms.py:286 +#: judge/forms.py:287 msgid "Contest with key already exists." msgstr "Ya existe un concurso con esta clave primaria." @@ -753,26 +754,42 @@ msgstr "el {time}" msgid "Unrated" msgstr "Sin puntuación" -#: judge/models/choices.py:59 +#: judge/models/choices.py:24 +msgid "Follow site theme" +msgstr "" + +#: judge/models/choices.py:60 msgid "Leave as LaTeX" msgstr "Dejar como LaTeX" -#: judge/models/choices.py:60 +#: judge/models/choices.py:61 msgid "SVG only" msgstr "Solo SVG" -#: judge/models/choices.py:61 +#: judge/models/choices.py:62 msgid "MathML only" msgstr "Solo MathML" -#: judge/models/choices.py:62 +#: judge/models/choices.py:63 msgid "MathJax with SVG fallback" msgstr "MathJax con SVG si falla" -#: judge/models/choices.py:63 +#: judge/models/choices.py:64 msgid "Detect best quality" msgstr "Detectar la mejor calidad" +#: judge/models/choices.py:70 +msgid "Follow system default" +msgstr "" + +#: judge/models/choices.py:71 +msgid "Light" +msgstr "Claro" + +#: judge/models/choices.py:72 +msgid "Dark" +msgstr "Oscuro" + #: judge/models/comment.py:25 msgid "Page code must be ^[pcs]:[a-z0-9]+$|^b:\\d+$" msgstr "El código de la página debe ser ^[pcs]:[a-z0-9]+$|^b:\\d+$" @@ -1885,8 +1902,8 @@ msgid "Non-trailing spaces" msgstr "Sin espacios al final" #: judge/models/problem_data.py:28 -msgid "Unordered" -msgstr "Sin ordenar" +msgid "Sorted" +msgstr "Ordenado" #: judge/models/problem_data.py:29 msgid "Byte identical" @@ -2057,7 +2074,7 @@ msgid "Edit all organizations" msgstr "Editar todas las organizaciones" #: judge/models/profile.py:98 judge/models/profile.py:103 -#: judge/models/profile.py:160 judge/models/profile.py:363 +#: judge/models/profile.py:161 judge/models/profile.py:379 msgid "organization" msgstr "organización" @@ -2098,7 +2115,7 @@ msgstr "miembros" msgid "%(class)s in %(organization)s" msgstr "%(class)s en %(organization)s" -#: judge/models/profile.py:142 judge/models/profile.py:371 +#: judge/models/profile.py:142 judge/models/profile.py:387 msgid "class" msgstr "clase" @@ -2123,26 +2140,30 @@ msgid "Ace theme" msgstr "Tema Ace" #: judge/models/profile.py:158 +msgid "site theme" +msgstr "tema del sitio" + +#: judge/models/profile.py:159 msgid "last access time" msgstr "último tiempo de acceso" -#: judge/models/profile.py:159 +#: judge/models/profile.py:160 msgid "last IP" msgstr "último IP" -#: judge/models/profile.py:162 +#: judge/models/profile.py:163 msgid "display rank" msgstr "mostrar rango" -#: judge/models/profile.py:164 +#: judge/models/profile.py:165 msgid "Normal User" msgstr "Usuario Normal" -#: judge/models/profile.py:165 +#: judge/models/profile.py:166 msgid "Problem Setter" msgstr "Creador de Problemas" -#: judge/models/profile.py:166 templates/base.html:211 +#: judge/models/profile.py:167 templates/base.html:221 #: templates/comments/list.html:97 templates/contest/contest-list-tabs.html:25 #: templates/contest/ranking-table.html:51 #: templates/problem/problem-list-tabs.html:6 @@ -2152,200 +2173,200 @@ msgstr "Creador de Problemas" msgid "Admin" msgstr "Administrador" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "comment mute" msgstr "comentario en silencio" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "Some users are at their best when silent." msgstr "Algunos usuarios están en su mejor momento cuando están en silencio." -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "unlisted user" msgstr "usuario no-listado" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "User will not be ranked." msgstr "Este usuario no será puesto en los rankings." -#: judge/models/profile.py:172 +#: judge/models/profile.py:173 msgid "banned from voting on problem point values" msgstr "" -#: judge/models/profile.py:173 +#: judge/models/profile.py:174 msgid "User will not be able to vote on problems' point values." msgstr "" -#: judge/models/profile.py:177 +#: judge/models/profile.py:178 msgid "user script" msgstr "scrip de usuario" -#: judge/models/profile.py:178 +#: judge/models/profile.py:179 msgid "User-defined JavaScript for site customization." msgstr "JavaScript definido por el usuario para la personalización del sitio." -#: judge/models/profile.py:179 +#: judge/models/profile.py:180 msgid "current contest" msgstr "concurso actual" -#: judge/models/profile.py:181 +#: judge/models/profile.py:182 msgid "math engine" msgstr "motor matemático" -#: judge/models/profile.py:183 +#: judge/models/profile.py:184 msgid "The rendering engine used to render math." msgstr "El motor de renderizado utilizado para representar las matemáticas." -#: judge/models/profile.py:184 +#: judge/models/profile.py:185 msgid "TOTP 2FA enabled" msgstr "TOTP de la Autenticación en dos pasos habilitado" -#: judge/models/profile.py:185 +#: judge/models/profile.py:186 msgid "Check to enable TOTP-based two-factor authentication." msgstr "Activar autenticación de dos pasos basada en TOTP." -#: judge/models/profile.py:186 +#: judge/models/profile.py:187 msgid "WebAuthn 2FA enabled" msgstr "WebAuthn de Autenticación en dos pasos habilitado" -#: judge/models/profile.py:187 +#: judge/models/profile.py:188 msgid "Check to enable WebAuthn-based two-factor authentication." msgstr "Activar autenticación de dos pasos basada en WebAuthn." -#: judge/models/profile.py:188 +#: judge/models/profile.py:189 msgid "TOTP key" msgstr "clave TOTP" -#: judge/models/profile.py:189 +#: judge/models/profile.py:190 msgid "32-character Base32-encoded key for TOTP." msgstr "Clave con codificación Base32 de 32 caracteres para el TOTP." -#: judge/models/profile.py:191 +#: judge/models/profile.py:192 msgid "TOTP key must be empty or Base32." msgstr "La clave TOTP debe estar vacía o ser Base32." -#: judge/models/profile.py:192 +#: judge/models/profile.py:193 msgid "scratch codes" msgstr "códigos scratch" -#: judge/models/profile.py:193 +#: judge/models/profile.py:194 msgid "JSON array of 16-character Base32-encoded codes for scratch codes." msgstr "Array JSON de 16 caracteres codificados en Base32 para los códigos scratch." -#: judge/models/profile.py:197 +#: judge/models/profile.py:198 msgid "Scratch codes must be empty or a JSON array of 16-character Base32 codes." msgstr "Los códigos Scratch deben estar vacíos o ser un array JSON de 16 caracteres Base32." -#: judge/models/profile.py:199 +#: judge/models/profile.py:200 msgid "last TOTP timecode" msgstr "" -#: judge/models/profile.py:200 +#: judge/models/profile.py:201 msgid "API token" msgstr "Token API" -#: judge/models/profile.py:201 +#: judge/models/profile.py:202 msgid "64-character hex-encoded API access token." msgstr "Token de acceso a la API codificado con 64 caracteres hexadecimales." -#: judge/models/profile.py:203 +#: judge/models/profile.py:204 msgid "API token must be None or hexadecimal" msgstr "El token API debe ser Ninguno o hexadecimal" -#: judge/models/profile.py:204 +#: judge/models/profile.py:205 msgid "internal notes" msgstr "notas internas" -#: judge/models/profile.py:205 +#: judge/models/profile.py:206 msgid "Notes for administrators regarding this user." msgstr "Notas para administradores sobre este usuario." -#: judge/models/profile.py:206 +#: judge/models/profile.py:207 msgid "last data download time" msgstr "última descarga de datos" -#: judge/models/profile.py:207 +#: judge/models/profile.py:208 msgid "display name override" msgstr "anular el nombre para mostrar" -#: judge/models/profile.py:208 +#: judge/models/profile.py:209 msgid "Name displayed in place of username." msgstr "Nombre mostrado en lugar del nombre de usuario." -#: judge/models/profile.py:323 +#: judge/models/profile.py:333 msgid "Shows in-progress development stuff" msgstr "Muestra las cosas que el equipo de desarrollo está haciendo actualmente" -#: judge/models/profile.py:324 +#: judge/models/profile.py:334 msgid "Edit TOTP settings" msgstr "Editar ajustes TOTP" -#: judge/models/profile.py:326 +#: judge/models/profile.py:336 msgid "user profile" msgstr "perfil del usuario" -#: judge/models/profile.py:327 +#: judge/models/profile.py:337 msgid "user profiles" msgstr "perfiles de usuarios" -#: judge/models/profile.py:333 +#: judge/models/profile.py:349 msgid "device name" msgstr "nombre de dispositivo" -#: judge/models/profile.py:334 +#: judge/models/profile.py:350 msgid "credential ID" msgstr "ID de credencial" -#: judge/models/profile.py:335 +#: judge/models/profile.py:351 msgid "public key" msgstr "clave pública" -#: judge/models/profile.py:336 +#: judge/models/profile.py:352 msgid "sign counter" msgstr "contador de señales" -#: judge/models/profile.py:354 +#: judge/models/profile.py:370 #, python-format msgid "WebAuthn credential: %(name)s" msgstr "Credencial de WebAuthn: %(name)s" -#: judge/models/profile.py:357 +#: judge/models/profile.py:373 msgid "WebAuthn credential" msgstr "credencial de WebAuthn" -#: judge/models/profile.py:358 +#: judge/models/profile.py:374 msgid "WebAuthn credentials" msgstr "credenciales de WebAuthn" -#: judge/models/profile.py:365 +#: judge/models/profile.py:381 msgid "request time" msgstr "tiempo de solicitud" -#: judge/models/profile.py:366 +#: judge/models/profile.py:382 msgid "state" msgstr "estado" -#: judge/models/profile.py:367 templates/organization/requests/tabs.html:4 +#: judge/models/profile.py:383 templates/organization/requests/tabs.html:4 msgid "Pending" msgstr "Pendiente" -#: judge/models/profile.py:368 templates/organization/requests/tabs.html:10 +#: judge/models/profile.py:384 templates/organization/requests/tabs.html:10 msgid "Approved" msgstr "Aprobado" -#: judge/models/profile.py:369 templates/organization/requests/tabs.html:13 +#: judge/models/profile.py:385 templates/organization/requests/tabs.html:13 msgid "Rejected" msgstr "Rechazado" -#: judge/models/profile.py:372 +#: judge/models/profile.py:388 msgid "reason" msgstr "razón" -#: judge/models/profile.py:381 +#: judge/models/profile.py:397 msgid "organization join request" msgstr "solicitud de adhesión a la organización" -#: judge/models/profile.py:382 +#: judge/models/profile.py:398 msgid "organization join requests" msgstr "solicitudes de adhesión a la organización" @@ -2588,15 +2609,15 @@ msgstr "Error Interno (juzgando error del servidor)" msgid "submission time" msgstr "tiempo de envío" -#: judge/models/submission.py:70 judge/models/submission.py:255 +#: judge/models/submission.py:70 judge/models/submission.py:265 msgid "execution time" msgstr "tiempo de ejecución" -#: judge/models/submission.py:71 judge/models/submission.py:256 +#: judge/models/submission.py:71 judge/models/submission.py:266 msgid "memory usage" msgstr "uso de memoria" -#: judge/models/submission.py:72 judge/models/submission.py:257 +#: judge/models/submission.py:72 judge/models/submission.py:267 msgid "points granted" msgstr "puntos otorgados" @@ -2685,60 +2706,60 @@ msgstr "Cambiar el estado de bloqueo del envío" msgid "submissions" msgstr "envíos" -#: judge/models/submission.py:235 judge/models/submission.py:251 +#: judge/models/submission.py:245 judge/models/submission.py:261 msgid "associated submission" msgstr "envío asociado" -#: judge/models/submission.py:237 +#: judge/models/submission.py:247 msgid "source code" msgstr "código fuente" -#: judge/models/submission.py:240 +#: judge/models/submission.py:250 #, python-format msgid "Source of %(submission)s" msgstr "Fuente de %(submission)s" -#: judge/models/submission.py:243 +#: judge/models/submission.py:253 msgid "submission source" msgstr "fuente de envío" -#: judge/models/submission.py:244 +#: judge/models/submission.py:254 msgid "submission sources" msgstr "fuentes de envío" -#: judge/models/submission.py:253 +#: judge/models/submission.py:263 msgid "test case ID" msgstr "ID de caso de prueba" -#: judge/models/submission.py:254 +#: judge/models/submission.py:264 msgid "status flag" msgstr "indicador de estado" -#: judge/models/submission.py:258 +#: judge/models/submission.py:268 msgid "points possible" msgstr "puntos posibles" -#: judge/models/submission.py:259 +#: judge/models/submission.py:269 msgid "batch number" msgstr "número de lote" -#: judge/models/submission.py:260 +#: judge/models/submission.py:270 msgid "judging feedback" msgstr "respuesta del juez" -#: judge/models/submission.py:261 +#: judge/models/submission.py:271 msgid "extended judging feedback" msgstr "respuesta extendida del juez" -#: judge/models/submission.py:262 +#: judge/models/submission.py:272 msgid "program output" msgstr "salida del programa" -#: judge/models/submission.py:276 +#: judge/models/submission.py:286 msgid "submission test case" msgstr "caso de prueba del envío" -#: judge/models/submission.py:277 +#: judge/models/submission.py:287 msgid "submission test cases" msgstr "casos de prueba del envío" @@ -2956,7 +2977,7 @@ msgctxt "hours and minutes" msgid "%h:%m" msgstr "%h:%m" -#: judge/views/blog.py:36 +#: judge/views/blog.py:37 #, python-format msgid "Page %d of Posts" msgstr "Página %d de Posts" @@ -3445,11 +3466,11 @@ msgstr "Su proveedor de correo electrónico no esta permitido debido a el histor msgid "Register" msgstr "Registrarse" -#: judge/views/register.py:103 +#: judge/views/register.py:101 msgid "Activation Key Invalid" msgstr "Clave de activación inválida" -#: judge/views/register.py:114 +#: judge/views/register.py:112 msgid "Authentication failure" msgstr "Fallo de autenticación" @@ -3461,7 +3482,7 @@ msgstr "Otro" msgid "Language statistics" msgstr "Estadísticas del lenguaje" -#: judge/views/status.py:23 templates/submission/list.html:308 +#: judge/views/status.py:23 templates/submission/list.html:310 msgid "Status" msgstr "Estado" @@ -3644,41 +3665,45 @@ msgstr "j M Y, G:i" msgid "Preparing your data..." msgstr "Preparando tus datos..." -#: judge/views/user.py:298 templates/user/edit-profile.html:345 +#: judge/views/user.py:298 templates/user/edit-profile.html:344 msgid "Download your data" msgstr "Descargar tus datos" +#: judge/views/user.py:347 +msgid "Can't edit profile" +msgstr "No se puede editar el perfil" + #: judge/views/user.py:354 msgid "Updated on site" msgstr "Actualizado en el sitio" -#: judge/views/user.py:387 templates/admin/auth/user/change_form.html:14 -#: templates/admin/auth/user/change_form.html:17 templates/base.html:213 +#: judge/views/user.py:386 templates/admin/auth/user/change_form.html:14 +#: templates/admin/auth/user/change_form.html:17 templates/base.html:223 #: templates/user/user-tabs.html:16 msgid "Edit profile" msgstr "Editar perfil" -#: judge/views/user.py:402 +#: judge/views/user.py:400 msgid "Generated API token for user" msgstr "Token API generado para el usuario" -#: judge/views/user.py:414 +#: judge/views/user.py:412 msgid "Removed API token for user" msgstr "Token API eliminado para el usuario" -#: judge/views/user.py:424 +#: judge/views/user.py:422 msgid "Generated scratch codes for user" msgstr "Códigos de scratch generados para el usuario" -#: judge/views/user.py:430 templates/user/user-list-tabs.html:4 +#: judge/views/user.py:428 templates/user/user-list-tabs.html:4 msgid "Leaderboard" msgstr "Tabla de calificación" -#: judge/views/user.py:491 +#: judge/views/user.py:489 msgid "You have been successfully logged out." msgstr "" -#: judge/views/user.py:508 +#: judge/views/user.py:506 msgid "You have sent too many password reset requests. Please try again later." msgstr "" @@ -3707,13 +3732,13 @@ msgstr "Terminar" #: templates/admin/judge/judge/change_form.html:27 #: templates/admin/judge/judge/change_form.html:30 -#: templates/user/edit-profile.html:355 templates/user/edit-profile.html:358 +#: templates/user/edit-profile.html:372 templates/user/edit-profile.html:375 msgid "Disable" msgstr "Desactivar" #: templates/admin/judge/judge/change_form.html:33 #: templates/admin/judge/judge/change_form.html:36 -#: templates/user/edit-profile.html:386 +#: templates/user/edit-profile.html:403 msgid "Enable" msgstr "Activar" @@ -3733,48 +3758,48 @@ msgstr "Ver los votos del problema" msgid "Edit user" msgstr "Editar usuario" -#: templates/base.html:206 +#: templates/base.html:216 #, python-format msgid "Hello, %(username)s." msgstr "Hola, %(username)s." -#: templates/base.html:215 +#: templates/base.html:225 msgid "Stop impersonating" msgstr "Detener la suplantación" -#: templates/base.html:220 +#: templates/base.html:230 msgid "Log out" msgstr "Cerrar sesión" -#: templates/base.html:229 +#: templates/base.html:239 #: templates/registration/password_reset_complete.html:4 msgid "Log in" msgstr "Iniciar sesión" -#: templates/base.html:230 templates/registration/registration_form.html:181 +#: templates/base.html:240 templates/registration/registration_form.html:177 msgid "or" msgstr "o" -#: templates/base.html:231 +#: templates/base.html:241 msgid "Sign up" msgstr "Registrarse" -#: templates/base.html:243 +#: templates/base.html:253 msgid "spectating" msgstr "modo de espectador" -#: templates/base.html:256 +#: templates/base.html:266 msgid "This site works best with JavaScript enabled." msgstr "Este sitio funciona mejor con JavaScript activado." -#: templates/base.html:283 +#: templates/base.html:293 msgid "proudly powered by **DMOJ**" msgstr "" #: templates/blog/content.html:13 templates/comments/list.html:89 #: templates/comments/list.html:105 templates/contest/contest-tabs.html:23 #: templates/contest/tag-title.html:9 templates/flatpages/admin_link.html:3 -#: templates/license.html:10 templates/problem/data.html:423 +#: templates/license.html:10 templates/problem/data.html:424 #: templates/problem/editorial.html:14 msgid "Edit" msgstr "Editar" @@ -3975,15 +4000,15 @@ msgstr "Puntuación" msgid "No votes" msgstr "No hay votos" -#: templates/common-content.html:32 templates/user/edit-profile.html:219 +#: templates/common-content.html:32 templates/user/edit-profile.html:214 msgid "Click to copy" msgstr "Clic para copiar" -#: templates/common-content.html:33 templates/user/edit-profile.html:220 +#: templates/common-content.html:33 templates/user/edit-profile.html:215 msgid "Copy" msgstr "Copiar" -#: templates/common-content.html:44 templates/user/edit-profile.html:231 +#: templates/common-content.html:44 templates/user/edit-profile.html:226 msgid "Copied!" msgstr "¡Copiado!" @@ -4064,7 +4089,7 @@ msgstr "Calendario" msgid "Info" msgstr "Información" -#: templates/contest/contest-tabs.html:6 templates/submission/list.html:334 +#: templates/contest/contest-tabs.html:6 templates/submission/list.html:336 msgid "Statistics" msgstr "Estadística" @@ -4279,7 +4304,7 @@ msgstr "Tasa de AC" #: templates/contest/contest.html:198 templates/contest/list.html:152 #: templates/contest/list.html:194 templates/contest/list.html:271 -#: templates/problem/list.html:203 templates/problem/list.html:235 +#: templates/problem/list.html:194 templates/problem/list.html:226 msgid "Users" msgstr "Usuarios" @@ -4287,7 +4312,7 @@ msgstr "Usuarios" msgid "Editorials" msgstr "Editoriales" -#: templates/contest/contest.html:226 templates/problem/list.html:229 +#: templates/contest/contest.html:226 templates/problem/list.html:220 msgid "Editorial" msgstr "Editorial" @@ -4452,19 +4477,19 @@ msgstr "Cancelar Descalificación" msgid "Disqualify" msgstr "Descalificar" -#: templates/contest/ranking.html:151 +#: templates/contest/ranking.html:46 msgid "Are you sure you want to disqualify this participation?" msgstr "¿Estás seguro que quieres descalificar a esta participación?" -#: templates/contest/ranking.html:156 +#: templates/contest/ranking.html:51 msgid "Are you sure you want to un-disqualify this participation?" msgstr "¿Estás seguro que quieres cancelar la descalificación de esta participación?" -#: templates/contest/ranking.html:228 +#: templates/contest/ranking.html:124 msgid "View user participation" msgstr "Ver la participación del usuario" -#: templates/contest/ranking.html:232 +#: templates/contest/ranking.html:128 msgid "Show organizations" msgstr "Mostrar organizaciones" @@ -4651,7 +4676,7 @@ msgid "There are no requests to approve." msgstr "No hay solicitudes para aprobar." #: templates/organization/requests/pending.html:17 -#: templates/problem/data.html:387 +#: templates/problem/data.html:388 msgid "Delete?" msgstr "¿Eliminar?" @@ -4687,59 +4712,59 @@ msgstr "Actualizar vista previa" msgid "Enter a new code for the cloned problem:" msgstr "Entra un nuevo código para el problema clonado:" -#: templates/problem/data.html:70 +#: templates/problem/data.html:71 msgid "precision (decimal digits)" msgstr "precisión (dígitos decimales)" -#: templates/problem/data.html:339 +#: templates/problem/data.html:340 msgid "View YAML" msgstr "Ver YAML" -#: templates/problem/data.html:355 +#: templates/problem/data.html:356 msgid "Show columns:" msgstr "Mostrar columnas:" -#: templates/problem/data.html:358 templates/problem/data.html:382 +#: templates/problem/data.html:359 templates/problem/data.html:383 msgid "Output prefix" msgstr "Prefijo de salida" -#: templates/problem/data.html:362 templates/problem/data.html:383 +#: templates/problem/data.html:363 templates/problem/data.html:384 msgid "Output limit" msgstr "Límite de salida" -#: templates/problem/data.html:366 templates/problem/data.html:384 +#: templates/problem/data.html:367 templates/problem/data.html:385 msgid "Checker" msgstr "Verificador" -#: templates/problem/data.html:370 templates/problem/data.html:385 +#: templates/problem/data.html:371 templates/problem/data.html:386 msgid "Generator args" msgstr "Argumentos del generador" -#: templates/problem/data.html:377 +#: templates/problem/data.html:378 msgid "Type" msgstr "Tipo" -#: templates/problem/data.html:378 +#: templates/problem/data.html:379 msgid "Input file" msgstr "Archivo de entrada" -#: templates/problem/data.html:379 +#: templates/problem/data.html:380 msgid "Output file" msgstr "Archivo de salida" -#: templates/problem/data.html:381 +#: templates/problem/data.html:382 msgid "Pretest?" msgstr "¿Prueba previa?" -#: templates/problem/data.html:433 templates/problem/submit.html:256 +#: templates/problem/data.html:434 templates/problem/submit.html:190 msgid "Submit!" msgstr "¡Enviar!" -#: templates/problem/data.html:434 +#: templates/problem/data.html:435 msgid "Add new case" msgstr "Añadir nuevo caso" -#: templates/problem/data.html:436 +#: templates/problem/data.html:437 msgid "Save" msgstr "Guardar" @@ -4757,100 +4782,100 @@ msgid_plural "Authors:" msgstr[0] "Autor:" msgstr[1] "Autores:" -#: templates/problem/list.html:58 +#: templates/problem/list.html:49 msgid "Filter by type..." msgstr "Filtrar por tipo..." -#: templates/problem/list.html:176 +#: templates/problem/list.html:167 msgid "Hot problems" msgstr "Problemas populares" -#: templates/problem/list.html:198 templates/problem/list.html:216 +#: templates/problem/list.html:189 templates/problem/list.html:207 #: templates/problem/search-form.html:35 templates/user/user-problems.html:59 msgid "Category" msgstr "Categoría" -#: templates/problem/list.html:200 templates/problem/list.html:220 +#: templates/problem/list.html:191 templates/problem/list.html:211 msgid "Types" msgstr "Tipos" -#: templates/problem/list.html:227 +#: templates/problem/list.html:218 #, python-format msgid "AC %%" msgstr "AC %%" -#: templates/problem/manage_submission.html:55 +#: templates/problem/manage_submission.html:56 msgid "Leave empty to not filter by language" msgstr "Déjalo vacío para no filtrar por lenguaje" -#: templates/problem/manage_submission.html:60 +#: templates/problem/manage_submission.html:62 msgid "Leave empty to not filter by result" msgstr "Déjalo vacío para no filtrar por resultado" -#: templates/problem/manage_submission.html:79 +#: templates/problem/manage_submission.html:81 msgid "Need valid values for both start and end IDs." msgstr "Se necesita valores válidos para las IDs de inicio y final." -#: templates/problem/manage_submission.html:82 +#: templates/problem/manage_submission.html:84 msgid "End ID must be after start ID." msgstr "La ID final debe ser posterior a la ID de inicio." -#: templates/problem/manage_submission.html:90 +#: templates/problem/manage_submission.html:92 #, python-brace-format msgid "You are about to rejudge {count} submissions. Are you sure you want to do this?" msgstr "Vas a rejuzgar {count} envíos. ¿Estás seguro?" -#: templates/problem/manage_submission.html:96 +#: templates/problem/manage_submission.html:98 msgid "You are about to rejudge a few submissions. Are you sure you want to do this?" msgstr "Vas a rejuzgar bastantes envíos. ¿Estás seguro?" -#: templates/problem/manage_submission.html:115 +#: templates/problem/manage_submission.html:117 msgid "Rejudge Submissions" msgstr "Rejuzgar Envíos" -#: templates/problem/manage_submission.html:120 +#: templates/problem/manage_submission.html:122 msgid "Filter by ID:" msgstr "Filtrar por ID:" -#: templates/problem/manage_submission.html:123 +#: templates/problem/manage_submission.html:125 msgid "Starting ID:" msgstr "ID de inicio:" -#: templates/problem/manage_submission.html:127 +#: templates/problem/manage_submission.html:129 msgid "Ending ID:" msgstr "ID final:" -#: templates/problem/manage_submission.html:131 +#: templates/problem/manage_submission.html:133 msgid "This range includes both endpoints." msgstr "Este rango incluye ambos puntos." -#: templates/problem/manage_submission.html:134 +#: templates/problem/manage_submission.html:136 msgid "Filter by language:" msgstr "Filtrar por lenguaje:" -#: templates/problem/manage_submission.html:150 +#: templates/problem/manage_submission.html:152 msgid "Rejudge selected submissions" msgstr "Rejuzgar envíos seleccionados" -#: templates/problem/manage_submission.html:157 +#: templates/problem/manage_submission.html:159 msgid "Rescore Everything" msgstr "Recalificar Todo" -#: templates/problem/manage_submission.html:158 +#: templates/problem/manage_submission.html:160 #, python-format msgid "This will rescore %(count)s submission." msgid_plural "This will rescore %(count)s submissions." msgstr[0] "Vas a recalificar %(count)s envío." msgstr[1] "Vas a recalificar %(count)s envíos." -#: templates/problem/manage_submission.html:166 +#: templates/problem/manage_submission.html:168 #, python-format msgid "Are you sure you want to rescore %(count)s submission?" msgid_plural "Are you sure you want to rescore %(count)s submissions?" msgstr[0] "¿Estás seguro de que quieres recalificar %(count)s envío?" msgstr[1] "¿Estás seguro de que quieres recalificar %(count)s envíos?" -#: templates/problem/manage_submission.html:171 +#: templates/problem/manage_submission.html:173 msgid "Rescore all submissions" msgstr "Recalificar todos los envíos" @@ -5013,8 +5038,8 @@ msgstr "Tipos de problema" msgid "Point range" msgstr "Rango de puntos" -#: templates/problem/search-form.html:68 templates/submission/list.html:326 -#: templates/ticket/list.html:188 +#: templates/problem/search-form.html:68 templates/submission/list.html:328 +#: templates/ticket/list.html:189 msgid "Go" msgstr "Ir" @@ -5023,7 +5048,7 @@ msgid "Random" msgstr "Aleatorio" #: templates/problem/submission-diff.html:62 -#: templates/status/language-list.html:34 templates/ticket/list.html:199 +#: templates/status/language-list.html:34 templates/ticket/list.html:200 msgid "ID" msgstr "Identificación" @@ -5035,31 +5060,31 @@ msgstr "Resultado" msgid "Date" msgstr "Fecha" -#: templates/problem/submit.html:117 +#: templates/problem/submit.html:118 msgid "Your source code must contain at most 65536 characters." msgstr "Tu código fuente debe contener como máximo 65536 caracteres." -#: templates/problem/submit.html:204 +#: templates/problem/submit.html:138 msgid "Warning!" msgstr "¡Advertencia!" -#: templates/problem/submit.html:205 +#: templates/problem/submit.html:139 #, python-format msgid "Your default language, %(language)s, is unavailable for this problem and has been deselected." msgstr "Su lenguaje predeterminado, %(language)s, no está disponible para este problema y no se seleccionó." -#: templates/problem/submit.html:213 +#: templates/problem/submit.html:147 #, python-format msgid "You have %(left)s submission left" msgid_plural "You have %(left)s submissions left" msgstr[0] "Te queda %(left)s envío" msgstr[1] "Te quedan %(left)s envíos" -#: templates/problem/submit.html:218 +#: templates/problem/submit.html:152 msgid "You have 0 submissions left" msgstr "Te quedan 0 envíos" -#: templates/problem/submit.html:252 +#: templates/problem/submit.html:186 msgid "No judge is available for this problem." msgstr "Ningún juez esta disponible para este problema." @@ -5267,7 +5292,7 @@ msgstr "El equipo de %(site_name)s" msgid "Password reset on %(site_name)s" msgstr "Contraseña se reinicia en %(site_name)s" -#: templates/registration/profile_creation.html:44 +#: templates/registration/profile_creation.html:38 #: templates/registration/username_select.html:7 msgid "Continue >" msgstr "Continuar >" @@ -5280,36 +5305,36 @@ msgstr "El registro está cerrado actualmente. Ponte en contacto con un administ msgid "You have successfully been registered. An email has been sent to the email address you provided to confirm your registration." msgstr "Has sido registrado con éxito. Se le ha enviado un correo electrónico para confirmar su registro." -#: templates/registration/registration_form.html:170 +#: templates/registration/registration_form.html:166 msgid "(again, for confirmation)" msgstr "(de nuevo, por confirmación)" -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "(select your closest major city)" msgstr "(seleccione la ciudad importante más cercana)" -#: templates/registration/registration_form.html:182 +#: templates/registration/registration_form.html:178 msgid "pick from map" msgstr "seleccionar en el mapa" -#: templates/registration/registration_form.html:187 +#: templates/registration/registration_form.html:183 msgid "Default language" msgstr "Lenguaje por defecto" -#: templates/registration/registration_form.html:190 +#: templates/registration/registration_form.html:186 msgid "Affiliated organizations" msgstr "Organizaciones afiliadas" -#: templates/registration/registration_form.html:199 -#: templates/user/edit-profile.html:322 +#: templates/registration/registration_form.html:195 +#: templates/user/edit-profile.html:321 msgid "Notify me about upcoming contests" msgstr "Notificarme sobre los próximos concursos" -#: templates/registration/registration_form.html:213 +#: templates/registration/registration_form.html:209 msgid "By registering, you agree to our [Terms & Conditions][0]." msgstr "Al registrarte, estás aceptando nuestros [Términos y Condiciones][0]." -#: templates/registration/registration_form.html:216 +#: templates/registration/registration_form.html:212 msgid "Register!" msgstr "¡Registrarse!" @@ -5351,17 +5376,17 @@ msgid "Enable Two Factor Authentication" msgstr "Habilitar Autenticación en Dos Pasos" #: templates/registration/totp_enable.html:98 -#: templates/user/edit-profile.html:374 +#: templates/user/edit-profile.html:391 msgid "Below is a list of one-time use scratch codes." msgstr "" #: templates/registration/totp_enable.html:99 -#: templates/user/edit-profile.html:375 +#: templates/user/edit-profile.html:392 msgid "These codes can only be used once and are for emergency use." msgstr "" #: templates/registration/totp_enable.html:100 -#: templates/user/edit-profile.html:376 +#: templates/user/edit-profile.html:393 msgid "You can use these codes to login to your account or disable two-factor authentication." msgstr "" @@ -5370,7 +5395,7 @@ msgid "If you ever need more scratch codes, you can regenerate them on the edit msgstr "" #: templates/registration/totp_enable.html:102 -#: templates/user/edit-profile.html:378 +#: templates/user/edit-profile.html:395 msgid "Please write these down and keep them in a secure location." msgstr "" @@ -5388,12 +5413,12 @@ msgid "If you lose your authentication device and are unable to use your scratch msgstr "" #: templates/registration/two_factor_auth.html:33 -#: templates/user/edit-profile.html:164 +#: templates/user/edit-profile.html:159 msgid "WebAuthn is not supported by your browser." msgstr "WebAuthn no es compatible con su navegador." #: templates/registration/two_factor_auth.html:54 -#: templates/user/edit-profile.html:188 +#: templates/user/edit-profile.html:183 msgid "Failed to contact server." msgstr "Error al contactar con el servidor." @@ -5491,23 +5516,23 @@ msgstr "Información de error" msgid "Are you sure you want to rejudge?" msgstr "¿Está seguro que quiere rejuzgar?" -#: templates/submission/list.html:74 +#: templates/submission/list.html:75 msgid "Filter by status..." msgstr "Filtrar por estatus..." -#: templates/submission/list.html:80 +#: templates/submission/list.html:82 msgid "Filter by language..." msgstr "Filtrar por lenguaje..." -#: templates/submission/list.html:304 +#: templates/submission/list.html:306 msgid "Filter submissions" msgstr "Filtrar envíos" -#: templates/submission/list.html:340 +#: templates/submission/list.html:342 msgid "Total:" msgstr "Total:" -#: templates/submission/list.html:350 +#: templates/submission/list.html:352 msgid "You were disconnected. Refresh to show latest updates." msgstr "Estuviste desconectado. Actualiza para mostrar las últimas actualizaciones." @@ -5671,33 +5696,33 @@ msgstr "Reabierto: " msgid "Closed: " msgstr "Cerrado: " -#: templates/ticket/list.html:156 +#: templates/ticket/list.html:157 msgid "Use desktop notification" msgstr "Usar notificaciones de escritorio" -#: templates/ticket/list.html:162 +#: templates/ticket/list.html:163 msgid "Hide closed tickets" msgstr "Ocultar tickets cerrados" -#: templates/ticket/list.html:167 +#: templates/ticket/list.html:168 msgid "Show my tickets only" msgstr "Solo mostrar mis tickets" -#: templates/ticket/list.html:171 +#: templates/ticket/list.html:172 msgid "Filing user" msgstr "Usuario que envía" -#: templates/ticket/list.html:180 templates/ticket/ticket.html:196 +#: templates/ticket/list.html:181 templates/ticket/ticket.html:196 msgid "Assignee" msgid_plural "Assignees" msgstr[0] "Asignado" msgstr[1] "Asignados" -#: templates/ticket/list.html:200 +#: templates/ticket/list.html:201 msgid "Title" msgstr "Título" -#: templates/ticket/list.html:202 +#: templates/ticket/list.html:203 msgid "Assignees" msgstr "Asignados" @@ -5748,131 +5773,135 @@ msgstr "Notas de asignado" msgid "Nothing here." msgstr "Nada aquí." -#: templates/user/base-users-table.html:3 +#: templates/user/base-users-table.html:4 msgid "Rank" msgstr "Rango" -#: templates/user/base-users.html:14 templates/user/base-users.html:57 +#: templates/user/base-users.html:15 templates/user/base-users.html:58 msgid "Search by handle..." msgstr "Buscar por nombre do usuario..." -#: templates/user/edit-profile.html:107 +#: templates/user/edit-profile.html:102 msgid "The administrators for this site require all the staff to have Two-factor Authentication enabled, so it may not be disabled at this time." msgstr "" -#: templates/user/edit-profile.html:112 +#: templates/user/edit-profile.html:107 msgid "Are you sure you want to generate or regenerate your API token?" msgstr "¿Estás seguro de que quieres generar o regenerar tu token API?" -#: templates/user/edit-profile.html:113 +#: templates/user/edit-profile.html:108 msgid "This will invalidate any previous API tokens." msgstr "Esto invalidará cualquier token de API anterior." -#: templates/user/edit-profile.html:114 +#: templates/user/edit-profile.html:109 msgid "It also allows access to your account without Two-factor Authentication." msgstr "También permite el acceso a su cuenta sin autenticación de dos pasos." -#: templates/user/edit-profile.html:115 +#: templates/user/edit-profile.html:110 msgid "You will not be able to view your API token after you leave this page!" msgstr "¡No podrás ver tu token API después de salir de esta página!" -#: templates/user/edit-profile.html:116 templates/user/edit-profile.html:210 +#: templates/user/edit-profile.html:111 templates/user/edit-profile.html:205 msgid "Generating..." msgstr "Generando..." -#: templates/user/edit-profile.html:130 templates/user/edit-profile.html:398 +#: templates/user/edit-profile.html:125 templates/user/edit-profile.html:355 msgid "Remove" msgstr "Eliminar" -#: templates/user/edit-profile.html:140 +#: templates/user/edit-profile.html:135 msgid "Are you sure you want to remove your API token?" msgstr "¿Estás seguro de que quieres eliminar tu token de API?" -#: templates/user/edit-profile.html:147 templates/user/edit-profile.html:370 -#: templates/user/edit-profile.html:402 +#: templates/user/edit-profile.html:142 templates/user/edit-profile.html:359 +#: templates/user/edit-profile.html:387 msgid "Generate" msgstr "Generar" -#: templates/user/edit-profile.html:193 +#: templates/user/edit-profile.html:188 msgid "Are you sure you want to delete this security key?" msgstr "¿Está seguro que desea eliminar esta clave de seguridad?" -#: templates/user/edit-profile.html:207 +#: templates/user/edit-profile.html:202 msgid "Are you sure you want to generate or regenerate a new set of scratch codes?" msgstr "" -#: templates/user/edit-profile.html:208 +#: templates/user/edit-profile.html:203 msgid "This will invalidate any previous scratch codes you have." msgstr "" -#: templates/user/edit-profile.html:209 templates/user/edit-profile.html:379 +#: templates/user/edit-profile.html:204 templates/user/edit-profile.html:396 msgid "You will not be able to view your scratch codes after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:278 +#: templates/user/edit-profile.html:273 msgid "Self-description:" msgstr "Descripción propia:" -#: templates/user/edit-profile.html:285 +#: templates/user/edit-profile.html:280 msgid "Select your closest major city" msgstr "Seleccione la ciudad importante más cercana" -#: templates/user/edit-profile.html:286 +#: templates/user/edit-profile.html:281 msgid "Time zone:" msgstr "Zona horaria:" -#: templates/user/edit-profile.html:290 +#: templates/user/edit-profile.html:285 msgid "Language:" msgstr "Idioma:" -#: templates/user/edit-profile.html:294 +#: templates/user/edit-profile.html:289 +msgid "Site theme:" +msgstr "Tema del sitio:" + +#: templates/user/edit-profile.html:293 msgid "Editor theme:" msgstr "Tema editor:" -#: templates/user/edit-profile.html:299 +#: templates/user/edit-profile.html:298 msgid "Math engine:" msgstr "Motor matemático:" -#: templates/user/edit-profile.html:308 +#: templates/user/edit-profile.html:307 msgid "Affiliated organizations:" msgstr "Organizaciones afiliadas:" -#: templates/user/edit-profile.html:334 +#: templates/user/edit-profile.html:333 msgid "Change your avatar" msgstr "Cambiar tu avatar" -#: templates/user/edit-profile.html:339 +#: templates/user/edit-profile.html:338 msgid "Change your password" msgstr "Cambiar tu contraseña" -#: templates/user/edit-profile.html:352 -msgid "Two-factor Authentication is enabled:" -msgstr "Autenticación en dos pasos habilitada:" +#: templates/user/edit-profile.html:350 +msgid "API token:" +msgstr "Token API:" + +#: templates/user/edit-profile.html:356 templates/user/edit-profile.html:384 +msgid "Hidden" +msgstr "Oculto" + +#: templates/user/edit-profile.html:369 +msgid "Two-factor authentication is enabled:" +msgstr "" -#: templates/user/edit-profile.html:360 +#: templates/user/edit-profile.html:377 msgid "Refresh" msgstr "" -#: templates/user/edit-profile.html:363 +#: templates/user/edit-profile.html:380 msgid "Scratch codes:" msgstr "Códigos scratch:" -#: templates/user/edit-profile.html:367 templates/user/edit-profile.html:399 -msgid "Hidden" -msgstr "Oculto" - -#: templates/user/edit-profile.html:377 +#: templates/user/edit-profile.html:394 msgid "If you ever need more scratch codes, you can regenerate them here." msgstr "" -#: templates/user/edit-profile.html:385 +#: templates/user/edit-profile.html:402 msgid "Two-factor Authentication is disabled:" msgstr "Autenticación en dos pasos deshabilitada:" -#: templates/user/edit-profile.html:393 -msgid "API token:" -msgstr "Token API:" - #: templates/user/edit-profile.html:410 msgid "Security keys:" msgstr "Claves de seguridad:" diff --git a/locale/es/LC_MESSAGES/djangojs.po b/locale/es/LC_MESSAGES/djangojs.po index 0f8f42814b..3ce0e7a8c3 100644 --- a/locale/es/LC_MESSAGES/djangojs.po +++ b/locale/es/LC_MESSAGES/djangojs.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-20 23:43+0000\n" -"PO-Revision-Date: 2023-01-11 00:49\n" +"POT-Creation-Date: 2023-01-23 05:23+0000\n" +"PO-Revision-Date: 2023-01-24 00:52\n" "Last-Translator: \n" "Language-Team: Spanish\n" "Language: es_ES\n" @@ -17,14 +17,14 @@ msgstr "" "X-Crowdin-File: djangojs.po\n" "X-Crowdin-File-ID: 12\n" -#: resources/common.js:195 +#: resources/common.js:194 msgctxt "time format with day" msgid "%d day %h:%m:%s" msgid_plural "%d days %h:%m:%s" msgstr[0] "%d día %h:%m:%s" msgstr[1] "%d días %h:%m:%s" -#: resources/common.js:198 +#: resources/common.js:197 msgctxt "time format without day" msgid "%h:%m:%s" msgstr "%h:%m:%s" diff --git a/locale/fr/LC_MESSAGES/django.po b/locale/fr/LC_MESSAGES/django.po index 513698b83b..c56d41ef7f 100644 --- a/locale/fr/LC_MESSAGES/django.po +++ b/locale/fr/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-20 23:04+0000\n" -"PO-Revision-Date: 2023-01-22 00:52\n" +"POT-Creation-Date: 2023-02-17 22:33+0000\n" +"PO-Revision-Date: 2023-02-18 00:49\n" "Last-Translator: \n" "Language-Team: French\n" "Language: fr_FR\n" @@ -17,91 +17,91 @@ msgstr "" "X-Crowdin-File: django.po\n" "X-Crowdin-File-ID: 10\n" -#: dmoj/settings.py:380 +#: dmoj/settings.py:392 msgid "Catalan" msgstr "Catalan" -#: dmoj/settings.py:381 +#: dmoj/settings.py:393 msgid "German" msgstr "Allemand" -#: dmoj/settings.py:382 +#: dmoj/settings.py:394 msgid "Greek" msgstr "Grec" -#: dmoj/settings.py:383 +#: dmoj/settings.py:395 msgid "English" msgstr "Anglais" -#: dmoj/settings.py:384 +#: dmoj/settings.py:396 msgid "Spanish" msgstr "Espagnol" -#: dmoj/settings.py:385 +#: dmoj/settings.py:397 msgid "French" msgstr "Français" -#: dmoj/settings.py:386 +#: dmoj/settings.py:398 msgid "Croatian" msgstr "Croate" -#: dmoj/settings.py:387 +#: dmoj/settings.py:399 msgid "Hungarian" msgstr "Hongrois" -#: dmoj/settings.py:388 +#: dmoj/settings.py:400 msgid "Japanese" msgstr "Japonais" -#: dmoj/settings.py:389 +#: dmoj/settings.py:401 msgid "Korean" msgstr "Coréen" -#: dmoj/settings.py:390 +#: dmoj/settings.py:402 msgid "Brazilian Portuguese" msgstr "Portugais Brésilien" -#: dmoj/settings.py:391 +#: dmoj/settings.py:403 msgid "Romanian" msgstr "Roumain" -#: dmoj/settings.py:392 +#: dmoj/settings.py:404 msgid "Russian" msgstr "Russe" -#: dmoj/settings.py:393 +#: dmoj/settings.py:405 msgid "Serbian (Latin)" msgstr "Serbe (Latin)" -#: dmoj/settings.py:394 +#: dmoj/settings.py:406 msgid "Turkish" msgstr "Turc" -#: dmoj/settings.py:395 +#: dmoj/settings.py:407 msgid "Vietnamese" msgstr "Vietnamien" -#: dmoj/settings.py:396 +#: dmoj/settings.py:408 msgid "Simplified Chinese" msgstr "Chinois Simplifié" -#: dmoj/settings.py:397 +#: dmoj/settings.py:409 msgid "Traditional Chinese" msgstr "Chinois Traditionnel" -#: dmoj/urls.py:32 +#: dmoj/urls.py:31 msgid "Activation Successful!" msgstr "Activation Réussie !" -#: dmoj/urls.py:40 +#: dmoj/urls.py:39 msgid "Registration Completed" msgstr "Inscription Terminée" -#: dmoj/urls.py:44 +#: dmoj/urls.py:43 msgid "Registration Not Allowed" msgstr "Inscription Non Autorisée" -#: dmoj/urls.py:93 templates/base.html:183 +#: dmoj/urls.py:92 templates/base.html:193 msgid "Home" msgstr "Accueil" @@ -140,8 +140,8 @@ msgid "Included contests" msgstr "Concours inclus" #: judge/admin/contest.py:65 templates/contest/contest.html:195 -#: templates/contest/moss.html:41 templates/problem/list.html:197 -#: templates/problem/list.html:213 templates/user/user-problems.html:58 +#: templates/contest/moss.html:41 templates/problem/list.html:188 +#: templates/problem/list.html:204 templates/user/user-problems.html:58 #: templates/user/user-problems.html:102 msgid "Problem" msgstr "Problème" @@ -152,7 +152,7 @@ msgstr "Problème" msgid "Problems" msgstr "Problèmes" -#: judge/admin/contest.py:76 judge/admin/submission.py:249 +#: judge/admin/contest.py:76 judge/admin/submission.py:250 #: templates/admin/judge/submission/change_form.html:14 #: templates/admin/judge/submission/change_form.html:17 #: templates/submission/source.html:34 templates/submission/status.html:89 @@ -231,29 +231,29 @@ msgstr[1] "%d concours ont été déverrouillés avec succès." msgid "Unlock contest submissions" msgstr "Déverrouiller les soumissions au concours" -#: judge/admin/contest.py:280 judge/admin/submission.py:175 +#: judge/admin/contest.py:280 judge/admin/submission.py:176 #, python-format msgid "%d submission was successfully scheduled for rejudging." msgid_plural "%d submissions were successfully scheduled for rejudging." msgstr[0] "%d soumission a été programmée pour être rejugée avec succès." msgstr[1] "%d soumissions ont été programmées pour être rejugées avec succès." -#: judge/admin/contest.py:356 +#: judge/admin/contest.py:358 #, python-format msgid "%d participation recalculated." msgid_plural "%d participations recalculated." msgstr[0] "%d participation recalculée." msgstr[1] "%d participations recalculées." -#: judge/admin/contest.py:359 +#: judge/admin/contest.py:361 msgid "Recalculate results" msgstr "Recalculer les résultats" -#: judge/admin/contest.py:363 judge/admin/organization.py:113 +#: judge/admin/contest.py:365 judge/admin/organization.py:113 msgid "username" msgstr "nom d'utilisateur" -#: judge/admin/contest.py:368 templates/base.html:249 +#: judge/admin/contest.py:370 templates/base.html:259 msgid "virtual" msgstr "virtuel" @@ -266,8 +266,8 @@ msgid "Summary" msgstr "Résumé" #: judge/admin/interface.py:124 judge/models/contest.py:491 -#: judge/models/contest.py:623 judge/models/profile.py:331 -#: judge/models/profile.py:362 judge/models/submission.py:67 +#: judge/models/contest.py:623 judge/models/profile.py:347 +#: judge/models/profile.py:378 judge/models/submission.py:67 #: judge/models/ticket.py:32 msgid "user" msgstr "utilisateur" @@ -298,8 +298,8 @@ msgid "Taxonomy" msgstr "Taxonomie" #: judge/admin/problem.py:133 templates/contest/contest.html:196 -#: templates/problem/data.html:380 templates/problem/list.html:202 -#: templates/problem/list.html:224 templates/user/base-users-table.html:10 +#: templates/problem/data.html:381 templates/problem/list.html:193 +#: templates/problem/list.html:215 templates/user/base-users-table.html:11 #: templates/user/user-problems.html:60 msgid "Points" msgstr "Points" @@ -308,9 +308,9 @@ msgstr "Points" msgid "Limits" msgstr "Limites" -#: judge/admin/problem.py:135 judge/admin/submission.py:243 +#: judge/admin/problem.py:135 judge/admin/submission.py:244 #: templates/problem/submission-diff.html:65 templates/stats/tabs.html:4 -#: templates/submission/list.html:317 +#: templates/submission/list.html:319 msgid "Language" msgstr "Langage" @@ -367,19 +367,19 @@ msgstr "problème" msgid "timezone" msgstr "fuseau horaire" -#: judge/admin/profile.py:98 judge/admin/submission.py:222 +#: judge/admin/profile.py:98 judge/admin/submission.py:223 #: templates/organization/requests/log.html:9 #: templates/organization/requests/pending.html:12 -#: templates/ticket/list.html:201 +#: templates/ticket/list.html:202 msgid "User" msgstr "Utilisateur" -#: judge/admin/profile.py:103 templates/registration/registration_form.html:149 +#: judge/admin/profile.py:103 templates/registration/registration_form.html:145 msgid "Email" msgstr "Courriel" #: judge/admin/profile.py:108 judge/views/register.py:28 -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "Timezone" msgstr "Fuseau horaire" @@ -398,26 +398,26 @@ msgstr[1] "%d utilisateurs ont des notes recalculées." msgid "Recalculate scores" msgstr "Recalculer les scores" -#: judge/admin/runtime.py:50 templates/user/edit-profile.html:124 -#: templates/user/edit-profile.html:246 templates/user/edit-profile.html:366 -#: templates/user/edit-profile.html:396 +#: judge/admin/runtime.py:52 templates/user/edit-profile.html:119 +#: templates/user/edit-profile.html:241 templates/user/edit-profile.html:353 +#: templates/user/edit-profile.html:383 msgid "Regenerate" msgstr "Régénérer" -#: judge/admin/runtime.py:64 +#: judge/admin/runtime.py:66 msgid "Description" msgstr "Description" -#: judge/admin/runtime.py:65 +#: judge/admin/runtime.py:67 msgid "Information" msgstr "Information" -#: judge/admin/runtime.py:66 +#: judge/admin/runtime.py:68 msgid "Capabilities" msgstr "Capacités" #: judge/admin/submission.py:24 judge/admin/submission.py:43 -#: judge/admin/submission.py:232 +#: judge/admin/submission.py:233 msgid "None" msgstr "Rien" @@ -449,57 +449,57 @@ msgctxt "contest problem" msgid "%(problem)s in %(contest)s" msgstr "%(problem)s dans %(contest)s" -#: judge/admin/submission.py:160 judge/admin/submission.py:182 +#: judge/admin/submission.py:161 judge/admin/submission.py:183 msgid "You do not have the permission to rejudge submissions." msgstr "Vous n'avez pas le droit de rejuger des soumissions." -#: judge/admin/submission.py:166 +#: judge/admin/submission.py:167 msgid "You do not have the permission to rejudge THAT many submissions." msgstr "Vous n'avez pas le droit de rejuger AUTANT de soumissions." -#: judge/admin/submission.py:178 +#: judge/admin/submission.py:179 msgid "Rejudge the selected submissions" msgstr "Rejuger les soumissions sélectionnées" -#: judge/admin/submission.py:204 judge/views/problem_manage.py:129 +#: judge/admin/submission.py:205 judge/views/problem_manage.py:129 #, python-format msgid "%d submission was successfully rescored." msgid_plural "%d submissions were successfully rescored." msgstr[0] "%d soumission a été recomptée avec succès." msgstr[1] "%d soumissions ont été recomptées avec succès." -#: judge/admin/submission.py:207 +#: judge/admin/submission.py:208 msgid "Rescore the selected submissions" msgstr "Recompter les soumissions sélectionnées" -#: judge/admin/submission.py:211 +#: judge/admin/submission.py:212 msgid "Problem code" msgstr "Code du problème" -#: judge/admin/submission.py:216 +#: judge/admin/submission.py:217 msgid "Problem name" msgstr "Nom du problème" -#: judge/admin/submission.py:226 templates/organization/requests/log.html:10 +#: judge/admin/submission.py:227 templates/organization/requests/log.html:10 #: templates/organization/requests/pending.html:13 msgid "Time" msgstr "Temps" -#: judge/admin/submission.py:234 +#: judge/admin/submission.py:235 #, python-format msgid "%d KB" msgstr "%d Ko" -#: judge/admin/submission.py:236 +#: judge/admin/submission.py:237 #, python-format msgid "%.2f MB" msgstr "%.2f Mo" -#: judge/admin/submission.py:238 +#: judge/admin/submission.py:239 msgid "Memory" msgstr "Mémoire" -#: judge/admin/submission.py:247 +#: judge/admin/submission.py:248 msgid "Locked" msgstr "Verrouillé" @@ -524,6 +524,7 @@ msgid "Comment body" msgstr "Corps du commentaire" #: judge/comments.py:47 judge/views/comment.py:40 judge/views/ticket.py:46 +#: judge/views/user.py:347 msgid "Your part is silent, little toad." msgstr "Ton personnage est muet, le crapaud." @@ -631,7 +632,7 @@ msgstr "Jeton d'authentification à deux facteurs invalide." msgid "Scratch codes must be 16 Base32 characters." msgstr "Les codes scratch doivent être 16 caractères de Base32." -#: judge/forms.py:39 judge/forms.py:265 +#: judge/forms.py:39 judge/forms.py:266 msgid "Invalid scratch code." msgstr "Code scratch invalide." @@ -654,83 +655,83 @@ msgid_plural "You may not be part of more than {count} public organizations." msgstr[0] "Vous ne pouvez pas faire partie de plus de {count} organisation publique." msgstr[1] "Vous ne pouvez pas faire partie de plus de {count} organisations publiques." -#: judge/forms.py:98 +#: judge/forms.py:99 msgid "Download comments?" msgstr "Télécharger les commentaires ?" -#: judge/forms.py:99 +#: judge/forms.py:100 msgid "Download submissions?" msgstr "Télécharger les soumissions ?" -#: judge/forms.py:100 +#: judge/forms.py:101 msgid "Filter by problem code glob:" msgstr "Filtrer par code de problème glob :" -#: judge/forms.py:104 +#: judge/forms.py:105 msgid "Leave empty to include all submissions" msgstr "Laisser vide pour inclure toutes les soumissions" -#: judge/forms.py:107 templates/problem/manage_submission.html:142 +#: judge/forms.py:108 templates/problem/manage_submission.html:144 msgid "Filter by result:" msgstr "Filtrer par résultat :" -#: judge/forms.py:113 +#: judge/forms.py:114 msgid "Please select at least one thing to download." msgstr "Veuillez sélectionner au moins une chose à télécharger." -#: judge/forms.py:139 +#: judge/forms.py:140 msgid "Any judge" msgstr "N'importe quel juge" -#: judge/forms.py:160 judge/views/register.py:25 +#: judge/forms.py:161 judge/views/register.py:25 #: templates/problem/submission-diff.html:63 -#: templates/registration/registration_form.html:143 -#: templates/user/base-users-table.html:5 +#: templates/registration/registration_form.html:139 +#: templates/user/base-users-table.html:6 msgid "Username" msgstr "Nom d'utilisateur" -#: judge/forms.py:161 templates/registration/registration_form.html:155 -#: templates/registration/registration_form.html:169 +#: judge/forms.py:162 templates/registration/registration_form.html:151 +#: templates/registration/registration_form.html:165 msgid "Password" msgstr "Mot de passe" -#: judge/forms.py:193 +#: judge/forms.py:194 msgid "Invalid code length." msgstr "Longueur de code invalide." -#: judge/forms.py:224 +#: judge/forms.py:225 msgid "Invalid WebAuthn response." msgstr "Réponse WebAuthn invalide." -#: judge/forms.py:227 +#: judge/forms.py:228 msgid "No WebAuthn challenge issued." msgstr "Aucun défi WebAuthn n'a été lancé." -#: judge/forms.py:233 +#: judge/forms.py:234 msgid "Invalid WebAuthn credential ID." msgstr "" -#: judge/forms.py:263 +#: judge/forms.py:264 msgid "Invalid two-factor authentication token or scratch code." msgstr "Jeton d'authentification à deux facteurs ou code scratch invalide." -#: judge/forms.py:267 +#: judge/forms.py:268 msgid "Must specify either totp_token or webauthn_response." msgstr "Doit spécifier soit totp_token ou webauthn_response." -#: judge/forms.py:271 judge/models/problem.py:118 +#: judge/forms.py:272 judge/models/problem.py:118 msgid "Problem code must be ^[a-z0-9]+$" msgstr "Le code du problème doit être ^[a-z0-9]+$" -#: judge/forms.py:276 +#: judge/forms.py:277 msgid "Problem with code already exists." msgstr "Le problème avec le code existe déjà." -#: judge/forms.py:281 judge/models/contest.py:68 +#: judge/forms.py:282 judge/models/contest.py:68 msgid "Contest id must be ^[a-z0-9]+$" msgstr "L'id du concours doit être ^[a-z0-9]+$" -#: judge/forms.py:286 +#: judge/forms.py:287 msgid "Contest with key already exists." msgstr "Le concours avec la clé existe déjà." @@ -753,26 +754,42 @@ msgstr "le {time}" msgid "Unrated" msgstr "Non évalué" -#: judge/models/choices.py:59 +#: judge/models/choices.py:24 +msgid "Follow site theme" +msgstr "" + +#: judge/models/choices.py:60 msgid "Leave as LaTeX" msgstr "Laisser en tant que LaTeX" -#: judge/models/choices.py:60 +#: judge/models/choices.py:61 msgid "SVG only" msgstr "SVG seulement" -#: judge/models/choices.py:61 +#: judge/models/choices.py:62 msgid "MathML only" msgstr "MathML seulement" -#: judge/models/choices.py:62 +#: judge/models/choices.py:63 msgid "MathJax with SVG fallback" msgstr "MathJax avec repli SVG" -#: judge/models/choices.py:63 +#: judge/models/choices.py:64 msgid "Detect best quality" msgstr "Détecter la meilleure qualité" +#: judge/models/choices.py:70 +msgid "Follow system default" +msgstr "Suivre le système par défaut" + +#: judge/models/choices.py:71 +msgid "Light" +msgstr "Clair" + +#: judge/models/choices.py:72 +msgid "Dark" +msgstr "Sombre" + #: judge/models/comment.py:25 msgid "Page code must be ^[pcs]:[a-z0-9]+$|^b:\\d+$" msgstr "Le code de la page doit être ^[pcs]:[a-z0-9]+$|^b:\\d+$" @@ -1885,8 +1902,8 @@ msgid "Non-trailing spaces" msgstr "Pas d'espace en fin de ligne" #: judge/models/problem_data.py:28 -msgid "Unordered" -msgstr "Non ordonné" +msgid "Sorted" +msgstr "Trié" #: judge/models/problem_data.py:29 msgid "Byte identical" @@ -2057,7 +2074,7 @@ msgid "Edit all organizations" msgstr "Modifier toutes les organisations" #: judge/models/profile.py:98 judge/models/profile.py:103 -#: judge/models/profile.py:160 judge/models/profile.py:363 +#: judge/models/profile.py:161 judge/models/profile.py:379 msgid "organization" msgstr "organisation" @@ -2098,7 +2115,7 @@ msgstr "membres" msgid "%(class)s in %(organization)s" msgstr "%(class)s dans %(organization)s" -#: judge/models/profile.py:142 judge/models/profile.py:371 +#: judge/models/profile.py:142 judge/models/profile.py:387 msgid "class" msgstr "classe" @@ -2123,26 +2140,30 @@ msgid "Ace theme" msgstr "Thème Ace" #: judge/models/profile.py:158 +msgid "site theme" +msgstr "thème du site" + +#: judge/models/profile.py:159 msgid "last access time" msgstr "heure du dernier accès" -#: judge/models/profile.py:159 +#: judge/models/profile.py:160 msgid "last IP" msgstr "dernière IP" -#: judge/models/profile.py:162 +#: judge/models/profile.py:163 msgid "display rank" msgstr "rang d'affichage" -#: judge/models/profile.py:164 +#: judge/models/profile.py:165 msgid "Normal User" msgstr "Utilisateur Normal" -#: judge/models/profile.py:165 +#: judge/models/profile.py:166 msgid "Problem Setter" msgstr "Créateur de Problèmes" -#: judge/models/profile.py:166 templates/base.html:211 +#: judge/models/profile.py:167 templates/base.html:221 #: templates/comments/list.html:97 templates/contest/contest-list-tabs.html:25 #: templates/contest/ranking-table.html:51 #: templates/problem/problem-list-tabs.html:6 @@ -2152,200 +2173,200 @@ msgstr "Créateur de Problèmes" msgid "Admin" msgstr "Admin" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "comment mute" msgstr "sourdine des commentaires" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "Some users are at their best when silent." msgstr "Certains utilisateurs sont au mieux de leur forme lorsqu'ils sont silencieux." -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "unlisted user" msgstr "utilisateur non listé" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "User will not be ranked." msgstr "L'utilisateur ne sera pas classé." -#: judge/models/profile.py:172 +#: judge/models/profile.py:173 msgid "banned from voting on problem point values" msgstr "" -#: judge/models/profile.py:173 +#: judge/models/profile.py:174 msgid "User will not be able to vote on problems' point values." msgstr "" -#: judge/models/profile.py:177 +#: judge/models/profile.py:178 msgid "user script" msgstr "script utilisateur" -#: judge/models/profile.py:178 +#: judge/models/profile.py:179 msgid "User-defined JavaScript for site customization." msgstr "JavaScript défini par l'utilisateur pour la personnalisation du site." -#: judge/models/profile.py:179 +#: judge/models/profile.py:180 msgid "current contest" msgstr "concours en cours" -#: judge/models/profile.py:181 +#: judge/models/profile.py:182 msgid "math engine" msgstr "moteur mathématique" -#: judge/models/profile.py:183 +#: judge/models/profile.py:184 msgid "The rendering engine used to render math." msgstr "Le moteur de rendu utilisé pour rendre les mathématiques." -#: judge/models/profile.py:184 +#: judge/models/profile.py:185 msgid "TOTP 2FA enabled" msgstr "" -#: judge/models/profile.py:185 +#: judge/models/profile.py:186 msgid "Check to enable TOTP-based two-factor authentication." msgstr "Cochez pour activer l'authentification à deux facteurs basée sur TOTP." -#: judge/models/profile.py:186 +#: judge/models/profile.py:187 msgid "WebAuthn 2FA enabled" msgstr "" -#: judge/models/profile.py:187 +#: judge/models/profile.py:188 msgid "Check to enable WebAuthn-based two-factor authentication." msgstr "Cochez pour activer l'authentification à deux facteurs basée sur WebAuthn." -#: judge/models/profile.py:188 +#: judge/models/profile.py:189 msgid "TOTP key" msgstr "Clé TOTP" -#: judge/models/profile.py:189 +#: judge/models/profile.py:190 msgid "32-character Base32-encoded key for TOTP." msgstr "" -#: judge/models/profile.py:191 +#: judge/models/profile.py:192 msgid "TOTP key must be empty or Base32." msgstr "La clé TOTP doit être vide ou Base32." -#: judge/models/profile.py:192 +#: judge/models/profile.py:193 msgid "scratch codes" msgstr "codes scratch" -#: judge/models/profile.py:193 +#: judge/models/profile.py:194 msgid "JSON array of 16-character Base32-encoded codes for scratch codes." msgstr "" -#: judge/models/profile.py:197 +#: judge/models/profile.py:198 msgid "Scratch codes must be empty or a JSON array of 16-character Base32 codes." msgstr "" -#: judge/models/profile.py:199 +#: judge/models/profile.py:200 msgid "last TOTP timecode" msgstr "" -#: judge/models/profile.py:200 +#: judge/models/profile.py:201 msgid "API token" msgstr "Jeton API" -#: judge/models/profile.py:201 +#: judge/models/profile.py:202 msgid "64-character hex-encoded API access token." msgstr "" -#: judge/models/profile.py:203 +#: judge/models/profile.py:204 msgid "API token must be None or hexadecimal" msgstr "" -#: judge/models/profile.py:204 +#: judge/models/profile.py:205 msgid "internal notes" msgstr "notes internes" -#: judge/models/profile.py:205 +#: judge/models/profile.py:206 msgid "Notes for administrators regarding this user." msgstr "Notes pour les administrateurs concernant cet utilisateur." -#: judge/models/profile.py:206 +#: judge/models/profile.py:207 msgid "last data download time" msgstr "dernier temps de téléchargement" -#: judge/models/profile.py:207 +#: judge/models/profile.py:208 msgid "display name override" msgstr "remplacement du nom d'affichage" -#: judge/models/profile.py:208 +#: judge/models/profile.py:209 msgid "Name displayed in place of username." msgstr "Nom affiché à la place du nom d'utilisateur." -#: judge/models/profile.py:323 +#: judge/models/profile.py:333 msgid "Shows in-progress development stuff" msgstr "" -#: judge/models/profile.py:324 +#: judge/models/profile.py:334 msgid "Edit TOTP settings" msgstr "Modifier les paramètres TOTP" -#: judge/models/profile.py:326 +#: judge/models/profile.py:336 msgid "user profile" msgstr "profil utilisateur" -#: judge/models/profile.py:327 +#: judge/models/profile.py:337 msgid "user profiles" msgstr "profils utilisateur" -#: judge/models/profile.py:333 +#: judge/models/profile.py:349 msgid "device name" msgstr "nom de l'appareil" -#: judge/models/profile.py:334 +#: judge/models/profile.py:350 msgid "credential ID" msgstr "" -#: judge/models/profile.py:335 +#: judge/models/profile.py:351 msgid "public key" msgstr "clé publique" -#: judge/models/profile.py:336 +#: judge/models/profile.py:352 msgid "sign counter" msgstr "" -#: judge/models/profile.py:354 +#: judge/models/profile.py:370 #, python-format msgid "WebAuthn credential: %(name)s" msgstr "Identifiant WebAuthn : %(name)s" -#: judge/models/profile.py:357 +#: judge/models/profile.py:373 msgid "WebAuthn credential" msgstr "identifiant WebAuthn" -#: judge/models/profile.py:358 +#: judge/models/profile.py:374 msgid "WebAuthn credentials" msgstr "identifiants WebAuthn" -#: judge/models/profile.py:365 +#: judge/models/profile.py:381 msgid "request time" msgstr "" -#: judge/models/profile.py:366 +#: judge/models/profile.py:382 msgid "state" msgstr "état" -#: judge/models/profile.py:367 templates/organization/requests/tabs.html:4 +#: judge/models/profile.py:383 templates/organization/requests/tabs.html:4 msgid "Pending" msgstr "En attente" -#: judge/models/profile.py:368 templates/organization/requests/tabs.html:10 +#: judge/models/profile.py:384 templates/organization/requests/tabs.html:10 msgid "Approved" msgstr "Approuvé" -#: judge/models/profile.py:369 templates/organization/requests/tabs.html:13 +#: judge/models/profile.py:385 templates/organization/requests/tabs.html:13 msgid "Rejected" msgstr "Rejeté" -#: judge/models/profile.py:372 +#: judge/models/profile.py:388 msgid "reason" msgstr "raison" -#: judge/models/profile.py:381 +#: judge/models/profile.py:397 msgid "organization join request" msgstr "demande d'adhésion de l'organisation" -#: judge/models/profile.py:382 +#: judge/models/profile.py:398 msgid "organization join requests" msgstr "demandes d'adhésion de l'organisation" @@ -2588,15 +2609,15 @@ msgstr "Erreur Interne (erreur du serveur de jugement)" msgid "submission time" msgstr "date de soumission" -#: judge/models/submission.py:70 judge/models/submission.py:255 +#: judge/models/submission.py:70 judge/models/submission.py:265 msgid "execution time" msgstr "temps d'exécution" -#: judge/models/submission.py:71 judge/models/submission.py:256 +#: judge/models/submission.py:71 judge/models/submission.py:266 msgid "memory usage" msgstr "utilisation de la mémoire" -#: judge/models/submission.py:72 judge/models/submission.py:257 +#: judge/models/submission.py:72 judge/models/submission.py:267 msgid "points granted" msgstr "points accordés" @@ -2685,60 +2706,60 @@ msgstr "Changer le statut de verrouillage de la soumission" msgid "submissions" msgstr "soumissions" -#: judge/models/submission.py:235 judge/models/submission.py:251 +#: judge/models/submission.py:245 judge/models/submission.py:261 msgid "associated submission" msgstr "soumission associée" -#: judge/models/submission.py:237 +#: judge/models/submission.py:247 msgid "source code" msgstr "code source" -#: judge/models/submission.py:240 +#: judge/models/submission.py:250 #, python-format msgid "Source of %(submission)s" msgstr "Source de %(submission)s" -#: judge/models/submission.py:243 +#: judge/models/submission.py:253 msgid "submission source" msgstr "source de soumission" -#: judge/models/submission.py:244 +#: judge/models/submission.py:254 msgid "submission sources" msgstr "sources de soumission" -#: judge/models/submission.py:253 +#: judge/models/submission.py:263 msgid "test case ID" msgstr "ID du cas de test" -#: judge/models/submission.py:254 +#: judge/models/submission.py:264 msgid "status flag" msgstr "indicateur de statut" -#: judge/models/submission.py:258 +#: judge/models/submission.py:268 msgid "points possible" msgstr "points possibles" -#: judge/models/submission.py:259 +#: judge/models/submission.py:269 msgid "batch number" msgstr "numéro de lot" -#: judge/models/submission.py:260 +#: judge/models/submission.py:270 msgid "judging feedback" msgstr "commentaires du juge" -#: judge/models/submission.py:261 +#: judge/models/submission.py:271 msgid "extended judging feedback" msgstr "commentaires étendus du juge" -#: judge/models/submission.py:262 +#: judge/models/submission.py:272 msgid "program output" msgstr "sortie du programme" -#: judge/models/submission.py:276 +#: judge/models/submission.py:286 msgid "submission test case" msgstr "cas de test de la soumission" -#: judge/models/submission.py:277 +#: judge/models/submission.py:287 msgid "submission test cases" msgstr "cas de test de la soumission" @@ -2956,7 +2977,7 @@ msgctxt "hours and minutes" msgid "%h:%m" msgstr "%h:%m" -#: judge/views/blog.py:36 +#: judge/views/blog.py:37 #, python-format msgid "Page %d of Posts" msgstr "Page %d d'articles" @@ -3445,11 +3466,11 @@ msgstr "" msgid "Register" msgstr "S'inscrire" -#: judge/views/register.py:103 +#: judge/views/register.py:101 msgid "Activation Key Invalid" msgstr "Clé d'Activation Invalide" -#: judge/views/register.py:114 +#: judge/views/register.py:112 msgid "Authentication failure" msgstr "Échec d'authentification" @@ -3461,7 +3482,7 @@ msgstr "Autre" msgid "Language statistics" msgstr "Statistiques de langage" -#: judge/views/status.py:23 templates/submission/list.html:308 +#: judge/views/status.py:23 templates/submission/list.html:310 msgid "Status" msgstr "Statut" @@ -3644,41 +3665,45 @@ msgstr "j M Y, G \\h i" msgid "Preparing your data..." msgstr "Préparation de vos données..." -#: judge/views/user.py:298 templates/user/edit-profile.html:345 +#: judge/views/user.py:298 templates/user/edit-profile.html:344 msgid "Download your data" msgstr "Télécharger vos données" +#: judge/views/user.py:347 +msgid "Can't edit profile" +msgstr "Impossible de modifier le profil" + #: judge/views/user.py:354 msgid "Updated on site" msgstr "Mise à jour sur le site" -#: judge/views/user.py:387 templates/admin/auth/user/change_form.html:14 -#: templates/admin/auth/user/change_form.html:17 templates/base.html:213 +#: judge/views/user.py:386 templates/admin/auth/user/change_form.html:14 +#: templates/admin/auth/user/change_form.html:17 templates/base.html:223 #: templates/user/user-tabs.html:16 msgid "Edit profile" msgstr "Modifier le profil" -#: judge/views/user.py:402 +#: judge/views/user.py:400 msgid "Generated API token for user" msgstr "Jeton API généré pour l'utilisateur" -#: judge/views/user.py:414 +#: judge/views/user.py:412 msgid "Removed API token for user" msgstr "Jeton API supprimé pour l'utilisateur" -#: judge/views/user.py:424 +#: judge/views/user.py:422 msgid "Generated scratch codes for user" msgstr "Codes scratch générés pour l'utilisateur" -#: judge/views/user.py:430 templates/user/user-list-tabs.html:4 +#: judge/views/user.py:428 templates/user/user-list-tabs.html:4 msgid "Leaderboard" msgstr "Tableau de Classement" -#: judge/views/user.py:491 +#: judge/views/user.py:489 msgid "You have been successfully logged out." msgstr "Vous avez été déconnecté avec succès." -#: judge/views/user.py:508 +#: judge/views/user.py:506 msgid "You have sent too many password reset requests. Please try again later." msgstr "Vous avez envoyé trop de demandes de réinitialisation de mot de passe. Veuillez réessayer plus tard." @@ -3707,13 +3732,13 @@ msgstr "Terminer" #: templates/admin/judge/judge/change_form.html:27 #: templates/admin/judge/judge/change_form.html:30 -#: templates/user/edit-profile.html:355 templates/user/edit-profile.html:358 +#: templates/user/edit-profile.html:372 templates/user/edit-profile.html:375 msgid "Disable" msgstr "Désactiver" #: templates/admin/judge/judge/change_form.html:33 #: templates/admin/judge/judge/change_form.html:36 -#: templates/user/edit-profile.html:386 +#: templates/user/edit-profile.html:403 msgid "Enable" msgstr "Activer" @@ -3733,48 +3758,48 @@ msgstr "Voir les votes du problème" msgid "Edit user" msgstr "Modifier l'utilisateur" -#: templates/base.html:206 +#: templates/base.html:216 #, python-format msgid "Hello, %(username)s." msgstr "Bonjour, %(username)s." -#: templates/base.html:215 +#: templates/base.html:225 msgid "Stop impersonating" msgstr "Arrêter d'imiter" -#: templates/base.html:220 +#: templates/base.html:230 msgid "Log out" msgstr "Se déconnecter" -#: templates/base.html:229 +#: templates/base.html:239 #: templates/registration/password_reset_complete.html:4 msgid "Log in" msgstr "Se connecter" -#: templates/base.html:230 templates/registration/registration_form.html:181 +#: templates/base.html:240 templates/registration/registration_form.html:177 msgid "or" msgstr "ou" -#: templates/base.html:231 +#: templates/base.html:241 msgid "Sign up" msgstr "S'inscrire" -#: templates/base.html:243 +#: templates/base.html:253 msgid "spectating" msgstr "en observant" -#: templates/base.html:256 +#: templates/base.html:266 msgid "This site works best with JavaScript enabled." msgstr "Ce site fonctionne mieux avec JavaScript activé." -#: templates/base.html:283 +#: templates/base.html:293 msgid "proudly powered by **DMOJ**" msgstr "fièrement propulsé par **DMOJ**" #: templates/blog/content.html:13 templates/comments/list.html:89 #: templates/comments/list.html:105 templates/contest/contest-tabs.html:23 #: templates/contest/tag-title.html:9 templates/flatpages/admin_link.html:3 -#: templates/license.html:10 templates/problem/data.html:423 +#: templates/license.html:10 templates/problem/data.html:424 #: templates/problem/editorial.html:14 msgid "Edit" msgstr "Modifier" @@ -3975,15 +4000,15 @@ msgstr "Score" msgid "No votes" msgstr "Aucun vote" -#: templates/common-content.html:32 templates/user/edit-profile.html:219 +#: templates/common-content.html:32 templates/user/edit-profile.html:214 msgid "Click to copy" msgstr "Cliquez pour copier" -#: templates/common-content.html:33 templates/user/edit-profile.html:220 +#: templates/common-content.html:33 templates/user/edit-profile.html:215 msgid "Copy" msgstr "Copier" -#: templates/common-content.html:44 templates/user/edit-profile.html:231 +#: templates/common-content.html:44 templates/user/edit-profile.html:226 msgid "Copied!" msgstr "Copié !" @@ -4064,7 +4089,7 @@ msgstr "Calendrier" msgid "Info" msgstr "Info" -#: templates/contest/contest-tabs.html:6 templates/submission/list.html:334 +#: templates/contest/contest-tabs.html:6 templates/submission/list.html:336 msgid "Statistics" msgstr "Statistiques" @@ -4279,7 +4304,7 @@ msgstr "Taux d'AC" #: templates/contest/contest.html:198 templates/contest/list.html:152 #: templates/contest/list.html:194 templates/contest/list.html:271 -#: templates/problem/list.html:203 templates/problem/list.html:235 +#: templates/problem/list.html:194 templates/problem/list.html:226 msgid "Users" msgstr "Utilisateurs" @@ -4287,7 +4312,7 @@ msgstr "Utilisateurs" msgid "Editorials" msgstr "Éditoriaux" -#: templates/contest/contest.html:226 templates/problem/list.html:229 +#: templates/contest/contest.html:226 templates/problem/list.html:220 msgid "Editorial" msgstr "Éditorial" @@ -4452,19 +4477,19 @@ msgstr "Dé-disqualifier" msgid "Disqualify" msgstr "Disqualifier" -#: templates/contest/ranking.html:151 +#: templates/contest/ranking.html:46 msgid "Are you sure you want to disqualify this participation?" msgstr "Êtes-vous sûr de vouloir disqualifier cette participation ?" -#: templates/contest/ranking.html:156 +#: templates/contest/ranking.html:51 msgid "Are you sure you want to un-disqualify this participation?" msgstr "Êtes-vous sûr de vouloir dé-disqualifier cette participation ?" -#: templates/contest/ranking.html:228 +#: templates/contest/ranking.html:124 msgid "View user participation" msgstr "Voir la participation de l'utilisateur" -#: templates/contest/ranking.html:232 +#: templates/contest/ranking.html:128 msgid "Show organizations" msgstr "Afficher les organisations" @@ -4651,7 +4676,7 @@ msgid "There are no requests to approve." msgstr "Il n'y a aucune demande à approuver." #: templates/organization/requests/pending.html:17 -#: templates/problem/data.html:387 +#: templates/problem/data.html:388 msgid "Delete?" msgstr "Supprimer ?" @@ -4687,59 +4712,59 @@ msgstr "Mettre à jour l'aperçu" msgid "Enter a new code for the cloned problem:" msgstr "Saisissez un nouveau code pour le problème cloné :" -#: templates/problem/data.html:70 +#: templates/problem/data.html:71 msgid "precision (decimal digits)" msgstr "" -#: templates/problem/data.html:339 +#: templates/problem/data.html:340 msgid "View YAML" msgstr "Voir le YAML" -#: templates/problem/data.html:355 +#: templates/problem/data.html:356 msgid "Show columns:" msgstr "Afficher les colonnes :" -#: templates/problem/data.html:358 templates/problem/data.html:382 +#: templates/problem/data.html:359 templates/problem/data.html:383 msgid "Output prefix" msgstr "Préfixe de sortie" -#: templates/problem/data.html:362 templates/problem/data.html:383 +#: templates/problem/data.html:363 templates/problem/data.html:384 msgid "Output limit" msgstr "Limite de sortie" -#: templates/problem/data.html:366 templates/problem/data.html:384 +#: templates/problem/data.html:367 templates/problem/data.html:385 msgid "Checker" msgstr "Vérificateur" -#: templates/problem/data.html:370 templates/problem/data.html:385 +#: templates/problem/data.html:371 templates/problem/data.html:386 msgid "Generator args" msgstr "Arguments du générateur" -#: templates/problem/data.html:377 +#: templates/problem/data.html:378 msgid "Type" msgstr "Type" -#: templates/problem/data.html:378 +#: templates/problem/data.html:379 msgid "Input file" msgstr "Fichier d'entrée" -#: templates/problem/data.html:379 +#: templates/problem/data.html:380 msgid "Output file" msgstr "Fichier de sortie" -#: templates/problem/data.html:381 +#: templates/problem/data.html:382 msgid "Pretest?" msgstr "Prétest ?" -#: templates/problem/data.html:433 templates/problem/submit.html:256 +#: templates/problem/data.html:434 templates/problem/submit.html:190 msgid "Submit!" msgstr "Soumettre !" -#: templates/problem/data.html:434 +#: templates/problem/data.html:435 msgid "Add new case" msgstr "Ajouter un nouveau cas" -#: templates/problem/data.html:436 +#: templates/problem/data.html:437 msgid "Save" msgstr "Enregistrer" @@ -4757,100 +4782,100 @@ msgid_plural "Authors:" msgstr[0] "Auteur :" msgstr[1] "Auteurs :" -#: templates/problem/list.html:58 +#: templates/problem/list.html:49 msgid "Filter by type..." msgstr "Filtrer par type..." -#: templates/problem/list.html:176 +#: templates/problem/list.html:167 msgid "Hot problems" msgstr "Problèmes populaires" -#: templates/problem/list.html:198 templates/problem/list.html:216 +#: templates/problem/list.html:189 templates/problem/list.html:207 #: templates/problem/search-form.html:35 templates/user/user-problems.html:59 msgid "Category" msgstr "Catégorie" -#: templates/problem/list.html:200 templates/problem/list.html:220 +#: templates/problem/list.html:191 templates/problem/list.html:211 msgid "Types" msgstr "Types" -#: templates/problem/list.html:227 +#: templates/problem/list.html:218 #, python-format msgid "AC %%" msgstr "AC %%" -#: templates/problem/manage_submission.html:55 +#: templates/problem/manage_submission.html:56 msgid "Leave empty to not filter by language" msgstr "Laisser vide pour ne pas filtrer par langage" -#: templates/problem/manage_submission.html:60 +#: templates/problem/manage_submission.html:62 msgid "Leave empty to not filter by result" msgstr "Laisser vide pour ne pas filtrer par résultat" -#: templates/problem/manage_submission.html:79 +#: templates/problem/manage_submission.html:81 msgid "Need valid values for both start and end IDs." msgstr "Il faut des valeurs valides pour les ID de début et de fin." -#: templates/problem/manage_submission.html:82 +#: templates/problem/manage_submission.html:84 msgid "End ID must be after start ID." msgstr "L'ID de fin doit être après l'ID de début." -#: templates/problem/manage_submission.html:90 +#: templates/problem/manage_submission.html:92 #, python-brace-format msgid "You are about to rejudge {count} submissions. Are you sure you want to do this?" msgstr "Vous êtes sur le point de juger {count} soumissions à nouveau. Êtes-vous sûr de vouloir continuer ?" -#: templates/problem/manage_submission.html:96 +#: templates/problem/manage_submission.html:98 msgid "You are about to rejudge a few submissions. Are you sure you want to do this?" msgstr "Vous êtes sur le point de juger quelques soumissions à nouveau. Êtes-vous sûr de vouloir continuer ?" -#: templates/problem/manage_submission.html:115 +#: templates/problem/manage_submission.html:117 msgid "Rejudge Submissions" msgstr "Rejuger les Soumissions" -#: templates/problem/manage_submission.html:120 +#: templates/problem/manage_submission.html:122 msgid "Filter by ID:" msgstr "Filtrer par ID :" -#: templates/problem/manage_submission.html:123 +#: templates/problem/manage_submission.html:125 msgid "Starting ID:" msgstr "ID de début :" -#: templates/problem/manage_submission.html:127 +#: templates/problem/manage_submission.html:129 msgid "Ending ID:" msgstr "ID de fin :" -#: templates/problem/manage_submission.html:131 +#: templates/problem/manage_submission.html:133 msgid "This range includes both endpoints." msgstr "Cette plage comprend les deux points d'extrémité." -#: templates/problem/manage_submission.html:134 +#: templates/problem/manage_submission.html:136 msgid "Filter by language:" msgstr "Filtrer par langage :" -#: templates/problem/manage_submission.html:150 +#: templates/problem/manage_submission.html:152 msgid "Rejudge selected submissions" msgstr "Rejuger les soumissions sélectionnées" -#: templates/problem/manage_submission.html:157 +#: templates/problem/manage_submission.html:159 msgid "Rescore Everything" msgstr "Tout Recompter" -#: templates/problem/manage_submission.html:158 +#: templates/problem/manage_submission.html:160 #, python-format msgid "This will rescore %(count)s submission." msgid_plural "This will rescore %(count)s submissions." msgstr[0] "Cela recomptera %(count)s soumission." msgstr[1] "Cela recomptera %(count)s soumissions." -#: templates/problem/manage_submission.html:166 +#: templates/problem/manage_submission.html:168 #, python-format msgid "Are you sure you want to rescore %(count)s submission?" msgid_plural "Are you sure you want to rescore %(count)s submissions?" msgstr[0] "Êtes-vous sûr de vouloir recompter %(count)s soumission ?" msgstr[1] "Êtes-vous sûr de vouloir recompter %(count)s soumissions ?" -#: templates/problem/manage_submission.html:171 +#: templates/problem/manage_submission.html:173 msgid "Rescore all submissions" msgstr "Recompter toutes les soumissions" @@ -5013,8 +5038,8 @@ msgstr "Types de problème" msgid "Point range" msgstr "Plage de points" -#: templates/problem/search-form.html:68 templates/submission/list.html:326 -#: templates/ticket/list.html:188 +#: templates/problem/search-form.html:68 templates/submission/list.html:328 +#: templates/ticket/list.html:189 msgid "Go" msgstr "Aller" @@ -5023,7 +5048,7 @@ msgid "Random" msgstr "Aléatoire" #: templates/problem/submission-diff.html:62 -#: templates/status/language-list.html:34 templates/ticket/list.html:199 +#: templates/status/language-list.html:34 templates/ticket/list.html:200 msgid "ID" msgstr "ID" @@ -5035,31 +5060,31 @@ msgstr "Résultat" msgid "Date" msgstr "Date" -#: templates/problem/submit.html:117 +#: templates/problem/submit.html:118 msgid "Your source code must contain at most 65536 characters." msgstr "Votre code source doit contenir au plus 65536 caractères." -#: templates/problem/submit.html:204 +#: templates/problem/submit.html:138 msgid "Warning!" msgstr "Attention !" -#: templates/problem/submit.html:205 +#: templates/problem/submit.html:139 #, python-format msgid "Your default language, %(language)s, is unavailable for this problem and has been deselected." msgstr "Votre langage par défaut, %(language)s, n'est pas disponible pour ce problème et a été désélectionné." -#: templates/problem/submit.html:213 +#: templates/problem/submit.html:147 #, python-format msgid "You have %(left)s submission left" msgid_plural "You have %(left)s submissions left" msgstr[0] "Il vous reste %(left)s soumission" msgstr[1] "Il vous reste %(left)s soumissions" -#: templates/problem/submit.html:218 +#: templates/problem/submit.html:152 msgid "You have 0 submissions left" msgstr "Il vous reste 0 soumission" -#: templates/problem/submit.html:252 +#: templates/problem/submit.html:186 msgid "No judge is available for this problem." msgstr "Aucun juge n'est disponible pour ce problème." @@ -5267,7 +5292,7 @@ msgstr "L'équipe %(site_name)s" msgid "Password reset on %(site_name)s" msgstr "Réinitialisation du mot de passe sur %(site_name)s" -#: templates/registration/profile_creation.html:44 +#: templates/registration/profile_creation.html:38 #: templates/registration/username_select.html:7 msgid "Continue >" msgstr "Continuer >" @@ -5280,36 +5305,36 @@ msgstr "L'inscription est actuellement fermée. Veuillez contacter un administra msgid "You have successfully been registered. An email has been sent to the email address you provided to confirm your registration." msgstr "Vous avez été inscrit avec succès. Un email a été envoyé au courriel que vous avez fourni pour confirmer votre inscription." -#: templates/registration/registration_form.html:170 +#: templates/registration/registration_form.html:166 msgid "(again, for confirmation)" msgstr "(encore, pour confirmation)" -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "(select your closest major city)" msgstr "(sélectionnez votre ville principale la plus proche)" -#: templates/registration/registration_form.html:182 +#: templates/registration/registration_form.html:178 msgid "pick from map" msgstr "choisir dans la carte" -#: templates/registration/registration_form.html:187 +#: templates/registration/registration_form.html:183 msgid "Default language" msgstr "Langage par défaut" -#: templates/registration/registration_form.html:190 +#: templates/registration/registration_form.html:186 msgid "Affiliated organizations" msgstr "Organisations affiliées" -#: templates/registration/registration_form.html:199 -#: templates/user/edit-profile.html:322 +#: templates/registration/registration_form.html:195 +#: templates/user/edit-profile.html:321 msgid "Notify me about upcoming contests" msgstr "Informez-moi des concours à venir" -#: templates/registration/registration_form.html:213 +#: templates/registration/registration_form.html:209 msgid "By registering, you agree to our [Terms & Conditions][0]." msgstr "En vous inscrivant, vous acceptez nos [conditions générales d'utilisation][0]." -#: templates/registration/registration_form.html:216 +#: templates/registration/registration_form.html:212 msgid "Register!" msgstr "S'inscrire !" @@ -5351,17 +5376,17 @@ msgid "Enable Two Factor Authentication" msgstr "Activer l'Authentification à Deux Facteurs" #: templates/registration/totp_enable.html:98 -#: templates/user/edit-profile.html:374 +#: templates/user/edit-profile.html:391 msgid "Below is a list of one-time use scratch codes." msgstr "Vous trouverez ci-dessous une liste de codes scratch à usage unique." #: templates/registration/totp_enable.html:99 -#: templates/user/edit-profile.html:375 +#: templates/user/edit-profile.html:392 msgid "These codes can only be used once and are for emergency use." msgstr "Ces codes ne peuvent être utilisés qu'une seule fois et sont destinés à être utilisés en cas d'urgence." #: templates/registration/totp_enable.html:100 -#: templates/user/edit-profile.html:376 +#: templates/user/edit-profile.html:393 msgid "You can use these codes to login to your account or disable two-factor authentication." msgstr "Vous pouvez utiliser ces codes pour vous connecter à votre compte ou désactiver l'authentification à deux facteurs." @@ -5370,7 +5395,7 @@ msgid "If you ever need more scratch codes, you can regenerate them on the edit msgstr "Si vous avez besoin de plus de codes scratch, vous pouvez les régénérer dans l'onglet « Modifier le profil »." #: templates/registration/totp_enable.html:102 -#: templates/user/edit-profile.html:378 +#: templates/user/edit-profile.html:395 msgid "Please write these down and keep them in a secure location." msgstr "Veuillez les noter et les conserver dans un endroit sûr." @@ -5388,12 +5413,12 @@ msgid "If you lose your authentication device and are unable to use your scratch msgstr "Si vous perdez votre appareil d'authentification et que vous ne pouvez pas utiliser vos codes scratch, les administrateurs de %(site_name)s ne seront PAS en mesure de récupérer votre compte. Veuillez conserver vos codes scratch en lieu sûr !" #: templates/registration/two_factor_auth.html:33 -#: templates/user/edit-profile.html:164 +#: templates/user/edit-profile.html:159 msgid "WebAuthn is not supported by your browser." msgstr "WebAuthn n'est pas supporté par votre navigateur." #: templates/registration/two_factor_auth.html:54 -#: templates/user/edit-profile.html:188 +#: templates/user/edit-profile.html:183 msgid "Failed to contact server." msgstr "Impossible de contacter le serveur." @@ -5491,23 +5516,23 @@ msgstr "Informations sur l'erreur" msgid "Are you sure you want to rejudge?" msgstr "Êtes-vous sûr de vouloir rejuger ?" -#: templates/submission/list.html:74 +#: templates/submission/list.html:75 msgid "Filter by status..." msgstr "Filtrer par statut..." -#: templates/submission/list.html:80 +#: templates/submission/list.html:82 msgid "Filter by language..." msgstr "Filtrer par langage..." -#: templates/submission/list.html:304 +#: templates/submission/list.html:306 msgid "Filter submissions" msgstr "Filtrer les soumissions" -#: templates/submission/list.html:340 +#: templates/submission/list.html:342 msgid "Total:" msgstr "Total :" -#: templates/submission/list.html:350 +#: templates/submission/list.html:352 msgid "You were disconnected. Refresh to show latest updates." msgstr "Vous avez été déconnecté. Rafraîchissez pour afficher les dernières mises à jour." @@ -5671,33 +5696,33 @@ msgstr "Réouvert : " msgid "Closed: " msgstr "Fermé : " -#: templates/ticket/list.html:156 +#: templates/ticket/list.html:157 msgid "Use desktop notification" msgstr "Utiliser la notification de bureau" -#: templates/ticket/list.html:162 +#: templates/ticket/list.html:163 msgid "Hide closed tickets" msgstr "Masquer les tickets fermés" -#: templates/ticket/list.html:167 +#: templates/ticket/list.html:168 msgid "Show my tickets only" msgstr "Afficher mes tickets uniquement" -#: templates/ticket/list.html:171 +#: templates/ticket/list.html:172 msgid "Filing user" msgstr "Utilisateur de dépôt" -#: templates/ticket/list.html:180 templates/ticket/ticket.html:196 +#: templates/ticket/list.html:181 templates/ticket/ticket.html:196 msgid "Assignee" msgid_plural "Assignees" msgstr[0] "Destinataire" msgstr[1] "Destinataires" -#: templates/ticket/list.html:200 +#: templates/ticket/list.html:201 msgid "Title" msgstr "Titre" -#: templates/ticket/list.html:202 +#: templates/ticket/list.html:203 msgid "Assignees" msgstr "Destinataires" @@ -5748,131 +5773,135 @@ msgstr "Notes du destinataire" msgid "Nothing here." msgstr "Rien ici." -#: templates/user/base-users-table.html:3 +#: templates/user/base-users-table.html:4 msgid "Rank" msgstr "Rang" -#: templates/user/base-users.html:14 templates/user/base-users.html:57 +#: templates/user/base-users.html:15 templates/user/base-users.html:58 msgid "Search by handle..." msgstr "Recherche par nom..." -#: templates/user/edit-profile.html:107 +#: templates/user/edit-profile.html:102 msgid "The administrators for this site require all the staff to have Two-factor Authentication enabled, so it may not be disabled at this time." msgstr "" -#: templates/user/edit-profile.html:112 +#: templates/user/edit-profile.html:107 msgid "Are you sure you want to generate or regenerate your API token?" msgstr "Êtes-vous sûr de vouloir générer ou régénérer votre jeton API ?" -#: templates/user/edit-profile.html:113 +#: templates/user/edit-profile.html:108 msgid "This will invalidate any previous API tokens." msgstr "Cela invalidera tous les jetons API précédents." -#: templates/user/edit-profile.html:114 +#: templates/user/edit-profile.html:109 msgid "It also allows access to your account without Two-factor Authentication." msgstr "Il permet également d'accéder à votre compte sans authentification à deux facteurs." -#: templates/user/edit-profile.html:115 +#: templates/user/edit-profile.html:110 msgid "You will not be able to view your API token after you leave this page!" msgstr "Vous ne pourrez plus voir votre jeton API après avoir quitté cette page !" -#: templates/user/edit-profile.html:116 templates/user/edit-profile.html:210 +#: templates/user/edit-profile.html:111 templates/user/edit-profile.html:205 msgid "Generating..." msgstr "" -#: templates/user/edit-profile.html:130 templates/user/edit-profile.html:398 +#: templates/user/edit-profile.html:125 templates/user/edit-profile.html:355 msgid "Remove" msgstr "Supprimer" -#: templates/user/edit-profile.html:140 +#: templates/user/edit-profile.html:135 msgid "Are you sure you want to remove your API token?" msgstr "Êtes-vous sûr de vouloir supprimer votre jeton API ?" -#: templates/user/edit-profile.html:147 templates/user/edit-profile.html:370 -#: templates/user/edit-profile.html:402 +#: templates/user/edit-profile.html:142 templates/user/edit-profile.html:359 +#: templates/user/edit-profile.html:387 msgid "Generate" msgstr "Générer" -#: templates/user/edit-profile.html:193 +#: templates/user/edit-profile.html:188 msgid "Are you sure you want to delete this security key?" msgstr "Êtes-vous sûr de vouloir supprimer cette clé de sécurité ?" -#: templates/user/edit-profile.html:207 +#: templates/user/edit-profile.html:202 msgid "Are you sure you want to generate or regenerate a new set of scratch codes?" msgstr "Êtes-vous sûr de vouloir générer ou régénérer un nouveau jeu de codes scratch ?" -#: templates/user/edit-profile.html:208 +#: templates/user/edit-profile.html:203 msgid "This will invalidate any previous scratch codes you have." msgstr "" -#: templates/user/edit-profile.html:209 templates/user/edit-profile.html:379 +#: templates/user/edit-profile.html:204 templates/user/edit-profile.html:396 msgid "You will not be able to view your scratch codes after you leave this page!" msgstr "Vous ne pourrez plus voir vos codes scratch après avoir quitté cette page !" -#: templates/user/edit-profile.html:278 +#: templates/user/edit-profile.html:273 msgid "Self-description:" msgstr "Auto-description :" -#: templates/user/edit-profile.html:285 +#: templates/user/edit-profile.html:280 msgid "Select your closest major city" msgstr "Sélectionnez votre ville principale la plus proche" -#: templates/user/edit-profile.html:286 +#: templates/user/edit-profile.html:281 msgid "Time zone:" msgstr "Fuseau horaire :" -#: templates/user/edit-profile.html:290 +#: templates/user/edit-profile.html:285 msgid "Language:" msgstr "Langage :" -#: templates/user/edit-profile.html:294 +#: templates/user/edit-profile.html:289 +msgid "Site theme:" +msgstr "Thème du site :" + +#: templates/user/edit-profile.html:293 msgid "Editor theme:" msgstr "Thème de l'éditeur :" -#: templates/user/edit-profile.html:299 +#: templates/user/edit-profile.html:298 msgid "Math engine:" msgstr "Moteur mathématique :" -#: templates/user/edit-profile.html:308 +#: templates/user/edit-profile.html:307 msgid "Affiliated organizations:" msgstr "Organisations affiliées :" -#: templates/user/edit-profile.html:334 +#: templates/user/edit-profile.html:333 msgid "Change your avatar" msgstr "Changer votre avatar" -#: templates/user/edit-profile.html:339 +#: templates/user/edit-profile.html:338 msgid "Change your password" msgstr "Changer votre mot de passe" -#: templates/user/edit-profile.html:352 -msgid "Two-factor Authentication is enabled:" -msgstr "L'authentification à deux facteurs est activée :" +#: templates/user/edit-profile.html:350 +msgid "API token:" +msgstr "Jeton API :" + +#: templates/user/edit-profile.html:356 templates/user/edit-profile.html:384 +msgid "Hidden" +msgstr "Caché" + +#: templates/user/edit-profile.html:369 +msgid "Two-factor authentication is enabled:" +msgstr "" -#: templates/user/edit-profile.html:360 +#: templates/user/edit-profile.html:377 msgid "Refresh" msgstr "Réactiver" -#: templates/user/edit-profile.html:363 +#: templates/user/edit-profile.html:380 msgid "Scratch codes:" msgstr "Codes scratch :" -#: templates/user/edit-profile.html:367 templates/user/edit-profile.html:399 -msgid "Hidden" -msgstr "Caché" - -#: templates/user/edit-profile.html:377 +#: templates/user/edit-profile.html:394 msgid "If you ever need more scratch codes, you can regenerate them here." msgstr "Si vous avez besoin de plus de codes scratch, vous pouvez les régénérer ici." -#: templates/user/edit-profile.html:385 +#: templates/user/edit-profile.html:402 msgid "Two-factor Authentication is disabled:" msgstr "L'authentification à deux facteurs est désactivée :" -#: templates/user/edit-profile.html:393 -msgid "API token:" -msgstr "Jeton API :" - #: templates/user/edit-profile.html:410 msgid "Security keys:" msgstr "Clés de sécurité :" diff --git a/locale/fr/LC_MESSAGES/djangojs.po b/locale/fr/LC_MESSAGES/djangojs.po index 304d1e8536..87cfbadf1b 100644 --- a/locale/fr/LC_MESSAGES/djangojs.po +++ b/locale/fr/LC_MESSAGES/djangojs.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-20 23:43+0000\n" -"PO-Revision-Date: 2022-12-21 00:43\n" +"POT-Creation-Date: 2023-01-23 05:23+0000\n" +"PO-Revision-Date: 2023-01-24 00:51\n" "Last-Translator: \n" "Language-Team: French\n" "Language: fr_FR\n" @@ -17,14 +17,14 @@ msgstr "" "X-Crowdin-File: djangojs.po\n" "X-Crowdin-File-ID: 12\n" -#: resources/common.js:195 +#: resources/common.js:194 msgctxt "time format with day" msgid "%d day %h:%m:%s" msgid_plural "%d days %h:%m:%s" msgstr[0] "%d jour %h:%m:%s" msgstr[1] "%d jours %h:%m:%s" -#: resources/common.js:198 +#: resources/common.js:197 msgctxt "time format without day" msgid "%h:%m:%s" msgstr "%h:%m:%s" diff --git a/locale/hr/LC_MESSAGES/django.po b/locale/hr/LC_MESSAGES/django.po index c9d906bbf2..10b55ad13f 100644 --- a/locale/hr/LC_MESSAGES/django.po +++ b/locale/hr/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-20 23:04+0000\n" -"PO-Revision-Date: 2023-01-22 00:52\n" +"POT-Creation-Date: 2023-02-17 22:33+0000\n" +"PO-Revision-Date: 2023-02-18 00:49\n" "Last-Translator: \n" "Language-Team: Croatian\n" "Language: hr_HR\n" @@ -17,91 +17,91 @@ msgstr "" "X-Crowdin-File: django.po\n" "X-Crowdin-File-ID: 10\n" -#: dmoj/settings.py:380 +#: dmoj/settings.py:392 msgid "Catalan" msgstr "" -#: dmoj/settings.py:381 +#: dmoj/settings.py:393 msgid "German" msgstr "Njemački" -#: dmoj/settings.py:382 +#: dmoj/settings.py:394 msgid "Greek" msgstr "Grčki" -#: dmoj/settings.py:383 +#: dmoj/settings.py:395 msgid "English" msgstr "Engleski" -#: dmoj/settings.py:384 +#: dmoj/settings.py:396 msgid "Spanish" msgstr "Španjolski" -#: dmoj/settings.py:385 +#: dmoj/settings.py:397 msgid "French" msgstr "Francuski" -#: dmoj/settings.py:386 +#: dmoj/settings.py:398 msgid "Croatian" msgstr "Hrvatski" -#: dmoj/settings.py:387 +#: dmoj/settings.py:399 msgid "Hungarian" msgstr "Mađarski" -#: dmoj/settings.py:388 +#: dmoj/settings.py:400 msgid "Japanese" msgstr "" -#: dmoj/settings.py:389 +#: dmoj/settings.py:401 msgid "Korean" msgstr "Korejski" -#: dmoj/settings.py:390 +#: dmoj/settings.py:402 msgid "Brazilian Portuguese" msgstr "" -#: dmoj/settings.py:391 +#: dmoj/settings.py:403 msgid "Romanian" msgstr "Rumunjski" -#: dmoj/settings.py:392 +#: dmoj/settings.py:404 msgid "Russian" msgstr "Ruski" -#: dmoj/settings.py:393 +#: dmoj/settings.py:405 msgid "Serbian (Latin)" msgstr "Srpski (Latinica)" -#: dmoj/settings.py:394 +#: dmoj/settings.py:406 msgid "Turkish" msgstr "Turski" -#: dmoj/settings.py:395 +#: dmoj/settings.py:407 msgid "Vietnamese" msgstr "Vijetnamski" -#: dmoj/settings.py:396 +#: dmoj/settings.py:408 msgid "Simplified Chinese" msgstr "Pojednostavljeni Kineski" -#: dmoj/settings.py:397 +#: dmoj/settings.py:409 msgid "Traditional Chinese" msgstr "" -#: dmoj/urls.py:32 +#: dmoj/urls.py:31 msgid "Activation Successful!" msgstr "" -#: dmoj/urls.py:40 +#: dmoj/urls.py:39 msgid "Registration Completed" msgstr "" -#: dmoj/urls.py:44 +#: dmoj/urls.py:43 msgid "Registration Not Allowed" msgstr "" -#: dmoj/urls.py:93 templates/base.html:183 +#: dmoj/urls.py:92 templates/base.html:193 msgid "Home" msgstr "Početna" @@ -142,8 +142,8 @@ msgid "Included contests" msgstr "Uključena natjecanja" #: judge/admin/contest.py:65 templates/contest/contest.html:195 -#: templates/contest/moss.html:41 templates/problem/list.html:197 -#: templates/problem/list.html:213 templates/user/user-problems.html:58 +#: templates/contest/moss.html:41 templates/problem/list.html:188 +#: templates/problem/list.html:204 templates/user/user-problems.html:58 #: templates/user/user-problems.html:102 msgid "Problem" msgstr "Zadatak" @@ -154,7 +154,7 @@ msgstr "Zadatak" msgid "Problems" msgstr "Zadaci" -#: judge/admin/contest.py:76 judge/admin/submission.py:249 +#: judge/admin/contest.py:76 judge/admin/submission.py:250 #: templates/admin/judge/submission/change_form.html:14 #: templates/admin/judge/submission/change_form.html:17 #: templates/submission/source.html:34 templates/submission/status.html:89 @@ -237,7 +237,7 @@ msgstr[2] "" msgid "Unlock contest submissions" msgstr "" -#: judge/admin/contest.py:280 judge/admin/submission.py:175 +#: judge/admin/contest.py:280 judge/admin/submission.py:176 #, python-format msgid "%d submission was successfully scheduled for rejudging." msgid_plural "%d submissions were successfully scheduled for rejudging." @@ -245,7 +245,7 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: judge/admin/contest.py:356 +#: judge/admin/contest.py:358 #, python-format msgid "%d participation recalculated." msgid_plural "%d participations recalculated." @@ -253,15 +253,15 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: judge/admin/contest.py:359 +#: judge/admin/contest.py:361 msgid "Recalculate results" msgstr "" -#: judge/admin/contest.py:363 judge/admin/organization.py:113 +#: judge/admin/contest.py:365 judge/admin/organization.py:113 msgid "username" msgstr "korisničko ime" -#: judge/admin/contest.py:368 templates/base.html:249 +#: judge/admin/contest.py:370 templates/base.html:259 msgid "virtual" msgstr "virtualno" @@ -274,8 +274,8 @@ msgid "Summary" msgstr "Sažetak" #: judge/admin/interface.py:124 judge/models/contest.py:491 -#: judge/models/contest.py:623 judge/models/profile.py:331 -#: judge/models/profile.py:362 judge/models/submission.py:67 +#: judge/models/contest.py:623 judge/models/profile.py:347 +#: judge/models/profile.py:378 judge/models/submission.py:67 #: judge/models/ticket.py:32 msgid "user" msgstr "korisnik" @@ -306,8 +306,8 @@ msgid "Taxonomy" msgstr "Taksonomija" #: judge/admin/problem.py:133 templates/contest/contest.html:196 -#: templates/problem/data.html:380 templates/problem/list.html:202 -#: templates/problem/list.html:224 templates/user/base-users-table.html:10 +#: templates/problem/data.html:381 templates/problem/list.html:193 +#: templates/problem/list.html:215 templates/user/base-users-table.html:11 #: templates/user/user-problems.html:60 msgid "Points" msgstr "Bodovi" @@ -316,9 +316,9 @@ msgstr "Bodovi" msgid "Limits" msgstr "Ograničenja" -#: judge/admin/problem.py:135 judge/admin/submission.py:243 +#: judge/admin/problem.py:135 judge/admin/submission.py:244 #: templates/problem/submission-diff.html:65 templates/stats/tabs.html:4 -#: templates/submission/list.html:317 +#: templates/submission/list.html:319 msgid "Language" msgstr "Jezik" @@ -378,19 +378,19 @@ msgstr "zadatak" msgid "timezone" msgstr "vremenska zona" -#: judge/admin/profile.py:98 judge/admin/submission.py:222 +#: judge/admin/profile.py:98 judge/admin/submission.py:223 #: templates/organization/requests/log.html:9 #: templates/organization/requests/pending.html:12 -#: templates/ticket/list.html:201 +#: templates/ticket/list.html:202 msgid "User" msgstr "Korisnik" -#: judge/admin/profile.py:103 templates/registration/registration_form.html:149 +#: judge/admin/profile.py:103 templates/registration/registration_form.html:145 msgid "Email" msgstr "E-mail" #: judge/admin/profile.py:108 judge/views/register.py:28 -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "Timezone" msgstr "Vremenska zona" @@ -410,26 +410,26 @@ msgstr[2] "%d korisnika je ponovno izračunalo bodove." msgid "Recalculate scores" msgstr "Ponovno izračunavanje rezultata" -#: judge/admin/runtime.py:50 templates/user/edit-profile.html:124 -#: templates/user/edit-profile.html:246 templates/user/edit-profile.html:366 -#: templates/user/edit-profile.html:396 +#: judge/admin/runtime.py:52 templates/user/edit-profile.html:119 +#: templates/user/edit-profile.html:241 templates/user/edit-profile.html:353 +#: templates/user/edit-profile.html:383 msgid "Regenerate" msgstr "" -#: judge/admin/runtime.py:64 +#: judge/admin/runtime.py:66 msgid "Description" msgstr "Opis" -#: judge/admin/runtime.py:65 +#: judge/admin/runtime.py:67 msgid "Information" msgstr "Informacije" -#: judge/admin/runtime.py:66 +#: judge/admin/runtime.py:68 msgid "Capabilities" msgstr "Mogućnosti" #: judge/admin/submission.py:24 judge/admin/submission.py:43 -#: judge/admin/submission.py:232 +#: judge/admin/submission.py:233 msgid "None" msgstr "Nepoznato" @@ -461,19 +461,19 @@ msgctxt "contest problem" msgid "%(problem)s in %(contest)s" msgstr "%(problem)s u %(contest)s" -#: judge/admin/submission.py:160 judge/admin/submission.py:182 +#: judge/admin/submission.py:161 judge/admin/submission.py:183 msgid "You do not have the permission to rejudge submissions." msgstr "Nemate dozvolu za ponovno evaluiranje predanog rješenja." -#: judge/admin/submission.py:166 +#: judge/admin/submission.py:167 msgid "You do not have the permission to rejudge THAT many submissions." msgstr "Nemate dozvolu za ponovnu evaluaciju toliko puno predanih rješenja." -#: judge/admin/submission.py:178 +#: judge/admin/submission.py:179 msgid "Rejudge the selected submissions" msgstr "Reevaluiraj označena predana rješenja" -#: judge/admin/submission.py:204 judge/views/problem_manage.py:129 +#: judge/admin/submission.py:205 judge/views/problem_manage.py:129 #, python-format msgid "%d submission was successfully rescored." msgid_plural "%d submissions were successfully rescored." @@ -481,38 +481,38 @@ msgstr[0] "%d predano rješenje je uspješno ponovno ocijenjeno." msgstr[1] "%d predanih rješenja je uspješno ponovno ocijenjeno." msgstr[2] "%d predanih rješenja je uspješno ponovno ocijenjeno." -#: judge/admin/submission.py:207 +#: judge/admin/submission.py:208 msgid "Rescore the selected submissions" msgstr "Ponovno ocijeni označena predana rješenja" -#: judge/admin/submission.py:211 +#: judge/admin/submission.py:212 msgid "Problem code" msgstr "Kod zadatka" -#: judge/admin/submission.py:216 +#: judge/admin/submission.py:217 msgid "Problem name" msgstr "Ime zadatka" -#: judge/admin/submission.py:226 templates/organization/requests/log.html:10 +#: judge/admin/submission.py:227 templates/organization/requests/log.html:10 #: templates/organization/requests/pending.html:13 msgid "Time" msgstr "Vrijeme" -#: judge/admin/submission.py:234 +#: judge/admin/submission.py:235 #, python-format msgid "%d KB" msgstr "%d KB" -#: judge/admin/submission.py:236 +#: judge/admin/submission.py:237 #, python-format msgid "%.2f MB" msgstr "%.2f MB" -#: judge/admin/submission.py:238 +#: judge/admin/submission.py:239 msgid "Memory" msgstr "Memorija" -#: judge/admin/submission.py:247 +#: judge/admin/submission.py:248 msgid "Locked" msgstr "" @@ -537,6 +537,7 @@ msgid "Comment body" msgstr "Tekst komentara" #: judge/comments.py:47 judge/views/comment.py:40 judge/views/ticket.py:46 +#: judge/views/user.py:347 msgid "Your part is silent, little toad." msgstr "Budi tiho, mala žabice." @@ -647,7 +648,7 @@ msgstr "Pogrešan token autentikacije u dva koraka." msgid "Scratch codes must be 16 Base32 characters." msgstr "" -#: judge/forms.py:39 judge/forms.py:265 +#: judge/forms.py:39 judge/forms.py:266 msgid "Invalid scratch code." msgstr "" @@ -671,83 +672,83 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: judge/forms.py:98 +#: judge/forms.py:99 msgid "Download comments?" msgstr "Preuzmi komentare?" -#: judge/forms.py:99 +#: judge/forms.py:100 msgid "Download submissions?" msgstr "Preuzmi predana rješenja?" -#: judge/forms.py:100 +#: judge/forms.py:101 msgid "Filter by problem code glob:" msgstr "" -#: judge/forms.py:104 +#: judge/forms.py:105 msgid "Leave empty to include all submissions" msgstr "" -#: judge/forms.py:107 templates/problem/manage_submission.html:142 +#: judge/forms.py:108 templates/problem/manage_submission.html:144 msgid "Filter by result:" msgstr "Filtriraj prema rezultatu:" -#: judge/forms.py:113 +#: judge/forms.py:114 msgid "Please select at least one thing to download." msgstr "Molimo označite barem jednu stavku za preuzimanje." -#: judge/forms.py:139 +#: judge/forms.py:140 msgid "Any judge" msgstr "Bilo koji evaluator" -#: judge/forms.py:160 judge/views/register.py:25 +#: judge/forms.py:161 judge/views/register.py:25 #: templates/problem/submission-diff.html:63 -#: templates/registration/registration_form.html:143 -#: templates/user/base-users-table.html:5 +#: templates/registration/registration_form.html:139 +#: templates/user/base-users-table.html:6 msgid "Username" msgstr "Korisničko ime" -#: judge/forms.py:161 templates/registration/registration_form.html:155 -#: templates/registration/registration_form.html:169 +#: judge/forms.py:162 templates/registration/registration_form.html:151 +#: templates/registration/registration_form.html:165 msgid "Password" msgstr "Lozinka" -#: judge/forms.py:193 +#: judge/forms.py:194 msgid "Invalid code length." msgstr "" -#: judge/forms.py:224 +#: judge/forms.py:225 msgid "Invalid WebAuthn response." msgstr "Pogrešan WebAuthn odgovor." -#: judge/forms.py:227 +#: judge/forms.py:228 msgid "No WebAuthn challenge issued." msgstr "" -#: judge/forms.py:233 +#: judge/forms.py:234 msgid "Invalid WebAuthn credential ID." msgstr "" -#: judge/forms.py:263 +#: judge/forms.py:264 msgid "Invalid two-factor authentication token or scratch code." msgstr "" -#: judge/forms.py:267 +#: judge/forms.py:268 msgid "Must specify either totp_token or webauthn_response." msgstr "" -#: judge/forms.py:271 judge/models/problem.py:118 +#: judge/forms.py:272 judge/models/problem.py:118 msgid "Problem code must be ^[a-z0-9]+$" msgstr "ID zadatka mora biti ^[a-z0-9]+$" -#: judge/forms.py:276 +#: judge/forms.py:277 msgid "Problem with code already exists." msgstr "Već postoji zadatak koji koristi taj ID." -#: judge/forms.py:281 judge/models/contest.py:68 +#: judge/forms.py:282 judge/models/contest.py:68 msgid "Contest id must be ^[a-z0-9]+$" msgstr "ID natjecanja mora biti ^[a-z0-9]+$" -#: judge/forms.py:286 +#: judge/forms.py:287 msgid "Contest with key already exists." msgstr "Već postoji natjecanje koje koristi taj ID." @@ -770,26 +771,42 @@ msgstr "u {time}" msgid "Unrated" msgstr "" -#: judge/models/choices.py:59 +#: judge/models/choices.py:24 +msgid "Follow site theme" +msgstr "" + +#: judge/models/choices.py:60 msgid "Leave as LaTeX" msgstr "Ostavi kao LaTeX" -#: judge/models/choices.py:60 +#: judge/models/choices.py:61 msgid "SVG only" msgstr "Samo SVG" -#: judge/models/choices.py:61 +#: judge/models/choices.py:62 msgid "MathML only" msgstr "Samo MathML" -#: judge/models/choices.py:62 +#: judge/models/choices.py:63 msgid "MathJax with SVG fallback" msgstr "MathJax sa SVG rezervom" -#: judge/models/choices.py:63 +#: judge/models/choices.py:64 msgid "Detect best quality" msgstr "Prepoznaj najbolju kvalitetu" +#: judge/models/choices.py:70 +msgid "Follow system default" +msgstr "" + +#: judge/models/choices.py:71 +msgid "Light" +msgstr "Svijetla" + +#: judge/models/choices.py:72 +msgid "Dark" +msgstr "Tamna" + #: judge/models/comment.py:25 msgid "Page code must be ^[pcs]:[a-z0-9]+$|^b:\\d+$" msgstr "ID stranice mora biti ^[pcs]:[a-z0-9]+$|^b:\\d+$" @@ -1902,7 +1919,7 @@ msgid "Non-trailing spaces" msgstr "" #: judge/models/problem_data.py:28 -msgid "Unordered" +msgid "Sorted" msgstr "" #: judge/models/problem_data.py:29 @@ -2074,7 +2091,7 @@ msgid "Edit all organizations" msgstr "" #: judge/models/profile.py:98 judge/models/profile.py:103 -#: judge/models/profile.py:160 judge/models/profile.py:363 +#: judge/models/profile.py:161 judge/models/profile.py:379 msgid "organization" msgstr "organizacija" @@ -2115,7 +2132,7 @@ msgstr "" msgid "%(class)s in %(organization)s" msgstr "" -#: judge/models/profile.py:142 judge/models/profile.py:371 +#: judge/models/profile.py:142 judge/models/profile.py:387 msgid "class" msgstr "" @@ -2140,26 +2157,30 @@ msgid "Ace theme" msgstr "" #: judge/models/profile.py:158 -msgid "last access time" +msgid "site theme" msgstr "" #: judge/models/profile.py:159 +msgid "last access time" +msgstr "" + +#: judge/models/profile.py:160 msgid "last IP" msgstr "" -#: judge/models/profile.py:162 +#: judge/models/profile.py:163 msgid "display rank" msgstr "" -#: judge/models/profile.py:164 +#: judge/models/profile.py:165 msgid "Normal User" msgstr "" -#: judge/models/profile.py:165 +#: judge/models/profile.py:166 msgid "Problem Setter" msgstr "" -#: judge/models/profile.py:166 templates/base.html:211 +#: judge/models/profile.py:167 templates/base.html:221 #: templates/comments/list.html:97 templates/contest/contest-list-tabs.html:25 #: templates/contest/ranking-table.html:51 #: templates/problem/problem-list-tabs.html:6 @@ -2169,200 +2190,200 @@ msgstr "" msgid "Admin" msgstr "" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "comment mute" msgstr "" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "Some users are at their best when silent." msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "unlisted user" msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "User will not be ranked." msgstr "" -#: judge/models/profile.py:172 +#: judge/models/profile.py:173 msgid "banned from voting on problem point values" msgstr "" -#: judge/models/profile.py:173 +#: judge/models/profile.py:174 msgid "User will not be able to vote on problems' point values." msgstr "" -#: judge/models/profile.py:177 +#: judge/models/profile.py:178 msgid "user script" msgstr "" -#: judge/models/profile.py:178 +#: judge/models/profile.py:179 msgid "User-defined JavaScript for site customization." msgstr "" -#: judge/models/profile.py:179 +#: judge/models/profile.py:180 msgid "current contest" msgstr "" -#: judge/models/profile.py:181 +#: judge/models/profile.py:182 msgid "math engine" msgstr "" -#: judge/models/profile.py:183 +#: judge/models/profile.py:184 msgid "The rendering engine used to render math." msgstr "" -#: judge/models/profile.py:184 +#: judge/models/profile.py:185 msgid "TOTP 2FA enabled" msgstr "" -#: judge/models/profile.py:185 +#: judge/models/profile.py:186 msgid "Check to enable TOTP-based two-factor authentication." msgstr "" -#: judge/models/profile.py:186 +#: judge/models/profile.py:187 msgid "WebAuthn 2FA enabled" msgstr "" -#: judge/models/profile.py:187 +#: judge/models/profile.py:188 msgid "Check to enable WebAuthn-based two-factor authentication." msgstr "" -#: judge/models/profile.py:188 +#: judge/models/profile.py:189 msgid "TOTP key" msgstr "" -#: judge/models/profile.py:189 +#: judge/models/profile.py:190 msgid "32-character Base32-encoded key for TOTP." msgstr "" -#: judge/models/profile.py:191 +#: judge/models/profile.py:192 msgid "TOTP key must be empty or Base32." msgstr "" -#: judge/models/profile.py:192 +#: judge/models/profile.py:193 msgid "scratch codes" msgstr "" -#: judge/models/profile.py:193 +#: judge/models/profile.py:194 msgid "JSON array of 16-character Base32-encoded codes for scratch codes." msgstr "" -#: judge/models/profile.py:197 +#: judge/models/profile.py:198 msgid "Scratch codes must be empty or a JSON array of 16-character Base32 codes." msgstr "" -#: judge/models/profile.py:199 +#: judge/models/profile.py:200 msgid "last TOTP timecode" msgstr "" -#: judge/models/profile.py:200 +#: judge/models/profile.py:201 msgid "API token" msgstr "" -#: judge/models/profile.py:201 +#: judge/models/profile.py:202 msgid "64-character hex-encoded API access token." msgstr "" -#: judge/models/profile.py:203 +#: judge/models/profile.py:204 msgid "API token must be None or hexadecimal" msgstr "" -#: judge/models/profile.py:204 +#: judge/models/profile.py:205 msgid "internal notes" msgstr "" -#: judge/models/profile.py:205 +#: judge/models/profile.py:206 msgid "Notes for administrators regarding this user." msgstr "" -#: judge/models/profile.py:206 +#: judge/models/profile.py:207 msgid "last data download time" msgstr "" -#: judge/models/profile.py:207 +#: judge/models/profile.py:208 msgid "display name override" msgstr "" -#: judge/models/profile.py:208 +#: judge/models/profile.py:209 msgid "Name displayed in place of username." msgstr "" -#: judge/models/profile.py:323 +#: judge/models/profile.py:333 msgid "Shows in-progress development stuff" msgstr "" -#: judge/models/profile.py:324 +#: judge/models/profile.py:334 msgid "Edit TOTP settings" msgstr "" -#: judge/models/profile.py:326 +#: judge/models/profile.py:336 msgid "user profile" msgstr "" -#: judge/models/profile.py:327 +#: judge/models/profile.py:337 msgid "user profiles" msgstr "" -#: judge/models/profile.py:333 +#: judge/models/profile.py:349 msgid "device name" msgstr "" -#: judge/models/profile.py:334 +#: judge/models/profile.py:350 msgid "credential ID" msgstr "" -#: judge/models/profile.py:335 +#: judge/models/profile.py:351 msgid "public key" msgstr "" -#: judge/models/profile.py:336 +#: judge/models/profile.py:352 msgid "sign counter" msgstr "" -#: judge/models/profile.py:354 +#: judge/models/profile.py:370 #, python-format msgid "WebAuthn credential: %(name)s" msgstr "" -#: judge/models/profile.py:357 +#: judge/models/profile.py:373 msgid "WebAuthn credential" msgstr "" -#: judge/models/profile.py:358 +#: judge/models/profile.py:374 msgid "WebAuthn credentials" msgstr "" -#: judge/models/profile.py:365 +#: judge/models/profile.py:381 msgid "request time" msgstr "" -#: judge/models/profile.py:366 +#: judge/models/profile.py:382 msgid "state" msgstr "" -#: judge/models/profile.py:367 templates/organization/requests/tabs.html:4 +#: judge/models/profile.py:383 templates/organization/requests/tabs.html:4 msgid "Pending" msgstr "" -#: judge/models/profile.py:368 templates/organization/requests/tabs.html:10 +#: judge/models/profile.py:384 templates/organization/requests/tabs.html:10 msgid "Approved" msgstr "" -#: judge/models/profile.py:369 templates/organization/requests/tabs.html:13 +#: judge/models/profile.py:385 templates/organization/requests/tabs.html:13 msgid "Rejected" msgstr "" -#: judge/models/profile.py:372 +#: judge/models/profile.py:388 msgid "reason" msgstr "" -#: judge/models/profile.py:381 +#: judge/models/profile.py:397 msgid "organization join request" msgstr "" -#: judge/models/profile.py:382 +#: judge/models/profile.py:398 msgid "organization join requests" msgstr "" @@ -2605,15 +2626,15 @@ msgstr "" msgid "submission time" msgstr "" -#: judge/models/submission.py:70 judge/models/submission.py:255 +#: judge/models/submission.py:70 judge/models/submission.py:265 msgid "execution time" msgstr "" -#: judge/models/submission.py:71 judge/models/submission.py:256 +#: judge/models/submission.py:71 judge/models/submission.py:266 msgid "memory usage" msgstr "" -#: judge/models/submission.py:72 judge/models/submission.py:257 +#: judge/models/submission.py:72 judge/models/submission.py:267 msgid "points granted" msgstr "" @@ -2702,60 +2723,60 @@ msgstr "" msgid "submissions" msgstr "" -#: judge/models/submission.py:235 judge/models/submission.py:251 +#: judge/models/submission.py:245 judge/models/submission.py:261 msgid "associated submission" msgstr "" -#: judge/models/submission.py:237 +#: judge/models/submission.py:247 msgid "source code" msgstr "" -#: judge/models/submission.py:240 +#: judge/models/submission.py:250 #, python-format msgid "Source of %(submission)s" msgstr "" -#: judge/models/submission.py:243 +#: judge/models/submission.py:253 msgid "submission source" msgstr "" -#: judge/models/submission.py:244 +#: judge/models/submission.py:254 msgid "submission sources" msgstr "" -#: judge/models/submission.py:253 +#: judge/models/submission.py:263 msgid "test case ID" msgstr "" -#: judge/models/submission.py:254 +#: judge/models/submission.py:264 msgid "status flag" msgstr "" -#: judge/models/submission.py:258 +#: judge/models/submission.py:268 msgid "points possible" msgstr "" -#: judge/models/submission.py:259 +#: judge/models/submission.py:269 msgid "batch number" msgstr "" -#: judge/models/submission.py:260 +#: judge/models/submission.py:270 msgid "judging feedback" msgstr "" -#: judge/models/submission.py:261 +#: judge/models/submission.py:271 msgid "extended judging feedback" msgstr "" -#: judge/models/submission.py:262 +#: judge/models/submission.py:272 msgid "program output" msgstr "" -#: judge/models/submission.py:276 +#: judge/models/submission.py:286 msgid "submission test case" msgstr "" -#: judge/models/submission.py:277 +#: judge/models/submission.py:287 msgid "submission test cases" msgstr "" @@ -2976,7 +2997,7 @@ msgctxt "hours and minutes" msgid "%h:%m" msgstr "%h:%m" -#: judge/views/blog.py:36 +#: judge/views/blog.py:37 #, python-format msgid "Page %d of Posts" msgstr "" @@ -3470,11 +3491,11 @@ msgstr "" msgid "Register" msgstr "" -#: judge/views/register.py:103 +#: judge/views/register.py:101 msgid "Activation Key Invalid" msgstr "" -#: judge/views/register.py:114 +#: judge/views/register.py:112 msgid "Authentication failure" msgstr "" @@ -3486,7 +3507,7 @@ msgstr "" msgid "Language statistics" msgstr "" -#: judge/views/status.py:23 templates/submission/list.html:308 +#: judge/views/status.py:23 templates/submission/list.html:310 msgid "Status" msgstr "Status" @@ -3669,41 +3690,45 @@ msgstr "j. M Y. G:i" msgid "Preparing your data..." msgstr "" -#: judge/views/user.py:298 templates/user/edit-profile.html:345 +#: judge/views/user.py:298 templates/user/edit-profile.html:344 msgid "Download your data" msgstr "" +#: judge/views/user.py:347 +msgid "Can't edit profile" +msgstr "" + #: judge/views/user.py:354 msgid "Updated on site" msgstr "" -#: judge/views/user.py:387 templates/admin/auth/user/change_form.html:14 -#: templates/admin/auth/user/change_form.html:17 templates/base.html:213 +#: judge/views/user.py:386 templates/admin/auth/user/change_form.html:14 +#: templates/admin/auth/user/change_form.html:17 templates/base.html:223 #: templates/user/user-tabs.html:16 msgid "Edit profile" msgstr "" -#: judge/views/user.py:402 +#: judge/views/user.py:400 msgid "Generated API token for user" msgstr "" -#: judge/views/user.py:414 +#: judge/views/user.py:412 msgid "Removed API token for user" msgstr "" -#: judge/views/user.py:424 +#: judge/views/user.py:422 msgid "Generated scratch codes for user" msgstr "" -#: judge/views/user.py:430 templates/user/user-list-tabs.html:4 +#: judge/views/user.py:428 templates/user/user-list-tabs.html:4 msgid "Leaderboard" msgstr "" -#: judge/views/user.py:491 +#: judge/views/user.py:489 msgid "You have been successfully logged out." msgstr "" -#: judge/views/user.py:508 +#: judge/views/user.py:506 msgid "You have sent too many password reset requests. Please try again later." msgstr "" @@ -3732,13 +3757,13 @@ msgstr "" #: templates/admin/judge/judge/change_form.html:27 #: templates/admin/judge/judge/change_form.html:30 -#: templates/user/edit-profile.html:355 templates/user/edit-profile.html:358 +#: templates/user/edit-profile.html:372 templates/user/edit-profile.html:375 msgid "Disable" msgstr "" #: templates/admin/judge/judge/change_form.html:33 #: templates/admin/judge/judge/change_form.html:36 -#: templates/user/edit-profile.html:386 +#: templates/user/edit-profile.html:403 msgid "Enable" msgstr "" @@ -3758,48 +3783,48 @@ msgstr "" msgid "Edit user" msgstr "" -#: templates/base.html:206 +#: templates/base.html:216 #, python-format msgid "Hello, %(username)s." msgstr "" -#: templates/base.html:215 +#: templates/base.html:225 msgid "Stop impersonating" msgstr "" -#: templates/base.html:220 +#: templates/base.html:230 msgid "Log out" msgstr "" -#: templates/base.html:229 +#: templates/base.html:239 #: templates/registration/password_reset_complete.html:4 msgid "Log in" msgstr "" -#: templates/base.html:230 templates/registration/registration_form.html:181 +#: templates/base.html:240 templates/registration/registration_form.html:177 msgid "or" msgstr "" -#: templates/base.html:231 +#: templates/base.html:241 msgid "Sign up" msgstr "" -#: templates/base.html:243 +#: templates/base.html:253 msgid "spectating" msgstr "" -#: templates/base.html:256 +#: templates/base.html:266 msgid "This site works best with JavaScript enabled." msgstr "" -#: templates/base.html:283 +#: templates/base.html:293 msgid "proudly powered by **DMOJ**" msgstr "" #: templates/blog/content.html:13 templates/comments/list.html:89 #: templates/comments/list.html:105 templates/contest/contest-tabs.html:23 #: templates/contest/tag-title.html:9 templates/flatpages/admin_link.html:3 -#: templates/license.html:10 templates/problem/data.html:423 +#: templates/license.html:10 templates/problem/data.html:424 #: templates/problem/editorial.html:14 msgid "Edit" msgstr "" @@ -4000,15 +4025,15 @@ msgstr "Bodovi" msgid "No votes" msgstr "" -#: templates/common-content.html:32 templates/user/edit-profile.html:219 +#: templates/common-content.html:32 templates/user/edit-profile.html:214 msgid "Click to copy" msgstr "" -#: templates/common-content.html:33 templates/user/edit-profile.html:220 +#: templates/common-content.html:33 templates/user/edit-profile.html:215 msgid "Copy" msgstr "" -#: templates/common-content.html:44 templates/user/edit-profile.html:231 +#: templates/common-content.html:44 templates/user/edit-profile.html:226 msgid "Copied!" msgstr "" @@ -4089,7 +4114,7 @@ msgstr "Kalendar" msgid "Info" msgstr "" -#: templates/contest/contest-tabs.html:6 templates/submission/list.html:334 +#: templates/contest/contest-tabs.html:6 templates/submission/list.html:336 msgid "Statistics" msgstr "" @@ -4307,7 +4332,7 @@ msgstr "" #: templates/contest/contest.html:198 templates/contest/list.html:152 #: templates/contest/list.html:194 templates/contest/list.html:271 -#: templates/problem/list.html:203 templates/problem/list.html:235 +#: templates/problem/list.html:194 templates/problem/list.html:226 msgid "Users" msgstr "" @@ -4315,7 +4340,7 @@ msgstr "" msgid "Editorials" msgstr "" -#: templates/contest/contest.html:226 templates/problem/list.html:229 +#: templates/contest/contest.html:226 templates/problem/list.html:220 msgid "Editorial" msgstr "" @@ -4481,19 +4506,19 @@ msgstr "" msgid "Disqualify" msgstr "" -#: templates/contest/ranking.html:151 +#: templates/contest/ranking.html:46 msgid "Are you sure you want to disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:156 +#: templates/contest/ranking.html:51 msgid "Are you sure you want to un-disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:228 +#: templates/contest/ranking.html:124 msgid "View user participation" msgstr "" -#: templates/contest/ranking.html:232 +#: templates/contest/ranking.html:128 msgid "Show organizations" msgstr "" @@ -4680,7 +4705,7 @@ msgid "There are no requests to approve." msgstr "" #: templates/organization/requests/pending.html:17 -#: templates/problem/data.html:387 +#: templates/problem/data.html:388 msgid "Delete?" msgstr "" @@ -4716,59 +4741,59 @@ msgstr "" msgid "Enter a new code for the cloned problem:" msgstr "" -#: templates/problem/data.html:70 +#: templates/problem/data.html:71 msgid "precision (decimal digits)" msgstr "" -#: templates/problem/data.html:339 +#: templates/problem/data.html:340 msgid "View YAML" msgstr "" -#: templates/problem/data.html:355 +#: templates/problem/data.html:356 msgid "Show columns:" msgstr "" -#: templates/problem/data.html:358 templates/problem/data.html:382 +#: templates/problem/data.html:359 templates/problem/data.html:383 msgid "Output prefix" msgstr "" -#: templates/problem/data.html:362 templates/problem/data.html:383 +#: templates/problem/data.html:363 templates/problem/data.html:384 msgid "Output limit" msgstr "" -#: templates/problem/data.html:366 templates/problem/data.html:384 +#: templates/problem/data.html:367 templates/problem/data.html:385 msgid "Checker" msgstr "" -#: templates/problem/data.html:370 templates/problem/data.html:385 +#: templates/problem/data.html:371 templates/problem/data.html:386 msgid "Generator args" msgstr "" -#: templates/problem/data.html:377 +#: templates/problem/data.html:378 msgid "Type" msgstr "" -#: templates/problem/data.html:378 +#: templates/problem/data.html:379 msgid "Input file" msgstr "" -#: templates/problem/data.html:379 +#: templates/problem/data.html:380 msgid "Output file" msgstr "" -#: templates/problem/data.html:381 +#: templates/problem/data.html:382 msgid "Pretest?" msgstr "" -#: templates/problem/data.html:433 templates/problem/submit.html:256 +#: templates/problem/data.html:434 templates/problem/submit.html:190 msgid "Submit!" msgstr "" -#: templates/problem/data.html:434 +#: templates/problem/data.html:435 msgid "Add new case" msgstr "" -#: templates/problem/data.html:436 +#: templates/problem/data.html:437 msgid "Save" msgstr "" @@ -4787,86 +4812,86 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: templates/problem/list.html:58 +#: templates/problem/list.html:49 msgid "Filter by type..." msgstr "" -#: templates/problem/list.html:176 +#: templates/problem/list.html:167 msgid "Hot problems" msgstr "" -#: templates/problem/list.html:198 templates/problem/list.html:216 +#: templates/problem/list.html:189 templates/problem/list.html:207 #: templates/problem/search-form.html:35 templates/user/user-problems.html:59 msgid "Category" msgstr "" -#: templates/problem/list.html:200 templates/problem/list.html:220 +#: templates/problem/list.html:191 templates/problem/list.html:211 msgid "Types" msgstr "" -#: templates/problem/list.html:227 +#: templates/problem/list.html:218 #, python-format msgid "AC %%" msgstr "" -#: templates/problem/manage_submission.html:55 +#: templates/problem/manage_submission.html:56 msgid "Leave empty to not filter by language" msgstr "" -#: templates/problem/manage_submission.html:60 +#: templates/problem/manage_submission.html:62 msgid "Leave empty to not filter by result" msgstr "" -#: templates/problem/manage_submission.html:79 +#: templates/problem/manage_submission.html:81 msgid "Need valid values for both start and end IDs." msgstr "" -#: templates/problem/manage_submission.html:82 +#: templates/problem/manage_submission.html:84 msgid "End ID must be after start ID." msgstr "" -#: templates/problem/manage_submission.html:90 +#: templates/problem/manage_submission.html:92 #, python-brace-format msgid "You are about to rejudge {count} submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:96 +#: templates/problem/manage_submission.html:98 msgid "You are about to rejudge a few submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:115 +#: templates/problem/manage_submission.html:117 msgid "Rejudge Submissions" msgstr "" -#: templates/problem/manage_submission.html:120 +#: templates/problem/manage_submission.html:122 msgid "Filter by ID:" msgstr "" -#: templates/problem/manage_submission.html:123 +#: templates/problem/manage_submission.html:125 msgid "Starting ID:" msgstr "" -#: templates/problem/manage_submission.html:127 +#: templates/problem/manage_submission.html:129 msgid "Ending ID:" msgstr "" -#: templates/problem/manage_submission.html:131 +#: templates/problem/manage_submission.html:133 msgid "This range includes both endpoints." msgstr "" -#: templates/problem/manage_submission.html:134 +#: templates/problem/manage_submission.html:136 msgid "Filter by language:" msgstr "" -#: templates/problem/manage_submission.html:150 +#: templates/problem/manage_submission.html:152 msgid "Rejudge selected submissions" msgstr "" -#: templates/problem/manage_submission.html:157 +#: templates/problem/manage_submission.html:159 msgid "Rescore Everything" msgstr "" -#: templates/problem/manage_submission.html:158 +#: templates/problem/manage_submission.html:160 #, python-format msgid "This will rescore %(count)s submission." msgid_plural "This will rescore %(count)s submissions." @@ -4874,7 +4899,7 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: templates/problem/manage_submission.html:166 +#: templates/problem/manage_submission.html:168 #, python-format msgid "Are you sure you want to rescore %(count)s submission?" msgid_plural "Are you sure you want to rescore %(count)s submissions?" @@ -4882,7 +4907,7 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: templates/problem/manage_submission.html:171 +#: templates/problem/manage_submission.html:173 msgid "Rescore all submissions" msgstr "" @@ -5048,8 +5073,8 @@ msgstr "" msgid "Point range" msgstr "" -#: templates/problem/search-form.html:68 templates/submission/list.html:326 -#: templates/ticket/list.html:188 +#: templates/problem/search-form.html:68 templates/submission/list.html:328 +#: templates/ticket/list.html:189 msgid "Go" msgstr "" @@ -5058,7 +5083,7 @@ msgid "Random" msgstr "" #: templates/problem/submission-diff.html:62 -#: templates/status/language-list.html:34 templates/ticket/list.html:199 +#: templates/status/language-list.html:34 templates/ticket/list.html:200 msgid "ID" msgstr "" @@ -5070,20 +5095,20 @@ msgstr "Rezultat" msgid "Date" msgstr "Datum" -#: templates/problem/submit.html:117 +#: templates/problem/submit.html:118 msgid "Your source code must contain at most 65536 characters." msgstr "" -#: templates/problem/submit.html:204 +#: templates/problem/submit.html:138 msgid "Warning!" msgstr "" -#: templates/problem/submit.html:205 +#: templates/problem/submit.html:139 #, python-format msgid "Your default language, %(language)s, is unavailable for this problem and has been deselected." msgstr "" -#: templates/problem/submit.html:213 +#: templates/problem/submit.html:147 #, python-format msgid "You have %(left)s submission left" msgid_plural "You have %(left)s submissions left" @@ -5091,11 +5116,11 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: templates/problem/submit.html:218 +#: templates/problem/submit.html:152 msgid "You have 0 submissions left" msgstr "" -#: templates/problem/submit.html:252 +#: templates/problem/submit.html:186 msgid "No judge is available for this problem." msgstr "" @@ -5305,7 +5330,7 @@ msgstr "" msgid "Password reset on %(site_name)s" msgstr "" -#: templates/registration/profile_creation.html:44 +#: templates/registration/profile_creation.html:38 #: templates/registration/username_select.html:7 msgid "Continue >" msgstr "" @@ -5318,36 +5343,36 @@ msgstr "" msgid "You have successfully been registered. An email has been sent to the email address you provided to confirm your registration." msgstr "" -#: templates/registration/registration_form.html:170 +#: templates/registration/registration_form.html:166 msgid "(again, for confirmation)" msgstr "" -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "(select your closest major city)" msgstr "" -#: templates/registration/registration_form.html:182 +#: templates/registration/registration_form.html:178 msgid "pick from map" msgstr "" -#: templates/registration/registration_form.html:187 +#: templates/registration/registration_form.html:183 msgid "Default language" msgstr "" -#: templates/registration/registration_form.html:190 +#: templates/registration/registration_form.html:186 msgid "Affiliated organizations" msgstr "" -#: templates/registration/registration_form.html:199 -#: templates/user/edit-profile.html:322 +#: templates/registration/registration_form.html:195 +#: templates/user/edit-profile.html:321 msgid "Notify me about upcoming contests" msgstr "" -#: templates/registration/registration_form.html:213 +#: templates/registration/registration_form.html:209 msgid "By registering, you agree to our [Terms & Conditions][0]." msgstr "" -#: templates/registration/registration_form.html:216 +#: templates/registration/registration_form.html:212 msgid "Register!" msgstr "" @@ -5389,17 +5414,17 @@ msgid "Enable Two Factor Authentication" msgstr "" #: templates/registration/totp_enable.html:98 -#: templates/user/edit-profile.html:374 +#: templates/user/edit-profile.html:391 msgid "Below is a list of one-time use scratch codes." msgstr "" #: templates/registration/totp_enable.html:99 -#: templates/user/edit-profile.html:375 +#: templates/user/edit-profile.html:392 msgid "These codes can only be used once and are for emergency use." msgstr "" #: templates/registration/totp_enable.html:100 -#: templates/user/edit-profile.html:376 +#: templates/user/edit-profile.html:393 msgid "You can use these codes to login to your account or disable two-factor authentication." msgstr "" @@ -5408,7 +5433,7 @@ msgid "If you ever need more scratch codes, you can regenerate them on the edit msgstr "" #: templates/registration/totp_enable.html:102 -#: templates/user/edit-profile.html:378 +#: templates/user/edit-profile.html:395 msgid "Please write these down and keep them in a secure location." msgstr "" @@ -5426,12 +5451,12 @@ msgid "If you lose your authentication device and are unable to use your scratch msgstr "" #: templates/registration/two_factor_auth.html:33 -#: templates/user/edit-profile.html:164 +#: templates/user/edit-profile.html:159 msgid "WebAuthn is not supported by your browser." msgstr "" #: templates/registration/two_factor_auth.html:54 -#: templates/user/edit-profile.html:188 +#: templates/user/edit-profile.html:183 msgid "Failed to contact server." msgstr "" @@ -5529,23 +5554,23 @@ msgstr "" msgid "Are you sure you want to rejudge?" msgstr "" -#: templates/submission/list.html:74 +#: templates/submission/list.html:75 msgid "Filter by status..." msgstr "" -#: templates/submission/list.html:80 +#: templates/submission/list.html:82 msgid "Filter by language..." msgstr "" -#: templates/submission/list.html:304 +#: templates/submission/list.html:306 msgid "Filter submissions" msgstr "" -#: templates/submission/list.html:340 +#: templates/submission/list.html:342 msgid "Total:" msgstr "" -#: templates/submission/list.html:350 +#: templates/submission/list.html:352 msgid "You were disconnected. Refresh to show latest updates." msgstr "" @@ -5709,34 +5734,34 @@ msgstr "" msgid "Closed: " msgstr "" -#: templates/ticket/list.html:156 +#: templates/ticket/list.html:157 msgid "Use desktop notification" msgstr "" -#: templates/ticket/list.html:162 +#: templates/ticket/list.html:163 msgid "Hide closed tickets" msgstr "" -#: templates/ticket/list.html:167 +#: templates/ticket/list.html:168 msgid "Show my tickets only" msgstr "" -#: templates/ticket/list.html:171 +#: templates/ticket/list.html:172 msgid "Filing user" msgstr "" -#: templates/ticket/list.html:180 templates/ticket/ticket.html:196 +#: templates/ticket/list.html:181 templates/ticket/ticket.html:196 msgid "Assignee" msgid_plural "Assignees" msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: templates/ticket/list.html:200 +#: templates/ticket/list.html:201 msgid "Title" msgstr "" -#: templates/ticket/list.html:202 +#: templates/ticket/list.html:203 msgid "Assignees" msgstr "" @@ -5787,129 +5812,133 @@ msgstr "" msgid "Nothing here." msgstr "" -#: templates/user/base-users-table.html:3 +#: templates/user/base-users-table.html:4 msgid "Rank" msgstr "" -#: templates/user/base-users.html:14 templates/user/base-users.html:57 +#: templates/user/base-users.html:15 templates/user/base-users.html:58 msgid "Search by handle..." msgstr "" -#: templates/user/edit-profile.html:107 +#: templates/user/edit-profile.html:102 msgid "The administrators for this site require all the staff to have Two-factor Authentication enabled, so it may not be disabled at this time." msgstr "" -#: templates/user/edit-profile.html:112 +#: templates/user/edit-profile.html:107 msgid "Are you sure you want to generate or regenerate your API token?" msgstr "" -#: templates/user/edit-profile.html:113 +#: templates/user/edit-profile.html:108 msgid "This will invalidate any previous API tokens." msgstr "" -#: templates/user/edit-profile.html:114 +#: templates/user/edit-profile.html:109 msgid "It also allows access to your account without Two-factor Authentication." msgstr "" -#: templates/user/edit-profile.html:115 +#: templates/user/edit-profile.html:110 msgid "You will not be able to view your API token after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:116 templates/user/edit-profile.html:210 +#: templates/user/edit-profile.html:111 templates/user/edit-profile.html:205 msgid "Generating..." msgstr "" -#: templates/user/edit-profile.html:130 templates/user/edit-profile.html:398 +#: templates/user/edit-profile.html:125 templates/user/edit-profile.html:355 msgid "Remove" msgstr "" -#: templates/user/edit-profile.html:140 +#: templates/user/edit-profile.html:135 msgid "Are you sure you want to remove your API token?" msgstr "" -#: templates/user/edit-profile.html:147 templates/user/edit-profile.html:370 -#: templates/user/edit-profile.html:402 +#: templates/user/edit-profile.html:142 templates/user/edit-profile.html:359 +#: templates/user/edit-profile.html:387 msgid "Generate" msgstr "" -#: templates/user/edit-profile.html:193 +#: templates/user/edit-profile.html:188 msgid "Are you sure you want to delete this security key?" msgstr "" -#: templates/user/edit-profile.html:207 +#: templates/user/edit-profile.html:202 msgid "Are you sure you want to generate or regenerate a new set of scratch codes?" msgstr "" -#: templates/user/edit-profile.html:208 +#: templates/user/edit-profile.html:203 msgid "This will invalidate any previous scratch codes you have." msgstr "" -#: templates/user/edit-profile.html:209 templates/user/edit-profile.html:379 +#: templates/user/edit-profile.html:204 templates/user/edit-profile.html:396 msgid "You will not be able to view your scratch codes after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:278 +#: templates/user/edit-profile.html:273 msgid "Self-description:" msgstr "" -#: templates/user/edit-profile.html:285 +#: templates/user/edit-profile.html:280 msgid "Select your closest major city" msgstr "" -#: templates/user/edit-profile.html:286 +#: templates/user/edit-profile.html:281 msgid "Time zone:" msgstr "Vremenska zona:" -#: templates/user/edit-profile.html:290 +#: templates/user/edit-profile.html:285 msgid "Language:" msgstr "Jezik:" -#: templates/user/edit-profile.html:294 +#: templates/user/edit-profile.html:289 +msgid "Site theme:" +msgstr "" + +#: templates/user/edit-profile.html:293 msgid "Editor theme:" msgstr "" -#: templates/user/edit-profile.html:299 +#: templates/user/edit-profile.html:298 msgid "Math engine:" msgstr "" -#: templates/user/edit-profile.html:308 +#: templates/user/edit-profile.html:307 msgid "Affiliated organizations:" msgstr "" -#: templates/user/edit-profile.html:334 +#: templates/user/edit-profile.html:333 msgid "Change your avatar" msgstr "" -#: templates/user/edit-profile.html:339 +#: templates/user/edit-profile.html:338 msgid "Change your password" msgstr "" -#: templates/user/edit-profile.html:352 -msgid "Two-factor Authentication is enabled:" +#: templates/user/edit-profile.html:350 +msgid "API token:" msgstr "" -#: templates/user/edit-profile.html:360 -msgid "Refresh" +#: templates/user/edit-profile.html:356 templates/user/edit-profile.html:384 +msgid "Hidden" msgstr "" -#: templates/user/edit-profile.html:363 -msgid "Scratch codes:" +#: templates/user/edit-profile.html:369 +msgid "Two-factor authentication is enabled:" msgstr "" -#: templates/user/edit-profile.html:367 templates/user/edit-profile.html:399 -msgid "Hidden" +#: templates/user/edit-profile.html:377 +msgid "Refresh" msgstr "" -#: templates/user/edit-profile.html:377 -msgid "If you ever need more scratch codes, you can regenerate them here." +#: templates/user/edit-profile.html:380 +msgid "Scratch codes:" msgstr "" -#: templates/user/edit-profile.html:385 -msgid "Two-factor Authentication is disabled:" +#: templates/user/edit-profile.html:394 +msgid "If you ever need more scratch codes, you can regenerate them here." msgstr "" -#: templates/user/edit-profile.html:393 -msgid "API token:" +#: templates/user/edit-profile.html:402 +msgid "Two-factor Authentication is disabled:" msgstr "" #: templates/user/edit-profile.html:410 diff --git a/locale/hr/LC_MESSAGES/djangojs.po b/locale/hr/LC_MESSAGES/djangojs.po index a8ed9e17e3..0ea7eed204 100644 --- a/locale/hr/LC_MESSAGES/djangojs.po +++ b/locale/hr/LC_MESSAGES/djangojs.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-20 23:43+0000\n" -"PO-Revision-Date: 2022-12-21 00:43\n" +"POT-Creation-Date: 2023-01-23 05:23+0000\n" +"PO-Revision-Date: 2023-01-24 00:51\n" "Last-Translator: \n" "Language-Team: Croatian\n" "Language: hr_HR\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: djangojs.po\n" "X-Crowdin-File-ID: 12\n" -#: resources/common.js:195 +#: resources/common.js:194 msgctxt "time format with day" msgid "%d day %h:%m:%s" msgid_plural "%d days %h:%m:%s" @@ -25,7 +25,7 @@ msgstr[0] "%d dan %h:%m:%s" msgstr[1] "%d dana %h:%m:%s" msgstr[2] "%d dana %h:%m:%s" -#: resources/common.js:198 +#: resources/common.js:197 msgctxt "time format without day" msgid "%h:%m:%s" msgstr "%h:%m:%s" diff --git a/locale/hu/LC_MESSAGES/django.po b/locale/hu/LC_MESSAGES/django.po index 545bda0c0e..7e019919d6 100644 --- a/locale/hu/LC_MESSAGES/django.po +++ b/locale/hu/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-20 23:04+0000\n" -"PO-Revision-Date: 2023-01-22 00:52\n" +"POT-Creation-Date: 2023-02-17 22:33+0000\n" +"PO-Revision-Date: 2023-02-18 00:49\n" "Last-Translator: \n" "Language-Team: Hungarian\n" "Language: hu_HU\n" @@ -17,91 +17,91 @@ msgstr "" "X-Crowdin-File: django.po\n" "X-Crowdin-File-ID: 10\n" -#: dmoj/settings.py:380 +#: dmoj/settings.py:392 msgid "Catalan" msgstr "" -#: dmoj/settings.py:381 +#: dmoj/settings.py:393 msgid "German" msgstr "Német" -#: dmoj/settings.py:382 +#: dmoj/settings.py:394 msgid "Greek" msgstr "Görög" -#: dmoj/settings.py:383 +#: dmoj/settings.py:395 msgid "English" msgstr "Angol" -#: dmoj/settings.py:384 +#: dmoj/settings.py:396 msgid "Spanish" msgstr "Spanyol" -#: dmoj/settings.py:385 +#: dmoj/settings.py:397 msgid "French" msgstr "Francia" -#: dmoj/settings.py:386 +#: dmoj/settings.py:398 msgid "Croatian" msgstr "Horvát" -#: dmoj/settings.py:387 +#: dmoj/settings.py:399 msgid "Hungarian" msgstr "" -#: dmoj/settings.py:388 +#: dmoj/settings.py:400 msgid "Japanese" msgstr "" -#: dmoj/settings.py:389 +#: dmoj/settings.py:401 msgid "Korean" msgstr "Koreai" -#: dmoj/settings.py:390 +#: dmoj/settings.py:402 msgid "Brazilian Portuguese" msgstr "" -#: dmoj/settings.py:391 +#: dmoj/settings.py:403 msgid "Romanian" msgstr "Román" -#: dmoj/settings.py:392 +#: dmoj/settings.py:404 msgid "Russian" msgstr "Orosz" -#: dmoj/settings.py:393 +#: dmoj/settings.py:405 msgid "Serbian (Latin)" msgstr "Szerb (Latin)" -#: dmoj/settings.py:394 +#: dmoj/settings.py:406 msgid "Turkish" msgstr "" -#: dmoj/settings.py:395 +#: dmoj/settings.py:407 msgid "Vietnamese" msgstr "Vietnami" -#: dmoj/settings.py:396 +#: dmoj/settings.py:408 msgid "Simplified Chinese" msgstr "Egyszerűsített Kínai" -#: dmoj/settings.py:397 +#: dmoj/settings.py:409 msgid "Traditional Chinese" msgstr "" -#: dmoj/urls.py:32 +#: dmoj/urls.py:31 msgid "Activation Successful!" msgstr "" -#: dmoj/urls.py:40 +#: dmoj/urls.py:39 msgid "Registration Completed" msgstr "" -#: dmoj/urls.py:44 +#: dmoj/urls.py:43 msgid "Registration Not Allowed" msgstr "" -#: dmoj/urls.py:93 templates/base.html:183 +#: dmoj/urls.py:92 templates/base.html:193 msgid "Home" msgstr "Nyitólap" @@ -140,8 +140,8 @@ msgid "Included contests" msgstr "Hozzárendelt versenyek" #: judge/admin/contest.py:65 templates/contest/contest.html:195 -#: templates/contest/moss.html:41 templates/problem/list.html:197 -#: templates/problem/list.html:213 templates/user/user-problems.html:58 +#: templates/contest/moss.html:41 templates/problem/list.html:188 +#: templates/problem/list.html:204 templates/user/user-problems.html:58 #: templates/user/user-problems.html:102 msgid "Problem" msgstr "Feladat" @@ -152,7 +152,7 @@ msgstr "Feladat" msgid "Problems" msgstr "Feladatok" -#: judge/admin/contest.py:76 judge/admin/submission.py:249 +#: judge/admin/contest.py:76 judge/admin/submission.py:250 #: templates/admin/judge/submission/change_form.html:14 #: templates/admin/judge/submission/change_form.html:17 #: templates/submission/source.html:34 templates/submission/status.html:89 @@ -231,29 +231,29 @@ msgstr[1] "" msgid "Unlock contest submissions" msgstr "" -#: judge/admin/contest.py:280 judge/admin/submission.py:175 +#: judge/admin/contest.py:280 judge/admin/submission.py:176 #, python-format msgid "%d submission was successfully scheduled for rejudging." msgid_plural "%d submissions were successfully scheduled for rejudging." msgstr[0] "" msgstr[1] "" -#: judge/admin/contest.py:356 +#: judge/admin/contest.py:358 #, python-format msgid "%d participation recalculated." msgid_plural "%d participations recalculated." msgstr[0] "" msgstr[1] "" -#: judge/admin/contest.py:359 +#: judge/admin/contest.py:361 msgid "Recalculate results" msgstr "" -#: judge/admin/contest.py:363 judge/admin/organization.py:113 +#: judge/admin/contest.py:365 judge/admin/organization.py:113 msgid "username" msgstr "felhasználónév" -#: judge/admin/contest.py:368 templates/base.html:249 +#: judge/admin/contest.py:370 templates/base.html:259 msgid "virtual" msgstr "virtuális" @@ -266,8 +266,8 @@ msgid "Summary" msgstr "Összefoglalás" #: judge/admin/interface.py:124 judge/models/contest.py:491 -#: judge/models/contest.py:623 judge/models/profile.py:331 -#: judge/models/profile.py:362 judge/models/submission.py:67 +#: judge/models/contest.py:623 judge/models/profile.py:347 +#: judge/models/profile.py:378 judge/models/submission.py:67 #: judge/models/ticket.py:32 msgid "user" msgstr "felhasználó" @@ -298,8 +298,8 @@ msgid "Taxonomy" msgstr "Rendszerezés" #: judge/admin/problem.py:133 templates/contest/contest.html:196 -#: templates/problem/data.html:380 templates/problem/list.html:202 -#: templates/problem/list.html:224 templates/user/base-users-table.html:10 +#: templates/problem/data.html:381 templates/problem/list.html:193 +#: templates/problem/list.html:215 templates/user/base-users-table.html:11 #: templates/user/user-problems.html:60 msgid "Points" msgstr "Pontok" @@ -308,9 +308,9 @@ msgstr "Pontok" msgid "Limits" msgstr "Limitek" -#: judge/admin/problem.py:135 judge/admin/submission.py:243 +#: judge/admin/problem.py:135 judge/admin/submission.py:244 #: templates/problem/submission-diff.html:65 templates/stats/tabs.html:4 -#: templates/submission/list.html:317 +#: templates/submission/list.html:319 msgid "Language" msgstr "Nyelv" @@ -367,19 +367,19 @@ msgstr "feladat" msgid "timezone" msgstr "időzóna" -#: judge/admin/profile.py:98 judge/admin/submission.py:222 +#: judge/admin/profile.py:98 judge/admin/submission.py:223 #: templates/organization/requests/log.html:9 #: templates/organization/requests/pending.html:12 -#: templates/ticket/list.html:201 +#: templates/ticket/list.html:202 msgid "User" msgstr "Felhasználó" -#: judge/admin/profile.py:103 templates/registration/registration_form.html:149 +#: judge/admin/profile.py:103 templates/registration/registration_form.html:145 msgid "Email" msgstr "Email" #: judge/admin/profile.py:108 judge/views/register.py:28 -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "Timezone" msgstr "Időzóna" @@ -398,26 +398,26 @@ msgstr[1] "%d felhasználó pontja újraszámolva." msgid "Recalculate scores" msgstr "Pontok újraszámítása" -#: judge/admin/runtime.py:50 templates/user/edit-profile.html:124 -#: templates/user/edit-profile.html:246 templates/user/edit-profile.html:366 -#: templates/user/edit-profile.html:396 +#: judge/admin/runtime.py:52 templates/user/edit-profile.html:119 +#: templates/user/edit-profile.html:241 templates/user/edit-profile.html:353 +#: templates/user/edit-profile.html:383 msgid "Regenerate" msgstr "" -#: judge/admin/runtime.py:64 +#: judge/admin/runtime.py:66 msgid "Description" msgstr "Leírás" -#: judge/admin/runtime.py:65 +#: judge/admin/runtime.py:67 msgid "Information" msgstr "Információ" -#: judge/admin/runtime.py:66 +#: judge/admin/runtime.py:68 msgid "Capabilities" msgstr "Képességek" #: judge/admin/submission.py:24 judge/admin/submission.py:43 -#: judge/admin/submission.py:232 +#: judge/admin/submission.py:233 msgid "None" msgstr "Semmi" @@ -449,57 +449,57 @@ msgctxt "contest problem" msgid "%(problem)s in %(contest)s" msgstr "%(problem)s - %(contest)s" -#: judge/admin/submission.py:160 judge/admin/submission.py:182 +#: judge/admin/submission.py:161 judge/admin/submission.py:183 msgid "You do not have the permission to rejudge submissions." msgstr "Nincs jogosultságod a feltöltések újratesztelésére." -#: judge/admin/submission.py:166 +#: judge/admin/submission.py:167 msgid "You do not have the permission to rejudge THAT many submissions." msgstr "Nincs jogosultságod ilyen sok feltöltés újratesztelésére." -#: judge/admin/submission.py:178 +#: judge/admin/submission.py:179 msgid "Rejudge the selected submissions" msgstr "A kiválasztott feltöltések újratesztelése" -#: judge/admin/submission.py:204 judge/views/problem_manage.py:129 +#: judge/admin/submission.py:205 judge/views/problem_manage.py:129 #, python-format msgid "%d submission was successfully rescored." msgid_plural "%d submissions were successfully rescored." msgstr[0] "%d feltöltés sikeresen újrapontozva." msgstr[1] "%d feltöltés sikeresen újrapontozva." -#: judge/admin/submission.py:207 +#: judge/admin/submission.py:208 msgid "Rescore the selected submissions" msgstr "A kiválasztott feltöltések újrapontozása" -#: judge/admin/submission.py:211 +#: judge/admin/submission.py:212 msgid "Problem code" msgstr "Feladat azonosító" -#: judge/admin/submission.py:216 +#: judge/admin/submission.py:217 msgid "Problem name" msgstr "Feladat név" -#: judge/admin/submission.py:226 templates/organization/requests/log.html:10 +#: judge/admin/submission.py:227 templates/organization/requests/log.html:10 #: templates/organization/requests/pending.html:13 msgid "Time" msgstr "Idő" -#: judge/admin/submission.py:234 +#: judge/admin/submission.py:235 #, python-format msgid "%d KB" msgstr "%d KB" -#: judge/admin/submission.py:236 +#: judge/admin/submission.py:237 #, python-format msgid "%.2f MB" msgstr "%.2f MB" -#: judge/admin/submission.py:238 +#: judge/admin/submission.py:239 msgid "Memory" msgstr "Memória" -#: judge/admin/submission.py:247 +#: judge/admin/submission.py:248 msgid "Locked" msgstr "" @@ -524,6 +524,7 @@ msgid "Comment body" msgstr "Hozzászólás törzse" #: judge/comments.py:47 judge/views/comment.py:40 judge/views/ticket.py:46 +#: judge/views/user.py:347 msgid "Your part is silent, little toad." msgstr "Az útvonalad csendes, kis varangy." @@ -631,7 +632,7 @@ msgstr "" msgid "Scratch codes must be 16 Base32 characters." msgstr "" -#: judge/forms.py:39 judge/forms.py:265 +#: judge/forms.py:39 judge/forms.py:266 msgid "Invalid scratch code." msgstr "" @@ -654,83 +655,83 @@ msgid_plural "You may not be part of more than {count} public organizations." msgstr[0] "" msgstr[1] "" -#: judge/forms.py:98 +#: judge/forms.py:99 msgid "Download comments?" msgstr "" -#: judge/forms.py:99 +#: judge/forms.py:100 msgid "Download submissions?" msgstr "" -#: judge/forms.py:100 +#: judge/forms.py:101 msgid "Filter by problem code glob:" msgstr "" -#: judge/forms.py:104 +#: judge/forms.py:105 msgid "Leave empty to include all submissions" msgstr "" -#: judge/forms.py:107 templates/problem/manage_submission.html:142 +#: judge/forms.py:108 templates/problem/manage_submission.html:144 msgid "Filter by result:" msgstr "" -#: judge/forms.py:113 +#: judge/forms.py:114 msgid "Please select at least one thing to download." msgstr "" -#: judge/forms.py:139 +#: judge/forms.py:140 msgid "Any judge" msgstr "" -#: judge/forms.py:160 judge/views/register.py:25 +#: judge/forms.py:161 judge/views/register.py:25 #: templates/problem/submission-diff.html:63 -#: templates/registration/registration_form.html:143 -#: templates/user/base-users-table.html:5 +#: templates/registration/registration_form.html:139 +#: templates/user/base-users-table.html:6 msgid "Username" msgstr "Felhasználónév" -#: judge/forms.py:161 templates/registration/registration_form.html:155 -#: templates/registration/registration_form.html:169 +#: judge/forms.py:162 templates/registration/registration_form.html:151 +#: templates/registration/registration_form.html:165 msgid "Password" msgstr "Jelszó" -#: judge/forms.py:193 +#: judge/forms.py:194 msgid "Invalid code length." msgstr "" -#: judge/forms.py:224 +#: judge/forms.py:225 msgid "Invalid WebAuthn response." msgstr "" -#: judge/forms.py:227 +#: judge/forms.py:228 msgid "No WebAuthn challenge issued." msgstr "" -#: judge/forms.py:233 +#: judge/forms.py:234 msgid "Invalid WebAuthn credential ID." msgstr "" -#: judge/forms.py:263 +#: judge/forms.py:264 msgid "Invalid two-factor authentication token or scratch code." msgstr "" -#: judge/forms.py:267 +#: judge/forms.py:268 msgid "Must specify either totp_token or webauthn_response." msgstr "" -#: judge/forms.py:271 judge/models/problem.py:118 +#: judge/forms.py:272 judge/models/problem.py:118 msgid "Problem code must be ^[a-z0-9]+$" msgstr "A feladat azonosítónak ^[a-z0-9]+$ kell lennie" -#: judge/forms.py:276 +#: judge/forms.py:277 msgid "Problem with code already exists." msgstr "" -#: judge/forms.py:281 judge/models/contest.py:68 +#: judge/forms.py:282 judge/models/contest.py:68 msgid "Contest id must be ^[a-z0-9]+$" msgstr "A verseny azonosítójának ^[a-z0-9]+$ kell lennie" -#: judge/forms.py:286 +#: judge/forms.py:287 msgid "Contest with key already exists." msgstr "" @@ -753,26 +754,42 @@ msgstr "{time}-kor" msgid "Unrated" msgstr "" -#: judge/models/choices.py:59 +#: judge/models/choices.py:24 +msgid "Follow site theme" +msgstr "" + +#: judge/models/choices.py:60 msgid "Leave as LaTeX" msgstr "Hagy LaTeX-ként" -#: judge/models/choices.py:60 +#: judge/models/choices.py:61 msgid "SVG only" msgstr "Csak SVG" -#: judge/models/choices.py:61 +#: judge/models/choices.py:62 msgid "MathML only" msgstr "Csak MathML" -#: judge/models/choices.py:62 +#: judge/models/choices.py:63 msgid "MathJax with SVG fallback" msgstr "MathJax SVG fallback-kel" -#: judge/models/choices.py:63 +#: judge/models/choices.py:64 msgid "Detect best quality" msgstr "Legjobb minőség detektálása" +#: judge/models/choices.py:70 +msgid "Follow system default" +msgstr "" + +#: judge/models/choices.py:71 +msgid "Light" +msgstr "Világos" + +#: judge/models/choices.py:72 +msgid "Dark" +msgstr "Sötét" + #: judge/models/comment.py:25 msgid "Page code must be ^[pcs]:[a-z0-9]+$|^b:\\d+$" msgstr "" @@ -1885,8 +1902,8 @@ msgid "Non-trailing spaces" msgstr "" #: judge/models/problem_data.py:28 -msgid "Unordered" -msgstr "Rendezetlen" +msgid "Sorted" +msgstr "" #: judge/models/problem_data.py:29 msgid "Byte identical" @@ -2057,7 +2074,7 @@ msgid "Edit all organizations" msgstr "" #: judge/models/profile.py:98 judge/models/profile.py:103 -#: judge/models/profile.py:160 judge/models/profile.py:363 +#: judge/models/profile.py:161 judge/models/profile.py:379 msgid "organization" msgstr "csoport" @@ -2098,7 +2115,7 @@ msgstr "tagok" msgid "%(class)s in %(organization)s" msgstr "" -#: judge/models/profile.py:142 judge/models/profile.py:371 +#: judge/models/profile.py:142 judge/models/profile.py:387 msgid "class" msgstr "" @@ -2123,26 +2140,30 @@ msgid "Ace theme" msgstr "" #: judge/models/profile.py:158 +msgid "site theme" +msgstr "" + +#: judge/models/profile.py:159 msgid "last access time" msgstr "utolsó belépés ideje" -#: judge/models/profile.py:159 +#: judge/models/profile.py:160 msgid "last IP" msgstr "utolsó IP" -#: judge/models/profile.py:162 +#: judge/models/profile.py:163 msgid "display rank" msgstr "megjelenített rang" -#: judge/models/profile.py:164 +#: judge/models/profile.py:165 msgid "Normal User" msgstr "" -#: judge/models/profile.py:165 +#: judge/models/profile.py:166 msgid "Problem Setter" msgstr "" -#: judge/models/profile.py:166 templates/base.html:211 +#: judge/models/profile.py:167 templates/base.html:221 #: templates/comments/list.html:97 templates/contest/contest-list-tabs.html:25 #: templates/contest/ranking-table.html:51 #: templates/problem/problem-list-tabs.html:6 @@ -2152,200 +2173,200 @@ msgstr "" msgid "Admin" msgstr "Admin" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "comment mute" msgstr "hozzászólás lenémítása" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "Some users are at their best when silent." msgstr "Néhány felhasználó a legjobb amikor csendesek." -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "unlisted user" msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "User will not be ranked." msgstr "" -#: judge/models/profile.py:172 +#: judge/models/profile.py:173 msgid "banned from voting on problem point values" msgstr "" -#: judge/models/profile.py:173 +#: judge/models/profile.py:174 msgid "User will not be able to vote on problems' point values." msgstr "" -#: judge/models/profile.py:177 +#: judge/models/profile.py:178 msgid "user script" msgstr "felhasználói szkript" -#: judge/models/profile.py:178 +#: judge/models/profile.py:179 msgid "User-defined JavaScript for site customization." msgstr "Felhasználó által meghatározott JavaScript a webhely testreszabásához." -#: judge/models/profile.py:179 +#: judge/models/profile.py:180 msgid "current contest" msgstr "jelenlegi verseny" -#: judge/models/profile.py:181 +#: judge/models/profile.py:182 msgid "math engine" msgstr "matek motor" -#: judge/models/profile.py:183 +#: judge/models/profile.py:184 msgid "The rendering engine used to render math." msgstr "A matek ábrákat renderelő motor." -#: judge/models/profile.py:184 +#: judge/models/profile.py:185 msgid "TOTP 2FA enabled" msgstr "" -#: judge/models/profile.py:185 +#: judge/models/profile.py:186 msgid "Check to enable TOTP-based two-factor authentication." msgstr "" -#: judge/models/profile.py:186 +#: judge/models/profile.py:187 msgid "WebAuthn 2FA enabled" msgstr "" -#: judge/models/profile.py:187 +#: judge/models/profile.py:188 msgid "Check to enable WebAuthn-based two-factor authentication." msgstr "" -#: judge/models/profile.py:188 +#: judge/models/profile.py:189 msgid "TOTP key" msgstr "" -#: judge/models/profile.py:189 +#: judge/models/profile.py:190 msgid "32-character Base32-encoded key for TOTP." msgstr "" -#: judge/models/profile.py:191 +#: judge/models/profile.py:192 msgid "TOTP key must be empty or Base32." msgstr "" -#: judge/models/profile.py:192 +#: judge/models/profile.py:193 msgid "scratch codes" msgstr "" -#: judge/models/profile.py:193 +#: judge/models/profile.py:194 msgid "JSON array of 16-character Base32-encoded codes for scratch codes." msgstr "" -#: judge/models/profile.py:197 +#: judge/models/profile.py:198 msgid "Scratch codes must be empty or a JSON array of 16-character Base32 codes." msgstr "" -#: judge/models/profile.py:199 +#: judge/models/profile.py:200 msgid "last TOTP timecode" msgstr "" -#: judge/models/profile.py:200 +#: judge/models/profile.py:201 msgid "API token" msgstr "" -#: judge/models/profile.py:201 +#: judge/models/profile.py:202 msgid "64-character hex-encoded API access token." msgstr "" -#: judge/models/profile.py:203 +#: judge/models/profile.py:204 msgid "API token must be None or hexadecimal" msgstr "" -#: judge/models/profile.py:204 +#: judge/models/profile.py:205 msgid "internal notes" msgstr "" -#: judge/models/profile.py:205 +#: judge/models/profile.py:206 msgid "Notes for administrators regarding this user." msgstr "" -#: judge/models/profile.py:206 +#: judge/models/profile.py:207 msgid "last data download time" msgstr "" -#: judge/models/profile.py:207 +#: judge/models/profile.py:208 msgid "display name override" msgstr "" -#: judge/models/profile.py:208 +#: judge/models/profile.py:209 msgid "Name displayed in place of username." msgstr "" -#: judge/models/profile.py:323 +#: judge/models/profile.py:333 msgid "Shows in-progress development stuff" msgstr "" -#: judge/models/profile.py:324 +#: judge/models/profile.py:334 msgid "Edit TOTP settings" msgstr "" -#: judge/models/profile.py:326 +#: judge/models/profile.py:336 msgid "user profile" msgstr "felhasználói profil" -#: judge/models/profile.py:327 +#: judge/models/profile.py:337 msgid "user profiles" msgstr "felhasználói profilok" -#: judge/models/profile.py:333 +#: judge/models/profile.py:349 msgid "device name" msgstr "" -#: judge/models/profile.py:334 +#: judge/models/profile.py:350 msgid "credential ID" msgstr "" -#: judge/models/profile.py:335 +#: judge/models/profile.py:351 msgid "public key" msgstr "" -#: judge/models/profile.py:336 +#: judge/models/profile.py:352 msgid "sign counter" msgstr "" -#: judge/models/profile.py:354 +#: judge/models/profile.py:370 #, python-format msgid "WebAuthn credential: %(name)s" msgstr "" -#: judge/models/profile.py:357 +#: judge/models/profile.py:373 msgid "WebAuthn credential" msgstr "" -#: judge/models/profile.py:358 +#: judge/models/profile.py:374 msgid "WebAuthn credentials" msgstr "" -#: judge/models/profile.py:365 +#: judge/models/profile.py:381 msgid "request time" msgstr "kérési idő" -#: judge/models/profile.py:366 +#: judge/models/profile.py:382 msgid "state" msgstr "állapot" -#: judge/models/profile.py:367 templates/organization/requests/tabs.html:4 +#: judge/models/profile.py:383 templates/organization/requests/tabs.html:4 msgid "Pending" msgstr "Elbírálás alatt" -#: judge/models/profile.py:368 templates/organization/requests/tabs.html:10 +#: judge/models/profile.py:384 templates/organization/requests/tabs.html:10 msgid "Approved" msgstr "Jóváhagyva" -#: judge/models/profile.py:369 templates/organization/requests/tabs.html:13 +#: judge/models/profile.py:385 templates/organization/requests/tabs.html:13 msgid "Rejected" msgstr "Elutasítva" -#: judge/models/profile.py:372 +#: judge/models/profile.py:388 msgid "reason" msgstr "ok" -#: judge/models/profile.py:381 +#: judge/models/profile.py:397 msgid "organization join request" msgstr "csoport belépési kérelem" -#: judge/models/profile.py:382 +#: judge/models/profile.py:398 msgid "organization join requests" msgstr "csoport belépési kérelmek" @@ -2588,15 +2609,15 @@ msgstr "Belső Hiba (tesztelő szerver hiba)" msgid "submission time" msgstr "" -#: judge/models/submission.py:70 judge/models/submission.py:255 +#: judge/models/submission.py:70 judge/models/submission.py:265 msgid "execution time" msgstr "futási idő" -#: judge/models/submission.py:71 judge/models/submission.py:256 +#: judge/models/submission.py:71 judge/models/submission.py:266 msgid "memory usage" msgstr "memória használat" -#: judge/models/submission.py:72 judge/models/submission.py:257 +#: judge/models/submission.py:72 judge/models/submission.py:267 msgid "points granted" msgstr "" @@ -2685,60 +2706,60 @@ msgstr "" msgid "submissions" msgstr "" -#: judge/models/submission.py:235 judge/models/submission.py:251 +#: judge/models/submission.py:245 judge/models/submission.py:261 msgid "associated submission" msgstr "" -#: judge/models/submission.py:237 +#: judge/models/submission.py:247 msgid "source code" msgstr "forráskód" -#: judge/models/submission.py:240 +#: judge/models/submission.py:250 #, python-format msgid "Source of %(submission)s" msgstr "" -#: judge/models/submission.py:243 +#: judge/models/submission.py:253 msgid "submission source" msgstr "" -#: judge/models/submission.py:244 +#: judge/models/submission.py:254 msgid "submission sources" msgstr "" -#: judge/models/submission.py:253 +#: judge/models/submission.py:263 msgid "test case ID" msgstr "teszteset azonosító" -#: judge/models/submission.py:254 +#: judge/models/submission.py:264 msgid "status flag" msgstr "" -#: judge/models/submission.py:258 +#: judge/models/submission.py:268 msgid "points possible" msgstr "" -#: judge/models/submission.py:259 +#: judge/models/submission.py:269 msgid "batch number" msgstr "" -#: judge/models/submission.py:260 +#: judge/models/submission.py:270 msgid "judging feedback" msgstr "tesztelési visszajelzés" -#: judge/models/submission.py:261 +#: judge/models/submission.py:271 msgid "extended judging feedback" msgstr "" -#: judge/models/submission.py:262 +#: judge/models/submission.py:272 msgid "program output" msgstr "program kimenet" -#: judge/models/submission.py:276 +#: judge/models/submission.py:286 msgid "submission test case" msgstr "" -#: judge/models/submission.py:277 +#: judge/models/submission.py:287 msgid "submission test cases" msgstr "" @@ -2956,7 +2977,7 @@ msgctxt "hours and minutes" msgid "%h:%m" msgstr "%h:%m" -#: judge/views/blog.py:36 +#: judge/views/blog.py:37 #, python-format msgid "Page %d of Posts" msgstr "" @@ -3445,11 +3466,11 @@ msgstr "" msgid "Register" msgstr "Regisztráció" -#: judge/views/register.py:103 +#: judge/views/register.py:101 msgid "Activation Key Invalid" msgstr "" -#: judge/views/register.py:114 +#: judge/views/register.py:112 msgid "Authentication failure" msgstr "Azonosítási hiba" @@ -3461,7 +3482,7 @@ msgstr "Egyéb" msgid "Language statistics" msgstr "" -#: judge/views/status.py:23 templates/submission/list.html:308 +#: judge/views/status.py:23 templates/submission/list.html:310 msgid "Status" msgstr "Státusz" @@ -3644,41 +3665,45 @@ msgstr "Y. M j., G:i" msgid "Preparing your data..." msgstr "" -#: judge/views/user.py:298 templates/user/edit-profile.html:345 +#: judge/views/user.py:298 templates/user/edit-profile.html:344 msgid "Download your data" msgstr "" +#: judge/views/user.py:347 +msgid "Can't edit profile" +msgstr "" + #: judge/views/user.py:354 msgid "Updated on site" msgstr "Frissítve az oldalon" -#: judge/views/user.py:387 templates/admin/auth/user/change_form.html:14 -#: templates/admin/auth/user/change_form.html:17 templates/base.html:213 +#: judge/views/user.py:386 templates/admin/auth/user/change_form.html:14 +#: templates/admin/auth/user/change_form.html:17 templates/base.html:223 #: templates/user/user-tabs.html:16 msgid "Edit profile" msgstr "Profil szerkesztése" -#: judge/views/user.py:402 +#: judge/views/user.py:400 msgid "Generated API token for user" msgstr "" -#: judge/views/user.py:414 +#: judge/views/user.py:412 msgid "Removed API token for user" msgstr "" -#: judge/views/user.py:424 +#: judge/views/user.py:422 msgid "Generated scratch codes for user" msgstr "" -#: judge/views/user.py:430 templates/user/user-list-tabs.html:4 +#: judge/views/user.py:428 templates/user/user-list-tabs.html:4 msgid "Leaderboard" msgstr "Ranglista" -#: judge/views/user.py:491 +#: judge/views/user.py:489 msgid "You have been successfully logged out." msgstr "" -#: judge/views/user.py:508 +#: judge/views/user.py:506 msgid "You have sent too many password reset requests. Please try again later." msgstr "" @@ -3707,13 +3732,13 @@ msgstr "" #: templates/admin/judge/judge/change_form.html:27 #: templates/admin/judge/judge/change_form.html:30 -#: templates/user/edit-profile.html:355 templates/user/edit-profile.html:358 +#: templates/user/edit-profile.html:372 templates/user/edit-profile.html:375 msgid "Disable" msgstr "" #: templates/admin/judge/judge/change_form.html:33 #: templates/admin/judge/judge/change_form.html:36 -#: templates/user/edit-profile.html:386 +#: templates/user/edit-profile.html:403 msgid "Enable" msgstr "" @@ -3733,48 +3758,48 @@ msgstr "" msgid "Edit user" msgstr "Felhasználó szerkesztése" -#: templates/base.html:206 +#: templates/base.html:216 #, python-format msgid "Hello, %(username)s." msgstr "Heló, %(username)s." -#: templates/base.html:215 +#: templates/base.html:225 msgid "Stop impersonating" msgstr "" -#: templates/base.html:220 +#: templates/base.html:230 msgid "Log out" msgstr "Kilépés" -#: templates/base.html:229 +#: templates/base.html:239 #: templates/registration/password_reset_complete.html:4 msgid "Log in" msgstr "" -#: templates/base.html:230 templates/registration/registration_form.html:181 +#: templates/base.html:240 templates/registration/registration_form.html:177 msgid "or" msgstr "vagy" -#: templates/base.html:231 +#: templates/base.html:241 msgid "Sign up" msgstr "" -#: templates/base.html:243 +#: templates/base.html:253 msgid "spectating" msgstr "megfigyelés" -#: templates/base.html:256 +#: templates/base.html:266 msgid "This site works best with JavaScript enabled." msgstr "Az oldal JavaScript engedélyezésével működik a legjobban." -#: templates/base.html:283 +#: templates/base.html:293 msgid "proudly powered by **DMOJ**" msgstr "" #: templates/blog/content.html:13 templates/comments/list.html:89 #: templates/comments/list.html:105 templates/contest/contest-tabs.html:23 #: templates/contest/tag-title.html:9 templates/flatpages/admin_link.html:3 -#: templates/license.html:10 templates/problem/data.html:423 +#: templates/license.html:10 templates/problem/data.html:424 #: templates/problem/editorial.html:14 msgid "Edit" msgstr "Szerkesztés" @@ -3975,15 +4000,15 @@ msgstr "Pont" msgid "No votes" msgstr "" -#: templates/common-content.html:32 templates/user/edit-profile.html:219 +#: templates/common-content.html:32 templates/user/edit-profile.html:214 msgid "Click to copy" msgstr "" -#: templates/common-content.html:33 templates/user/edit-profile.html:220 +#: templates/common-content.html:33 templates/user/edit-profile.html:215 msgid "Copy" msgstr "" -#: templates/common-content.html:44 templates/user/edit-profile.html:231 +#: templates/common-content.html:44 templates/user/edit-profile.html:226 msgid "Copied!" msgstr "" @@ -4064,7 +4089,7 @@ msgstr "Naptár" msgid "Info" msgstr "" -#: templates/contest/contest-tabs.html:6 templates/submission/list.html:334 +#: templates/contest/contest-tabs.html:6 templates/submission/list.html:336 msgid "Statistics" msgstr "" @@ -4279,7 +4304,7 @@ msgstr "AC arány" #: templates/contest/contest.html:198 templates/contest/list.html:152 #: templates/contest/list.html:194 templates/contest/list.html:271 -#: templates/problem/list.html:203 templates/problem/list.html:235 +#: templates/problem/list.html:194 templates/problem/list.html:226 msgid "Users" msgstr "Felhasználók" @@ -4287,7 +4312,7 @@ msgstr "Felhasználók" msgid "Editorials" msgstr "" -#: templates/contest/contest.html:226 templates/problem/list.html:229 +#: templates/contest/contest.html:226 templates/problem/list.html:220 msgid "Editorial" msgstr "Megoldási útmutató" @@ -4452,19 +4477,19 @@ msgstr "" msgid "Disqualify" msgstr "" -#: templates/contest/ranking.html:151 +#: templates/contest/ranking.html:46 msgid "Are you sure you want to disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:156 +#: templates/contest/ranking.html:51 msgid "Are you sure you want to un-disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:228 +#: templates/contest/ranking.html:124 msgid "View user participation" msgstr "" -#: templates/contest/ranking.html:232 +#: templates/contest/ranking.html:128 msgid "Show organizations" msgstr "Csoportok mutatása" @@ -4651,7 +4676,7 @@ msgid "There are no requests to approve." msgstr "Nincsenek jóváhagyásra váló kérések." #: templates/organization/requests/pending.html:17 -#: templates/problem/data.html:387 +#: templates/problem/data.html:388 msgid "Delete?" msgstr "Törlés?" @@ -4687,59 +4712,59 @@ msgstr "" msgid "Enter a new code for the cloned problem:" msgstr "" -#: templates/problem/data.html:70 +#: templates/problem/data.html:71 msgid "precision (decimal digits)" msgstr "" -#: templates/problem/data.html:339 +#: templates/problem/data.html:340 msgid "View YAML" msgstr "" -#: templates/problem/data.html:355 +#: templates/problem/data.html:356 msgid "Show columns:" msgstr "" -#: templates/problem/data.html:358 templates/problem/data.html:382 +#: templates/problem/data.html:359 templates/problem/data.html:383 msgid "Output prefix" msgstr "" -#: templates/problem/data.html:362 templates/problem/data.html:383 +#: templates/problem/data.html:363 templates/problem/data.html:384 msgid "Output limit" msgstr "Kimenet limit" -#: templates/problem/data.html:366 templates/problem/data.html:384 +#: templates/problem/data.html:367 templates/problem/data.html:385 msgid "Checker" msgstr "Checker" -#: templates/problem/data.html:370 templates/problem/data.html:385 +#: templates/problem/data.html:371 templates/problem/data.html:386 msgid "Generator args" msgstr "Generátor argumentumok" -#: templates/problem/data.html:377 +#: templates/problem/data.html:378 msgid "Type" msgstr "Típus" -#: templates/problem/data.html:378 +#: templates/problem/data.html:379 msgid "Input file" msgstr "Bementi fájl" -#: templates/problem/data.html:379 +#: templates/problem/data.html:380 msgid "Output file" msgstr "Kimeneti fájl" -#: templates/problem/data.html:381 +#: templates/problem/data.html:382 msgid "Pretest?" msgstr "Preteszt?" -#: templates/problem/data.html:433 templates/problem/submit.html:256 +#: templates/problem/data.html:434 templates/problem/submit.html:190 msgid "Submit!" msgstr "Beküld!" -#: templates/problem/data.html:434 +#: templates/problem/data.html:435 msgid "Add new case" msgstr "Új eset hozzáadása" -#: templates/problem/data.html:436 +#: templates/problem/data.html:437 msgid "Save" msgstr "" @@ -4757,100 +4782,100 @@ msgid_plural "Authors:" msgstr[0] "Szerző:" msgstr[1] "Szerzők:" -#: templates/problem/list.html:58 +#: templates/problem/list.html:49 msgid "Filter by type..." msgstr "Szűrés típus szerint..." -#: templates/problem/list.html:176 +#: templates/problem/list.html:167 msgid "Hot problems" msgstr "" -#: templates/problem/list.html:198 templates/problem/list.html:216 +#: templates/problem/list.html:189 templates/problem/list.html:207 #: templates/problem/search-form.html:35 templates/user/user-problems.html:59 msgid "Category" msgstr "Kategória" -#: templates/problem/list.html:200 templates/problem/list.html:220 +#: templates/problem/list.html:191 templates/problem/list.html:211 msgid "Types" msgstr "Típusok" -#: templates/problem/list.html:227 +#: templates/problem/list.html:218 #, python-format msgid "AC %%" msgstr "AC %%" -#: templates/problem/manage_submission.html:55 +#: templates/problem/manage_submission.html:56 msgid "Leave empty to not filter by language" msgstr "" -#: templates/problem/manage_submission.html:60 +#: templates/problem/manage_submission.html:62 msgid "Leave empty to not filter by result" msgstr "" -#: templates/problem/manage_submission.html:79 +#: templates/problem/manage_submission.html:81 msgid "Need valid values for both start and end IDs." msgstr "" -#: templates/problem/manage_submission.html:82 +#: templates/problem/manage_submission.html:84 msgid "End ID must be after start ID." msgstr "" -#: templates/problem/manage_submission.html:90 +#: templates/problem/manage_submission.html:92 #, python-brace-format msgid "You are about to rejudge {count} submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:96 +#: templates/problem/manage_submission.html:98 msgid "You are about to rejudge a few submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:115 +#: templates/problem/manage_submission.html:117 msgid "Rejudge Submissions" msgstr "" -#: templates/problem/manage_submission.html:120 +#: templates/problem/manage_submission.html:122 msgid "Filter by ID:" msgstr "" -#: templates/problem/manage_submission.html:123 +#: templates/problem/manage_submission.html:125 msgid "Starting ID:" msgstr "" -#: templates/problem/manage_submission.html:127 +#: templates/problem/manage_submission.html:129 msgid "Ending ID:" msgstr "" -#: templates/problem/manage_submission.html:131 +#: templates/problem/manage_submission.html:133 msgid "This range includes both endpoints." msgstr "" -#: templates/problem/manage_submission.html:134 +#: templates/problem/manage_submission.html:136 msgid "Filter by language:" msgstr "" -#: templates/problem/manage_submission.html:150 +#: templates/problem/manage_submission.html:152 msgid "Rejudge selected submissions" msgstr "" -#: templates/problem/manage_submission.html:157 +#: templates/problem/manage_submission.html:159 msgid "Rescore Everything" msgstr "" -#: templates/problem/manage_submission.html:158 +#: templates/problem/manage_submission.html:160 #, python-format msgid "This will rescore %(count)s submission." msgid_plural "This will rescore %(count)s submissions." msgstr[0] "" msgstr[1] "" -#: templates/problem/manage_submission.html:166 +#: templates/problem/manage_submission.html:168 #, python-format msgid "Are you sure you want to rescore %(count)s submission?" msgid_plural "Are you sure you want to rescore %(count)s submissions?" msgstr[0] "" msgstr[1] "" -#: templates/problem/manage_submission.html:171 +#: templates/problem/manage_submission.html:173 msgid "Rescore all submissions" msgstr "" @@ -5013,8 +5038,8 @@ msgstr "Feladat típusok" msgid "Point range" msgstr "" -#: templates/problem/search-form.html:68 templates/submission/list.html:326 -#: templates/ticket/list.html:188 +#: templates/problem/search-form.html:68 templates/submission/list.html:328 +#: templates/ticket/list.html:189 msgid "Go" msgstr "" @@ -5023,7 +5048,7 @@ msgid "Random" msgstr "" #: templates/problem/submission-diff.html:62 -#: templates/status/language-list.html:34 templates/ticket/list.html:199 +#: templates/status/language-list.html:34 templates/ticket/list.html:200 msgid "ID" msgstr "Azonosító" @@ -5035,31 +5060,31 @@ msgstr "Eredmény" msgid "Date" msgstr "Dátum" -#: templates/problem/submit.html:117 +#: templates/problem/submit.html:118 msgid "Your source code must contain at most 65536 characters." msgstr "" -#: templates/problem/submit.html:204 +#: templates/problem/submit.html:138 msgid "Warning!" msgstr "" -#: templates/problem/submit.html:205 +#: templates/problem/submit.html:139 #, python-format msgid "Your default language, %(language)s, is unavailable for this problem and has been deselected." msgstr "" -#: templates/problem/submit.html:213 +#: templates/problem/submit.html:147 #, python-format msgid "You have %(left)s submission left" msgid_plural "You have %(left)s submissions left" msgstr[0] "" msgstr[1] "" -#: templates/problem/submit.html:218 +#: templates/problem/submit.html:152 msgid "You have 0 submissions left" msgstr "" -#: templates/problem/submit.html:252 +#: templates/problem/submit.html:186 msgid "No judge is available for this problem." msgstr "" @@ -5267,7 +5292,7 @@ msgstr "" msgid "Password reset on %(site_name)s" msgstr "" -#: templates/registration/profile_creation.html:44 +#: templates/registration/profile_creation.html:38 #: templates/registration/username_select.html:7 msgid "Continue >" msgstr "Folytatás >" @@ -5280,36 +5305,36 @@ msgstr "" msgid "You have successfully been registered. An email has been sent to the email address you provided to confirm your registration." msgstr "" -#: templates/registration/registration_form.html:170 +#: templates/registration/registration_form.html:166 msgid "(again, for confirmation)" msgstr "(újra, megerősítésként)" -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "(select your closest major city)" msgstr "" -#: templates/registration/registration_form.html:182 +#: templates/registration/registration_form.html:178 msgid "pick from map" msgstr "válassz a térképről" -#: templates/registration/registration_form.html:187 +#: templates/registration/registration_form.html:183 msgid "Default language" msgstr "Alapértelmezett nyelv" -#: templates/registration/registration_form.html:190 +#: templates/registration/registration_form.html:186 msgid "Affiliated organizations" msgstr "Kapcsolódó csoportok" -#: templates/registration/registration_form.html:199 -#: templates/user/edit-profile.html:322 +#: templates/registration/registration_form.html:195 +#: templates/user/edit-profile.html:321 msgid "Notify me about upcoming contests" msgstr "" -#: templates/registration/registration_form.html:213 +#: templates/registration/registration_form.html:209 msgid "By registering, you agree to our [Terms & Conditions][0]." msgstr "" -#: templates/registration/registration_form.html:216 +#: templates/registration/registration_form.html:212 msgid "Register!" msgstr "" @@ -5351,17 +5376,17 @@ msgid "Enable Two Factor Authentication" msgstr "" #: templates/registration/totp_enable.html:98 -#: templates/user/edit-profile.html:374 +#: templates/user/edit-profile.html:391 msgid "Below is a list of one-time use scratch codes." msgstr "" #: templates/registration/totp_enable.html:99 -#: templates/user/edit-profile.html:375 +#: templates/user/edit-profile.html:392 msgid "These codes can only be used once and are for emergency use." msgstr "" #: templates/registration/totp_enable.html:100 -#: templates/user/edit-profile.html:376 +#: templates/user/edit-profile.html:393 msgid "You can use these codes to login to your account or disable two-factor authentication." msgstr "" @@ -5370,7 +5395,7 @@ msgid "If you ever need more scratch codes, you can regenerate them on the edit msgstr "" #: templates/registration/totp_enable.html:102 -#: templates/user/edit-profile.html:378 +#: templates/user/edit-profile.html:395 msgid "Please write these down and keep them in a secure location." msgstr "" @@ -5388,12 +5413,12 @@ msgid "If you lose your authentication device and are unable to use your scratch msgstr "" #: templates/registration/two_factor_auth.html:33 -#: templates/user/edit-profile.html:164 +#: templates/user/edit-profile.html:159 msgid "WebAuthn is not supported by your browser." msgstr "" #: templates/registration/two_factor_auth.html:54 -#: templates/user/edit-profile.html:188 +#: templates/user/edit-profile.html:183 msgid "Failed to contact server." msgstr "" @@ -5491,23 +5516,23 @@ msgstr "" msgid "Are you sure you want to rejudge?" msgstr "" -#: templates/submission/list.html:74 +#: templates/submission/list.html:75 msgid "Filter by status..." msgstr "" -#: templates/submission/list.html:80 +#: templates/submission/list.html:82 msgid "Filter by language..." msgstr "" -#: templates/submission/list.html:304 +#: templates/submission/list.html:306 msgid "Filter submissions" msgstr "" -#: templates/submission/list.html:340 +#: templates/submission/list.html:342 msgid "Total:" msgstr "" -#: templates/submission/list.html:350 +#: templates/submission/list.html:352 msgid "You were disconnected. Refresh to show latest updates." msgstr "" @@ -5671,33 +5696,33 @@ msgstr "Újranyitva: " msgid "Closed: " msgstr "Lezárva: " -#: templates/ticket/list.html:156 +#: templates/ticket/list.html:157 msgid "Use desktop notification" msgstr "Asztali értesítés használata" -#: templates/ticket/list.html:162 +#: templates/ticket/list.html:163 msgid "Hide closed tickets" msgstr "" -#: templates/ticket/list.html:167 +#: templates/ticket/list.html:168 msgid "Show my tickets only" msgstr "Csak a saját hibajegyek mutatása" -#: templates/ticket/list.html:171 +#: templates/ticket/list.html:172 msgid "Filing user" msgstr "" -#: templates/ticket/list.html:180 templates/ticket/ticket.html:196 +#: templates/ticket/list.html:181 templates/ticket/ticket.html:196 msgid "Assignee" msgid_plural "Assignees" msgstr[0] "" msgstr[1] "" -#: templates/ticket/list.html:200 +#: templates/ticket/list.html:201 msgid "Title" msgstr "" -#: templates/ticket/list.html:202 +#: templates/ticket/list.html:203 msgid "Assignees" msgstr "" @@ -5748,129 +5773,133 @@ msgstr "" msgid "Nothing here." msgstr "" -#: templates/user/base-users-table.html:3 +#: templates/user/base-users-table.html:4 msgid "Rank" msgstr "" -#: templates/user/base-users.html:14 templates/user/base-users.html:57 +#: templates/user/base-users.html:15 templates/user/base-users.html:58 msgid "Search by handle..." msgstr "" -#: templates/user/edit-profile.html:107 +#: templates/user/edit-profile.html:102 msgid "The administrators for this site require all the staff to have Two-factor Authentication enabled, so it may not be disabled at this time." msgstr "" -#: templates/user/edit-profile.html:112 +#: templates/user/edit-profile.html:107 msgid "Are you sure you want to generate or regenerate your API token?" msgstr "" -#: templates/user/edit-profile.html:113 +#: templates/user/edit-profile.html:108 msgid "This will invalidate any previous API tokens." msgstr "" -#: templates/user/edit-profile.html:114 +#: templates/user/edit-profile.html:109 msgid "It also allows access to your account without Two-factor Authentication." msgstr "" -#: templates/user/edit-profile.html:115 +#: templates/user/edit-profile.html:110 msgid "You will not be able to view your API token after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:116 templates/user/edit-profile.html:210 +#: templates/user/edit-profile.html:111 templates/user/edit-profile.html:205 msgid "Generating..." msgstr "" -#: templates/user/edit-profile.html:130 templates/user/edit-profile.html:398 +#: templates/user/edit-profile.html:125 templates/user/edit-profile.html:355 msgid "Remove" msgstr "" -#: templates/user/edit-profile.html:140 +#: templates/user/edit-profile.html:135 msgid "Are you sure you want to remove your API token?" msgstr "" -#: templates/user/edit-profile.html:147 templates/user/edit-profile.html:370 -#: templates/user/edit-profile.html:402 +#: templates/user/edit-profile.html:142 templates/user/edit-profile.html:359 +#: templates/user/edit-profile.html:387 msgid "Generate" msgstr "" -#: templates/user/edit-profile.html:193 +#: templates/user/edit-profile.html:188 msgid "Are you sure you want to delete this security key?" msgstr "" -#: templates/user/edit-profile.html:207 +#: templates/user/edit-profile.html:202 msgid "Are you sure you want to generate or regenerate a new set of scratch codes?" msgstr "" -#: templates/user/edit-profile.html:208 +#: templates/user/edit-profile.html:203 msgid "This will invalidate any previous scratch codes you have." msgstr "" -#: templates/user/edit-profile.html:209 templates/user/edit-profile.html:379 +#: templates/user/edit-profile.html:204 templates/user/edit-profile.html:396 msgid "You will not be able to view your scratch codes after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:278 +#: templates/user/edit-profile.html:273 msgid "Self-description:" msgstr "Önleírás:" -#: templates/user/edit-profile.html:285 +#: templates/user/edit-profile.html:280 msgid "Select your closest major city" msgstr "" -#: templates/user/edit-profile.html:286 +#: templates/user/edit-profile.html:281 msgid "Time zone:" msgstr "Időzóna:" -#: templates/user/edit-profile.html:290 +#: templates/user/edit-profile.html:285 msgid "Language:" msgstr "Nyelv:" -#: templates/user/edit-profile.html:294 +#: templates/user/edit-profile.html:289 +msgid "Site theme:" +msgstr "" + +#: templates/user/edit-profile.html:293 msgid "Editor theme:" msgstr "" -#: templates/user/edit-profile.html:299 +#: templates/user/edit-profile.html:298 msgid "Math engine:" msgstr "Matek motor:" -#: templates/user/edit-profile.html:308 +#: templates/user/edit-profile.html:307 msgid "Affiliated organizations:" msgstr "Kapcsolódó csoportok:" -#: templates/user/edit-profile.html:334 +#: templates/user/edit-profile.html:333 msgid "Change your avatar" msgstr "" -#: templates/user/edit-profile.html:339 +#: templates/user/edit-profile.html:338 msgid "Change your password" msgstr "" -#: templates/user/edit-profile.html:352 -msgid "Two-factor Authentication is enabled:" +#: templates/user/edit-profile.html:350 +msgid "API token:" msgstr "" -#: templates/user/edit-profile.html:360 -msgid "Refresh" +#: templates/user/edit-profile.html:356 templates/user/edit-profile.html:384 +msgid "Hidden" msgstr "" -#: templates/user/edit-profile.html:363 -msgid "Scratch codes:" +#: templates/user/edit-profile.html:369 +msgid "Two-factor authentication is enabled:" msgstr "" -#: templates/user/edit-profile.html:367 templates/user/edit-profile.html:399 -msgid "Hidden" +#: templates/user/edit-profile.html:377 +msgid "Refresh" msgstr "" -#: templates/user/edit-profile.html:377 -msgid "If you ever need more scratch codes, you can regenerate them here." +#: templates/user/edit-profile.html:380 +msgid "Scratch codes:" msgstr "" -#: templates/user/edit-profile.html:385 -msgid "Two-factor Authentication is disabled:" +#: templates/user/edit-profile.html:394 +msgid "If you ever need more scratch codes, you can regenerate them here." msgstr "" -#: templates/user/edit-profile.html:393 -msgid "API token:" +#: templates/user/edit-profile.html:402 +msgid "Two-factor Authentication is disabled:" msgstr "" #: templates/user/edit-profile.html:410 diff --git a/locale/hu/LC_MESSAGES/djangojs.po b/locale/hu/LC_MESSAGES/djangojs.po index 0d0f7c8b4c..3b8b835249 100644 --- a/locale/hu/LC_MESSAGES/djangojs.po +++ b/locale/hu/LC_MESSAGES/djangojs.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-20 23:43+0000\n" -"PO-Revision-Date: 2022-12-21 00:43\n" +"POT-Creation-Date: 2023-01-23 05:23+0000\n" +"PO-Revision-Date: 2023-01-24 00:51\n" "Last-Translator: \n" "Language-Team: Hungarian\n" "Language: hu_HU\n" @@ -17,14 +17,14 @@ msgstr "" "X-Crowdin-File: djangojs.po\n" "X-Crowdin-File-ID: 12\n" -#: resources/common.js:195 +#: resources/common.js:194 msgctxt "time format with day" msgid "%d day %h:%m:%s" msgid_plural "%d days %h:%m:%s" msgstr[0] "%d nap %h:%m:%s" msgstr[1] "%d nap %h:%m:%s" -#: resources/common.js:198 +#: resources/common.js:197 msgctxt "time format without day" msgid "%h:%m:%s" msgstr "%h:%m:%s" diff --git a/locale/it/LC_MESSAGES/django.po b/locale/it/LC_MESSAGES/django.po index 58b597c1ee..20c4016410 100644 --- a/locale/it/LC_MESSAGES/django.po +++ b/locale/it/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-20 23:04+0000\n" -"PO-Revision-Date: 2023-01-21 00:49\n" +"POT-Creation-Date: 2023-02-17 22:33+0000\n" +"PO-Revision-Date: 2023-02-18 00:49\n" "Last-Translator: \n" "Language-Team: Italian\n" "Language: it_IT\n" @@ -17,91 +17,91 @@ msgstr "" "X-Crowdin-File: django.po\n" "X-Crowdin-File-ID: 10\n" -#: dmoj/settings.py:380 +#: dmoj/settings.py:392 msgid "Catalan" msgstr "Catalano" -#: dmoj/settings.py:381 +#: dmoj/settings.py:393 msgid "German" msgstr "Tedesco" -#: dmoj/settings.py:382 +#: dmoj/settings.py:394 msgid "Greek" msgstr "Greco" -#: dmoj/settings.py:383 +#: dmoj/settings.py:395 msgid "English" msgstr "Inglese" -#: dmoj/settings.py:384 +#: dmoj/settings.py:396 msgid "Spanish" msgstr "Spagnolo" -#: dmoj/settings.py:385 +#: dmoj/settings.py:397 msgid "French" msgstr "Francese" -#: dmoj/settings.py:386 +#: dmoj/settings.py:398 msgid "Croatian" msgstr "Croato" -#: dmoj/settings.py:387 +#: dmoj/settings.py:399 msgid "Hungarian" msgstr "Ungherese" -#: dmoj/settings.py:388 +#: dmoj/settings.py:400 msgid "Japanese" msgstr "Giapponese" -#: dmoj/settings.py:389 +#: dmoj/settings.py:401 msgid "Korean" msgstr "Coreano" -#: dmoj/settings.py:390 +#: dmoj/settings.py:402 msgid "Brazilian Portuguese" msgstr "" -#: dmoj/settings.py:391 +#: dmoj/settings.py:403 msgid "Romanian" msgstr "Rumeno" -#: dmoj/settings.py:392 +#: dmoj/settings.py:404 msgid "Russian" msgstr "Russo" -#: dmoj/settings.py:393 +#: dmoj/settings.py:405 msgid "Serbian (Latin)" msgstr "" -#: dmoj/settings.py:394 +#: dmoj/settings.py:406 msgid "Turkish" msgstr "Turco" -#: dmoj/settings.py:395 +#: dmoj/settings.py:407 msgid "Vietnamese" msgstr "Vietnamita" -#: dmoj/settings.py:396 +#: dmoj/settings.py:408 msgid "Simplified Chinese" msgstr "Cinese Semplificato" -#: dmoj/settings.py:397 +#: dmoj/settings.py:409 msgid "Traditional Chinese" msgstr "Cinese Tradizionale" -#: dmoj/urls.py:32 +#: dmoj/urls.py:31 msgid "Activation Successful!" msgstr "" -#: dmoj/urls.py:40 +#: dmoj/urls.py:39 msgid "Registration Completed" msgstr "" -#: dmoj/urls.py:44 +#: dmoj/urls.py:43 msgid "Registration Not Allowed" msgstr "" -#: dmoj/urls.py:93 templates/base.html:183 +#: dmoj/urls.py:92 templates/base.html:193 msgid "Home" msgstr "" @@ -140,8 +140,8 @@ msgid "Included contests" msgstr "" #: judge/admin/contest.py:65 templates/contest/contest.html:195 -#: templates/contest/moss.html:41 templates/problem/list.html:197 -#: templates/problem/list.html:213 templates/user/user-problems.html:58 +#: templates/contest/moss.html:41 templates/problem/list.html:188 +#: templates/problem/list.html:204 templates/user/user-problems.html:58 #: templates/user/user-problems.html:102 msgid "Problem" msgstr "" @@ -152,7 +152,7 @@ msgstr "" msgid "Problems" msgstr "" -#: judge/admin/contest.py:76 judge/admin/submission.py:249 +#: judge/admin/contest.py:76 judge/admin/submission.py:250 #: templates/admin/judge/submission/change_form.html:14 #: templates/admin/judge/submission/change_form.html:17 #: templates/submission/source.html:34 templates/submission/status.html:89 @@ -231,29 +231,29 @@ msgstr[1] "" msgid "Unlock contest submissions" msgstr "" -#: judge/admin/contest.py:280 judge/admin/submission.py:175 +#: judge/admin/contest.py:280 judge/admin/submission.py:176 #, python-format msgid "%d submission was successfully scheduled for rejudging." msgid_plural "%d submissions were successfully scheduled for rejudging." msgstr[0] "" msgstr[1] "" -#: judge/admin/contest.py:356 +#: judge/admin/contest.py:358 #, python-format msgid "%d participation recalculated." msgid_plural "%d participations recalculated." msgstr[0] "" msgstr[1] "" -#: judge/admin/contest.py:359 +#: judge/admin/contest.py:361 msgid "Recalculate results" msgstr "" -#: judge/admin/contest.py:363 judge/admin/organization.py:113 +#: judge/admin/contest.py:365 judge/admin/organization.py:113 msgid "username" msgstr "" -#: judge/admin/contest.py:368 templates/base.html:249 +#: judge/admin/contest.py:370 templates/base.html:259 msgid "virtual" msgstr "" @@ -266,8 +266,8 @@ msgid "Summary" msgstr "" #: judge/admin/interface.py:124 judge/models/contest.py:491 -#: judge/models/contest.py:623 judge/models/profile.py:331 -#: judge/models/profile.py:362 judge/models/submission.py:67 +#: judge/models/contest.py:623 judge/models/profile.py:347 +#: judge/models/profile.py:378 judge/models/submission.py:67 #: judge/models/ticket.py:32 msgid "user" msgstr "" @@ -298,8 +298,8 @@ msgid "Taxonomy" msgstr "" #: judge/admin/problem.py:133 templates/contest/contest.html:196 -#: templates/problem/data.html:380 templates/problem/list.html:202 -#: templates/problem/list.html:224 templates/user/base-users-table.html:10 +#: templates/problem/data.html:381 templates/problem/list.html:193 +#: templates/problem/list.html:215 templates/user/base-users-table.html:11 #: templates/user/user-problems.html:60 msgid "Points" msgstr "" @@ -308,9 +308,9 @@ msgstr "" msgid "Limits" msgstr "" -#: judge/admin/problem.py:135 judge/admin/submission.py:243 +#: judge/admin/problem.py:135 judge/admin/submission.py:244 #: templates/problem/submission-diff.html:65 templates/stats/tabs.html:4 -#: templates/submission/list.html:317 +#: templates/submission/list.html:319 msgid "Language" msgstr "" @@ -367,19 +367,19 @@ msgstr "" msgid "timezone" msgstr "" -#: judge/admin/profile.py:98 judge/admin/submission.py:222 +#: judge/admin/profile.py:98 judge/admin/submission.py:223 #: templates/organization/requests/log.html:9 #: templates/organization/requests/pending.html:12 -#: templates/ticket/list.html:201 +#: templates/ticket/list.html:202 msgid "User" msgstr "" -#: judge/admin/profile.py:103 templates/registration/registration_form.html:149 +#: judge/admin/profile.py:103 templates/registration/registration_form.html:145 msgid "Email" msgstr "" #: judge/admin/profile.py:108 judge/views/register.py:28 -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "Timezone" msgstr "" @@ -398,26 +398,26 @@ msgstr[1] "" msgid "Recalculate scores" msgstr "" -#: judge/admin/runtime.py:50 templates/user/edit-profile.html:124 -#: templates/user/edit-profile.html:246 templates/user/edit-profile.html:366 -#: templates/user/edit-profile.html:396 +#: judge/admin/runtime.py:52 templates/user/edit-profile.html:119 +#: templates/user/edit-profile.html:241 templates/user/edit-profile.html:353 +#: templates/user/edit-profile.html:383 msgid "Regenerate" msgstr "" -#: judge/admin/runtime.py:64 +#: judge/admin/runtime.py:66 msgid "Description" msgstr "" -#: judge/admin/runtime.py:65 +#: judge/admin/runtime.py:67 msgid "Information" msgstr "" -#: judge/admin/runtime.py:66 +#: judge/admin/runtime.py:68 msgid "Capabilities" msgstr "" #: judge/admin/submission.py:24 judge/admin/submission.py:43 -#: judge/admin/submission.py:232 +#: judge/admin/submission.py:233 msgid "None" msgstr "" @@ -449,57 +449,57 @@ msgctxt "contest problem" msgid "%(problem)s in %(contest)s" msgstr "" -#: judge/admin/submission.py:160 judge/admin/submission.py:182 +#: judge/admin/submission.py:161 judge/admin/submission.py:183 msgid "You do not have the permission to rejudge submissions." msgstr "" -#: judge/admin/submission.py:166 +#: judge/admin/submission.py:167 msgid "You do not have the permission to rejudge THAT many submissions." msgstr "" -#: judge/admin/submission.py:178 +#: judge/admin/submission.py:179 msgid "Rejudge the selected submissions" msgstr "" -#: judge/admin/submission.py:204 judge/views/problem_manage.py:129 +#: judge/admin/submission.py:205 judge/views/problem_manage.py:129 #, python-format msgid "%d submission was successfully rescored." msgid_plural "%d submissions were successfully rescored." msgstr[0] "" msgstr[1] "" -#: judge/admin/submission.py:207 +#: judge/admin/submission.py:208 msgid "Rescore the selected submissions" msgstr "" -#: judge/admin/submission.py:211 +#: judge/admin/submission.py:212 msgid "Problem code" msgstr "" -#: judge/admin/submission.py:216 +#: judge/admin/submission.py:217 msgid "Problem name" msgstr "" -#: judge/admin/submission.py:226 templates/organization/requests/log.html:10 +#: judge/admin/submission.py:227 templates/organization/requests/log.html:10 #: templates/organization/requests/pending.html:13 msgid "Time" msgstr "" -#: judge/admin/submission.py:234 +#: judge/admin/submission.py:235 #, python-format msgid "%d KB" msgstr "" -#: judge/admin/submission.py:236 +#: judge/admin/submission.py:237 #, python-format msgid "%.2f MB" msgstr "" -#: judge/admin/submission.py:238 +#: judge/admin/submission.py:239 msgid "Memory" msgstr "" -#: judge/admin/submission.py:247 +#: judge/admin/submission.py:248 msgid "Locked" msgstr "" @@ -524,6 +524,7 @@ msgid "Comment body" msgstr "" #: judge/comments.py:47 judge/views/comment.py:40 judge/views/ticket.py:46 +#: judge/views/user.py:347 msgid "Your part is silent, little toad." msgstr "" @@ -631,7 +632,7 @@ msgstr "" msgid "Scratch codes must be 16 Base32 characters." msgstr "" -#: judge/forms.py:39 judge/forms.py:265 +#: judge/forms.py:39 judge/forms.py:266 msgid "Invalid scratch code." msgstr "" @@ -654,83 +655,83 @@ msgid_plural "You may not be part of more than {count} public organizations." msgstr[0] "" msgstr[1] "" -#: judge/forms.py:98 +#: judge/forms.py:99 msgid "Download comments?" msgstr "" -#: judge/forms.py:99 +#: judge/forms.py:100 msgid "Download submissions?" msgstr "" -#: judge/forms.py:100 +#: judge/forms.py:101 msgid "Filter by problem code glob:" msgstr "" -#: judge/forms.py:104 +#: judge/forms.py:105 msgid "Leave empty to include all submissions" msgstr "" -#: judge/forms.py:107 templates/problem/manage_submission.html:142 +#: judge/forms.py:108 templates/problem/manage_submission.html:144 msgid "Filter by result:" msgstr "" -#: judge/forms.py:113 +#: judge/forms.py:114 msgid "Please select at least one thing to download." msgstr "" -#: judge/forms.py:139 +#: judge/forms.py:140 msgid "Any judge" msgstr "" -#: judge/forms.py:160 judge/views/register.py:25 +#: judge/forms.py:161 judge/views/register.py:25 #: templates/problem/submission-diff.html:63 -#: templates/registration/registration_form.html:143 -#: templates/user/base-users-table.html:5 +#: templates/registration/registration_form.html:139 +#: templates/user/base-users-table.html:6 msgid "Username" msgstr "" -#: judge/forms.py:161 templates/registration/registration_form.html:155 -#: templates/registration/registration_form.html:169 +#: judge/forms.py:162 templates/registration/registration_form.html:151 +#: templates/registration/registration_form.html:165 msgid "Password" msgstr "" -#: judge/forms.py:193 +#: judge/forms.py:194 msgid "Invalid code length." msgstr "" -#: judge/forms.py:224 +#: judge/forms.py:225 msgid "Invalid WebAuthn response." msgstr "" -#: judge/forms.py:227 +#: judge/forms.py:228 msgid "No WebAuthn challenge issued." msgstr "" -#: judge/forms.py:233 +#: judge/forms.py:234 msgid "Invalid WebAuthn credential ID." msgstr "" -#: judge/forms.py:263 +#: judge/forms.py:264 msgid "Invalid two-factor authentication token or scratch code." msgstr "" -#: judge/forms.py:267 +#: judge/forms.py:268 msgid "Must specify either totp_token or webauthn_response." msgstr "" -#: judge/forms.py:271 judge/models/problem.py:118 +#: judge/forms.py:272 judge/models/problem.py:118 msgid "Problem code must be ^[a-z0-9]+$" msgstr "" -#: judge/forms.py:276 +#: judge/forms.py:277 msgid "Problem with code already exists." msgstr "" -#: judge/forms.py:281 judge/models/contest.py:68 +#: judge/forms.py:282 judge/models/contest.py:68 msgid "Contest id must be ^[a-z0-9]+$" msgstr "" -#: judge/forms.py:286 +#: judge/forms.py:287 msgid "Contest with key already exists." msgstr "" @@ -753,26 +754,42 @@ msgstr "" msgid "Unrated" msgstr "" -#: judge/models/choices.py:59 -msgid "Leave as LaTeX" +#: judge/models/choices.py:24 +msgid "Follow site theme" msgstr "" #: judge/models/choices.py:60 -msgid "SVG only" +msgid "Leave as LaTeX" msgstr "" #: judge/models/choices.py:61 -msgid "MathML only" +msgid "SVG only" msgstr "" #: judge/models/choices.py:62 -msgid "MathJax with SVG fallback" +msgid "MathML only" msgstr "" #: judge/models/choices.py:63 +msgid "MathJax with SVG fallback" +msgstr "" + +#: judge/models/choices.py:64 msgid "Detect best quality" msgstr "" +#: judge/models/choices.py:70 +msgid "Follow system default" +msgstr "" + +#: judge/models/choices.py:71 +msgid "Light" +msgstr "" + +#: judge/models/choices.py:72 +msgid "Dark" +msgstr "" + #: judge/models/comment.py:25 msgid "Page code must be ^[pcs]:[a-z0-9]+$|^b:\\d+$" msgstr "" @@ -1885,7 +1902,7 @@ msgid "Non-trailing spaces" msgstr "" #: judge/models/problem_data.py:28 -msgid "Unordered" +msgid "Sorted" msgstr "" #: judge/models/problem_data.py:29 @@ -2057,7 +2074,7 @@ msgid "Edit all organizations" msgstr "" #: judge/models/profile.py:98 judge/models/profile.py:103 -#: judge/models/profile.py:160 judge/models/profile.py:363 +#: judge/models/profile.py:161 judge/models/profile.py:379 msgid "organization" msgstr "" @@ -2098,7 +2115,7 @@ msgstr "" msgid "%(class)s in %(organization)s" msgstr "" -#: judge/models/profile.py:142 judge/models/profile.py:371 +#: judge/models/profile.py:142 judge/models/profile.py:387 msgid "class" msgstr "" @@ -2123,26 +2140,30 @@ msgid "Ace theme" msgstr "" #: judge/models/profile.py:158 -msgid "last access time" +msgid "site theme" msgstr "" #: judge/models/profile.py:159 +msgid "last access time" +msgstr "" + +#: judge/models/profile.py:160 msgid "last IP" msgstr "" -#: judge/models/profile.py:162 +#: judge/models/profile.py:163 msgid "display rank" msgstr "" -#: judge/models/profile.py:164 +#: judge/models/profile.py:165 msgid "Normal User" msgstr "" -#: judge/models/profile.py:165 +#: judge/models/profile.py:166 msgid "Problem Setter" msgstr "" -#: judge/models/profile.py:166 templates/base.html:211 +#: judge/models/profile.py:167 templates/base.html:221 #: templates/comments/list.html:97 templates/contest/contest-list-tabs.html:25 #: templates/contest/ranking-table.html:51 #: templates/problem/problem-list-tabs.html:6 @@ -2152,200 +2173,200 @@ msgstr "" msgid "Admin" msgstr "" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "comment mute" msgstr "" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "Some users are at their best when silent." msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "unlisted user" msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "User will not be ranked." msgstr "" -#: judge/models/profile.py:172 +#: judge/models/profile.py:173 msgid "banned from voting on problem point values" msgstr "" -#: judge/models/profile.py:173 +#: judge/models/profile.py:174 msgid "User will not be able to vote on problems' point values." msgstr "" -#: judge/models/profile.py:177 +#: judge/models/profile.py:178 msgid "user script" msgstr "" -#: judge/models/profile.py:178 +#: judge/models/profile.py:179 msgid "User-defined JavaScript for site customization." msgstr "" -#: judge/models/profile.py:179 +#: judge/models/profile.py:180 msgid "current contest" msgstr "" -#: judge/models/profile.py:181 +#: judge/models/profile.py:182 msgid "math engine" msgstr "" -#: judge/models/profile.py:183 +#: judge/models/profile.py:184 msgid "The rendering engine used to render math." msgstr "" -#: judge/models/profile.py:184 +#: judge/models/profile.py:185 msgid "TOTP 2FA enabled" msgstr "" -#: judge/models/profile.py:185 +#: judge/models/profile.py:186 msgid "Check to enable TOTP-based two-factor authentication." msgstr "" -#: judge/models/profile.py:186 +#: judge/models/profile.py:187 msgid "WebAuthn 2FA enabled" msgstr "" -#: judge/models/profile.py:187 +#: judge/models/profile.py:188 msgid "Check to enable WebAuthn-based two-factor authentication." msgstr "" -#: judge/models/profile.py:188 +#: judge/models/profile.py:189 msgid "TOTP key" msgstr "" -#: judge/models/profile.py:189 +#: judge/models/profile.py:190 msgid "32-character Base32-encoded key for TOTP." msgstr "" -#: judge/models/profile.py:191 +#: judge/models/profile.py:192 msgid "TOTP key must be empty or Base32." msgstr "" -#: judge/models/profile.py:192 +#: judge/models/profile.py:193 msgid "scratch codes" msgstr "" -#: judge/models/profile.py:193 +#: judge/models/profile.py:194 msgid "JSON array of 16-character Base32-encoded codes for scratch codes." msgstr "" -#: judge/models/profile.py:197 +#: judge/models/profile.py:198 msgid "Scratch codes must be empty or a JSON array of 16-character Base32 codes." msgstr "" -#: judge/models/profile.py:199 +#: judge/models/profile.py:200 msgid "last TOTP timecode" msgstr "" -#: judge/models/profile.py:200 +#: judge/models/profile.py:201 msgid "API token" msgstr "" -#: judge/models/profile.py:201 +#: judge/models/profile.py:202 msgid "64-character hex-encoded API access token." msgstr "" -#: judge/models/profile.py:203 +#: judge/models/profile.py:204 msgid "API token must be None or hexadecimal" msgstr "" -#: judge/models/profile.py:204 +#: judge/models/profile.py:205 msgid "internal notes" msgstr "" -#: judge/models/profile.py:205 +#: judge/models/profile.py:206 msgid "Notes for administrators regarding this user." msgstr "" -#: judge/models/profile.py:206 +#: judge/models/profile.py:207 msgid "last data download time" msgstr "" -#: judge/models/profile.py:207 +#: judge/models/profile.py:208 msgid "display name override" msgstr "" -#: judge/models/profile.py:208 +#: judge/models/profile.py:209 msgid "Name displayed in place of username." msgstr "" -#: judge/models/profile.py:323 +#: judge/models/profile.py:333 msgid "Shows in-progress development stuff" msgstr "" -#: judge/models/profile.py:324 +#: judge/models/profile.py:334 msgid "Edit TOTP settings" msgstr "" -#: judge/models/profile.py:326 +#: judge/models/profile.py:336 msgid "user profile" msgstr "" -#: judge/models/profile.py:327 +#: judge/models/profile.py:337 msgid "user profiles" msgstr "" -#: judge/models/profile.py:333 +#: judge/models/profile.py:349 msgid "device name" msgstr "" -#: judge/models/profile.py:334 +#: judge/models/profile.py:350 msgid "credential ID" msgstr "" -#: judge/models/profile.py:335 +#: judge/models/profile.py:351 msgid "public key" msgstr "" -#: judge/models/profile.py:336 +#: judge/models/profile.py:352 msgid "sign counter" msgstr "" -#: judge/models/profile.py:354 +#: judge/models/profile.py:370 #, python-format msgid "WebAuthn credential: %(name)s" msgstr "" -#: judge/models/profile.py:357 +#: judge/models/profile.py:373 msgid "WebAuthn credential" msgstr "" -#: judge/models/profile.py:358 +#: judge/models/profile.py:374 msgid "WebAuthn credentials" msgstr "" -#: judge/models/profile.py:365 +#: judge/models/profile.py:381 msgid "request time" msgstr "" -#: judge/models/profile.py:366 +#: judge/models/profile.py:382 msgid "state" msgstr "" -#: judge/models/profile.py:367 templates/organization/requests/tabs.html:4 +#: judge/models/profile.py:383 templates/organization/requests/tabs.html:4 msgid "Pending" msgstr "" -#: judge/models/profile.py:368 templates/organization/requests/tabs.html:10 +#: judge/models/profile.py:384 templates/organization/requests/tabs.html:10 msgid "Approved" msgstr "" -#: judge/models/profile.py:369 templates/organization/requests/tabs.html:13 +#: judge/models/profile.py:385 templates/organization/requests/tabs.html:13 msgid "Rejected" msgstr "" -#: judge/models/profile.py:372 +#: judge/models/profile.py:388 msgid "reason" msgstr "" -#: judge/models/profile.py:381 +#: judge/models/profile.py:397 msgid "organization join request" msgstr "" -#: judge/models/profile.py:382 +#: judge/models/profile.py:398 msgid "organization join requests" msgstr "" @@ -2588,15 +2609,15 @@ msgstr "" msgid "submission time" msgstr "" -#: judge/models/submission.py:70 judge/models/submission.py:255 +#: judge/models/submission.py:70 judge/models/submission.py:265 msgid "execution time" msgstr "" -#: judge/models/submission.py:71 judge/models/submission.py:256 +#: judge/models/submission.py:71 judge/models/submission.py:266 msgid "memory usage" msgstr "" -#: judge/models/submission.py:72 judge/models/submission.py:257 +#: judge/models/submission.py:72 judge/models/submission.py:267 msgid "points granted" msgstr "" @@ -2685,60 +2706,60 @@ msgstr "" msgid "submissions" msgstr "" -#: judge/models/submission.py:235 judge/models/submission.py:251 +#: judge/models/submission.py:245 judge/models/submission.py:261 msgid "associated submission" msgstr "" -#: judge/models/submission.py:237 +#: judge/models/submission.py:247 msgid "source code" msgstr "" -#: judge/models/submission.py:240 +#: judge/models/submission.py:250 #, python-format msgid "Source of %(submission)s" msgstr "" -#: judge/models/submission.py:243 +#: judge/models/submission.py:253 msgid "submission source" msgstr "" -#: judge/models/submission.py:244 +#: judge/models/submission.py:254 msgid "submission sources" msgstr "" -#: judge/models/submission.py:253 +#: judge/models/submission.py:263 msgid "test case ID" msgstr "" -#: judge/models/submission.py:254 +#: judge/models/submission.py:264 msgid "status flag" msgstr "" -#: judge/models/submission.py:258 +#: judge/models/submission.py:268 msgid "points possible" msgstr "" -#: judge/models/submission.py:259 +#: judge/models/submission.py:269 msgid "batch number" msgstr "" -#: judge/models/submission.py:260 +#: judge/models/submission.py:270 msgid "judging feedback" msgstr "" -#: judge/models/submission.py:261 +#: judge/models/submission.py:271 msgid "extended judging feedback" msgstr "" -#: judge/models/submission.py:262 +#: judge/models/submission.py:272 msgid "program output" msgstr "" -#: judge/models/submission.py:276 +#: judge/models/submission.py:286 msgid "submission test case" msgstr "" -#: judge/models/submission.py:277 +#: judge/models/submission.py:287 msgid "submission test cases" msgstr "" @@ -2956,7 +2977,7 @@ msgctxt "hours and minutes" msgid "%h:%m" msgstr "" -#: judge/views/blog.py:36 +#: judge/views/blog.py:37 #, python-format msgid "Page %d of Posts" msgstr "" @@ -3445,11 +3466,11 @@ msgstr "" msgid "Register" msgstr "" -#: judge/views/register.py:103 +#: judge/views/register.py:101 msgid "Activation Key Invalid" msgstr "" -#: judge/views/register.py:114 +#: judge/views/register.py:112 msgid "Authentication failure" msgstr "" @@ -3461,7 +3482,7 @@ msgstr "" msgid "Language statistics" msgstr "" -#: judge/views/status.py:23 templates/submission/list.html:308 +#: judge/views/status.py:23 templates/submission/list.html:310 msgid "Status" msgstr "" @@ -3644,41 +3665,45 @@ msgstr "" msgid "Preparing your data..." msgstr "" -#: judge/views/user.py:298 templates/user/edit-profile.html:345 +#: judge/views/user.py:298 templates/user/edit-profile.html:344 msgid "Download your data" msgstr "" +#: judge/views/user.py:347 +msgid "Can't edit profile" +msgstr "" + #: judge/views/user.py:354 msgid "Updated on site" msgstr "" -#: judge/views/user.py:387 templates/admin/auth/user/change_form.html:14 -#: templates/admin/auth/user/change_form.html:17 templates/base.html:213 +#: judge/views/user.py:386 templates/admin/auth/user/change_form.html:14 +#: templates/admin/auth/user/change_form.html:17 templates/base.html:223 #: templates/user/user-tabs.html:16 msgid "Edit profile" msgstr "" -#: judge/views/user.py:402 +#: judge/views/user.py:400 msgid "Generated API token for user" msgstr "" -#: judge/views/user.py:414 +#: judge/views/user.py:412 msgid "Removed API token for user" msgstr "" -#: judge/views/user.py:424 +#: judge/views/user.py:422 msgid "Generated scratch codes for user" msgstr "" -#: judge/views/user.py:430 templates/user/user-list-tabs.html:4 +#: judge/views/user.py:428 templates/user/user-list-tabs.html:4 msgid "Leaderboard" msgstr "" -#: judge/views/user.py:491 +#: judge/views/user.py:489 msgid "You have been successfully logged out." msgstr "" -#: judge/views/user.py:508 +#: judge/views/user.py:506 msgid "You have sent too many password reset requests. Please try again later." msgstr "" @@ -3707,13 +3732,13 @@ msgstr "" #: templates/admin/judge/judge/change_form.html:27 #: templates/admin/judge/judge/change_form.html:30 -#: templates/user/edit-profile.html:355 templates/user/edit-profile.html:358 +#: templates/user/edit-profile.html:372 templates/user/edit-profile.html:375 msgid "Disable" msgstr "" #: templates/admin/judge/judge/change_form.html:33 #: templates/admin/judge/judge/change_form.html:36 -#: templates/user/edit-profile.html:386 +#: templates/user/edit-profile.html:403 msgid "Enable" msgstr "" @@ -3733,48 +3758,48 @@ msgstr "" msgid "Edit user" msgstr "" -#: templates/base.html:206 +#: templates/base.html:216 #, python-format msgid "Hello, %(username)s." msgstr "" -#: templates/base.html:215 +#: templates/base.html:225 msgid "Stop impersonating" msgstr "" -#: templates/base.html:220 +#: templates/base.html:230 msgid "Log out" msgstr "" -#: templates/base.html:229 +#: templates/base.html:239 #: templates/registration/password_reset_complete.html:4 msgid "Log in" msgstr "" -#: templates/base.html:230 templates/registration/registration_form.html:181 +#: templates/base.html:240 templates/registration/registration_form.html:177 msgid "or" msgstr "" -#: templates/base.html:231 +#: templates/base.html:241 msgid "Sign up" msgstr "" -#: templates/base.html:243 +#: templates/base.html:253 msgid "spectating" msgstr "" -#: templates/base.html:256 +#: templates/base.html:266 msgid "This site works best with JavaScript enabled." msgstr "" -#: templates/base.html:283 +#: templates/base.html:293 msgid "proudly powered by **DMOJ**" msgstr "" #: templates/blog/content.html:13 templates/comments/list.html:89 #: templates/comments/list.html:105 templates/contest/contest-tabs.html:23 #: templates/contest/tag-title.html:9 templates/flatpages/admin_link.html:3 -#: templates/license.html:10 templates/problem/data.html:423 +#: templates/license.html:10 templates/problem/data.html:424 #: templates/problem/editorial.html:14 msgid "Edit" msgstr "" @@ -3975,15 +4000,15 @@ msgstr "" msgid "No votes" msgstr "" -#: templates/common-content.html:32 templates/user/edit-profile.html:219 +#: templates/common-content.html:32 templates/user/edit-profile.html:214 msgid "Click to copy" msgstr "" -#: templates/common-content.html:33 templates/user/edit-profile.html:220 +#: templates/common-content.html:33 templates/user/edit-profile.html:215 msgid "Copy" msgstr "" -#: templates/common-content.html:44 templates/user/edit-profile.html:231 +#: templates/common-content.html:44 templates/user/edit-profile.html:226 msgid "Copied!" msgstr "" @@ -4064,7 +4089,7 @@ msgstr "" msgid "Info" msgstr "" -#: templates/contest/contest-tabs.html:6 templates/submission/list.html:334 +#: templates/contest/contest-tabs.html:6 templates/submission/list.html:336 msgid "Statistics" msgstr "" @@ -4279,7 +4304,7 @@ msgstr "" #: templates/contest/contest.html:198 templates/contest/list.html:152 #: templates/contest/list.html:194 templates/contest/list.html:271 -#: templates/problem/list.html:203 templates/problem/list.html:235 +#: templates/problem/list.html:194 templates/problem/list.html:226 msgid "Users" msgstr "" @@ -4287,7 +4312,7 @@ msgstr "" msgid "Editorials" msgstr "" -#: templates/contest/contest.html:226 templates/problem/list.html:229 +#: templates/contest/contest.html:226 templates/problem/list.html:220 msgid "Editorial" msgstr "" @@ -4452,19 +4477,19 @@ msgstr "" msgid "Disqualify" msgstr "" -#: templates/contest/ranking.html:151 +#: templates/contest/ranking.html:46 msgid "Are you sure you want to disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:156 +#: templates/contest/ranking.html:51 msgid "Are you sure you want to un-disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:228 +#: templates/contest/ranking.html:124 msgid "View user participation" msgstr "" -#: templates/contest/ranking.html:232 +#: templates/contest/ranking.html:128 msgid "Show organizations" msgstr "" @@ -4651,7 +4676,7 @@ msgid "There are no requests to approve." msgstr "" #: templates/organization/requests/pending.html:17 -#: templates/problem/data.html:387 +#: templates/problem/data.html:388 msgid "Delete?" msgstr "" @@ -4687,59 +4712,59 @@ msgstr "" msgid "Enter a new code for the cloned problem:" msgstr "" -#: templates/problem/data.html:70 +#: templates/problem/data.html:71 msgid "precision (decimal digits)" msgstr "" -#: templates/problem/data.html:339 +#: templates/problem/data.html:340 msgid "View YAML" msgstr "" -#: templates/problem/data.html:355 +#: templates/problem/data.html:356 msgid "Show columns:" msgstr "" -#: templates/problem/data.html:358 templates/problem/data.html:382 +#: templates/problem/data.html:359 templates/problem/data.html:383 msgid "Output prefix" msgstr "" -#: templates/problem/data.html:362 templates/problem/data.html:383 +#: templates/problem/data.html:363 templates/problem/data.html:384 msgid "Output limit" msgstr "" -#: templates/problem/data.html:366 templates/problem/data.html:384 +#: templates/problem/data.html:367 templates/problem/data.html:385 msgid "Checker" msgstr "" -#: templates/problem/data.html:370 templates/problem/data.html:385 +#: templates/problem/data.html:371 templates/problem/data.html:386 msgid "Generator args" msgstr "" -#: templates/problem/data.html:377 +#: templates/problem/data.html:378 msgid "Type" msgstr "" -#: templates/problem/data.html:378 +#: templates/problem/data.html:379 msgid "Input file" msgstr "" -#: templates/problem/data.html:379 +#: templates/problem/data.html:380 msgid "Output file" msgstr "" -#: templates/problem/data.html:381 +#: templates/problem/data.html:382 msgid "Pretest?" msgstr "" -#: templates/problem/data.html:433 templates/problem/submit.html:256 +#: templates/problem/data.html:434 templates/problem/submit.html:190 msgid "Submit!" msgstr "" -#: templates/problem/data.html:434 +#: templates/problem/data.html:435 msgid "Add new case" msgstr "" -#: templates/problem/data.html:436 +#: templates/problem/data.html:437 msgid "Save" msgstr "" @@ -4757,100 +4782,100 @@ msgid_plural "Authors:" msgstr[0] "" msgstr[1] "" -#: templates/problem/list.html:58 +#: templates/problem/list.html:49 msgid "Filter by type..." msgstr "" -#: templates/problem/list.html:176 +#: templates/problem/list.html:167 msgid "Hot problems" msgstr "" -#: templates/problem/list.html:198 templates/problem/list.html:216 +#: templates/problem/list.html:189 templates/problem/list.html:207 #: templates/problem/search-form.html:35 templates/user/user-problems.html:59 msgid "Category" msgstr "" -#: templates/problem/list.html:200 templates/problem/list.html:220 +#: templates/problem/list.html:191 templates/problem/list.html:211 msgid "Types" msgstr "" -#: templates/problem/list.html:227 +#: templates/problem/list.html:218 #, python-format msgid "AC %%" msgstr "" -#: templates/problem/manage_submission.html:55 +#: templates/problem/manage_submission.html:56 msgid "Leave empty to not filter by language" msgstr "" -#: templates/problem/manage_submission.html:60 +#: templates/problem/manage_submission.html:62 msgid "Leave empty to not filter by result" msgstr "" -#: templates/problem/manage_submission.html:79 +#: templates/problem/manage_submission.html:81 msgid "Need valid values for both start and end IDs." msgstr "" -#: templates/problem/manage_submission.html:82 +#: templates/problem/manage_submission.html:84 msgid "End ID must be after start ID." msgstr "" -#: templates/problem/manage_submission.html:90 +#: templates/problem/manage_submission.html:92 #, python-brace-format msgid "You are about to rejudge {count} submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:96 +#: templates/problem/manage_submission.html:98 msgid "You are about to rejudge a few submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:115 +#: templates/problem/manage_submission.html:117 msgid "Rejudge Submissions" msgstr "" -#: templates/problem/manage_submission.html:120 +#: templates/problem/manage_submission.html:122 msgid "Filter by ID:" msgstr "" -#: templates/problem/manage_submission.html:123 +#: templates/problem/manage_submission.html:125 msgid "Starting ID:" msgstr "" -#: templates/problem/manage_submission.html:127 +#: templates/problem/manage_submission.html:129 msgid "Ending ID:" msgstr "" -#: templates/problem/manage_submission.html:131 +#: templates/problem/manage_submission.html:133 msgid "This range includes both endpoints." msgstr "" -#: templates/problem/manage_submission.html:134 +#: templates/problem/manage_submission.html:136 msgid "Filter by language:" msgstr "" -#: templates/problem/manage_submission.html:150 +#: templates/problem/manage_submission.html:152 msgid "Rejudge selected submissions" msgstr "" -#: templates/problem/manage_submission.html:157 +#: templates/problem/manage_submission.html:159 msgid "Rescore Everything" msgstr "" -#: templates/problem/manage_submission.html:158 +#: templates/problem/manage_submission.html:160 #, python-format msgid "This will rescore %(count)s submission." msgid_plural "This will rescore %(count)s submissions." msgstr[0] "" msgstr[1] "" -#: templates/problem/manage_submission.html:166 +#: templates/problem/manage_submission.html:168 #, python-format msgid "Are you sure you want to rescore %(count)s submission?" msgid_plural "Are you sure you want to rescore %(count)s submissions?" msgstr[0] "" msgstr[1] "" -#: templates/problem/manage_submission.html:171 +#: templates/problem/manage_submission.html:173 msgid "Rescore all submissions" msgstr "" @@ -5013,8 +5038,8 @@ msgstr "" msgid "Point range" msgstr "" -#: templates/problem/search-form.html:68 templates/submission/list.html:326 -#: templates/ticket/list.html:188 +#: templates/problem/search-form.html:68 templates/submission/list.html:328 +#: templates/ticket/list.html:189 msgid "Go" msgstr "" @@ -5023,7 +5048,7 @@ msgid "Random" msgstr "" #: templates/problem/submission-diff.html:62 -#: templates/status/language-list.html:34 templates/ticket/list.html:199 +#: templates/status/language-list.html:34 templates/ticket/list.html:200 msgid "ID" msgstr "" @@ -5035,31 +5060,31 @@ msgstr "" msgid "Date" msgstr "" -#: templates/problem/submit.html:117 +#: templates/problem/submit.html:118 msgid "Your source code must contain at most 65536 characters." msgstr "" -#: templates/problem/submit.html:204 +#: templates/problem/submit.html:138 msgid "Warning!" msgstr "" -#: templates/problem/submit.html:205 +#: templates/problem/submit.html:139 #, python-format msgid "Your default language, %(language)s, is unavailable for this problem and has been deselected." msgstr "" -#: templates/problem/submit.html:213 +#: templates/problem/submit.html:147 #, python-format msgid "You have %(left)s submission left" msgid_plural "You have %(left)s submissions left" msgstr[0] "" msgstr[1] "" -#: templates/problem/submit.html:218 +#: templates/problem/submit.html:152 msgid "You have 0 submissions left" msgstr "" -#: templates/problem/submit.html:252 +#: templates/problem/submit.html:186 msgid "No judge is available for this problem." msgstr "" @@ -5267,7 +5292,7 @@ msgstr "" msgid "Password reset on %(site_name)s" msgstr "" -#: templates/registration/profile_creation.html:44 +#: templates/registration/profile_creation.html:38 #: templates/registration/username_select.html:7 msgid "Continue >" msgstr "" @@ -5280,36 +5305,36 @@ msgstr "" msgid "You have successfully been registered. An email has been sent to the email address you provided to confirm your registration." msgstr "" -#: templates/registration/registration_form.html:170 +#: templates/registration/registration_form.html:166 msgid "(again, for confirmation)" msgstr "" -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "(select your closest major city)" msgstr "" -#: templates/registration/registration_form.html:182 +#: templates/registration/registration_form.html:178 msgid "pick from map" msgstr "" -#: templates/registration/registration_form.html:187 +#: templates/registration/registration_form.html:183 msgid "Default language" msgstr "" -#: templates/registration/registration_form.html:190 +#: templates/registration/registration_form.html:186 msgid "Affiliated organizations" msgstr "" -#: templates/registration/registration_form.html:199 -#: templates/user/edit-profile.html:322 +#: templates/registration/registration_form.html:195 +#: templates/user/edit-profile.html:321 msgid "Notify me about upcoming contests" msgstr "" -#: templates/registration/registration_form.html:213 +#: templates/registration/registration_form.html:209 msgid "By registering, you agree to our [Terms & Conditions][0]." msgstr "" -#: templates/registration/registration_form.html:216 +#: templates/registration/registration_form.html:212 msgid "Register!" msgstr "" @@ -5351,17 +5376,17 @@ msgid "Enable Two Factor Authentication" msgstr "" #: templates/registration/totp_enable.html:98 -#: templates/user/edit-profile.html:374 +#: templates/user/edit-profile.html:391 msgid "Below is a list of one-time use scratch codes." msgstr "" #: templates/registration/totp_enable.html:99 -#: templates/user/edit-profile.html:375 +#: templates/user/edit-profile.html:392 msgid "These codes can only be used once and are for emergency use." msgstr "" #: templates/registration/totp_enable.html:100 -#: templates/user/edit-profile.html:376 +#: templates/user/edit-profile.html:393 msgid "You can use these codes to login to your account or disable two-factor authentication." msgstr "" @@ -5370,7 +5395,7 @@ msgid "If you ever need more scratch codes, you can regenerate them on the edit msgstr "" #: templates/registration/totp_enable.html:102 -#: templates/user/edit-profile.html:378 +#: templates/user/edit-profile.html:395 msgid "Please write these down and keep them in a secure location." msgstr "" @@ -5388,12 +5413,12 @@ msgid "If you lose your authentication device and are unable to use your scratch msgstr "" #: templates/registration/two_factor_auth.html:33 -#: templates/user/edit-profile.html:164 +#: templates/user/edit-profile.html:159 msgid "WebAuthn is not supported by your browser." msgstr "" #: templates/registration/two_factor_auth.html:54 -#: templates/user/edit-profile.html:188 +#: templates/user/edit-profile.html:183 msgid "Failed to contact server." msgstr "" @@ -5491,23 +5516,23 @@ msgstr "" msgid "Are you sure you want to rejudge?" msgstr "" -#: templates/submission/list.html:74 +#: templates/submission/list.html:75 msgid "Filter by status..." msgstr "" -#: templates/submission/list.html:80 +#: templates/submission/list.html:82 msgid "Filter by language..." msgstr "" -#: templates/submission/list.html:304 +#: templates/submission/list.html:306 msgid "Filter submissions" msgstr "" -#: templates/submission/list.html:340 +#: templates/submission/list.html:342 msgid "Total:" msgstr "" -#: templates/submission/list.html:350 +#: templates/submission/list.html:352 msgid "You were disconnected. Refresh to show latest updates." msgstr "" @@ -5671,33 +5696,33 @@ msgstr "" msgid "Closed: " msgstr "" -#: templates/ticket/list.html:156 +#: templates/ticket/list.html:157 msgid "Use desktop notification" msgstr "" -#: templates/ticket/list.html:162 +#: templates/ticket/list.html:163 msgid "Hide closed tickets" msgstr "" -#: templates/ticket/list.html:167 +#: templates/ticket/list.html:168 msgid "Show my tickets only" msgstr "" -#: templates/ticket/list.html:171 +#: templates/ticket/list.html:172 msgid "Filing user" msgstr "" -#: templates/ticket/list.html:180 templates/ticket/ticket.html:196 +#: templates/ticket/list.html:181 templates/ticket/ticket.html:196 msgid "Assignee" msgid_plural "Assignees" msgstr[0] "" msgstr[1] "" -#: templates/ticket/list.html:200 +#: templates/ticket/list.html:201 msgid "Title" msgstr "" -#: templates/ticket/list.html:202 +#: templates/ticket/list.html:203 msgid "Assignees" msgstr "" @@ -5748,129 +5773,133 @@ msgstr "" msgid "Nothing here." msgstr "" -#: templates/user/base-users-table.html:3 +#: templates/user/base-users-table.html:4 msgid "Rank" msgstr "" -#: templates/user/base-users.html:14 templates/user/base-users.html:57 +#: templates/user/base-users.html:15 templates/user/base-users.html:58 msgid "Search by handle..." msgstr "" -#: templates/user/edit-profile.html:107 +#: templates/user/edit-profile.html:102 msgid "The administrators for this site require all the staff to have Two-factor Authentication enabled, so it may not be disabled at this time." msgstr "" -#: templates/user/edit-profile.html:112 +#: templates/user/edit-profile.html:107 msgid "Are you sure you want to generate or regenerate your API token?" msgstr "" -#: templates/user/edit-profile.html:113 +#: templates/user/edit-profile.html:108 msgid "This will invalidate any previous API tokens." msgstr "" -#: templates/user/edit-profile.html:114 +#: templates/user/edit-profile.html:109 msgid "It also allows access to your account without Two-factor Authentication." msgstr "" -#: templates/user/edit-profile.html:115 +#: templates/user/edit-profile.html:110 msgid "You will not be able to view your API token after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:116 templates/user/edit-profile.html:210 +#: templates/user/edit-profile.html:111 templates/user/edit-profile.html:205 msgid "Generating..." msgstr "" -#: templates/user/edit-profile.html:130 templates/user/edit-profile.html:398 +#: templates/user/edit-profile.html:125 templates/user/edit-profile.html:355 msgid "Remove" msgstr "" -#: templates/user/edit-profile.html:140 +#: templates/user/edit-profile.html:135 msgid "Are you sure you want to remove your API token?" msgstr "" -#: templates/user/edit-profile.html:147 templates/user/edit-profile.html:370 -#: templates/user/edit-profile.html:402 +#: templates/user/edit-profile.html:142 templates/user/edit-profile.html:359 +#: templates/user/edit-profile.html:387 msgid "Generate" msgstr "" -#: templates/user/edit-profile.html:193 +#: templates/user/edit-profile.html:188 msgid "Are you sure you want to delete this security key?" msgstr "" -#: templates/user/edit-profile.html:207 +#: templates/user/edit-profile.html:202 msgid "Are you sure you want to generate or regenerate a new set of scratch codes?" msgstr "" -#: templates/user/edit-profile.html:208 +#: templates/user/edit-profile.html:203 msgid "This will invalidate any previous scratch codes you have." msgstr "" -#: templates/user/edit-profile.html:209 templates/user/edit-profile.html:379 +#: templates/user/edit-profile.html:204 templates/user/edit-profile.html:396 msgid "You will not be able to view your scratch codes after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:278 +#: templates/user/edit-profile.html:273 msgid "Self-description:" msgstr "" -#: templates/user/edit-profile.html:285 +#: templates/user/edit-profile.html:280 msgid "Select your closest major city" msgstr "" -#: templates/user/edit-profile.html:286 +#: templates/user/edit-profile.html:281 msgid "Time zone:" msgstr "" -#: templates/user/edit-profile.html:290 +#: templates/user/edit-profile.html:285 msgid "Language:" msgstr "" -#: templates/user/edit-profile.html:294 +#: templates/user/edit-profile.html:289 +msgid "Site theme:" +msgstr "" + +#: templates/user/edit-profile.html:293 msgid "Editor theme:" msgstr "" -#: templates/user/edit-profile.html:299 +#: templates/user/edit-profile.html:298 msgid "Math engine:" msgstr "" -#: templates/user/edit-profile.html:308 +#: templates/user/edit-profile.html:307 msgid "Affiliated organizations:" msgstr "" -#: templates/user/edit-profile.html:334 +#: templates/user/edit-profile.html:333 msgid "Change your avatar" msgstr "" -#: templates/user/edit-profile.html:339 +#: templates/user/edit-profile.html:338 msgid "Change your password" msgstr "" -#: templates/user/edit-profile.html:352 -msgid "Two-factor Authentication is enabled:" +#: templates/user/edit-profile.html:350 +msgid "API token:" msgstr "" -#: templates/user/edit-profile.html:360 -msgid "Refresh" +#: templates/user/edit-profile.html:356 templates/user/edit-profile.html:384 +msgid "Hidden" msgstr "" -#: templates/user/edit-profile.html:363 -msgid "Scratch codes:" +#: templates/user/edit-profile.html:369 +msgid "Two-factor authentication is enabled:" msgstr "" -#: templates/user/edit-profile.html:367 templates/user/edit-profile.html:399 -msgid "Hidden" +#: templates/user/edit-profile.html:377 +msgid "Refresh" msgstr "" -#: templates/user/edit-profile.html:377 -msgid "If you ever need more scratch codes, you can regenerate them here." +#: templates/user/edit-profile.html:380 +msgid "Scratch codes:" msgstr "" -#: templates/user/edit-profile.html:385 -msgid "Two-factor Authentication is disabled:" +#: templates/user/edit-profile.html:394 +msgid "If you ever need more scratch codes, you can regenerate them here." msgstr "" -#: templates/user/edit-profile.html:393 -msgid "API token:" +#: templates/user/edit-profile.html:402 +msgid "Two-factor Authentication is disabled:" msgstr "" #: templates/user/edit-profile.html:410 diff --git a/locale/it/LC_MESSAGES/djangojs.po b/locale/it/LC_MESSAGES/djangojs.po index e98bf77551..1dad35b6fc 100644 --- a/locale/it/LC_MESSAGES/djangojs.po +++ b/locale/it/LC_MESSAGES/djangojs.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-20 23:43+0000\n" -"PO-Revision-Date: 2022-12-21 00:43\n" +"POT-Creation-Date: 2023-01-23 05:23+0000\n" +"PO-Revision-Date: 2023-01-24 00:51\n" "Last-Translator: \n" "Language-Team: Italian\n" "Language: it_IT\n" @@ -17,14 +17,14 @@ msgstr "" "X-Crowdin-File: djangojs.po\n" "X-Crowdin-File-ID: 12\n" -#: resources/common.js:195 +#: resources/common.js:194 msgctxt "time format with day" msgid "%d day %h:%m:%s" msgid_plural "%d days %h:%m:%s" msgstr[0] "" msgstr[1] "" -#: resources/common.js:198 +#: resources/common.js:197 msgctxt "time format without day" msgid "%h:%m:%s" msgstr "" diff --git a/locale/ja/LC_MESSAGES/django.po b/locale/ja/LC_MESSAGES/django.po index d2a3970724..84b714f479 100644 --- a/locale/ja/LC_MESSAGES/django.po +++ b/locale/ja/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-20 23:04+0000\n" -"PO-Revision-Date: 2023-01-22 00:52\n" +"POT-Creation-Date: 2023-02-17 22:33+0000\n" +"PO-Revision-Date: 2023-02-18 00:49\n" "Last-Translator: \n" "Language-Team: Japanese\n" "Language: ja_JP\n" @@ -17,91 +17,91 @@ msgstr "" "X-Crowdin-File: django.po\n" "X-Crowdin-File-ID: 10\n" -#: dmoj/settings.py:380 +#: dmoj/settings.py:392 msgid "Catalan" msgstr "カタロニア語" -#: dmoj/settings.py:381 +#: dmoj/settings.py:393 msgid "German" msgstr "ドイツ語" -#: dmoj/settings.py:382 +#: dmoj/settings.py:394 msgid "Greek" msgstr "ギリシャ語" -#: dmoj/settings.py:383 +#: dmoj/settings.py:395 msgid "English" msgstr "英語" -#: dmoj/settings.py:384 +#: dmoj/settings.py:396 msgid "Spanish" msgstr "スペイン語" -#: dmoj/settings.py:385 +#: dmoj/settings.py:397 msgid "French" msgstr "フランス語" -#: dmoj/settings.py:386 +#: dmoj/settings.py:398 msgid "Croatian" msgstr "クロアチア語" -#: dmoj/settings.py:387 +#: dmoj/settings.py:399 msgid "Hungarian" msgstr "ハンガリー語" -#: dmoj/settings.py:388 +#: dmoj/settings.py:400 msgid "Japanese" msgstr "日本語" -#: dmoj/settings.py:389 +#: dmoj/settings.py:401 msgid "Korean" msgstr "韓国語" -#: dmoj/settings.py:390 +#: dmoj/settings.py:402 msgid "Brazilian Portuguese" msgstr "ポルトガル語(ブラジル)" -#: dmoj/settings.py:391 +#: dmoj/settings.py:403 msgid "Romanian" msgstr "ルーマニア語" -#: dmoj/settings.py:392 +#: dmoj/settings.py:404 msgid "Russian" msgstr "ロシア語" -#: dmoj/settings.py:393 +#: dmoj/settings.py:405 msgid "Serbian (Latin)" msgstr "セルビア語(ラテン)" -#: dmoj/settings.py:394 +#: dmoj/settings.py:406 msgid "Turkish" msgstr "トルコ語" -#: dmoj/settings.py:395 +#: dmoj/settings.py:407 msgid "Vietnamese" msgstr "ベトナム語" -#: dmoj/settings.py:396 +#: dmoj/settings.py:408 msgid "Simplified Chinese" msgstr "簡体字中国語" -#: dmoj/settings.py:397 +#: dmoj/settings.py:409 msgid "Traditional Chinese" msgstr "繁体字中国語" -#: dmoj/urls.py:32 +#: dmoj/urls.py:31 msgid "Activation Successful!" msgstr "" -#: dmoj/urls.py:40 +#: dmoj/urls.py:39 msgid "Registration Completed" msgstr "" -#: dmoj/urls.py:44 +#: dmoj/urls.py:43 msgid "Registration Not Allowed" msgstr "登録できません" -#: dmoj/urls.py:93 templates/base.html:183 +#: dmoj/urls.py:92 templates/base.html:193 msgid "Home" msgstr "ホーム" @@ -138,8 +138,8 @@ msgid "Included contests" msgstr "含まれているコンテスト" #: judge/admin/contest.py:65 templates/contest/contest.html:195 -#: templates/contest/moss.html:41 templates/problem/list.html:197 -#: templates/problem/list.html:213 templates/user/user-problems.html:58 +#: templates/contest/moss.html:41 templates/problem/list.html:188 +#: templates/problem/list.html:204 templates/user/user-problems.html:58 #: templates/user/user-problems.html:102 msgid "Problem" msgstr "課題" @@ -150,7 +150,7 @@ msgstr "課題" msgid "Problems" msgstr "課題" -#: judge/admin/contest.py:76 judge/admin/submission.py:249 +#: judge/admin/contest.py:76 judge/admin/submission.py:250 #: templates/admin/judge/submission/change_form.html:14 #: templates/admin/judge/submission/change_form.html:17 #: templates/submission/source.html:34 templates/submission/status.html:89 @@ -225,27 +225,27 @@ msgstr[0] "" msgid "Unlock contest submissions" msgstr "" -#: judge/admin/contest.py:280 judge/admin/submission.py:175 +#: judge/admin/contest.py:280 judge/admin/submission.py:176 #, python-format msgid "%d submission was successfully scheduled for rejudging." msgid_plural "%d submissions were successfully scheduled for rejudging." msgstr[0] "%d個の提出を再判定するよう設定しました。" -#: judge/admin/contest.py:356 +#: judge/admin/contest.py:358 #, python-format msgid "%d participation recalculated." msgid_plural "%d participations recalculated." msgstr[0] "%d人の参加者を再計算。" -#: judge/admin/contest.py:359 +#: judge/admin/contest.py:361 msgid "Recalculate results" msgstr "再計算の結果" -#: judge/admin/contest.py:363 judge/admin/organization.py:113 +#: judge/admin/contest.py:365 judge/admin/organization.py:113 msgid "username" msgstr "利用者名" -#: judge/admin/contest.py:368 templates/base.html:249 +#: judge/admin/contest.py:370 templates/base.html:259 msgid "virtual" msgstr "仮想" @@ -258,8 +258,8 @@ msgid "Summary" msgstr "概要" #: judge/admin/interface.py:124 judge/models/contest.py:491 -#: judge/models/contest.py:623 judge/models/profile.py:331 -#: judge/models/profile.py:362 judge/models/submission.py:67 +#: judge/models/contest.py:623 judge/models/profile.py:347 +#: judge/models/profile.py:378 judge/models/submission.py:67 #: judge/models/ticket.py:32 msgid "user" msgstr "利用者" @@ -290,8 +290,8 @@ msgid "Taxonomy" msgstr "分類" #: judge/admin/problem.py:133 templates/contest/contest.html:196 -#: templates/problem/data.html:380 templates/problem/list.html:202 -#: templates/problem/list.html:224 templates/user/base-users-table.html:10 +#: templates/problem/data.html:381 templates/problem/list.html:193 +#: templates/problem/list.html:215 templates/user/base-users-table.html:11 #: templates/user/user-problems.html:60 msgid "Points" msgstr "点数" @@ -300,9 +300,9 @@ msgstr "点数" msgid "Limits" msgstr "制限" -#: judge/admin/problem.py:135 judge/admin/submission.py:243 +#: judge/admin/problem.py:135 judge/admin/submission.py:244 #: templates/problem/submission-diff.html:65 templates/stats/tabs.html:4 -#: templates/submission/list.html:317 +#: templates/submission/list.html:319 msgid "Language" msgstr "言語" @@ -356,19 +356,19 @@ msgstr "課題" msgid "timezone" msgstr "時間帯" -#: judge/admin/profile.py:98 judge/admin/submission.py:222 +#: judge/admin/profile.py:98 judge/admin/submission.py:223 #: templates/organization/requests/log.html:9 #: templates/organization/requests/pending.html:12 -#: templates/ticket/list.html:201 +#: templates/ticket/list.html:202 msgid "User" msgstr "利用者" -#: judge/admin/profile.py:103 templates/registration/registration_form.html:149 +#: judge/admin/profile.py:103 templates/registration/registration_form.html:145 msgid "Email" msgstr "電子メール" #: judge/admin/profile.py:108 judge/views/register.py:28 -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "Timezone" msgstr "時間帯" @@ -386,26 +386,26 @@ msgstr[0] "%d人の利用者の得点が再計算されました。" msgid "Recalculate scores" msgstr "得点を再計算する" -#: judge/admin/runtime.py:50 templates/user/edit-profile.html:124 -#: templates/user/edit-profile.html:246 templates/user/edit-profile.html:366 -#: templates/user/edit-profile.html:396 +#: judge/admin/runtime.py:52 templates/user/edit-profile.html:119 +#: templates/user/edit-profile.html:241 templates/user/edit-profile.html:353 +#: templates/user/edit-profile.html:383 msgid "Regenerate" msgstr "" -#: judge/admin/runtime.py:64 +#: judge/admin/runtime.py:66 msgid "Description" msgstr "説明" -#: judge/admin/runtime.py:65 +#: judge/admin/runtime.py:67 msgid "Information" msgstr "情報" -#: judge/admin/runtime.py:66 +#: judge/admin/runtime.py:68 msgid "Capabilities" msgstr "機能" #: judge/admin/submission.py:24 judge/admin/submission.py:43 -#: judge/admin/submission.py:232 +#: judge/admin/submission.py:233 msgid "None" msgstr "なし" @@ -437,56 +437,56 @@ msgctxt "contest problem" msgid "%(problem)s in %(contest)s" msgstr "%(contest)s 中の %(problem)s" -#: judge/admin/submission.py:160 judge/admin/submission.py:182 +#: judge/admin/submission.py:161 judge/admin/submission.py:183 msgid "You do not have the permission to rejudge submissions." msgstr "あなたには提出物を再判定する権限がありません。" -#: judge/admin/submission.py:166 +#: judge/admin/submission.py:167 msgid "You do not have the permission to rejudge THAT many submissions." msgstr "あなたには、それら多くの提出物を再判定する権限がありません。" -#: judge/admin/submission.py:178 +#: judge/admin/submission.py:179 msgid "Rejudge the selected submissions" msgstr "選択された提出物を再判定する" -#: judge/admin/submission.py:204 judge/views/problem_manage.py:129 +#: judge/admin/submission.py:205 judge/views/problem_manage.py:129 #, python-format msgid "%d submission was successfully rescored." msgid_plural "%d submissions were successfully rescored." msgstr[0] "%d個の提出物が正常に再採点されました。" -#: judge/admin/submission.py:207 +#: judge/admin/submission.py:208 msgid "Rescore the selected submissions" msgstr "選択した提出物を再採点する" -#: judge/admin/submission.py:211 +#: judge/admin/submission.py:212 msgid "Problem code" msgstr "課題のコード" -#: judge/admin/submission.py:216 +#: judge/admin/submission.py:217 msgid "Problem name" msgstr "課題名" -#: judge/admin/submission.py:226 templates/organization/requests/log.html:10 +#: judge/admin/submission.py:227 templates/organization/requests/log.html:10 #: templates/organization/requests/pending.html:13 msgid "Time" msgstr "時間" -#: judge/admin/submission.py:234 +#: judge/admin/submission.py:235 #, python-format msgid "%d KB" msgstr "%d KB" -#: judge/admin/submission.py:236 +#: judge/admin/submission.py:237 #, python-format msgid "%.2f MB" msgstr "%.2f MB" -#: judge/admin/submission.py:238 +#: judge/admin/submission.py:239 msgid "Memory" msgstr "メモリ" -#: judge/admin/submission.py:247 +#: judge/admin/submission.py:248 msgid "Locked" msgstr "" @@ -511,6 +511,7 @@ msgid "Comment body" msgstr "コメント本文" #: judge/comments.py:47 judge/views/comment.py:40 judge/views/ticket.py:46 +#: judge/views/user.py:347 msgid "Your part is silent, little toad." msgstr "お黙り、ヒキガエル。" @@ -615,7 +616,7 @@ msgstr "" msgid "Scratch codes must be 16 Base32 characters." msgstr "" -#: judge/forms.py:39 judge/forms.py:265 +#: judge/forms.py:39 judge/forms.py:266 msgid "Invalid scratch code." msgstr "" @@ -637,83 +638,83 @@ msgid "You may not be part of more than {count} public organization." msgid_plural "You may not be part of more than {count} public organizations." msgstr[0] "あなたは{count}個以上の公開組織に参加できない場合があります。" -#: judge/forms.py:98 +#: judge/forms.py:99 msgid "Download comments?" msgstr "" -#: judge/forms.py:99 +#: judge/forms.py:100 msgid "Download submissions?" msgstr "" -#: judge/forms.py:100 +#: judge/forms.py:101 msgid "Filter by problem code glob:" msgstr "" -#: judge/forms.py:104 +#: judge/forms.py:105 msgid "Leave empty to include all submissions" msgstr "" -#: judge/forms.py:107 templates/problem/manage_submission.html:142 +#: judge/forms.py:108 templates/problem/manage_submission.html:144 msgid "Filter by result:" msgstr "結果で絞り込む:" -#: judge/forms.py:113 +#: judge/forms.py:114 msgid "Please select at least one thing to download." msgstr "" -#: judge/forms.py:139 +#: judge/forms.py:140 msgid "Any judge" msgstr "" -#: judge/forms.py:160 judge/views/register.py:25 +#: judge/forms.py:161 judge/views/register.py:25 #: templates/problem/submission-diff.html:63 -#: templates/registration/registration_form.html:143 -#: templates/user/base-users-table.html:5 +#: templates/registration/registration_form.html:139 +#: templates/user/base-users-table.html:6 msgid "Username" msgstr "利用者名" -#: judge/forms.py:161 templates/registration/registration_form.html:155 -#: templates/registration/registration_form.html:169 +#: judge/forms.py:162 templates/registration/registration_form.html:151 +#: templates/registration/registration_form.html:165 msgid "Password" msgstr "パスワード" -#: judge/forms.py:193 +#: judge/forms.py:194 msgid "Invalid code length." msgstr "" -#: judge/forms.py:224 +#: judge/forms.py:225 msgid "Invalid WebAuthn response." msgstr "" -#: judge/forms.py:227 +#: judge/forms.py:228 msgid "No WebAuthn challenge issued." msgstr "" -#: judge/forms.py:233 +#: judge/forms.py:234 msgid "Invalid WebAuthn credential ID." msgstr "" -#: judge/forms.py:263 +#: judge/forms.py:264 msgid "Invalid two-factor authentication token or scratch code." msgstr "" -#: judge/forms.py:267 +#: judge/forms.py:268 msgid "Must specify either totp_token or webauthn_response." msgstr "" -#: judge/forms.py:271 judge/models/problem.py:118 +#: judge/forms.py:272 judge/models/problem.py:118 msgid "Problem code must be ^[a-z0-9]+$" msgstr "課題のコードは ^[a-z0-9]+$ でなければなりません" -#: judge/forms.py:276 +#: judge/forms.py:277 msgid "Problem with code already exists." msgstr "このコードを使用している問題はすでに存在しています。" -#: judge/forms.py:281 judge/models/contest.py:68 +#: judge/forms.py:282 judge/models/contest.py:68 msgid "Contest id must be ^[a-z0-9]+$" msgstr "コンテスト id は ^[a-z0-9]+$ でなければなりません" -#: judge/forms.py:286 +#: judge/forms.py:287 msgid "Contest with key already exists." msgstr "同じキーを持つコンテストはすでに存在しています。" @@ -736,26 +737,42 @@ msgstr "{time}時点" msgid "Unrated" msgstr "未評価" -#: judge/models/choices.py:59 +#: judge/models/choices.py:24 +msgid "Follow site theme" +msgstr "" + +#: judge/models/choices.py:60 msgid "Leave as LaTeX" msgstr "LaTeX のまま" -#: judge/models/choices.py:60 +#: judge/models/choices.py:61 msgid "SVG only" msgstr "SVG のみ" -#: judge/models/choices.py:61 +#: judge/models/choices.py:62 msgid "MathML only" msgstr "MathML のみ" -#: judge/models/choices.py:62 +#: judge/models/choices.py:63 msgid "MathJax with SVG fallback" msgstr "SVG フォールバックのある MathJax" -#: judge/models/choices.py:63 +#: judge/models/choices.py:64 msgid "Detect best quality" msgstr "最高品質を検出する" +#: judge/models/choices.py:70 +msgid "Follow system default" +msgstr "" + +#: judge/models/choices.py:71 +msgid "Light" +msgstr "ライト" + +#: judge/models/choices.py:72 +msgid "Dark" +msgstr "ダーク" + #: judge/models/comment.py:25 msgid "Page code must be ^[pcs]:[a-z0-9]+$|^b:\\d+$" msgstr "ページコードは ^[pcs]:[a-z0-9]+$|^b:\\d+$ でなければなりません" @@ -1868,8 +1885,8 @@ msgid "Non-trailing spaces" msgstr "非末尾スペース" #: judge/models/problem_data.py:28 -msgid "Unordered" -msgstr "順不同" +msgid "Sorted" +msgstr "" #: judge/models/problem_data.py:29 msgid "Byte identical" @@ -2040,7 +2057,7 @@ msgid "Edit all organizations" msgstr "" #: judge/models/profile.py:98 judge/models/profile.py:103 -#: judge/models/profile.py:160 judge/models/profile.py:363 +#: judge/models/profile.py:161 judge/models/profile.py:379 msgid "organization" msgstr "組織" @@ -2081,7 +2098,7 @@ msgstr "メンバー" msgid "%(class)s in %(organization)s" msgstr "" -#: judge/models/profile.py:142 judge/models/profile.py:371 +#: judge/models/profile.py:142 judge/models/profile.py:387 msgid "class" msgstr "" @@ -2106,26 +2123,30 @@ msgid "Ace theme" msgstr "" #: judge/models/profile.py:158 +msgid "site theme" +msgstr "" + +#: judge/models/profile.py:159 msgid "last access time" msgstr "最終アクセス時刻" -#: judge/models/profile.py:159 +#: judge/models/profile.py:160 msgid "last IP" msgstr "最終 IP アドレス" -#: judge/models/profile.py:162 +#: judge/models/profile.py:163 msgid "display rank" msgstr "順位を表示する" -#: judge/models/profile.py:164 +#: judge/models/profile.py:165 msgid "Normal User" msgstr "" -#: judge/models/profile.py:165 +#: judge/models/profile.py:166 msgid "Problem Setter" msgstr "" -#: judge/models/profile.py:166 templates/base.html:211 +#: judge/models/profile.py:167 templates/base.html:221 #: templates/comments/list.html:97 templates/contest/contest-list-tabs.html:25 #: templates/contest/ranking-table.html:51 #: templates/problem/problem-list-tabs.html:6 @@ -2135,200 +2156,200 @@ msgstr "" msgid "Admin" msgstr "管理" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "comment mute" msgstr "コメントミュート" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "Some users are at their best when silent." msgstr "ある利用者は沈黙の時に能力を発揮する。" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "unlisted user" msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "User will not be ranked." msgstr "" -#: judge/models/profile.py:172 +#: judge/models/profile.py:173 msgid "banned from voting on problem point values" msgstr "" -#: judge/models/profile.py:173 +#: judge/models/profile.py:174 msgid "User will not be able to vote on problems' point values." msgstr "" -#: judge/models/profile.py:177 +#: judge/models/profile.py:178 msgid "user script" msgstr "利用者スクリプト" -#: judge/models/profile.py:178 +#: judge/models/profile.py:179 msgid "User-defined JavaScript for site customization." msgstr "サイトのカスタマイズするためのユーザー定義 JavaScript。" -#: judge/models/profile.py:179 +#: judge/models/profile.py:180 msgid "current contest" msgstr "現在のコンテスト" -#: judge/models/profile.py:181 +#: judge/models/profile.py:182 msgid "math engine" msgstr "数式エンジン" -#: judge/models/profile.py:183 +#: judge/models/profile.py:184 msgid "The rendering engine used to render math." msgstr "数式の表示に使用されるレンダリングエンジン。" -#: judge/models/profile.py:184 +#: judge/models/profile.py:185 msgid "TOTP 2FA enabled" msgstr "" -#: judge/models/profile.py:185 +#: judge/models/profile.py:186 msgid "Check to enable TOTP-based two-factor authentication." msgstr "" -#: judge/models/profile.py:186 +#: judge/models/profile.py:187 msgid "WebAuthn 2FA enabled" msgstr "" -#: judge/models/profile.py:187 +#: judge/models/profile.py:188 msgid "Check to enable WebAuthn-based two-factor authentication." msgstr "" -#: judge/models/profile.py:188 +#: judge/models/profile.py:189 msgid "TOTP key" msgstr "" -#: judge/models/profile.py:189 +#: judge/models/profile.py:190 msgid "32-character Base32-encoded key for TOTP." msgstr "" -#: judge/models/profile.py:191 +#: judge/models/profile.py:192 msgid "TOTP key must be empty or Base32." msgstr "" -#: judge/models/profile.py:192 +#: judge/models/profile.py:193 msgid "scratch codes" msgstr "" -#: judge/models/profile.py:193 +#: judge/models/profile.py:194 msgid "JSON array of 16-character Base32-encoded codes for scratch codes." msgstr "" -#: judge/models/profile.py:197 +#: judge/models/profile.py:198 msgid "Scratch codes must be empty or a JSON array of 16-character Base32 codes." msgstr "" -#: judge/models/profile.py:199 +#: judge/models/profile.py:200 msgid "last TOTP timecode" msgstr "" -#: judge/models/profile.py:200 +#: judge/models/profile.py:201 msgid "API token" msgstr "" -#: judge/models/profile.py:201 +#: judge/models/profile.py:202 msgid "64-character hex-encoded API access token." msgstr "" -#: judge/models/profile.py:203 +#: judge/models/profile.py:204 msgid "API token must be None or hexadecimal" msgstr "" -#: judge/models/profile.py:204 +#: judge/models/profile.py:205 msgid "internal notes" msgstr "内部メモ" -#: judge/models/profile.py:205 +#: judge/models/profile.py:206 msgid "Notes for administrators regarding this user." msgstr "" -#: judge/models/profile.py:206 +#: judge/models/profile.py:207 msgid "last data download time" msgstr "" -#: judge/models/profile.py:207 +#: judge/models/profile.py:208 msgid "display name override" msgstr "" -#: judge/models/profile.py:208 +#: judge/models/profile.py:209 msgid "Name displayed in place of username." msgstr "" -#: judge/models/profile.py:323 +#: judge/models/profile.py:333 msgid "Shows in-progress development stuff" msgstr "" -#: judge/models/profile.py:324 +#: judge/models/profile.py:334 msgid "Edit TOTP settings" msgstr "" -#: judge/models/profile.py:326 +#: judge/models/profile.py:336 msgid "user profile" msgstr "ユーザープロフィール" -#: judge/models/profile.py:327 +#: judge/models/profile.py:337 msgid "user profiles" msgstr "ユーザープロフィール" -#: judge/models/profile.py:333 +#: judge/models/profile.py:349 msgid "device name" msgstr "" -#: judge/models/profile.py:334 +#: judge/models/profile.py:350 msgid "credential ID" msgstr "" -#: judge/models/profile.py:335 +#: judge/models/profile.py:351 msgid "public key" msgstr "" -#: judge/models/profile.py:336 +#: judge/models/profile.py:352 msgid "sign counter" msgstr "" -#: judge/models/profile.py:354 +#: judge/models/profile.py:370 #, python-format msgid "WebAuthn credential: %(name)s" msgstr "" -#: judge/models/profile.py:357 +#: judge/models/profile.py:373 msgid "WebAuthn credential" msgstr "" -#: judge/models/profile.py:358 +#: judge/models/profile.py:374 msgid "WebAuthn credentials" msgstr "" -#: judge/models/profile.py:365 +#: judge/models/profile.py:381 msgid "request time" msgstr "要求時刻" -#: judge/models/profile.py:366 +#: judge/models/profile.py:382 msgid "state" msgstr "状態" -#: judge/models/profile.py:367 templates/organization/requests/tabs.html:4 +#: judge/models/profile.py:383 templates/organization/requests/tabs.html:4 msgid "Pending" msgstr "保留中" -#: judge/models/profile.py:368 templates/organization/requests/tabs.html:10 +#: judge/models/profile.py:384 templates/organization/requests/tabs.html:10 msgid "Approved" msgstr "承認済" -#: judge/models/profile.py:369 templates/organization/requests/tabs.html:13 +#: judge/models/profile.py:385 templates/organization/requests/tabs.html:13 msgid "Rejected" msgstr "却下された" -#: judge/models/profile.py:372 +#: judge/models/profile.py:388 msgid "reason" msgstr "理由" -#: judge/models/profile.py:381 +#: judge/models/profile.py:397 msgid "organization join request" msgstr "組織への参加要求" -#: judge/models/profile.py:382 +#: judge/models/profile.py:398 msgid "organization join requests" msgstr "組織への参加要求" @@ -2571,15 +2592,15 @@ msgstr "内部エラー(判定サーバエラー)" msgid "submission time" msgstr "提出時刻" -#: judge/models/submission.py:70 judge/models/submission.py:255 +#: judge/models/submission.py:70 judge/models/submission.py:265 msgid "execution time" msgstr "実行時間" -#: judge/models/submission.py:71 judge/models/submission.py:256 +#: judge/models/submission.py:71 judge/models/submission.py:266 msgid "memory usage" msgstr "メモリ使用量" -#: judge/models/submission.py:72 judge/models/submission.py:257 +#: judge/models/submission.py:72 judge/models/submission.py:267 msgid "points granted" msgstr "付与された点数" @@ -2668,60 +2689,60 @@ msgstr "" msgid "submissions" msgstr "提出" -#: judge/models/submission.py:235 judge/models/submission.py:251 +#: judge/models/submission.py:245 judge/models/submission.py:261 msgid "associated submission" msgstr "関連する提出物" -#: judge/models/submission.py:237 +#: judge/models/submission.py:247 msgid "source code" msgstr "ソースコード" -#: judge/models/submission.py:240 +#: judge/models/submission.py:250 #, python-format msgid "Source of %(submission)s" msgstr "" -#: judge/models/submission.py:243 +#: judge/models/submission.py:253 msgid "submission source" msgstr "提出ソース" -#: judge/models/submission.py:244 +#: judge/models/submission.py:254 msgid "submission sources" msgstr "提出ソース" -#: judge/models/submission.py:253 +#: judge/models/submission.py:263 msgid "test case ID" msgstr "テストケースの ID" -#: judge/models/submission.py:254 +#: judge/models/submission.py:264 msgid "status flag" msgstr "状態フラグ" -#: judge/models/submission.py:258 +#: judge/models/submission.py:268 msgid "points possible" msgstr "可能な点数" -#: judge/models/submission.py:259 +#: judge/models/submission.py:269 msgid "batch number" msgstr "バッチ番号" -#: judge/models/submission.py:260 +#: judge/models/submission.py:270 msgid "judging feedback" msgstr "判定のフィードバック" -#: judge/models/submission.py:261 +#: judge/models/submission.py:271 msgid "extended judging feedback" msgstr "" -#: judge/models/submission.py:262 +#: judge/models/submission.py:272 msgid "program output" msgstr "プログラムの出力" -#: judge/models/submission.py:276 +#: judge/models/submission.py:286 msgid "submission test case" msgstr "提出テストケース" -#: judge/models/submission.py:277 +#: judge/models/submission.py:287 msgid "submission test cases" msgstr "提出テストケース" @@ -2936,7 +2957,7 @@ msgctxt "hours and minutes" msgid "%h:%m" msgstr "%h:%m" -#: judge/views/blog.py:36 +#: judge/views/blog.py:37 #, python-format msgid "Page %d of Posts" msgstr "投稿のページ %d" @@ -3420,11 +3441,11 @@ msgstr "あなたの電子メールプロバイダは不正利用の履歴のた msgid "Register" msgstr "登録" -#: judge/views/register.py:103 +#: judge/views/register.py:101 msgid "Activation Key Invalid" msgstr "" -#: judge/views/register.py:114 +#: judge/views/register.py:112 msgid "Authentication failure" msgstr "認証の失敗" @@ -3436,7 +3457,7 @@ msgstr "その他" msgid "Language statistics" msgstr "言語の統計" -#: judge/views/status.py:23 templates/submission/list.html:308 +#: judge/views/status.py:23 templates/submission/list.html:310 msgid "Status" msgstr "状態" @@ -3619,41 +3640,45 @@ msgstr "Y年n月j日 G:i" msgid "Preparing your data..." msgstr "" -#: judge/views/user.py:298 templates/user/edit-profile.html:345 +#: judge/views/user.py:298 templates/user/edit-profile.html:344 msgid "Download your data" msgstr "" +#: judge/views/user.py:347 +msgid "Can't edit profile" +msgstr "プロフィールを編集できません" + #: judge/views/user.py:354 msgid "Updated on site" msgstr "サイトで更新された" -#: judge/views/user.py:387 templates/admin/auth/user/change_form.html:14 -#: templates/admin/auth/user/change_form.html:17 templates/base.html:213 +#: judge/views/user.py:386 templates/admin/auth/user/change_form.html:14 +#: templates/admin/auth/user/change_form.html:17 templates/base.html:223 #: templates/user/user-tabs.html:16 msgid "Edit profile" msgstr "プロフィールを編集する" -#: judge/views/user.py:402 +#: judge/views/user.py:400 msgid "Generated API token for user" msgstr "" -#: judge/views/user.py:414 +#: judge/views/user.py:412 msgid "Removed API token for user" msgstr "" -#: judge/views/user.py:424 +#: judge/views/user.py:422 msgid "Generated scratch codes for user" msgstr "" -#: judge/views/user.py:430 templates/user/user-list-tabs.html:4 +#: judge/views/user.py:428 templates/user/user-list-tabs.html:4 msgid "Leaderboard" msgstr "リーダーボード" -#: judge/views/user.py:491 +#: judge/views/user.py:489 msgid "You have been successfully logged out." msgstr "" -#: judge/views/user.py:508 +#: judge/views/user.py:506 msgid "You have sent too many password reset requests. Please try again later." msgstr "" @@ -3682,13 +3707,13 @@ msgstr "" #: templates/admin/judge/judge/change_form.html:27 #: templates/admin/judge/judge/change_form.html:30 -#: templates/user/edit-profile.html:355 templates/user/edit-profile.html:358 +#: templates/user/edit-profile.html:372 templates/user/edit-profile.html:375 msgid "Disable" msgstr "" #: templates/admin/judge/judge/change_form.html:33 #: templates/admin/judge/judge/change_form.html:36 -#: templates/user/edit-profile.html:386 +#: templates/user/edit-profile.html:403 msgid "Enable" msgstr "" @@ -3708,48 +3733,48 @@ msgstr "" msgid "Edit user" msgstr "利用者を編集する" -#: templates/base.html:206 +#: templates/base.html:216 #, python-format msgid "Hello, %(username)s." msgstr "こんにちは、%(username)s。" -#: templates/base.html:215 +#: templates/base.html:225 msgid "Stop impersonating" msgstr "なりすましを停止する" -#: templates/base.html:220 +#: templates/base.html:230 msgid "Log out" msgstr "ログアウト" -#: templates/base.html:229 +#: templates/base.html:239 #: templates/registration/password_reset_complete.html:4 msgid "Log in" msgstr "ログイン" -#: templates/base.html:230 templates/registration/registration_form.html:181 +#: templates/base.html:240 templates/registration/registration_form.html:177 msgid "or" msgstr "または" -#: templates/base.html:231 +#: templates/base.html:241 msgid "Sign up" msgstr "" -#: templates/base.html:243 +#: templates/base.html:253 msgid "spectating" msgstr "観戦中" -#: templates/base.html:256 +#: templates/base.html:266 msgid "This site works best with JavaScript enabled." msgstr "このサイトはJavaScriptを有効にすると最適に動作します。" -#: templates/base.html:283 +#: templates/base.html:293 msgid "proudly powered by **DMOJ**" msgstr "" #: templates/blog/content.html:13 templates/comments/list.html:89 #: templates/comments/list.html:105 templates/contest/contest-tabs.html:23 #: templates/contest/tag-title.html:9 templates/flatpages/admin_link.html:3 -#: templates/license.html:10 templates/problem/data.html:423 +#: templates/license.html:10 templates/problem/data.html:424 #: templates/problem/editorial.html:14 msgid "Edit" msgstr "編集" @@ -3950,15 +3975,15 @@ msgstr "得点" msgid "No votes" msgstr "" -#: templates/common-content.html:32 templates/user/edit-profile.html:219 +#: templates/common-content.html:32 templates/user/edit-profile.html:214 msgid "Click to copy" msgstr "" -#: templates/common-content.html:33 templates/user/edit-profile.html:220 +#: templates/common-content.html:33 templates/user/edit-profile.html:215 msgid "Copy" msgstr "" -#: templates/common-content.html:44 templates/user/edit-profile.html:231 +#: templates/common-content.html:44 templates/user/edit-profile.html:226 msgid "Copied!" msgstr "" @@ -4039,7 +4064,7 @@ msgstr "カレンダー" msgid "Info" msgstr "情報" -#: templates/contest/contest-tabs.html:6 templates/submission/list.html:334 +#: templates/contest/contest-tabs.html:6 templates/submission/list.html:336 msgid "Statistics" msgstr "統計" @@ -4251,7 +4276,7 @@ msgstr "受理率" #: templates/contest/contest.html:198 templates/contest/list.html:152 #: templates/contest/list.html:194 templates/contest/list.html:271 -#: templates/problem/list.html:203 templates/problem/list.html:235 +#: templates/problem/list.html:194 templates/problem/list.html:226 msgid "Users" msgstr "利用者" @@ -4259,7 +4284,7 @@ msgstr "利用者" msgid "Editorials" msgstr "論説" -#: templates/contest/contest.html:226 templates/problem/list.html:229 +#: templates/contest/contest.html:226 templates/problem/list.html:220 msgid "Editorial" msgstr "論説" @@ -4423,19 +4448,19 @@ msgstr "" msgid "Disqualify" msgstr "" -#: templates/contest/ranking.html:151 +#: templates/contest/ranking.html:46 msgid "Are you sure you want to disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:156 +#: templates/contest/ranking.html:51 msgid "Are you sure you want to un-disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:228 +#: templates/contest/ranking.html:124 msgid "View user participation" msgstr "利用者の参加を見る" -#: templates/contest/ranking.html:232 +#: templates/contest/ranking.html:128 msgid "Show organizations" msgstr "組織を表示する" @@ -4622,7 +4647,7 @@ msgid "There are no requests to approve." msgstr "承認するための要求がありません。" #: templates/organization/requests/pending.html:17 -#: templates/problem/data.html:387 +#: templates/problem/data.html:388 msgid "Delete?" msgstr "削除しますか?" @@ -4658,59 +4683,59 @@ msgstr "" msgid "Enter a new code for the cloned problem:" msgstr "" -#: templates/problem/data.html:70 +#: templates/problem/data.html:71 msgid "precision (decimal digits)" msgstr "" -#: templates/problem/data.html:339 +#: templates/problem/data.html:340 msgid "View YAML" msgstr "YAML を見る" -#: templates/problem/data.html:355 +#: templates/problem/data.html:356 msgid "Show columns:" msgstr "カラムを表示:" -#: templates/problem/data.html:358 templates/problem/data.html:382 +#: templates/problem/data.html:359 templates/problem/data.html:383 msgid "Output prefix" msgstr "出力プレフィクス" -#: templates/problem/data.html:362 templates/problem/data.html:383 +#: templates/problem/data.html:363 templates/problem/data.html:384 msgid "Output limit" msgstr "出力制限" -#: templates/problem/data.html:366 templates/problem/data.html:384 +#: templates/problem/data.html:367 templates/problem/data.html:385 msgid "Checker" msgstr "チェッカー" -#: templates/problem/data.html:370 templates/problem/data.html:385 +#: templates/problem/data.html:371 templates/problem/data.html:386 msgid "Generator args" msgstr "ジェネレータの引数" -#: templates/problem/data.html:377 +#: templates/problem/data.html:378 msgid "Type" msgstr "タイプ" -#: templates/problem/data.html:378 +#: templates/problem/data.html:379 msgid "Input file" msgstr "入力ファイル" -#: templates/problem/data.html:379 +#: templates/problem/data.html:380 msgid "Output file" msgstr "出力ファイル" -#: templates/problem/data.html:381 +#: templates/problem/data.html:382 msgid "Pretest?" msgstr "事前テストか?" -#: templates/problem/data.html:433 templates/problem/submit.html:256 +#: templates/problem/data.html:434 templates/problem/submit.html:190 msgid "Submit!" msgstr "提出!" -#: templates/problem/data.html:434 +#: templates/problem/data.html:435 msgid "Add new case" msgstr "新しいケースを追加する" -#: templates/problem/data.html:436 +#: templates/problem/data.html:437 msgid "Save" msgstr "" @@ -4727,98 +4752,98 @@ msgid "Author:" msgid_plural "Authors:" msgstr[0] "著者:" -#: templates/problem/list.html:58 +#: templates/problem/list.html:49 msgid "Filter by type..." msgstr "タイプで絞り込む..." -#: templates/problem/list.html:176 +#: templates/problem/list.html:167 msgid "Hot problems" msgstr "ホットな課題" -#: templates/problem/list.html:198 templates/problem/list.html:216 +#: templates/problem/list.html:189 templates/problem/list.html:207 #: templates/problem/search-form.html:35 templates/user/user-problems.html:59 msgid "Category" msgstr "カテゴリ" -#: templates/problem/list.html:200 templates/problem/list.html:220 +#: templates/problem/list.html:191 templates/problem/list.html:211 msgid "Types" msgstr "タイプ" -#: templates/problem/list.html:227 +#: templates/problem/list.html:218 #, python-format msgid "AC %%" msgstr "受理 %%" -#: templates/problem/manage_submission.html:55 +#: templates/problem/manage_submission.html:56 msgid "Leave empty to not filter by language" msgstr "" -#: templates/problem/manage_submission.html:60 +#: templates/problem/manage_submission.html:62 msgid "Leave empty to not filter by result" msgstr "" -#: templates/problem/manage_submission.html:79 +#: templates/problem/manage_submission.html:81 msgid "Need valid values for both start and end IDs." msgstr "" -#: templates/problem/manage_submission.html:82 +#: templates/problem/manage_submission.html:84 msgid "End ID must be after start ID." msgstr "" -#: templates/problem/manage_submission.html:90 +#: templates/problem/manage_submission.html:92 #, python-brace-format msgid "You are about to rejudge {count} submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:96 +#: templates/problem/manage_submission.html:98 msgid "You are about to rejudge a few submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:115 +#: templates/problem/manage_submission.html:117 msgid "Rejudge Submissions" msgstr "" -#: templates/problem/manage_submission.html:120 +#: templates/problem/manage_submission.html:122 msgid "Filter by ID:" msgstr "" -#: templates/problem/manage_submission.html:123 +#: templates/problem/manage_submission.html:125 msgid "Starting ID:" msgstr "" -#: templates/problem/manage_submission.html:127 +#: templates/problem/manage_submission.html:129 msgid "Ending ID:" msgstr "" -#: templates/problem/manage_submission.html:131 +#: templates/problem/manage_submission.html:133 msgid "This range includes both endpoints." msgstr "" -#: templates/problem/manage_submission.html:134 +#: templates/problem/manage_submission.html:136 msgid "Filter by language:" msgstr "言語で絞り込む:" -#: templates/problem/manage_submission.html:150 +#: templates/problem/manage_submission.html:152 msgid "Rejudge selected submissions" msgstr "" -#: templates/problem/manage_submission.html:157 +#: templates/problem/manage_submission.html:159 msgid "Rescore Everything" msgstr "" -#: templates/problem/manage_submission.html:158 +#: templates/problem/manage_submission.html:160 #, python-format msgid "This will rescore %(count)s submission." msgid_plural "This will rescore %(count)s submissions." msgstr[0] "" -#: templates/problem/manage_submission.html:166 +#: templates/problem/manage_submission.html:168 #, python-format msgid "Are you sure you want to rescore %(count)s submission?" msgid_plural "Are you sure you want to rescore %(count)s submissions?" msgstr[0] "" -#: templates/problem/manage_submission.html:171 +#: templates/problem/manage_submission.html:173 msgid "Rescore all submissions" msgstr "" @@ -4978,8 +5003,8 @@ msgstr "課題のタイプ" msgid "Point range" msgstr "点数の範囲" -#: templates/problem/search-form.html:68 templates/submission/list.html:326 -#: templates/ticket/list.html:188 +#: templates/problem/search-form.html:68 templates/submission/list.html:328 +#: templates/ticket/list.html:189 msgid "Go" msgstr "実行する" @@ -4988,7 +5013,7 @@ msgid "Random" msgstr "ランダム" #: templates/problem/submission-diff.html:62 -#: templates/status/language-list.html:34 templates/ticket/list.html:199 +#: templates/status/language-list.html:34 templates/ticket/list.html:200 msgid "ID" msgstr "ID" @@ -5000,30 +5025,30 @@ msgstr "結果" msgid "Date" msgstr "" -#: templates/problem/submit.html:117 +#: templates/problem/submit.html:118 msgid "Your source code must contain at most 65536 characters." msgstr "" -#: templates/problem/submit.html:204 +#: templates/problem/submit.html:138 msgid "Warning!" msgstr "警告!" -#: templates/problem/submit.html:205 +#: templates/problem/submit.html:139 #, python-format msgid "Your default language, %(language)s, is unavailable for this problem and has been deselected." msgstr "あなたのデフォルト言語 %(language)s はこの課題に利用可能ではないので選択を解除しました。" -#: templates/problem/submit.html:213 +#: templates/problem/submit.html:147 #, python-format msgid "You have %(left)s submission left" msgid_plural "You have %(left)s submissions left" msgstr[0] "" -#: templates/problem/submit.html:218 +#: templates/problem/submit.html:152 msgid "You have 0 submissions left" msgstr "あなたには提出物が残っていません" -#: templates/problem/submit.html:252 +#: templates/problem/submit.html:186 msgid "No judge is available for this problem." msgstr "この課題は判定器が利用可能ではありません。" @@ -5229,7 +5254,7 @@ msgstr "%(site_name)s チーム" msgid "Password reset on %(site_name)s" msgstr "%(site_name)s のパスワードをリセットする" -#: templates/registration/profile_creation.html:44 +#: templates/registration/profile_creation.html:38 #: templates/registration/username_select.html:7 msgid "Continue >" msgstr "続行 >" @@ -5242,36 +5267,36 @@ msgstr "" msgid "You have successfully been registered. An email has been sent to the email address you provided to confirm your registration." msgstr "あなたは正常に登録されています。あなたの登録を確認するために、電子メールを指定されたメールアドレスに送信しました。" -#: templates/registration/registration_form.html:170 +#: templates/registration/registration_form.html:166 msgid "(again, for confirmation)" msgstr "(もう1度、確認のため)" -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "(select your closest major city)" msgstr "(最寄りの大都市を選択してください)" -#: templates/registration/registration_form.html:182 +#: templates/registration/registration_form.html:178 msgid "pick from map" msgstr "地図から選ぶ" -#: templates/registration/registration_form.html:187 +#: templates/registration/registration_form.html:183 msgid "Default language" msgstr "デフォルトの言語" -#: templates/registration/registration_form.html:190 +#: templates/registration/registration_form.html:186 msgid "Affiliated organizations" msgstr "所属組織" -#: templates/registration/registration_form.html:199 -#: templates/user/edit-profile.html:322 +#: templates/registration/registration_form.html:195 +#: templates/user/edit-profile.html:321 msgid "Notify me about upcoming contests" msgstr "まもなく開催予定のコンテストを通知する" -#: templates/registration/registration_form.html:213 +#: templates/registration/registration_form.html:209 msgid "By registering, you agree to our [Terms & Conditions][0]." msgstr "" -#: templates/registration/registration_form.html:216 +#: templates/registration/registration_form.html:212 msgid "Register!" msgstr "登録!" @@ -5313,17 +5338,17 @@ msgid "Enable Two Factor Authentication" msgstr "" #: templates/registration/totp_enable.html:98 -#: templates/user/edit-profile.html:374 +#: templates/user/edit-profile.html:391 msgid "Below is a list of one-time use scratch codes." msgstr "" #: templates/registration/totp_enable.html:99 -#: templates/user/edit-profile.html:375 +#: templates/user/edit-profile.html:392 msgid "These codes can only be used once and are for emergency use." msgstr "" #: templates/registration/totp_enable.html:100 -#: templates/user/edit-profile.html:376 +#: templates/user/edit-profile.html:393 msgid "You can use these codes to login to your account or disable two-factor authentication." msgstr "" @@ -5332,7 +5357,7 @@ msgid "If you ever need more scratch codes, you can regenerate them on the edit msgstr "" #: templates/registration/totp_enable.html:102 -#: templates/user/edit-profile.html:378 +#: templates/user/edit-profile.html:395 msgid "Please write these down and keep them in a secure location." msgstr "" @@ -5350,12 +5375,12 @@ msgid "If you lose your authentication device and are unable to use your scratch msgstr "" #: templates/registration/two_factor_auth.html:33 -#: templates/user/edit-profile.html:164 +#: templates/user/edit-profile.html:159 msgid "WebAuthn is not supported by your browser." msgstr "" #: templates/registration/two_factor_auth.html:54 -#: templates/user/edit-profile.html:188 +#: templates/user/edit-profile.html:183 msgid "Failed to contact server." msgstr "" @@ -5453,23 +5478,23 @@ msgstr "エラー情報" msgid "Are you sure you want to rejudge?" msgstr "" -#: templates/submission/list.html:74 +#: templates/submission/list.html:75 msgid "Filter by status..." msgstr "状態で絞り込む..." -#: templates/submission/list.html:80 +#: templates/submission/list.html:82 msgid "Filter by language..." msgstr "言語で絞り込む..." -#: templates/submission/list.html:304 +#: templates/submission/list.html:306 msgid "Filter submissions" msgstr "提出物を絞り込む" -#: templates/submission/list.html:340 +#: templates/submission/list.html:342 msgid "Total:" msgstr "合計:" -#: templates/submission/list.html:350 +#: templates/submission/list.html:352 msgid "You were disconnected. Refresh to show latest updates." msgstr "あなたは切断されました。最終更新を表示するためにリフレッシュして下さい。" @@ -5633,32 +5658,32 @@ msgstr "再オープンしました: " msgid "Closed: " msgstr "閉じられました: " -#: templates/ticket/list.html:156 +#: templates/ticket/list.html:157 msgid "Use desktop notification" msgstr "デスクトップ通知を利用する" -#: templates/ticket/list.html:162 +#: templates/ticket/list.html:163 msgid "Hide closed tickets" msgstr "閉じたチケットを非表示にする" -#: templates/ticket/list.html:167 +#: templates/ticket/list.html:168 msgid "Show my tickets only" msgstr "私のチケットだけを表示する" -#: templates/ticket/list.html:171 +#: templates/ticket/list.html:172 msgid "Filing user" msgstr "利用者を埋める" -#: templates/ticket/list.html:180 templates/ticket/ticket.html:196 +#: templates/ticket/list.html:181 templates/ticket/ticket.html:196 msgid "Assignee" msgid_plural "Assignees" msgstr[0] "担当者" -#: templates/ticket/list.html:200 +#: templates/ticket/list.html:201 msgid "Title" msgstr "題目" -#: templates/ticket/list.html:202 +#: templates/ticket/list.html:203 msgid "Assignees" msgstr "担当者" @@ -5709,131 +5734,135 @@ msgstr "担当者メモ" msgid "Nothing here." msgstr "何もありません。" -#: templates/user/base-users-table.html:3 +#: templates/user/base-users-table.html:4 msgid "Rank" msgstr "ランク" -#: templates/user/base-users.html:14 templates/user/base-users.html:57 +#: templates/user/base-users.html:15 templates/user/base-users.html:58 msgid "Search by handle..." msgstr "ハンドルで検索..." -#: templates/user/edit-profile.html:107 +#: templates/user/edit-profile.html:102 msgid "The administrators for this site require all the staff to have Two-factor Authentication enabled, so it may not be disabled at this time." msgstr "" -#: templates/user/edit-profile.html:112 +#: templates/user/edit-profile.html:107 msgid "Are you sure you want to generate or regenerate your API token?" msgstr "" -#: templates/user/edit-profile.html:113 +#: templates/user/edit-profile.html:108 msgid "This will invalidate any previous API tokens." msgstr "" -#: templates/user/edit-profile.html:114 +#: templates/user/edit-profile.html:109 msgid "It also allows access to your account without Two-factor Authentication." msgstr "" -#: templates/user/edit-profile.html:115 +#: templates/user/edit-profile.html:110 msgid "You will not be able to view your API token after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:116 templates/user/edit-profile.html:210 +#: templates/user/edit-profile.html:111 templates/user/edit-profile.html:205 msgid "Generating..." msgstr "" -#: templates/user/edit-profile.html:130 templates/user/edit-profile.html:398 +#: templates/user/edit-profile.html:125 templates/user/edit-profile.html:355 msgid "Remove" msgstr "" -#: templates/user/edit-profile.html:140 +#: templates/user/edit-profile.html:135 msgid "Are you sure you want to remove your API token?" msgstr "" -#: templates/user/edit-profile.html:147 templates/user/edit-profile.html:370 -#: templates/user/edit-profile.html:402 +#: templates/user/edit-profile.html:142 templates/user/edit-profile.html:359 +#: templates/user/edit-profile.html:387 msgid "Generate" msgstr "" -#: templates/user/edit-profile.html:193 +#: templates/user/edit-profile.html:188 msgid "Are you sure you want to delete this security key?" msgstr "" -#: templates/user/edit-profile.html:207 +#: templates/user/edit-profile.html:202 msgid "Are you sure you want to generate or regenerate a new set of scratch codes?" msgstr "" -#: templates/user/edit-profile.html:208 +#: templates/user/edit-profile.html:203 msgid "This will invalidate any previous scratch codes you have." msgstr "" -#: templates/user/edit-profile.html:209 templates/user/edit-profile.html:379 +#: templates/user/edit-profile.html:204 templates/user/edit-profile.html:396 msgid "You will not be able to view your scratch codes after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:278 +#: templates/user/edit-profile.html:273 msgid "Self-description:" msgstr "自己紹介:" -#: templates/user/edit-profile.html:285 +#: templates/user/edit-profile.html:280 msgid "Select your closest major city" msgstr "最寄りの大都市を選択してください" -#: templates/user/edit-profile.html:286 +#: templates/user/edit-profile.html:281 msgid "Time zone:" msgstr "時間帯:" -#: templates/user/edit-profile.html:290 +#: templates/user/edit-profile.html:285 msgid "Language:" msgstr "言語:" -#: templates/user/edit-profile.html:294 +#: templates/user/edit-profile.html:289 +msgid "Site theme:" +msgstr "" + +#: templates/user/edit-profile.html:293 msgid "Editor theme:" msgstr "エディタのテーマ:" -#: templates/user/edit-profile.html:299 +#: templates/user/edit-profile.html:298 msgid "Math engine:" msgstr "数式エンジン:" -#: templates/user/edit-profile.html:308 +#: templates/user/edit-profile.html:307 msgid "Affiliated organizations:" msgstr "所属組織:" -#: templates/user/edit-profile.html:334 +#: templates/user/edit-profile.html:333 msgid "Change your avatar" msgstr "アバターを変更する" -#: templates/user/edit-profile.html:339 +#: templates/user/edit-profile.html:338 msgid "Change your password" msgstr "パスワードを変更する" -#: templates/user/edit-profile.html:352 -msgid "Two-factor Authentication is enabled:" +#: templates/user/edit-profile.html:350 +msgid "API token:" msgstr "" -#: templates/user/edit-profile.html:360 +#: templates/user/edit-profile.html:356 templates/user/edit-profile.html:384 +msgid "Hidden" +msgstr "非表示" + +#: templates/user/edit-profile.html:369 +msgid "Two-factor authentication is enabled:" +msgstr "" + +#: templates/user/edit-profile.html:377 msgid "Refresh" msgstr "" -#: templates/user/edit-profile.html:363 +#: templates/user/edit-profile.html:380 msgid "Scratch codes:" msgstr "" -#: templates/user/edit-profile.html:367 templates/user/edit-profile.html:399 -msgid "Hidden" -msgstr "非表示" - -#: templates/user/edit-profile.html:377 +#: templates/user/edit-profile.html:394 msgid "If you ever need more scratch codes, you can regenerate them here." msgstr "" -#: templates/user/edit-profile.html:385 +#: templates/user/edit-profile.html:402 msgid "Two-factor Authentication is disabled:" msgstr "" -#: templates/user/edit-profile.html:393 -msgid "API token:" -msgstr "" - #: templates/user/edit-profile.html:410 msgid "Security keys:" msgstr "" diff --git a/locale/ja/LC_MESSAGES/djangojs.po b/locale/ja/LC_MESSAGES/djangojs.po index 688b1a1fe2..4984576880 100644 --- a/locale/ja/LC_MESSAGES/djangojs.po +++ b/locale/ja/LC_MESSAGES/djangojs.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-20 23:43+0000\n" -"PO-Revision-Date: 2022-12-21 00:43\n" +"POT-Creation-Date: 2023-01-23 05:23+0000\n" +"PO-Revision-Date: 2023-01-24 00:51\n" "Last-Translator: \n" "Language-Team: Japanese\n" "Language: ja_JP\n" @@ -17,13 +17,13 @@ msgstr "" "X-Crowdin-File: djangojs.po\n" "X-Crowdin-File-ID: 12\n" -#: resources/common.js:195 +#: resources/common.js:194 msgctxt "time format with day" msgid "%d day %h:%m:%s" msgid_plural "%d days %h:%m:%s" msgstr[0] "%d 日 %h:%m:%s" -#: resources/common.js:198 +#: resources/common.js:197 msgctxt "time format without day" msgid "%h:%m:%s" msgstr "%h:%m:%s" diff --git a/locale/ko/LC_MESSAGES/django.po b/locale/ko/LC_MESSAGES/django.po index c39f90da80..16505a59f1 100644 --- a/locale/ko/LC_MESSAGES/django.po +++ b/locale/ko/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-20 23:04+0000\n" -"PO-Revision-Date: 2023-01-21 00:49\n" +"POT-Creation-Date: 2023-02-17 22:33+0000\n" +"PO-Revision-Date: 2023-02-18 00:49\n" "Last-Translator: \n" "Language-Team: Korean\n" "Language: ko_KR\n" @@ -17,91 +17,91 @@ msgstr "" "X-Crowdin-File: django.po\n" "X-Crowdin-File-ID: 10\n" -#: dmoj/settings.py:380 +#: dmoj/settings.py:392 msgid "Catalan" msgstr "카탈루냐어" -#: dmoj/settings.py:381 +#: dmoj/settings.py:393 msgid "German" msgstr "독일어" -#: dmoj/settings.py:382 +#: dmoj/settings.py:394 msgid "Greek" msgstr "그리스어" -#: dmoj/settings.py:383 +#: dmoj/settings.py:395 msgid "English" msgstr "영어" -#: dmoj/settings.py:384 +#: dmoj/settings.py:396 msgid "Spanish" msgstr "스페인어" -#: dmoj/settings.py:385 +#: dmoj/settings.py:397 msgid "French" msgstr "프랑스어" -#: dmoj/settings.py:386 +#: dmoj/settings.py:398 msgid "Croatian" msgstr "크로아티아어" -#: dmoj/settings.py:387 +#: dmoj/settings.py:399 msgid "Hungarian" msgstr "헝가리어" -#: dmoj/settings.py:388 +#: dmoj/settings.py:400 msgid "Japanese" msgstr "일본어" -#: dmoj/settings.py:389 +#: dmoj/settings.py:401 msgid "Korean" msgstr "한국어" -#: dmoj/settings.py:390 +#: dmoj/settings.py:402 msgid "Brazilian Portuguese" msgstr "포르투갈어 (브라질)" -#: dmoj/settings.py:391 +#: dmoj/settings.py:403 msgid "Romanian" msgstr "루마니아어" -#: dmoj/settings.py:392 +#: dmoj/settings.py:404 msgid "Russian" msgstr "러시아어" -#: dmoj/settings.py:393 +#: dmoj/settings.py:405 msgid "Serbian (Latin)" msgstr "세르비아어(라틴문자)" -#: dmoj/settings.py:394 +#: dmoj/settings.py:406 msgid "Turkish" msgstr "터키어" -#: dmoj/settings.py:395 +#: dmoj/settings.py:407 msgid "Vietnamese" msgstr "베트남어" -#: dmoj/settings.py:396 +#: dmoj/settings.py:408 msgid "Simplified Chinese" msgstr "중국어(간체)" -#: dmoj/settings.py:397 +#: dmoj/settings.py:409 msgid "Traditional Chinese" msgstr "중국어(번체)" -#: dmoj/urls.py:32 +#: dmoj/urls.py:31 msgid "Activation Successful!" msgstr "" -#: dmoj/urls.py:40 +#: dmoj/urls.py:39 msgid "Registration Completed" msgstr "" -#: dmoj/urls.py:44 +#: dmoj/urls.py:43 msgid "Registration Not Allowed" msgstr "" -#: dmoj/urls.py:93 templates/base.html:183 +#: dmoj/urls.py:92 templates/base.html:193 msgid "Home" msgstr "메인" @@ -138,8 +138,8 @@ msgid "Included contests" msgstr "포함된 대회" #: judge/admin/contest.py:65 templates/contest/contest.html:195 -#: templates/contest/moss.html:41 templates/problem/list.html:197 -#: templates/problem/list.html:213 templates/user/user-problems.html:58 +#: templates/contest/moss.html:41 templates/problem/list.html:188 +#: templates/problem/list.html:204 templates/user/user-problems.html:58 #: templates/user/user-problems.html:102 msgid "Problem" msgstr "문제" @@ -150,7 +150,7 @@ msgstr "문제" msgid "Problems" msgstr "문제" -#: judge/admin/contest.py:76 judge/admin/submission.py:249 +#: judge/admin/contest.py:76 judge/admin/submission.py:250 #: templates/admin/judge/submission/change_form.html:14 #: templates/admin/judge/submission/change_form.html:17 #: templates/submission/source.html:34 templates/submission/status.html:89 @@ -225,27 +225,27 @@ msgstr[0] "%d개의 대회가 해제되었습니다." msgid "Unlock contest submissions" msgstr "콘테스트 답안제출 허용" -#: judge/admin/contest.py:280 judge/admin/submission.py:175 +#: judge/admin/contest.py:280 judge/admin/submission.py:176 #, python-format msgid "%d submission was successfully scheduled for rejudging." msgid_plural "%d submissions were successfully scheduled for rejudging." msgstr[0] "%d개의 제출이 성공적으로 재채점 대기열에 등록되었습니다." -#: judge/admin/contest.py:356 +#: judge/admin/contest.py:358 #, python-format msgid "%d participation recalculated." msgid_plural "%d participations recalculated." msgstr[0] "%d 참여자가 재계산되었습니다." -#: judge/admin/contest.py:359 +#: judge/admin/contest.py:361 msgid "Recalculate results" msgstr "결과 초기화" -#: judge/admin/contest.py:363 judge/admin/organization.py:113 +#: judge/admin/contest.py:365 judge/admin/organization.py:113 msgid "username" msgstr "사용자 이름" -#: judge/admin/contest.py:368 templates/base.html:249 +#: judge/admin/contest.py:370 templates/base.html:259 msgid "virtual" msgstr "가상" @@ -258,8 +258,8 @@ msgid "Summary" msgstr "요약" #: judge/admin/interface.py:124 judge/models/contest.py:491 -#: judge/models/contest.py:623 judge/models/profile.py:331 -#: judge/models/profile.py:362 judge/models/submission.py:67 +#: judge/models/contest.py:623 judge/models/profile.py:347 +#: judge/models/profile.py:378 judge/models/submission.py:67 #: judge/models/ticket.py:32 msgid "user" msgstr "사용자" @@ -290,8 +290,8 @@ msgid "Taxonomy" msgstr "분류" #: judge/admin/problem.py:133 templates/contest/contest.html:196 -#: templates/problem/data.html:380 templates/problem/list.html:202 -#: templates/problem/list.html:224 templates/user/base-users-table.html:10 +#: templates/problem/data.html:381 templates/problem/list.html:193 +#: templates/problem/list.html:215 templates/user/base-users-table.html:11 #: templates/user/user-problems.html:60 msgid "Points" msgstr "포인트" @@ -300,9 +300,9 @@ msgstr "포인트" msgid "Limits" msgstr "제한" -#: judge/admin/problem.py:135 judge/admin/submission.py:243 +#: judge/admin/problem.py:135 judge/admin/submission.py:244 #: templates/problem/submission-diff.html:65 templates/stats/tabs.html:4 -#: templates/submission/list.html:317 +#: templates/submission/list.html:319 msgid "Language" msgstr "언어" @@ -356,19 +356,19 @@ msgstr "문제" msgid "timezone" msgstr "시간대" -#: judge/admin/profile.py:98 judge/admin/submission.py:222 +#: judge/admin/profile.py:98 judge/admin/submission.py:223 #: templates/organization/requests/log.html:9 #: templates/organization/requests/pending.html:12 -#: templates/ticket/list.html:201 +#: templates/ticket/list.html:202 msgid "User" msgstr "사용자" -#: judge/admin/profile.py:103 templates/registration/registration_form.html:149 +#: judge/admin/profile.py:103 templates/registration/registration_form.html:145 msgid "Email" msgstr "이메일" #: judge/admin/profile.py:108 judge/views/register.py:28 -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "Timezone" msgstr "시간대" @@ -386,26 +386,26 @@ msgstr[0] "%d명의 사용자 점수가 재계산되었습니다." msgid "Recalculate scores" msgstr "점수 재계산" -#: judge/admin/runtime.py:50 templates/user/edit-profile.html:124 -#: templates/user/edit-profile.html:246 templates/user/edit-profile.html:366 -#: templates/user/edit-profile.html:396 +#: judge/admin/runtime.py:52 templates/user/edit-profile.html:119 +#: templates/user/edit-profile.html:241 templates/user/edit-profile.html:353 +#: templates/user/edit-profile.html:383 msgid "Regenerate" msgstr "재생성" -#: judge/admin/runtime.py:64 +#: judge/admin/runtime.py:66 msgid "Description" msgstr "설명" -#: judge/admin/runtime.py:65 +#: judge/admin/runtime.py:67 msgid "Information" msgstr "정보" -#: judge/admin/runtime.py:66 +#: judge/admin/runtime.py:68 msgid "Capabilities" msgstr "기능" #: judge/admin/submission.py:24 judge/admin/submission.py:43 -#: judge/admin/submission.py:232 +#: judge/admin/submission.py:233 msgid "None" msgstr "없음" @@ -437,56 +437,56 @@ msgctxt "contest problem" msgid "%(problem)s in %(contest)s" msgstr "%(problem)s 대회의 문제 %(contest)s" -#: judge/admin/submission.py:160 judge/admin/submission.py:182 +#: judge/admin/submission.py:161 judge/admin/submission.py:183 msgid "You do not have the permission to rejudge submissions." msgstr "재채점할 권한이 없습니다." -#: judge/admin/submission.py:166 +#: judge/admin/submission.py:167 msgid "You do not have the permission to rejudge THAT many submissions." msgstr "재채점 가능 개수를 초과하였습니다." -#: judge/admin/submission.py:178 +#: judge/admin/submission.py:179 msgid "Rejudge the selected submissions" msgstr "선택한 제출 재채점" -#: judge/admin/submission.py:204 judge/views/problem_manage.py:129 +#: judge/admin/submission.py:205 judge/views/problem_manage.py:129 #, python-format msgid "%d submission was successfully rescored." msgid_plural "%d submissions were successfully rescored." msgstr[0] "%d개의 제출이 성공적으로 재채점되었습니다." -#: judge/admin/submission.py:207 +#: judge/admin/submission.py:208 msgid "Rescore the selected submissions" msgstr "재채점" -#: judge/admin/submission.py:211 +#: judge/admin/submission.py:212 msgid "Problem code" msgstr "문제 코드" -#: judge/admin/submission.py:216 +#: judge/admin/submission.py:217 msgid "Problem name" msgstr "문제 이름" -#: judge/admin/submission.py:226 templates/organization/requests/log.html:10 +#: judge/admin/submission.py:227 templates/organization/requests/log.html:10 #: templates/organization/requests/pending.html:13 msgid "Time" msgstr "시간" -#: judge/admin/submission.py:234 +#: judge/admin/submission.py:235 #, python-format msgid "%d KB" msgstr "%d KB" -#: judge/admin/submission.py:236 +#: judge/admin/submission.py:237 #, python-format msgid "%.2f MB" msgstr "%.2f MB" -#: judge/admin/submission.py:238 +#: judge/admin/submission.py:239 msgid "Memory" msgstr "메모리" -#: judge/admin/submission.py:247 +#: judge/admin/submission.py:248 msgid "Locked" msgstr "" @@ -511,6 +511,7 @@ msgid "Comment body" msgstr "코멘트 본문" #: judge/comments.py:47 judge/views/comment.py:40 judge/views/ticket.py:46 +#: judge/views/user.py:347 msgid "Your part is silent, little toad." msgstr "침묵하세요." @@ -615,7 +616,7 @@ msgstr "잘못된 이중 인증 토큰입니다." msgid "Scratch codes must be 16 Base32 characters." msgstr "스크래치 코드는 16 Base32 문자여야 합니다." -#: judge/forms.py:39 judge/forms.py:265 +#: judge/forms.py:39 judge/forms.py:266 msgid "Invalid scratch code." msgstr "유효하지 않은 접근 코드입니다." @@ -637,83 +638,83 @@ msgid "You may not be part of more than {count} public organization." msgid_plural "You may not be part of more than {count} public organizations." msgstr[0] "{count}개보다 많은 공개 조직에 소속될 수 없습니다." -#: judge/forms.py:98 +#: judge/forms.py:99 msgid "Download comments?" msgstr "주석을 다운로드하시겠습니까?" -#: judge/forms.py:99 +#: judge/forms.py:100 msgid "Download submissions?" msgstr "제출물을 다운로드하시겠습니까?" -#: judge/forms.py:100 +#: judge/forms.py:101 msgid "Filter by problem code glob:" msgstr "문제 코드로 필터링:" -#: judge/forms.py:104 +#: judge/forms.py:105 msgid "Leave empty to include all submissions" msgstr "모든 제출물을 포함하려면 비워 둡니다" -#: judge/forms.py:107 templates/problem/manage_submission.html:142 +#: judge/forms.py:108 templates/problem/manage_submission.html:144 msgid "Filter by result:" msgstr "결과 필터링:" -#: judge/forms.py:113 +#: judge/forms.py:114 msgid "Please select at least one thing to download." msgstr "다운 받을 것을 최소 한 개 선택해주세요." -#: judge/forms.py:139 +#: judge/forms.py:140 msgid "Any judge" msgstr "모든 judge" -#: judge/forms.py:160 judge/views/register.py:25 +#: judge/forms.py:161 judge/views/register.py:25 #: templates/problem/submission-diff.html:63 -#: templates/registration/registration_form.html:143 -#: templates/user/base-users-table.html:5 +#: templates/registration/registration_form.html:139 +#: templates/user/base-users-table.html:6 msgid "Username" msgstr "사용자 이름" -#: judge/forms.py:161 templates/registration/registration_form.html:155 -#: templates/registration/registration_form.html:169 +#: judge/forms.py:162 templates/registration/registration_form.html:151 +#: templates/registration/registration_form.html:165 msgid "Password" msgstr "비밀번호" -#: judge/forms.py:193 +#: judge/forms.py:194 msgid "Invalid code length." msgstr "잘못된 코드 길이입니다." -#: judge/forms.py:224 +#: judge/forms.py:225 msgid "Invalid WebAuthn response." msgstr "잘못된 WebAuthn 응답입니다." -#: judge/forms.py:227 +#: judge/forms.py:228 msgid "No WebAuthn challenge issued." msgstr "WebAuthn 챌린지가 발행되지 않았습니다." -#: judge/forms.py:233 +#: judge/forms.py:234 msgid "Invalid WebAuthn credential ID." msgstr "잘못된 WebAuthn 자격 증명 ID입니다." -#: judge/forms.py:263 +#: judge/forms.py:264 msgid "Invalid two-factor authentication token or scratch code." msgstr "잘못된 2단계 인증 토큰 또는 접근 코드입니다." -#: judge/forms.py:267 +#: judge/forms.py:268 msgid "Must specify either totp_token or webauthn_response." msgstr "totp_token 또는 webauthn_response를 지정해야 합니다." -#: judge/forms.py:271 judge/models/problem.py:118 +#: judge/forms.py:272 judge/models/problem.py:118 msgid "Problem code must be ^[a-z0-9]+$" msgstr "문제 코드는 ^[a-z0-9]+$ 이어야 합니다" -#: judge/forms.py:276 +#: judge/forms.py:277 msgid "Problem with code already exists." msgstr "코드에 문제가 이미 있습니다." -#: judge/forms.py:281 judge/models/contest.py:68 +#: judge/forms.py:282 judge/models/contest.py:68 msgid "Contest id must be ^[a-z0-9]+$" msgstr "대회 아이디 ^[a-z0-9]+$ 이어야 합니다" -#: judge/forms.py:286 +#: judge/forms.py:287 msgid "Contest with key already exists." msgstr "키가 있는 콘테스트가 이미 존재합니다." @@ -736,26 +737,42 @@ msgstr "{time}에" msgid "Unrated" msgstr "레이팅 없음" -#: judge/models/choices.py:59 +#: judge/models/choices.py:24 +msgid "Follow site theme" +msgstr "" + +#: judge/models/choices.py:60 msgid "Leave as LaTeX" msgstr "Leave as LaTeX" -#: judge/models/choices.py:60 +#: judge/models/choices.py:61 msgid "SVG only" msgstr "" -#: judge/models/choices.py:61 +#: judge/models/choices.py:62 msgid "MathML only" msgstr "MathML Only" -#: judge/models/choices.py:62 +#: judge/models/choices.py:63 msgid "MathJax with SVG fallback" msgstr "" -#: judge/models/choices.py:63 +#: judge/models/choices.py:64 msgid "Detect best quality" msgstr "최고의 질을 찾아라" +#: judge/models/choices.py:70 +msgid "Follow system default" +msgstr "" + +#: judge/models/choices.py:71 +msgid "Light" +msgstr "" + +#: judge/models/choices.py:72 +msgid "Dark" +msgstr "" + #: judge/models/comment.py:25 msgid "Page code must be ^[pcs]:[a-z0-9]+$|^b:\\d+$" msgstr "페이지 코드는 ^[pcs]:[a-z0-9]+$|^b:\\d+$ 이어야 합니다" @@ -1868,8 +1885,8 @@ msgid "Non-trailing spaces" msgstr "비 후행 공백" #: judge/models/problem_data.py:28 -msgid "Unordered" -msgstr "정렬되지 않은" +msgid "Sorted" +msgstr "" #: judge/models/problem_data.py:29 msgid "Byte identical" @@ -2040,7 +2057,7 @@ msgid "Edit all organizations" msgstr "조직 편집" #: judge/models/profile.py:98 judge/models/profile.py:103 -#: judge/models/profile.py:160 judge/models/profile.py:363 +#: judge/models/profile.py:161 judge/models/profile.py:379 msgid "organization" msgstr "조직" @@ -2081,7 +2098,7 @@ msgstr "" msgid "%(class)s in %(organization)s" msgstr "" -#: judge/models/profile.py:142 judge/models/profile.py:371 +#: judge/models/profile.py:142 judge/models/profile.py:387 msgid "class" msgstr "" @@ -2106,26 +2123,30 @@ msgid "Ace theme" msgstr "" #: judge/models/profile.py:158 +msgid "site theme" +msgstr "" + +#: judge/models/profile.py:159 msgid "last access time" msgstr "마지막 접속 시간" -#: judge/models/profile.py:159 +#: judge/models/profile.py:160 msgid "last IP" msgstr "마지막 IP" -#: judge/models/profile.py:162 +#: judge/models/profile.py:163 msgid "display rank" msgstr "순위 표시" -#: judge/models/profile.py:164 +#: judge/models/profile.py:165 msgid "Normal User" msgstr "일반 유저" -#: judge/models/profile.py:165 +#: judge/models/profile.py:166 msgid "Problem Setter" msgstr "문제 해결사" -#: judge/models/profile.py:166 templates/base.html:211 +#: judge/models/profile.py:167 templates/base.html:221 #: templates/comments/list.html:97 templates/contest/contest-list-tabs.html:25 #: templates/contest/ranking-table.html:51 #: templates/problem/problem-list-tabs.html:6 @@ -2135,200 +2156,200 @@ msgstr "문제 해결사" msgid "Admin" msgstr "관리자" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "comment mute" msgstr "코멘트 음소거" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "Some users are at their best when silent." msgstr "일부 사용자는 침묵할 때 최상의 상태를 유지합니다." -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "unlisted user" msgstr "비공개 사용자" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "User will not be ranked." msgstr "사용자는 순위가 매겨지지 않습니다." -#: judge/models/profile.py:172 +#: judge/models/profile.py:173 msgid "banned from voting on problem point values" msgstr "" -#: judge/models/profile.py:173 +#: judge/models/profile.py:174 msgid "User will not be able to vote on problems' point values." msgstr "" -#: judge/models/profile.py:177 +#: judge/models/profile.py:178 msgid "user script" msgstr "사용자 스크립트" -#: judge/models/profile.py:178 +#: judge/models/profile.py:179 msgid "User-defined JavaScript for site customization." msgstr "사이트 수정을 위한 사용자 자바스크립트입니다." -#: judge/models/profile.py:179 +#: judge/models/profile.py:180 msgid "current contest" msgstr "현재 대회" -#: judge/models/profile.py:181 +#: judge/models/profile.py:182 msgid "math engine" msgstr "수학 엔진" -#: judge/models/profile.py:183 +#: judge/models/profile.py:184 msgid "The rendering engine used to render math." msgstr "수학을 렌더링하는 데 사용되는 렌더링 엔진." -#: judge/models/profile.py:184 +#: judge/models/profile.py:185 msgid "TOTP 2FA enabled" msgstr "TOTP 2FA 활성화" -#: judge/models/profile.py:185 +#: judge/models/profile.py:186 msgid "Check to enable TOTP-based two-factor authentication." msgstr "TOTP 기반 이중 인증 활성화 확인." -#: judge/models/profile.py:186 +#: judge/models/profile.py:187 msgid "WebAuthn 2FA enabled" msgstr "WebAuthn 2FA 사용" -#: judge/models/profile.py:187 +#: judge/models/profile.py:188 msgid "Check to enable WebAuthn-based two-factor authentication." msgstr "WebAuthn 기반 2단계 인증을 활성화하려면 체크." -#: judge/models/profile.py:188 +#: judge/models/profile.py:189 msgid "TOTP key" msgstr "TOTP 키" -#: judge/models/profile.py:189 +#: judge/models/profile.py:190 msgid "32-character Base32-encoded key for TOTP." msgstr "TOTP용 32자 Base32 인코딩 키." -#: judge/models/profile.py:191 +#: judge/models/profile.py:192 msgid "TOTP key must be empty or Base32." msgstr "TOTP 키는 비어 있거나 Base32 이어야 합니다." -#: judge/models/profile.py:192 +#: judge/models/profile.py:193 msgid "scratch codes" msgstr "기본 코드" -#: judge/models/profile.py:193 +#: judge/models/profile.py:194 msgid "JSON array of 16-character Base32-encoded codes for scratch codes." msgstr "기본 코드용 16 글자 Base32 인코딩 코드의 JSON 배열." -#: judge/models/profile.py:197 +#: judge/models/profile.py:198 msgid "Scratch codes must be empty or a JSON array of 16-character Base32 codes." msgstr "기본 코드는 비어있거나 Base32 코드 글자의 JSON 배열이어야 합니다." -#: judge/models/profile.py:199 +#: judge/models/profile.py:200 msgid "last TOTP timecode" msgstr "마지막 TOPT 타임 코드" -#: judge/models/profile.py:200 +#: judge/models/profile.py:201 msgid "API token" msgstr "API 토큰" -#: judge/models/profile.py:201 +#: judge/models/profile.py:202 msgid "64-character hex-encoded API access token." msgstr "" -#: judge/models/profile.py:203 +#: judge/models/profile.py:204 msgid "API token must be None or hexadecimal" msgstr "" -#: judge/models/profile.py:204 +#: judge/models/profile.py:205 msgid "internal notes" msgstr "" -#: judge/models/profile.py:205 +#: judge/models/profile.py:206 msgid "Notes for administrators regarding this user." msgstr "" -#: judge/models/profile.py:206 +#: judge/models/profile.py:207 msgid "last data download time" msgstr "마지막으로 데이터를 다운로드한 시간" -#: judge/models/profile.py:207 +#: judge/models/profile.py:208 msgid "display name override" msgstr "" -#: judge/models/profile.py:208 +#: judge/models/profile.py:209 msgid "Name displayed in place of username." msgstr "" -#: judge/models/profile.py:323 +#: judge/models/profile.py:333 msgid "Shows in-progress development stuff" msgstr "" -#: judge/models/profile.py:324 +#: judge/models/profile.py:334 msgid "Edit TOTP settings" msgstr "" -#: judge/models/profile.py:326 +#: judge/models/profile.py:336 msgid "user profile" msgstr "사용자 프로파일" -#: judge/models/profile.py:327 +#: judge/models/profile.py:337 msgid "user profiles" msgstr "사용자 프로파일" -#: judge/models/profile.py:333 +#: judge/models/profile.py:349 msgid "device name" msgstr "" -#: judge/models/profile.py:334 +#: judge/models/profile.py:350 msgid "credential ID" msgstr "" -#: judge/models/profile.py:335 +#: judge/models/profile.py:351 msgid "public key" msgstr "공개 키" -#: judge/models/profile.py:336 +#: judge/models/profile.py:352 msgid "sign counter" msgstr "서명 카운터" -#: judge/models/profile.py:354 +#: judge/models/profile.py:370 #, python-format msgid "WebAuthn credential: %(name)s" msgstr "" -#: judge/models/profile.py:357 +#: judge/models/profile.py:373 msgid "WebAuthn credential" msgstr "" -#: judge/models/profile.py:358 +#: judge/models/profile.py:374 msgid "WebAuthn credentials" msgstr "" -#: judge/models/profile.py:365 +#: judge/models/profile.py:381 msgid "request time" msgstr "요청 시간" -#: judge/models/profile.py:366 +#: judge/models/profile.py:382 msgid "state" msgstr "상태" -#: judge/models/profile.py:367 templates/organization/requests/tabs.html:4 +#: judge/models/profile.py:383 templates/organization/requests/tabs.html:4 msgid "Pending" msgstr "보류 중" -#: judge/models/profile.py:368 templates/organization/requests/tabs.html:10 +#: judge/models/profile.py:384 templates/organization/requests/tabs.html:10 msgid "Approved" msgstr "승인됨" -#: judge/models/profile.py:369 templates/organization/requests/tabs.html:13 +#: judge/models/profile.py:385 templates/organization/requests/tabs.html:13 msgid "Rejected" msgstr "거절됨" -#: judge/models/profile.py:372 +#: judge/models/profile.py:388 msgid "reason" msgstr "이유" -#: judge/models/profile.py:381 +#: judge/models/profile.py:397 msgid "organization join request" msgstr "조직 가입 요청" -#: judge/models/profile.py:382 +#: judge/models/profile.py:398 msgid "organization join requests" msgstr "조직 가입 요청" @@ -2571,15 +2592,15 @@ msgstr "" msgid "submission time" msgstr "제출 시간" -#: judge/models/submission.py:70 judge/models/submission.py:255 +#: judge/models/submission.py:70 judge/models/submission.py:265 msgid "execution time" msgstr "실행 시간" -#: judge/models/submission.py:71 judge/models/submission.py:256 +#: judge/models/submission.py:71 judge/models/submission.py:266 msgid "memory usage" msgstr "메모리 사용량" -#: judge/models/submission.py:72 judge/models/submission.py:257 +#: judge/models/submission.py:72 judge/models/submission.py:267 msgid "points granted" msgstr "획득 포인트" @@ -2668,60 +2689,60 @@ msgstr "" msgid "submissions" msgstr "제출" -#: judge/models/submission.py:235 judge/models/submission.py:251 +#: judge/models/submission.py:245 judge/models/submission.py:261 msgid "associated submission" msgstr "관련된 제출" -#: judge/models/submission.py:237 +#: judge/models/submission.py:247 msgid "source code" msgstr "소스 코드" -#: judge/models/submission.py:240 +#: judge/models/submission.py:250 #, python-format msgid "Source of %(submission)s" msgstr "" -#: judge/models/submission.py:243 +#: judge/models/submission.py:253 msgid "submission source" msgstr "" -#: judge/models/submission.py:244 +#: judge/models/submission.py:254 msgid "submission sources" msgstr "" -#: judge/models/submission.py:253 +#: judge/models/submission.py:263 msgid "test case ID" msgstr "test case ID" -#: judge/models/submission.py:254 +#: judge/models/submission.py:264 msgid "status flag" msgstr "상태 flag" -#: judge/models/submission.py:258 +#: judge/models/submission.py:268 msgid "points possible" msgstr "획득 가능한 포인트" -#: judge/models/submission.py:259 +#: judge/models/submission.py:269 msgid "batch number" msgstr "batch number" -#: judge/models/submission.py:260 +#: judge/models/submission.py:270 msgid "judging feedback" msgstr "채점 피드백" -#: judge/models/submission.py:261 +#: judge/models/submission.py:271 msgid "extended judging feedback" msgstr "확장된 심사 피드백" -#: judge/models/submission.py:262 +#: judge/models/submission.py:272 msgid "program output" msgstr "프로그램 출력" -#: judge/models/submission.py:276 +#: judge/models/submission.py:286 msgid "submission test case" msgstr "제출 테스트 케이스" -#: judge/models/submission.py:277 +#: judge/models/submission.py:287 msgid "submission test cases" msgstr "제출 테스트 케이스" @@ -2936,7 +2957,7 @@ msgctxt "hours and minutes" msgid "%h:%m" msgstr "%h:%m" -#: judge/views/blog.py:36 +#: judge/views/blog.py:37 #, python-format msgid "Page %d of Posts" msgstr "게시물 %d 페이지" @@ -3420,11 +3441,11 @@ msgstr "스팸으로 인해 이 이메일 제공업체는 허용되지 않습니 msgid "Register" msgstr "등록" -#: judge/views/register.py:103 +#: judge/views/register.py:101 msgid "Activation Key Invalid" msgstr "" -#: judge/views/register.py:114 +#: judge/views/register.py:112 msgid "Authentication failure" msgstr "인증 실패" @@ -3436,7 +3457,7 @@ msgstr "추가 사항" msgid "Language statistics" msgstr "언어 통계" -#: judge/views/status.py:23 templates/submission/list.html:308 +#: judge/views/status.py:23 templates/submission/list.html:310 msgid "Status" msgstr "현재 상태" @@ -3619,41 +3640,45 @@ msgstr "Y년 n월 j일 G:i" msgid "Preparing your data..." msgstr "" -#: judge/views/user.py:298 templates/user/edit-profile.html:345 +#: judge/views/user.py:298 templates/user/edit-profile.html:344 msgid "Download your data" msgstr "" +#: judge/views/user.py:347 +msgid "Can't edit profile" +msgstr "프로필 편집이 불가합니다" + #: judge/views/user.py:354 msgid "Updated on site" msgstr "사이트에서 업데이트됨" -#: judge/views/user.py:387 templates/admin/auth/user/change_form.html:14 -#: templates/admin/auth/user/change_form.html:17 templates/base.html:213 +#: judge/views/user.py:386 templates/admin/auth/user/change_form.html:14 +#: templates/admin/auth/user/change_form.html:17 templates/base.html:223 #: templates/user/user-tabs.html:16 msgid "Edit profile" msgstr "프로필 수정" -#: judge/views/user.py:402 +#: judge/views/user.py:400 msgid "Generated API token for user" msgstr "사용자에 대해 생성된 API 토큰" -#: judge/views/user.py:414 +#: judge/views/user.py:412 msgid "Removed API token for user" msgstr "" -#: judge/views/user.py:424 +#: judge/views/user.py:422 msgid "Generated scratch codes for user" msgstr "사용자를 위해 생성된 스크래치 코드" -#: judge/views/user.py:430 templates/user/user-list-tabs.html:4 +#: judge/views/user.py:428 templates/user/user-list-tabs.html:4 msgid "Leaderboard" msgstr "순위표" -#: judge/views/user.py:491 +#: judge/views/user.py:489 msgid "You have been successfully logged out." msgstr "" -#: judge/views/user.py:508 +#: judge/views/user.py:506 msgid "You have sent too many password reset requests. Please try again later." msgstr "" @@ -3682,13 +3707,13 @@ msgstr "종료" #: templates/admin/judge/judge/change_form.html:27 #: templates/admin/judge/judge/change_form.html:30 -#: templates/user/edit-profile.html:355 templates/user/edit-profile.html:358 +#: templates/user/edit-profile.html:372 templates/user/edit-profile.html:375 msgid "Disable" msgstr "비활성화" #: templates/admin/judge/judge/change_form.html:33 #: templates/admin/judge/judge/change_form.html:36 -#: templates/user/edit-profile.html:386 +#: templates/user/edit-profile.html:403 msgid "Enable" msgstr "활성화" @@ -3708,48 +3733,48 @@ msgstr "" msgid "Edit user" msgstr "사용자 수정" -#: templates/base.html:206 +#: templates/base.html:216 #, python-format msgid "Hello, %(username)s." msgstr "" -#: templates/base.html:215 +#: templates/base.html:225 msgid "Stop impersonating" msgstr "" -#: templates/base.html:220 +#: templates/base.html:230 msgid "Log out" msgstr "로그아웃" -#: templates/base.html:229 +#: templates/base.html:239 #: templates/registration/password_reset_complete.html:4 msgid "Log in" msgstr "로그인" -#: templates/base.html:230 templates/registration/registration_form.html:181 +#: templates/base.html:240 templates/registration/registration_form.html:177 msgid "or" msgstr "또는" -#: templates/base.html:231 +#: templates/base.html:241 msgid "Sign up" msgstr "회원 가입" -#: templates/base.html:243 +#: templates/base.html:253 msgid "spectating" msgstr "관전" -#: templates/base.html:256 +#: templates/base.html:266 msgid "This site works best with JavaScript enabled." msgstr "이 사이트는 자바 스크립트를 활성화시켜야 정상적으로 작동합니다." -#: templates/base.html:283 +#: templates/base.html:293 msgid "proudly powered by **DMOJ**" msgstr "" #: templates/blog/content.html:13 templates/comments/list.html:89 #: templates/comments/list.html:105 templates/contest/contest-tabs.html:23 #: templates/contest/tag-title.html:9 templates/flatpages/admin_link.html:3 -#: templates/license.html:10 templates/problem/data.html:423 +#: templates/license.html:10 templates/problem/data.html:424 #: templates/problem/editorial.html:14 msgid "Edit" msgstr "수정" @@ -3950,15 +3975,15 @@ msgstr "점수" msgid "No votes" msgstr "투표자 없음" -#: templates/common-content.html:32 templates/user/edit-profile.html:219 +#: templates/common-content.html:32 templates/user/edit-profile.html:214 msgid "Click to copy" msgstr "" -#: templates/common-content.html:33 templates/user/edit-profile.html:220 +#: templates/common-content.html:33 templates/user/edit-profile.html:215 msgid "Copy" msgstr "" -#: templates/common-content.html:44 templates/user/edit-profile.html:231 +#: templates/common-content.html:44 templates/user/edit-profile.html:226 msgid "Copied!" msgstr "" @@ -4039,7 +4064,7 @@ msgstr "달력" msgid "Info" msgstr "정보" -#: templates/contest/contest-tabs.html:6 templates/submission/list.html:334 +#: templates/contest/contest-tabs.html:6 templates/submission/list.html:336 msgid "Statistics" msgstr "통계" @@ -4251,7 +4276,7 @@ msgstr "정답률" #: templates/contest/contest.html:198 templates/contest/list.html:152 #: templates/contest/list.html:194 templates/contest/list.html:271 -#: templates/problem/list.html:203 templates/problem/list.html:235 +#: templates/problem/list.html:194 templates/problem/list.html:226 msgid "Users" msgstr "유저" @@ -4259,7 +4284,7 @@ msgstr "유저" msgid "Editorials" msgstr "" -#: templates/contest/contest.html:226 templates/problem/list.html:229 +#: templates/contest/contest.html:226 templates/problem/list.html:220 msgid "Editorial" msgstr "" @@ -4423,19 +4448,19 @@ msgstr "" msgid "Disqualify" msgstr "" -#: templates/contest/ranking.html:151 +#: templates/contest/ranking.html:46 msgid "Are you sure you want to disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:156 +#: templates/contest/ranking.html:51 msgid "Are you sure you want to un-disqualify this participation?" msgstr "이 참여의 자격을 취소하시겠습니까?" -#: templates/contest/ranking.html:228 +#: templates/contest/ranking.html:124 msgid "View user participation" msgstr "사용자 참여 보기" -#: templates/contest/ranking.html:232 +#: templates/contest/ranking.html:128 msgid "Show organizations" msgstr "조직들 표시" @@ -4622,7 +4647,7 @@ msgid "There are no requests to approve." msgstr "승인할 요청이 없습니다." #: templates/organization/requests/pending.html:17 -#: templates/problem/data.html:387 +#: templates/problem/data.html:388 msgid "Delete?" msgstr "삭제하시겠습니까?" @@ -4658,59 +4683,59 @@ msgstr "" msgid "Enter a new code for the cloned problem:" msgstr "" -#: templates/problem/data.html:70 +#: templates/problem/data.html:71 msgid "precision (decimal digits)" msgstr "" -#: templates/problem/data.html:339 +#: templates/problem/data.html:340 msgid "View YAML" msgstr "YAML 보기" -#: templates/problem/data.html:355 +#: templates/problem/data.html:356 msgid "Show columns:" msgstr "" -#: templates/problem/data.html:358 templates/problem/data.html:382 +#: templates/problem/data.html:359 templates/problem/data.html:383 msgid "Output prefix" msgstr "" -#: templates/problem/data.html:362 templates/problem/data.html:383 +#: templates/problem/data.html:363 templates/problem/data.html:384 msgid "Output limit" msgstr "" -#: templates/problem/data.html:366 templates/problem/data.html:384 +#: templates/problem/data.html:367 templates/problem/data.html:385 msgid "Checker" msgstr "" -#: templates/problem/data.html:370 templates/problem/data.html:385 +#: templates/problem/data.html:371 templates/problem/data.html:386 msgid "Generator args" msgstr "생성자 인자" -#: templates/problem/data.html:377 +#: templates/problem/data.html:378 msgid "Type" msgstr "" -#: templates/problem/data.html:378 +#: templates/problem/data.html:379 msgid "Input file" msgstr "" -#: templates/problem/data.html:379 +#: templates/problem/data.html:380 msgid "Output file" msgstr "" -#: templates/problem/data.html:381 +#: templates/problem/data.html:382 msgid "Pretest?" msgstr "사전 테스트?" -#: templates/problem/data.html:433 templates/problem/submit.html:256 +#: templates/problem/data.html:434 templates/problem/submit.html:190 msgid "Submit!" msgstr "" -#: templates/problem/data.html:434 +#: templates/problem/data.html:435 msgid "Add new case" msgstr "새 케이스 추가" -#: templates/problem/data.html:436 +#: templates/problem/data.html:437 msgid "Save" msgstr "" @@ -4727,98 +4752,98 @@ msgid "Author:" msgid_plural "Authors:" msgstr[0] "저자:" -#: templates/problem/list.html:58 +#: templates/problem/list.html:49 msgid "Filter by type..." msgstr "" -#: templates/problem/list.html:176 +#: templates/problem/list.html:167 msgid "Hot problems" msgstr "인기 있는 문제" -#: templates/problem/list.html:198 templates/problem/list.html:216 +#: templates/problem/list.html:189 templates/problem/list.html:207 #: templates/problem/search-form.html:35 templates/user/user-problems.html:59 msgid "Category" msgstr "분류" -#: templates/problem/list.html:200 templates/problem/list.html:220 +#: templates/problem/list.html:191 templates/problem/list.html:211 msgid "Types" msgstr "유형" -#: templates/problem/list.html:227 +#: templates/problem/list.html:218 #, python-format msgid "AC %%" msgstr "" -#: templates/problem/manage_submission.html:55 +#: templates/problem/manage_submission.html:56 msgid "Leave empty to not filter by language" msgstr "" -#: templates/problem/manage_submission.html:60 +#: templates/problem/manage_submission.html:62 msgid "Leave empty to not filter by result" msgstr "" -#: templates/problem/manage_submission.html:79 +#: templates/problem/manage_submission.html:81 msgid "Need valid values for both start and end IDs." msgstr "" -#: templates/problem/manage_submission.html:82 +#: templates/problem/manage_submission.html:84 msgid "End ID must be after start ID." msgstr "" -#: templates/problem/manage_submission.html:90 +#: templates/problem/manage_submission.html:92 #, python-brace-format msgid "You are about to rejudge {count} submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:96 +#: templates/problem/manage_submission.html:98 msgid "You are about to rejudge a few submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:115 +#: templates/problem/manage_submission.html:117 msgid "Rejudge Submissions" msgstr "" -#: templates/problem/manage_submission.html:120 +#: templates/problem/manage_submission.html:122 msgid "Filter by ID:" msgstr "아이디로 필터링:" -#: templates/problem/manage_submission.html:123 +#: templates/problem/manage_submission.html:125 msgid "Starting ID:" msgstr "시작하는 아이디:" -#: templates/problem/manage_submission.html:127 +#: templates/problem/manage_submission.html:129 msgid "Ending ID:" msgstr "끝나는 아이디:" -#: templates/problem/manage_submission.html:131 +#: templates/problem/manage_submission.html:133 msgid "This range includes both endpoints." msgstr "" -#: templates/problem/manage_submission.html:134 +#: templates/problem/manage_submission.html:136 msgid "Filter by language:" msgstr "언어로 필터링:" -#: templates/problem/manage_submission.html:150 +#: templates/problem/manage_submission.html:152 msgid "Rejudge selected submissions" msgstr "선택한 제출 재채점" -#: templates/problem/manage_submission.html:157 +#: templates/problem/manage_submission.html:159 msgid "Rescore Everything" msgstr "모두 재검토" -#: templates/problem/manage_submission.html:158 +#: templates/problem/manage_submission.html:160 #, python-format msgid "This will rescore %(count)s submission." msgid_plural "This will rescore %(count)s submissions." msgstr[0] "%(count)s개의 제출이 재검토 될 예정입니다." -#: templates/problem/manage_submission.html:166 +#: templates/problem/manage_submission.html:168 #, python-format msgid "Are you sure you want to rescore %(count)s submission?" msgid_plural "Are you sure you want to rescore %(count)s submissions?" msgstr[0] "%(count)s개의 제출을 재검토를 원하십니까?" -#: templates/problem/manage_submission.html:171 +#: templates/problem/manage_submission.html:173 msgid "Rescore all submissions" msgstr "모든 제출 재검토" @@ -4978,8 +5003,8 @@ msgstr "문제 유형" msgid "Point range" msgstr "" -#: templates/problem/search-form.html:68 templates/submission/list.html:326 -#: templates/ticket/list.html:188 +#: templates/problem/search-form.html:68 templates/submission/list.html:328 +#: templates/ticket/list.html:189 msgid "Go" msgstr "이동" @@ -4988,7 +5013,7 @@ msgid "Random" msgstr "무작위" #: templates/problem/submission-diff.html:62 -#: templates/status/language-list.html:34 templates/ticket/list.html:199 +#: templates/status/language-list.html:34 templates/ticket/list.html:200 msgid "ID" msgstr "아이디" @@ -5000,30 +5025,30 @@ msgstr "결과" msgid "Date" msgstr "날짜" -#: templates/problem/submit.html:117 +#: templates/problem/submit.html:118 msgid "Your source code must contain at most 65536 characters." msgstr "소스 코드는 65536자를 넘을 수 없습니다." -#: templates/problem/submit.html:204 +#: templates/problem/submit.html:138 msgid "Warning!" msgstr "" -#: templates/problem/submit.html:205 +#: templates/problem/submit.html:139 #, python-format msgid "Your default language, %(language)s, is unavailable for this problem and has been deselected." msgstr "" -#: templates/problem/submit.html:213 +#: templates/problem/submit.html:147 #, python-format msgid "You have %(left)s submission left" msgid_plural "You have %(left)s submissions left" msgstr[0] "%(left)s 제출 횟수가 남았습니다" -#: templates/problem/submit.html:218 +#: templates/problem/submit.html:152 msgid "You have 0 submissions left" msgstr "0번의 제출 횟수가 남았습니다" -#: templates/problem/submit.html:252 +#: templates/problem/submit.html:186 msgid "No judge is available for this problem." msgstr "" @@ -5229,7 +5254,7 @@ msgstr "" msgid "Password reset on %(site_name)s" msgstr "" -#: templates/registration/profile_creation.html:44 +#: templates/registration/profile_creation.html:38 #: templates/registration/username_select.html:7 msgid "Continue >" msgstr "계속" @@ -5242,36 +5267,36 @@ msgstr "" msgid "You have successfully been registered. An email has been sent to the email address you provided to confirm your registration." msgstr "" -#: templates/registration/registration_form.html:170 +#: templates/registration/registration_form.html:166 msgid "(again, for confirmation)" msgstr "" -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "(select your closest major city)" msgstr "" -#: templates/registration/registration_form.html:182 +#: templates/registration/registration_form.html:178 msgid "pick from map" msgstr "지도에서 고르기" -#: templates/registration/registration_form.html:187 +#: templates/registration/registration_form.html:183 msgid "Default language" msgstr "기본 언어" -#: templates/registration/registration_form.html:190 +#: templates/registration/registration_form.html:186 msgid "Affiliated organizations" msgstr "" -#: templates/registration/registration_form.html:199 -#: templates/user/edit-profile.html:322 +#: templates/registration/registration_form.html:195 +#: templates/user/edit-profile.html:321 msgid "Notify me about upcoming contests" msgstr "" -#: templates/registration/registration_form.html:213 +#: templates/registration/registration_form.html:209 msgid "By registering, you agree to our [Terms & Conditions][0]." msgstr "" -#: templates/registration/registration_form.html:216 +#: templates/registration/registration_form.html:212 msgid "Register!" msgstr "등록" @@ -5313,17 +5338,17 @@ msgid "Enable Two Factor Authentication" msgstr "" #: templates/registration/totp_enable.html:98 -#: templates/user/edit-profile.html:374 +#: templates/user/edit-profile.html:391 msgid "Below is a list of one-time use scratch codes." msgstr "" #: templates/registration/totp_enable.html:99 -#: templates/user/edit-profile.html:375 +#: templates/user/edit-profile.html:392 msgid "These codes can only be used once and are for emergency use." msgstr "" #: templates/registration/totp_enable.html:100 -#: templates/user/edit-profile.html:376 +#: templates/user/edit-profile.html:393 msgid "You can use these codes to login to your account or disable two-factor authentication." msgstr "" @@ -5332,7 +5357,7 @@ msgid "If you ever need more scratch codes, you can regenerate them on the edit msgstr "" #: templates/registration/totp_enable.html:102 -#: templates/user/edit-profile.html:378 +#: templates/user/edit-profile.html:395 msgid "Please write these down and keep them in a secure location." msgstr "" @@ -5350,12 +5375,12 @@ msgid "If you lose your authentication device and are unable to use your scratch msgstr "" #: templates/registration/two_factor_auth.html:33 -#: templates/user/edit-profile.html:164 +#: templates/user/edit-profile.html:159 msgid "WebAuthn is not supported by your browser." msgstr "" #: templates/registration/two_factor_auth.html:54 -#: templates/user/edit-profile.html:188 +#: templates/user/edit-profile.html:183 msgid "Failed to contact server." msgstr "" @@ -5453,23 +5478,23 @@ msgstr "에러 정보" msgid "Are you sure you want to rejudge?" msgstr "" -#: templates/submission/list.html:74 +#: templates/submission/list.html:75 msgid "Filter by status..." msgstr "상태 별로 필터링" -#: templates/submission/list.html:80 +#: templates/submission/list.html:82 msgid "Filter by language..." msgstr "언어로 필터링" -#: templates/submission/list.html:304 +#: templates/submission/list.html:306 msgid "Filter submissions" msgstr "제출 필터" -#: templates/submission/list.html:340 +#: templates/submission/list.html:342 msgid "Total:" msgstr "합계:" -#: templates/submission/list.html:350 +#: templates/submission/list.html:352 msgid "You were disconnected. Refresh to show latest updates." msgstr "연결이 끊겼습니다. 최신 업데이트를 표시하려면 새로고침하세요." @@ -5633,32 +5658,32 @@ msgstr "재개됨: " msgid "Closed: " msgstr "닫힘: " -#: templates/ticket/list.html:156 +#: templates/ticket/list.html:157 msgid "Use desktop notification" msgstr "데스크탑 알람 사용하기" -#: templates/ticket/list.html:162 +#: templates/ticket/list.html:163 msgid "Hide closed tickets" msgstr "마감된 티켓 숨기기" -#: templates/ticket/list.html:167 +#: templates/ticket/list.html:168 msgid "Show my tickets only" msgstr "내 티켓만 보기" -#: templates/ticket/list.html:171 +#: templates/ticket/list.html:172 msgid "Filing user" msgstr "파일링 사용자" -#: templates/ticket/list.html:180 templates/ticket/ticket.html:196 +#: templates/ticket/list.html:181 templates/ticket/ticket.html:196 msgid "Assignee" msgid_plural "Assignees" msgstr[0] "인증된 사용자" -#: templates/ticket/list.html:200 +#: templates/ticket/list.html:201 msgid "Title" msgstr "제목" -#: templates/ticket/list.html:202 +#: templates/ticket/list.html:203 msgid "Assignees" msgstr "인증된 사용자" @@ -5709,131 +5734,135 @@ msgstr "인증된 사용자 노트" msgid "Nothing here." msgstr "표시할 것이 없습니다." -#: templates/user/base-users-table.html:3 +#: templates/user/base-users-table.html:4 msgid "Rank" msgstr "순위" -#: templates/user/base-users.html:14 templates/user/base-users.html:57 +#: templates/user/base-users.html:15 templates/user/base-users.html:58 msgid "Search by handle..." msgstr "손쉽게 검색..." -#: templates/user/edit-profile.html:107 +#: templates/user/edit-profile.html:102 msgid "The administrators for this site require all the staff to have Two-factor Authentication enabled, so it may not be disabled at this time." msgstr "" -#: templates/user/edit-profile.html:112 +#: templates/user/edit-profile.html:107 msgid "Are you sure you want to generate or regenerate your API token?" msgstr "API 토큰을 생성하거나 재생성 하겠습니까?" -#: templates/user/edit-profile.html:113 +#: templates/user/edit-profile.html:108 msgid "This will invalidate any previous API tokens." msgstr "이전 API 토큰이 무효화됩니다." -#: templates/user/edit-profile.html:114 +#: templates/user/edit-profile.html:109 msgid "It also allows access to your account without Two-factor Authentication." msgstr "또한 2단계 인증 없이 계정에 접근할 수 있습니다." -#: templates/user/edit-profile.html:115 +#: templates/user/edit-profile.html:110 msgid "You will not be able to view your API token after you leave this page!" msgstr "이 페이지를 나간 후에는 API 토큰을 볼 수 없습니다." -#: templates/user/edit-profile.html:116 templates/user/edit-profile.html:210 +#: templates/user/edit-profile.html:111 templates/user/edit-profile.html:205 msgid "Generating..." msgstr "생성 중..." -#: templates/user/edit-profile.html:130 templates/user/edit-profile.html:398 +#: templates/user/edit-profile.html:125 templates/user/edit-profile.html:355 msgid "Remove" msgstr "삭제" -#: templates/user/edit-profile.html:140 +#: templates/user/edit-profile.html:135 msgid "Are you sure you want to remove your API token?" msgstr "API 토큰을 삭제하겠습니까?" -#: templates/user/edit-profile.html:147 templates/user/edit-profile.html:370 -#: templates/user/edit-profile.html:402 +#: templates/user/edit-profile.html:142 templates/user/edit-profile.html:359 +#: templates/user/edit-profile.html:387 msgid "Generate" msgstr "생성" -#: templates/user/edit-profile.html:193 +#: templates/user/edit-profile.html:188 msgid "Are you sure you want to delete this security key?" msgstr "보안 키를 삭제하겠습니까?" -#: templates/user/edit-profile.html:207 +#: templates/user/edit-profile.html:202 msgid "Are you sure you want to generate or regenerate a new set of scratch codes?" msgstr "" -#: templates/user/edit-profile.html:208 +#: templates/user/edit-profile.html:203 msgid "This will invalidate any previous scratch codes you have." msgstr "" -#: templates/user/edit-profile.html:209 templates/user/edit-profile.html:379 +#: templates/user/edit-profile.html:204 templates/user/edit-profile.html:396 msgid "You will not be able to view your scratch codes after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:278 +#: templates/user/edit-profile.html:273 msgid "Self-description:" msgstr "자기 소개:" -#: templates/user/edit-profile.html:285 +#: templates/user/edit-profile.html:280 msgid "Select your closest major city" msgstr "가장 가까운 대도시를 선택하세요" -#: templates/user/edit-profile.html:286 +#: templates/user/edit-profile.html:281 msgid "Time zone:" msgstr "시간대:" -#: templates/user/edit-profile.html:290 +#: templates/user/edit-profile.html:285 msgid "Language:" msgstr "언어:" -#: templates/user/edit-profile.html:294 +#: templates/user/edit-profile.html:289 +msgid "Site theme:" +msgstr "" + +#: templates/user/edit-profile.html:293 msgid "Editor theme:" msgstr "편집기 테마:" -#: templates/user/edit-profile.html:299 +#: templates/user/edit-profile.html:298 msgid "Math engine:" msgstr "수학 엔진:" -#: templates/user/edit-profile.html:308 +#: templates/user/edit-profile.html:307 msgid "Affiliated organizations:" msgstr "" -#: templates/user/edit-profile.html:334 +#: templates/user/edit-profile.html:333 msgid "Change your avatar" msgstr "아바타 변경" -#: templates/user/edit-profile.html:339 +#: templates/user/edit-profile.html:338 msgid "Change your password" msgstr "비밀번호 변경" -#: templates/user/edit-profile.html:352 -msgid "Two-factor Authentication is enabled:" -msgstr "2단계 인증이 활성화 되었습니다:" +#: templates/user/edit-profile.html:350 +msgid "API token:" +msgstr "API 토큰:" -#: templates/user/edit-profile.html:360 +#: templates/user/edit-profile.html:356 templates/user/edit-profile.html:384 +msgid "Hidden" +msgstr "숨기기" + +#: templates/user/edit-profile.html:369 +msgid "Two-factor authentication is enabled:" +msgstr "" + +#: templates/user/edit-profile.html:377 msgid "Refresh" msgstr "새로 고침" -#: templates/user/edit-profile.html:363 +#: templates/user/edit-profile.html:380 msgid "Scratch codes:" msgstr "기본 코드:" -#: templates/user/edit-profile.html:367 templates/user/edit-profile.html:399 -msgid "Hidden" -msgstr "숨기기" - -#: templates/user/edit-profile.html:377 +#: templates/user/edit-profile.html:394 msgid "If you ever need more scratch codes, you can regenerate them here." msgstr "" -#: templates/user/edit-profile.html:385 +#: templates/user/edit-profile.html:402 msgid "Two-factor Authentication is disabled:" msgstr "2단계 인증이 비활성화 되었습니다:" -#: templates/user/edit-profile.html:393 -msgid "API token:" -msgstr "API 토큰:" - #: templates/user/edit-profile.html:410 msgid "Security keys:" msgstr "보안 키:" diff --git a/locale/ko/LC_MESSAGES/djangojs.po b/locale/ko/LC_MESSAGES/djangojs.po index ff20d7dbb4..27927784a6 100644 --- a/locale/ko/LC_MESSAGES/djangojs.po +++ b/locale/ko/LC_MESSAGES/djangojs.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-20 23:43+0000\n" -"PO-Revision-Date: 2022-12-21 00:43\n" +"POT-Creation-Date: 2023-01-23 05:23+0000\n" +"PO-Revision-Date: 2023-01-24 00:51\n" "Last-Translator: \n" "Language-Team: Korean\n" "Language: ko_KR\n" @@ -17,13 +17,13 @@ msgstr "" "X-Crowdin-File: djangojs.po\n" "X-Crowdin-File-ID: 12\n" -#: resources/common.js:195 +#: resources/common.js:194 msgctxt "time format with day" msgid "%d day %h:%m:%s" msgid_plural "%d days %h:%m:%s" msgstr[0] "%d일 %h:%m:%s" -#: resources/common.js:198 +#: resources/common.js:197 msgctxt "time format without day" msgid "%h:%m:%s" msgstr "%h:%m:%s" diff --git a/locale/lt/LC_MESSAGES/django.po b/locale/lt/LC_MESSAGES/django.po index 078e4d32b3..9c2fa021be 100644 --- a/locale/lt/LC_MESSAGES/django.po +++ b/locale/lt/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-20 23:04+0000\n" -"PO-Revision-Date: 2023-01-21 00:49\n" +"POT-Creation-Date: 2023-02-17 22:33+0000\n" +"PO-Revision-Date: 2023-02-18 00:49\n" "Last-Translator: \n" "Language-Team: Lithuanian\n" "Language: lt_LT\n" @@ -17,91 +17,91 @@ msgstr "" "X-Crowdin-File: django.po\n" "X-Crowdin-File-ID: 10\n" -#: dmoj/settings.py:380 +#: dmoj/settings.py:392 msgid "Catalan" msgstr "" -#: dmoj/settings.py:381 +#: dmoj/settings.py:393 msgid "German" msgstr "" -#: dmoj/settings.py:382 +#: dmoj/settings.py:394 msgid "Greek" msgstr "" -#: dmoj/settings.py:383 +#: dmoj/settings.py:395 msgid "English" msgstr "" -#: dmoj/settings.py:384 +#: dmoj/settings.py:396 msgid "Spanish" msgstr "" -#: dmoj/settings.py:385 +#: dmoj/settings.py:397 msgid "French" msgstr "" -#: dmoj/settings.py:386 +#: dmoj/settings.py:398 msgid "Croatian" msgstr "" -#: dmoj/settings.py:387 +#: dmoj/settings.py:399 msgid "Hungarian" msgstr "" -#: dmoj/settings.py:388 +#: dmoj/settings.py:400 msgid "Japanese" msgstr "" -#: dmoj/settings.py:389 +#: dmoj/settings.py:401 msgid "Korean" msgstr "" -#: dmoj/settings.py:390 +#: dmoj/settings.py:402 msgid "Brazilian Portuguese" msgstr "" -#: dmoj/settings.py:391 +#: dmoj/settings.py:403 msgid "Romanian" msgstr "" -#: dmoj/settings.py:392 +#: dmoj/settings.py:404 msgid "Russian" msgstr "" -#: dmoj/settings.py:393 +#: dmoj/settings.py:405 msgid "Serbian (Latin)" msgstr "" -#: dmoj/settings.py:394 +#: dmoj/settings.py:406 msgid "Turkish" msgstr "" -#: dmoj/settings.py:395 +#: dmoj/settings.py:407 msgid "Vietnamese" msgstr "" -#: dmoj/settings.py:396 +#: dmoj/settings.py:408 msgid "Simplified Chinese" msgstr "" -#: dmoj/settings.py:397 +#: dmoj/settings.py:409 msgid "Traditional Chinese" msgstr "" -#: dmoj/urls.py:32 +#: dmoj/urls.py:31 msgid "Activation Successful!" msgstr "" -#: dmoj/urls.py:40 +#: dmoj/urls.py:39 msgid "Registration Completed" msgstr "" -#: dmoj/urls.py:44 +#: dmoj/urls.py:43 msgid "Registration Not Allowed" msgstr "" -#: dmoj/urls.py:93 templates/base.html:183 +#: dmoj/urls.py:92 templates/base.html:193 msgid "Home" msgstr "" @@ -144,8 +144,8 @@ msgid "Included contests" msgstr "" #: judge/admin/contest.py:65 templates/contest/contest.html:195 -#: templates/contest/moss.html:41 templates/problem/list.html:197 -#: templates/problem/list.html:213 templates/user/user-problems.html:58 +#: templates/contest/moss.html:41 templates/problem/list.html:188 +#: templates/problem/list.html:204 templates/user/user-problems.html:58 #: templates/user/user-problems.html:102 msgid "Problem" msgstr "" @@ -156,7 +156,7 @@ msgstr "" msgid "Problems" msgstr "" -#: judge/admin/contest.py:76 judge/admin/submission.py:249 +#: judge/admin/contest.py:76 judge/admin/submission.py:250 #: templates/admin/judge/submission/change_form.html:14 #: templates/admin/judge/submission/change_form.html:17 #: templates/submission/source.html:34 templates/submission/status.html:89 @@ -243,7 +243,7 @@ msgstr[3] "" msgid "Unlock contest submissions" msgstr "" -#: judge/admin/contest.py:280 judge/admin/submission.py:175 +#: judge/admin/contest.py:280 judge/admin/submission.py:176 #, python-format msgid "%d submission was successfully scheduled for rejudging." msgid_plural "%d submissions were successfully scheduled for rejudging." @@ -252,7 +252,7 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: judge/admin/contest.py:356 +#: judge/admin/contest.py:358 #, python-format msgid "%d participation recalculated." msgid_plural "%d participations recalculated." @@ -261,15 +261,15 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: judge/admin/contest.py:359 +#: judge/admin/contest.py:361 msgid "Recalculate results" msgstr "" -#: judge/admin/contest.py:363 judge/admin/organization.py:113 +#: judge/admin/contest.py:365 judge/admin/organization.py:113 msgid "username" msgstr "" -#: judge/admin/contest.py:368 templates/base.html:249 +#: judge/admin/contest.py:370 templates/base.html:259 msgid "virtual" msgstr "" @@ -282,8 +282,8 @@ msgid "Summary" msgstr "" #: judge/admin/interface.py:124 judge/models/contest.py:491 -#: judge/models/contest.py:623 judge/models/profile.py:331 -#: judge/models/profile.py:362 judge/models/submission.py:67 +#: judge/models/contest.py:623 judge/models/profile.py:347 +#: judge/models/profile.py:378 judge/models/submission.py:67 #: judge/models/ticket.py:32 msgid "user" msgstr "" @@ -314,8 +314,8 @@ msgid "Taxonomy" msgstr "" #: judge/admin/problem.py:133 templates/contest/contest.html:196 -#: templates/problem/data.html:380 templates/problem/list.html:202 -#: templates/problem/list.html:224 templates/user/base-users-table.html:10 +#: templates/problem/data.html:381 templates/problem/list.html:193 +#: templates/problem/list.html:215 templates/user/base-users-table.html:11 #: templates/user/user-problems.html:60 msgid "Points" msgstr "" @@ -324,9 +324,9 @@ msgstr "" msgid "Limits" msgstr "" -#: judge/admin/problem.py:135 judge/admin/submission.py:243 +#: judge/admin/problem.py:135 judge/admin/submission.py:244 #: templates/problem/submission-diff.html:65 templates/stats/tabs.html:4 -#: templates/submission/list.html:317 +#: templates/submission/list.html:319 msgid "Language" msgstr "" @@ -389,19 +389,19 @@ msgstr "" msgid "timezone" msgstr "" -#: judge/admin/profile.py:98 judge/admin/submission.py:222 +#: judge/admin/profile.py:98 judge/admin/submission.py:223 #: templates/organization/requests/log.html:9 #: templates/organization/requests/pending.html:12 -#: templates/ticket/list.html:201 +#: templates/ticket/list.html:202 msgid "User" msgstr "" -#: judge/admin/profile.py:103 templates/registration/registration_form.html:149 +#: judge/admin/profile.py:103 templates/registration/registration_form.html:145 msgid "Email" msgstr "" #: judge/admin/profile.py:108 judge/views/register.py:28 -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "Timezone" msgstr "" @@ -422,26 +422,26 @@ msgstr[3] "" msgid "Recalculate scores" msgstr "" -#: judge/admin/runtime.py:50 templates/user/edit-profile.html:124 -#: templates/user/edit-profile.html:246 templates/user/edit-profile.html:366 -#: templates/user/edit-profile.html:396 +#: judge/admin/runtime.py:52 templates/user/edit-profile.html:119 +#: templates/user/edit-profile.html:241 templates/user/edit-profile.html:353 +#: templates/user/edit-profile.html:383 msgid "Regenerate" msgstr "" -#: judge/admin/runtime.py:64 +#: judge/admin/runtime.py:66 msgid "Description" msgstr "" -#: judge/admin/runtime.py:65 +#: judge/admin/runtime.py:67 msgid "Information" msgstr "" -#: judge/admin/runtime.py:66 +#: judge/admin/runtime.py:68 msgid "Capabilities" msgstr "" #: judge/admin/submission.py:24 judge/admin/submission.py:43 -#: judge/admin/submission.py:232 +#: judge/admin/submission.py:233 msgid "None" msgstr "" @@ -473,19 +473,19 @@ msgctxt "contest problem" msgid "%(problem)s in %(contest)s" msgstr "" -#: judge/admin/submission.py:160 judge/admin/submission.py:182 +#: judge/admin/submission.py:161 judge/admin/submission.py:183 msgid "You do not have the permission to rejudge submissions." msgstr "" -#: judge/admin/submission.py:166 +#: judge/admin/submission.py:167 msgid "You do not have the permission to rejudge THAT many submissions." msgstr "" -#: judge/admin/submission.py:178 +#: judge/admin/submission.py:179 msgid "Rejudge the selected submissions" msgstr "" -#: judge/admin/submission.py:204 judge/views/problem_manage.py:129 +#: judge/admin/submission.py:205 judge/views/problem_manage.py:129 #, python-format msgid "%d submission was successfully rescored." msgid_plural "%d submissions were successfully rescored." @@ -494,38 +494,38 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: judge/admin/submission.py:207 +#: judge/admin/submission.py:208 msgid "Rescore the selected submissions" msgstr "" -#: judge/admin/submission.py:211 +#: judge/admin/submission.py:212 msgid "Problem code" msgstr "" -#: judge/admin/submission.py:216 +#: judge/admin/submission.py:217 msgid "Problem name" msgstr "" -#: judge/admin/submission.py:226 templates/organization/requests/log.html:10 +#: judge/admin/submission.py:227 templates/organization/requests/log.html:10 #: templates/organization/requests/pending.html:13 msgid "Time" msgstr "" -#: judge/admin/submission.py:234 +#: judge/admin/submission.py:235 #, python-format msgid "%d KB" msgstr "" -#: judge/admin/submission.py:236 +#: judge/admin/submission.py:237 #, python-format msgid "%.2f MB" msgstr "" -#: judge/admin/submission.py:238 +#: judge/admin/submission.py:239 msgid "Memory" msgstr "" -#: judge/admin/submission.py:247 +#: judge/admin/submission.py:248 msgid "Locked" msgstr "" @@ -550,6 +550,7 @@ msgid "Comment body" msgstr "" #: judge/comments.py:47 judge/views/comment.py:40 judge/views/ticket.py:46 +#: judge/views/user.py:347 msgid "Your part is silent, little toad." msgstr "" @@ -663,7 +664,7 @@ msgstr "" msgid "Scratch codes must be 16 Base32 characters." msgstr "" -#: judge/forms.py:39 judge/forms.py:265 +#: judge/forms.py:39 judge/forms.py:266 msgid "Invalid scratch code." msgstr "" @@ -688,83 +689,83 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: judge/forms.py:98 +#: judge/forms.py:99 msgid "Download comments?" msgstr "" -#: judge/forms.py:99 +#: judge/forms.py:100 msgid "Download submissions?" msgstr "" -#: judge/forms.py:100 +#: judge/forms.py:101 msgid "Filter by problem code glob:" msgstr "" -#: judge/forms.py:104 +#: judge/forms.py:105 msgid "Leave empty to include all submissions" msgstr "" -#: judge/forms.py:107 templates/problem/manage_submission.html:142 +#: judge/forms.py:108 templates/problem/manage_submission.html:144 msgid "Filter by result:" msgstr "" -#: judge/forms.py:113 +#: judge/forms.py:114 msgid "Please select at least one thing to download." msgstr "" -#: judge/forms.py:139 +#: judge/forms.py:140 msgid "Any judge" msgstr "" -#: judge/forms.py:160 judge/views/register.py:25 +#: judge/forms.py:161 judge/views/register.py:25 #: templates/problem/submission-diff.html:63 -#: templates/registration/registration_form.html:143 -#: templates/user/base-users-table.html:5 +#: templates/registration/registration_form.html:139 +#: templates/user/base-users-table.html:6 msgid "Username" msgstr "" -#: judge/forms.py:161 templates/registration/registration_form.html:155 -#: templates/registration/registration_form.html:169 +#: judge/forms.py:162 templates/registration/registration_form.html:151 +#: templates/registration/registration_form.html:165 msgid "Password" msgstr "" -#: judge/forms.py:193 +#: judge/forms.py:194 msgid "Invalid code length." msgstr "" -#: judge/forms.py:224 +#: judge/forms.py:225 msgid "Invalid WebAuthn response." msgstr "" -#: judge/forms.py:227 +#: judge/forms.py:228 msgid "No WebAuthn challenge issued." msgstr "" -#: judge/forms.py:233 +#: judge/forms.py:234 msgid "Invalid WebAuthn credential ID." msgstr "" -#: judge/forms.py:263 +#: judge/forms.py:264 msgid "Invalid two-factor authentication token or scratch code." msgstr "" -#: judge/forms.py:267 +#: judge/forms.py:268 msgid "Must specify either totp_token or webauthn_response." msgstr "" -#: judge/forms.py:271 judge/models/problem.py:118 +#: judge/forms.py:272 judge/models/problem.py:118 msgid "Problem code must be ^[a-z0-9]+$" msgstr "" -#: judge/forms.py:276 +#: judge/forms.py:277 msgid "Problem with code already exists." msgstr "" -#: judge/forms.py:281 judge/models/contest.py:68 +#: judge/forms.py:282 judge/models/contest.py:68 msgid "Contest id must be ^[a-z0-9]+$" msgstr "" -#: judge/forms.py:286 +#: judge/forms.py:287 msgid "Contest with key already exists." msgstr "" @@ -787,26 +788,42 @@ msgstr "" msgid "Unrated" msgstr "" -#: judge/models/choices.py:59 -msgid "Leave as LaTeX" +#: judge/models/choices.py:24 +msgid "Follow site theme" msgstr "" #: judge/models/choices.py:60 -msgid "SVG only" +msgid "Leave as LaTeX" msgstr "" #: judge/models/choices.py:61 -msgid "MathML only" +msgid "SVG only" msgstr "" #: judge/models/choices.py:62 -msgid "MathJax with SVG fallback" +msgid "MathML only" msgstr "" #: judge/models/choices.py:63 +msgid "MathJax with SVG fallback" +msgstr "" + +#: judge/models/choices.py:64 msgid "Detect best quality" msgstr "" +#: judge/models/choices.py:70 +msgid "Follow system default" +msgstr "" + +#: judge/models/choices.py:71 +msgid "Light" +msgstr "" + +#: judge/models/choices.py:72 +msgid "Dark" +msgstr "" + #: judge/models/comment.py:25 msgid "Page code must be ^[pcs]:[a-z0-9]+$|^b:\\d+$" msgstr "" @@ -1919,7 +1936,7 @@ msgid "Non-trailing spaces" msgstr "" #: judge/models/problem_data.py:28 -msgid "Unordered" +msgid "Sorted" msgstr "" #: judge/models/problem_data.py:29 @@ -2091,7 +2108,7 @@ msgid "Edit all organizations" msgstr "" #: judge/models/profile.py:98 judge/models/profile.py:103 -#: judge/models/profile.py:160 judge/models/profile.py:363 +#: judge/models/profile.py:161 judge/models/profile.py:379 msgid "organization" msgstr "" @@ -2132,7 +2149,7 @@ msgstr "" msgid "%(class)s in %(organization)s" msgstr "" -#: judge/models/profile.py:142 judge/models/profile.py:371 +#: judge/models/profile.py:142 judge/models/profile.py:387 msgid "class" msgstr "" @@ -2157,26 +2174,30 @@ msgid "Ace theme" msgstr "" #: judge/models/profile.py:158 -msgid "last access time" +msgid "site theme" msgstr "" #: judge/models/profile.py:159 +msgid "last access time" +msgstr "" + +#: judge/models/profile.py:160 msgid "last IP" msgstr "" -#: judge/models/profile.py:162 +#: judge/models/profile.py:163 msgid "display rank" msgstr "" -#: judge/models/profile.py:164 +#: judge/models/profile.py:165 msgid "Normal User" msgstr "" -#: judge/models/profile.py:165 +#: judge/models/profile.py:166 msgid "Problem Setter" msgstr "" -#: judge/models/profile.py:166 templates/base.html:211 +#: judge/models/profile.py:167 templates/base.html:221 #: templates/comments/list.html:97 templates/contest/contest-list-tabs.html:25 #: templates/contest/ranking-table.html:51 #: templates/problem/problem-list-tabs.html:6 @@ -2186,200 +2207,200 @@ msgstr "" msgid "Admin" msgstr "" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "comment mute" msgstr "" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "Some users are at their best when silent." msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "unlisted user" msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "User will not be ranked." msgstr "" -#: judge/models/profile.py:172 +#: judge/models/profile.py:173 msgid "banned from voting on problem point values" msgstr "" -#: judge/models/profile.py:173 +#: judge/models/profile.py:174 msgid "User will not be able to vote on problems' point values." msgstr "" -#: judge/models/profile.py:177 +#: judge/models/profile.py:178 msgid "user script" msgstr "" -#: judge/models/profile.py:178 +#: judge/models/profile.py:179 msgid "User-defined JavaScript for site customization." msgstr "" -#: judge/models/profile.py:179 +#: judge/models/profile.py:180 msgid "current contest" msgstr "" -#: judge/models/profile.py:181 +#: judge/models/profile.py:182 msgid "math engine" msgstr "" -#: judge/models/profile.py:183 +#: judge/models/profile.py:184 msgid "The rendering engine used to render math." msgstr "" -#: judge/models/profile.py:184 +#: judge/models/profile.py:185 msgid "TOTP 2FA enabled" msgstr "" -#: judge/models/profile.py:185 +#: judge/models/profile.py:186 msgid "Check to enable TOTP-based two-factor authentication." msgstr "" -#: judge/models/profile.py:186 +#: judge/models/profile.py:187 msgid "WebAuthn 2FA enabled" msgstr "" -#: judge/models/profile.py:187 +#: judge/models/profile.py:188 msgid "Check to enable WebAuthn-based two-factor authentication." msgstr "" -#: judge/models/profile.py:188 +#: judge/models/profile.py:189 msgid "TOTP key" msgstr "" -#: judge/models/profile.py:189 +#: judge/models/profile.py:190 msgid "32-character Base32-encoded key for TOTP." msgstr "" -#: judge/models/profile.py:191 +#: judge/models/profile.py:192 msgid "TOTP key must be empty or Base32." msgstr "" -#: judge/models/profile.py:192 +#: judge/models/profile.py:193 msgid "scratch codes" msgstr "" -#: judge/models/profile.py:193 +#: judge/models/profile.py:194 msgid "JSON array of 16-character Base32-encoded codes for scratch codes." msgstr "" -#: judge/models/profile.py:197 +#: judge/models/profile.py:198 msgid "Scratch codes must be empty or a JSON array of 16-character Base32 codes." msgstr "" -#: judge/models/profile.py:199 +#: judge/models/profile.py:200 msgid "last TOTP timecode" msgstr "" -#: judge/models/profile.py:200 +#: judge/models/profile.py:201 msgid "API token" msgstr "" -#: judge/models/profile.py:201 +#: judge/models/profile.py:202 msgid "64-character hex-encoded API access token." msgstr "" -#: judge/models/profile.py:203 +#: judge/models/profile.py:204 msgid "API token must be None or hexadecimal" msgstr "" -#: judge/models/profile.py:204 +#: judge/models/profile.py:205 msgid "internal notes" msgstr "" -#: judge/models/profile.py:205 +#: judge/models/profile.py:206 msgid "Notes for administrators regarding this user." msgstr "" -#: judge/models/profile.py:206 +#: judge/models/profile.py:207 msgid "last data download time" msgstr "" -#: judge/models/profile.py:207 +#: judge/models/profile.py:208 msgid "display name override" msgstr "" -#: judge/models/profile.py:208 +#: judge/models/profile.py:209 msgid "Name displayed in place of username." msgstr "" -#: judge/models/profile.py:323 +#: judge/models/profile.py:333 msgid "Shows in-progress development stuff" msgstr "" -#: judge/models/profile.py:324 +#: judge/models/profile.py:334 msgid "Edit TOTP settings" msgstr "" -#: judge/models/profile.py:326 +#: judge/models/profile.py:336 msgid "user profile" msgstr "" -#: judge/models/profile.py:327 +#: judge/models/profile.py:337 msgid "user profiles" msgstr "" -#: judge/models/profile.py:333 +#: judge/models/profile.py:349 msgid "device name" msgstr "" -#: judge/models/profile.py:334 +#: judge/models/profile.py:350 msgid "credential ID" msgstr "" -#: judge/models/profile.py:335 +#: judge/models/profile.py:351 msgid "public key" msgstr "" -#: judge/models/profile.py:336 +#: judge/models/profile.py:352 msgid "sign counter" msgstr "" -#: judge/models/profile.py:354 +#: judge/models/profile.py:370 #, python-format msgid "WebAuthn credential: %(name)s" msgstr "" -#: judge/models/profile.py:357 +#: judge/models/profile.py:373 msgid "WebAuthn credential" msgstr "" -#: judge/models/profile.py:358 +#: judge/models/profile.py:374 msgid "WebAuthn credentials" msgstr "" -#: judge/models/profile.py:365 +#: judge/models/profile.py:381 msgid "request time" msgstr "" -#: judge/models/profile.py:366 +#: judge/models/profile.py:382 msgid "state" msgstr "" -#: judge/models/profile.py:367 templates/organization/requests/tabs.html:4 +#: judge/models/profile.py:383 templates/organization/requests/tabs.html:4 msgid "Pending" msgstr "" -#: judge/models/profile.py:368 templates/organization/requests/tabs.html:10 +#: judge/models/profile.py:384 templates/organization/requests/tabs.html:10 msgid "Approved" msgstr "" -#: judge/models/profile.py:369 templates/organization/requests/tabs.html:13 +#: judge/models/profile.py:385 templates/organization/requests/tabs.html:13 msgid "Rejected" msgstr "" -#: judge/models/profile.py:372 +#: judge/models/profile.py:388 msgid "reason" msgstr "" -#: judge/models/profile.py:381 +#: judge/models/profile.py:397 msgid "organization join request" msgstr "" -#: judge/models/profile.py:382 +#: judge/models/profile.py:398 msgid "organization join requests" msgstr "" @@ -2622,15 +2643,15 @@ msgstr "" msgid "submission time" msgstr "" -#: judge/models/submission.py:70 judge/models/submission.py:255 +#: judge/models/submission.py:70 judge/models/submission.py:265 msgid "execution time" msgstr "" -#: judge/models/submission.py:71 judge/models/submission.py:256 +#: judge/models/submission.py:71 judge/models/submission.py:266 msgid "memory usage" msgstr "" -#: judge/models/submission.py:72 judge/models/submission.py:257 +#: judge/models/submission.py:72 judge/models/submission.py:267 msgid "points granted" msgstr "" @@ -2719,60 +2740,60 @@ msgstr "" msgid "submissions" msgstr "" -#: judge/models/submission.py:235 judge/models/submission.py:251 +#: judge/models/submission.py:245 judge/models/submission.py:261 msgid "associated submission" msgstr "" -#: judge/models/submission.py:237 +#: judge/models/submission.py:247 msgid "source code" msgstr "" -#: judge/models/submission.py:240 +#: judge/models/submission.py:250 #, python-format msgid "Source of %(submission)s" msgstr "" -#: judge/models/submission.py:243 +#: judge/models/submission.py:253 msgid "submission source" msgstr "" -#: judge/models/submission.py:244 +#: judge/models/submission.py:254 msgid "submission sources" msgstr "" -#: judge/models/submission.py:253 +#: judge/models/submission.py:263 msgid "test case ID" msgstr "" -#: judge/models/submission.py:254 +#: judge/models/submission.py:264 msgid "status flag" msgstr "" -#: judge/models/submission.py:258 +#: judge/models/submission.py:268 msgid "points possible" msgstr "" -#: judge/models/submission.py:259 +#: judge/models/submission.py:269 msgid "batch number" msgstr "" -#: judge/models/submission.py:260 +#: judge/models/submission.py:270 msgid "judging feedback" msgstr "" -#: judge/models/submission.py:261 +#: judge/models/submission.py:271 msgid "extended judging feedback" msgstr "" -#: judge/models/submission.py:262 +#: judge/models/submission.py:272 msgid "program output" msgstr "" -#: judge/models/submission.py:276 +#: judge/models/submission.py:286 msgid "submission test case" msgstr "" -#: judge/models/submission.py:277 +#: judge/models/submission.py:287 msgid "submission test cases" msgstr "" @@ -2996,7 +3017,7 @@ msgctxt "hours and minutes" msgid "%h:%m" msgstr "" -#: judge/views/blog.py:36 +#: judge/views/blog.py:37 #, python-format msgid "Page %d of Posts" msgstr "" @@ -3495,11 +3516,11 @@ msgstr "" msgid "Register" msgstr "" -#: judge/views/register.py:103 +#: judge/views/register.py:101 msgid "Activation Key Invalid" msgstr "" -#: judge/views/register.py:114 +#: judge/views/register.py:112 msgid "Authentication failure" msgstr "" @@ -3511,7 +3532,7 @@ msgstr "" msgid "Language statistics" msgstr "" -#: judge/views/status.py:23 templates/submission/list.html:308 +#: judge/views/status.py:23 templates/submission/list.html:310 msgid "Status" msgstr "" @@ -3694,41 +3715,45 @@ msgstr "" msgid "Preparing your data..." msgstr "" -#: judge/views/user.py:298 templates/user/edit-profile.html:345 +#: judge/views/user.py:298 templates/user/edit-profile.html:344 msgid "Download your data" msgstr "" +#: judge/views/user.py:347 +msgid "Can't edit profile" +msgstr "" + #: judge/views/user.py:354 msgid "Updated on site" msgstr "" -#: judge/views/user.py:387 templates/admin/auth/user/change_form.html:14 -#: templates/admin/auth/user/change_form.html:17 templates/base.html:213 +#: judge/views/user.py:386 templates/admin/auth/user/change_form.html:14 +#: templates/admin/auth/user/change_form.html:17 templates/base.html:223 #: templates/user/user-tabs.html:16 msgid "Edit profile" msgstr "" -#: judge/views/user.py:402 +#: judge/views/user.py:400 msgid "Generated API token for user" msgstr "" -#: judge/views/user.py:414 +#: judge/views/user.py:412 msgid "Removed API token for user" msgstr "" -#: judge/views/user.py:424 +#: judge/views/user.py:422 msgid "Generated scratch codes for user" msgstr "" -#: judge/views/user.py:430 templates/user/user-list-tabs.html:4 +#: judge/views/user.py:428 templates/user/user-list-tabs.html:4 msgid "Leaderboard" msgstr "" -#: judge/views/user.py:491 +#: judge/views/user.py:489 msgid "You have been successfully logged out." msgstr "" -#: judge/views/user.py:508 +#: judge/views/user.py:506 msgid "You have sent too many password reset requests. Please try again later." msgstr "" @@ -3757,13 +3782,13 @@ msgstr "" #: templates/admin/judge/judge/change_form.html:27 #: templates/admin/judge/judge/change_form.html:30 -#: templates/user/edit-profile.html:355 templates/user/edit-profile.html:358 +#: templates/user/edit-profile.html:372 templates/user/edit-profile.html:375 msgid "Disable" msgstr "" #: templates/admin/judge/judge/change_form.html:33 #: templates/admin/judge/judge/change_form.html:36 -#: templates/user/edit-profile.html:386 +#: templates/user/edit-profile.html:403 msgid "Enable" msgstr "" @@ -3783,48 +3808,48 @@ msgstr "" msgid "Edit user" msgstr "" -#: templates/base.html:206 +#: templates/base.html:216 #, python-format msgid "Hello, %(username)s." msgstr "" -#: templates/base.html:215 +#: templates/base.html:225 msgid "Stop impersonating" msgstr "" -#: templates/base.html:220 +#: templates/base.html:230 msgid "Log out" msgstr "" -#: templates/base.html:229 +#: templates/base.html:239 #: templates/registration/password_reset_complete.html:4 msgid "Log in" msgstr "" -#: templates/base.html:230 templates/registration/registration_form.html:181 +#: templates/base.html:240 templates/registration/registration_form.html:177 msgid "or" msgstr "" -#: templates/base.html:231 +#: templates/base.html:241 msgid "Sign up" msgstr "" -#: templates/base.html:243 +#: templates/base.html:253 msgid "spectating" msgstr "" -#: templates/base.html:256 +#: templates/base.html:266 msgid "This site works best with JavaScript enabled." msgstr "" -#: templates/base.html:283 +#: templates/base.html:293 msgid "proudly powered by **DMOJ**" msgstr "" #: templates/blog/content.html:13 templates/comments/list.html:89 #: templates/comments/list.html:105 templates/contest/contest-tabs.html:23 #: templates/contest/tag-title.html:9 templates/flatpages/admin_link.html:3 -#: templates/license.html:10 templates/problem/data.html:423 +#: templates/license.html:10 templates/problem/data.html:424 #: templates/problem/editorial.html:14 msgid "Edit" msgstr "" @@ -4025,15 +4050,15 @@ msgstr "" msgid "No votes" msgstr "" -#: templates/common-content.html:32 templates/user/edit-profile.html:219 +#: templates/common-content.html:32 templates/user/edit-profile.html:214 msgid "Click to copy" msgstr "" -#: templates/common-content.html:33 templates/user/edit-profile.html:220 +#: templates/common-content.html:33 templates/user/edit-profile.html:215 msgid "Copy" msgstr "" -#: templates/common-content.html:44 templates/user/edit-profile.html:231 +#: templates/common-content.html:44 templates/user/edit-profile.html:226 msgid "Copied!" msgstr "" @@ -4114,7 +4139,7 @@ msgstr "" msgid "Info" msgstr "" -#: templates/contest/contest-tabs.html:6 templates/submission/list.html:334 +#: templates/contest/contest-tabs.html:6 templates/submission/list.html:336 msgid "Statistics" msgstr "" @@ -4335,7 +4360,7 @@ msgstr "" #: templates/contest/contest.html:198 templates/contest/list.html:152 #: templates/contest/list.html:194 templates/contest/list.html:271 -#: templates/problem/list.html:203 templates/problem/list.html:235 +#: templates/problem/list.html:194 templates/problem/list.html:226 msgid "Users" msgstr "" @@ -4343,7 +4368,7 @@ msgstr "" msgid "Editorials" msgstr "" -#: templates/contest/contest.html:226 templates/problem/list.html:229 +#: templates/contest/contest.html:226 templates/problem/list.html:220 msgid "Editorial" msgstr "" @@ -4510,19 +4535,19 @@ msgstr "" msgid "Disqualify" msgstr "" -#: templates/contest/ranking.html:151 +#: templates/contest/ranking.html:46 msgid "Are you sure you want to disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:156 +#: templates/contest/ranking.html:51 msgid "Are you sure you want to un-disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:228 +#: templates/contest/ranking.html:124 msgid "View user participation" msgstr "" -#: templates/contest/ranking.html:232 +#: templates/contest/ranking.html:128 msgid "Show organizations" msgstr "" @@ -4709,7 +4734,7 @@ msgid "There are no requests to approve." msgstr "" #: templates/organization/requests/pending.html:17 -#: templates/problem/data.html:387 +#: templates/problem/data.html:388 msgid "Delete?" msgstr "" @@ -4745,59 +4770,59 @@ msgstr "" msgid "Enter a new code for the cloned problem:" msgstr "" -#: templates/problem/data.html:70 +#: templates/problem/data.html:71 msgid "precision (decimal digits)" msgstr "" -#: templates/problem/data.html:339 +#: templates/problem/data.html:340 msgid "View YAML" msgstr "" -#: templates/problem/data.html:355 +#: templates/problem/data.html:356 msgid "Show columns:" msgstr "" -#: templates/problem/data.html:358 templates/problem/data.html:382 +#: templates/problem/data.html:359 templates/problem/data.html:383 msgid "Output prefix" msgstr "" -#: templates/problem/data.html:362 templates/problem/data.html:383 +#: templates/problem/data.html:363 templates/problem/data.html:384 msgid "Output limit" msgstr "" -#: templates/problem/data.html:366 templates/problem/data.html:384 +#: templates/problem/data.html:367 templates/problem/data.html:385 msgid "Checker" msgstr "" -#: templates/problem/data.html:370 templates/problem/data.html:385 +#: templates/problem/data.html:371 templates/problem/data.html:386 msgid "Generator args" msgstr "" -#: templates/problem/data.html:377 +#: templates/problem/data.html:378 msgid "Type" msgstr "" -#: templates/problem/data.html:378 +#: templates/problem/data.html:379 msgid "Input file" msgstr "" -#: templates/problem/data.html:379 +#: templates/problem/data.html:380 msgid "Output file" msgstr "" -#: templates/problem/data.html:381 +#: templates/problem/data.html:382 msgid "Pretest?" msgstr "" -#: templates/problem/data.html:433 templates/problem/submit.html:256 +#: templates/problem/data.html:434 templates/problem/submit.html:190 msgid "Submit!" msgstr "" -#: templates/problem/data.html:434 +#: templates/problem/data.html:435 msgid "Add new case" msgstr "" -#: templates/problem/data.html:436 +#: templates/problem/data.html:437 msgid "Save" msgstr "" @@ -4817,86 +4842,86 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: templates/problem/list.html:58 +#: templates/problem/list.html:49 msgid "Filter by type..." msgstr "" -#: templates/problem/list.html:176 +#: templates/problem/list.html:167 msgid "Hot problems" msgstr "" -#: templates/problem/list.html:198 templates/problem/list.html:216 +#: templates/problem/list.html:189 templates/problem/list.html:207 #: templates/problem/search-form.html:35 templates/user/user-problems.html:59 msgid "Category" msgstr "" -#: templates/problem/list.html:200 templates/problem/list.html:220 +#: templates/problem/list.html:191 templates/problem/list.html:211 msgid "Types" msgstr "" -#: templates/problem/list.html:227 +#: templates/problem/list.html:218 #, python-format msgid "AC %%" msgstr "" -#: templates/problem/manage_submission.html:55 +#: templates/problem/manage_submission.html:56 msgid "Leave empty to not filter by language" msgstr "" -#: templates/problem/manage_submission.html:60 +#: templates/problem/manage_submission.html:62 msgid "Leave empty to not filter by result" msgstr "" -#: templates/problem/manage_submission.html:79 +#: templates/problem/manage_submission.html:81 msgid "Need valid values for both start and end IDs." msgstr "" -#: templates/problem/manage_submission.html:82 +#: templates/problem/manage_submission.html:84 msgid "End ID must be after start ID." msgstr "" -#: templates/problem/manage_submission.html:90 +#: templates/problem/manage_submission.html:92 #, python-brace-format msgid "You are about to rejudge {count} submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:96 +#: templates/problem/manage_submission.html:98 msgid "You are about to rejudge a few submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:115 +#: templates/problem/manage_submission.html:117 msgid "Rejudge Submissions" msgstr "" -#: templates/problem/manage_submission.html:120 +#: templates/problem/manage_submission.html:122 msgid "Filter by ID:" msgstr "" -#: templates/problem/manage_submission.html:123 +#: templates/problem/manage_submission.html:125 msgid "Starting ID:" msgstr "" -#: templates/problem/manage_submission.html:127 +#: templates/problem/manage_submission.html:129 msgid "Ending ID:" msgstr "" -#: templates/problem/manage_submission.html:131 +#: templates/problem/manage_submission.html:133 msgid "This range includes both endpoints." msgstr "" -#: templates/problem/manage_submission.html:134 +#: templates/problem/manage_submission.html:136 msgid "Filter by language:" msgstr "" -#: templates/problem/manage_submission.html:150 +#: templates/problem/manage_submission.html:152 msgid "Rejudge selected submissions" msgstr "" -#: templates/problem/manage_submission.html:157 +#: templates/problem/manage_submission.html:159 msgid "Rescore Everything" msgstr "" -#: templates/problem/manage_submission.html:158 +#: templates/problem/manage_submission.html:160 #, python-format msgid "This will rescore %(count)s submission." msgid_plural "This will rescore %(count)s submissions." @@ -4905,7 +4930,7 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: templates/problem/manage_submission.html:166 +#: templates/problem/manage_submission.html:168 #, python-format msgid "Are you sure you want to rescore %(count)s submission?" msgid_plural "Are you sure you want to rescore %(count)s submissions?" @@ -4914,7 +4939,7 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: templates/problem/manage_submission.html:171 +#: templates/problem/manage_submission.html:173 msgid "Rescore all submissions" msgstr "" @@ -5083,8 +5108,8 @@ msgstr "" msgid "Point range" msgstr "" -#: templates/problem/search-form.html:68 templates/submission/list.html:326 -#: templates/ticket/list.html:188 +#: templates/problem/search-form.html:68 templates/submission/list.html:328 +#: templates/ticket/list.html:189 msgid "Go" msgstr "" @@ -5093,7 +5118,7 @@ msgid "Random" msgstr "" #: templates/problem/submission-diff.html:62 -#: templates/status/language-list.html:34 templates/ticket/list.html:199 +#: templates/status/language-list.html:34 templates/ticket/list.html:200 msgid "ID" msgstr "" @@ -5105,20 +5130,20 @@ msgstr "" msgid "Date" msgstr "" -#: templates/problem/submit.html:117 +#: templates/problem/submit.html:118 msgid "Your source code must contain at most 65536 characters." msgstr "" -#: templates/problem/submit.html:204 +#: templates/problem/submit.html:138 msgid "Warning!" msgstr "" -#: templates/problem/submit.html:205 +#: templates/problem/submit.html:139 #, python-format msgid "Your default language, %(language)s, is unavailable for this problem and has been deselected." msgstr "" -#: templates/problem/submit.html:213 +#: templates/problem/submit.html:147 #, python-format msgid "You have %(left)s submission left" msgid_plural "You have %(left)s submissions left" @@ -5127,11 +5152,11 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: templates/problem/submit.html:218 +#: templates/problem/submit.html:152 msgid "You have 0 submissions left" msgstr "" -#: templates/problem/submit.html:252 +#: templates/problem/submit.html:186 msgid "No judge is available for this problem." msgstr "" @@ -5343,7 +5368,7 @@ msgstr "" msgid "Password reset on %(site_name)s" msgstr "" -#: templates/registration/profile_creation.html:44 +#: templates/registration/profile_creation.html:38 #: templates/registration/username_select.html:7 msgid "Continue >" msgstr "" @@ -5356,36 +5381,36 @@ msgstr "" msgid "You have successfully been registered. An email has been sent to the email address you provided to confirm your registration." msgstr "" -#: templates/registration/registration_form.html:170 +#: templates/registration/registration_form.html:166 msgid "(again, for confirmation)" msgstr "" -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "(select your closest major city)" msgstr "" -#: templates/registration/registration_form.html:182 +#: templates/registration/registration_form.html:178 msgid "pick from map" msgstr "" -#: templates/registration/registration_form.html:187 +#: templates/registration/registration_form.html:183 msgid "Default language" msgstr "" -#: templates/registration/registration_form.html:190 +#: templates/registration/registration_form.html:186 msgid "Affiliated organizations" msgstr "" -#: templates/registration/registration_form.html:199 -#: templates/user/edit-profile.html:322 +#: templates/registration/registration_form.html:195 +#: templates/user/edit-profile.html:321 msgid "Notify me about upcoming contests" msgstr "" -#: templates/registration/registration_form.html:213 +#: templates/registration/registration_form.html:209 msgid "By registering, you agree to our [Terms & Conditions][0]." msgstr "" -#: templates/registration/registration_form.html:216 +#: templates/registration/registration_form.html:212 msgid "Register!" msgstr "" @@ -5427,17 +5452,17 @@ msgid "Enable Two Factor Authentication" msgstr "" #: templates/registration/totp_enable.html:98 -#: templates/user/edit-profile.html:374 +#: templates/user/edit-profile.html:391 msgid "Below is a list of one-time use scratch codes." msgstr "" #: templates/registration/totp_enable.html:99 -#: templates/user/edit-profile.html:375 +#: templates/user/edit-profile.html:392 msgid "These codes can only be used once and are for emergency use." msgstr "" #: templates/registration/totp_enable.html:100 -#: templates/user/edit-profile.html:376 +#: templates/user/edit-profile.html:393 msgid "You can use these codes to login to your account or disable two-factor authentication." msgstr "" @@ -5446,7 +5471,7 @@ msgid "If you ever need more scratch codes, you can regenerate them on the edit msgstr "" #: templates/registration/totp_enable.html:102 -#: templates/user/edit-profile.html:378 +#: templates/user/edit-profile.html:395 msgid "Please write these down and keep them in a secure location." msgstr "" @@ -5464,12 +5489,12 @@ msgid "If you lose your authentication device and are unable to use your scratch msgstr "" #: templates/registration/two_factor_auth.html:33 -#: templates/user/edit-profile.html:164 +#: templates/user/edit-profile.html:159 msgid "WebAuthn is not supported by your browser." msgstr "" #: templates/registration/two_factor_auth.html:54 -#: templates/user/edit-profile.html:188 +#: templates/user/edit-profile.html:183 msgid "Failed to contact server." msgstr "" @@ -5567,23 +5592,23 @@ msgstr "" msgid "Are you sure you want to rejudge?" msgstr "" -#: templates/submission/list.html:74 +#: templates/submission/list.html:75 msgid "Filter by status..." msgstr "" -#: templates/submission/list.html:80 +#: templates/submission/list.html:82 msgid "Filter by language..." msgstr "" -#: templates/submission/list.html:304 +#: templates/submission/list.html:306 msgid "Filter submissions" msgstr "" -#: templates/submission/list.html:340 +#: templates/submission/list.html:342 msgid "Total:" msgstr "" -#: templates/submission/list.html:350 +#: templates/submission/list.html:352 msgid "You were disconnected. Refresh to show latest updates." msgstr "" @@ -5747,23 +5772,23 @@ msgstr "" msgid "Closed: " msgstr "" -#: templates/ticket/list.html:156 +#: templates/ticket/list.html:157 msgid "Use desktop notification" msgstr "" -#: templates/ticket/list.html:162 +#: templates/ticket/list.html:163 msgid "Hide closed tickets" msgstr "" -#: templates/ticket/list.html:167 +#: templates/ticket/list.html:168 msgid "Show my tickets only" msgstr "" -#: templates/ticket/list.html:171 +#: templates/ticket/list.html:172 msgid "Filing user" msgstr "" -#: templates/ticket/list.html:180 templates/ticket/ticket.html:196 +#: templates/ticket/list.html:181 templates/ticket/ticket.html:196 msgid "Assignee" msgid_plural "Assignees" msgstr[0] "" @@ -5771,11 +5796,11 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: templates/ticket/list.html:200 +#: templates/ticket/list.html:201 msgid "Title" msgstr "" -#: templates/ticket/list.html:202 +#: templates/ticket/list.html:203 msgid "Assignees" msgstr "" @@ -5826,129 +5851,133 @@ msgstr "" msgid "Nothing here." msgstr "" -#: templates/user/base-users-table.html:3 +#: templates/user/base-users-table.html:4 msgid "Rank" msgstr "" -#: templates/user/base-users.html:14 templates/user/base-users.html:57 +#: templates/user/base-users.html:15 templates/user/base-users.html:58 msgid "Search by handle..." msgstr "" -#: templates/user/edit-profile.html:107 +#: templates/user/edit-profile.html:102 msgid "The administrators for this site require all the staff to have Two-factor Authentication enabled, so it may not be disabled at this time." msgstr "" -#: templates/user/edit-profile.html:112 +#: templates/user/edit-profile.html:107 msgid "Are you sure you want to generate or regenerate your API token?" msgstr "" -#: templates/user/edit-profile.html:113 +#: templates/user/edit-profile.html:108 msgid "This will invalidate any previous API tokens." msgstr "" -#: templates/user/edit-profile.html:114 +#: templates/user/edit-profile.html:109 msgid "It also allows access to your account without Two-factor Authentication." msgstr "" -#: templates/user/edit-profile.html:115 +#: templates/user/edit-profile.html:110 msgid "You will not be able to view your API token after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:116 templates/user/edit-profile.html:210 +#: templates/user/edit-profile.html:111 templates/user/edit-profile.html:205 msgid "Generating..." msgstr "" -#: templates/user/edit-profile.html:130 templates/user/edit-profile.html:398 +#: templates/user/edit-profile.html:125 templates/user/edit-profile.html:355 msgid "Remove" msgstr "" -#: templates/user/edit-profile.html:140 +#: templates/user/edit-profile.html:135 msgid "Are you sure you want to remove your API token?" msgstr "" -#: templates/user/edit-profile.html:147 templates/user/edit-profile.html:370 -#: templates/user/edit-profile.html:402 +#: templates/user/edit-profile.html:142 templates/user/edit-profile.html:359 +#: templates/user/edit-profile.html:387 msgid "Generate" msgstr "" -#: templates/user/edit-profile.html:193 +#: templates/user/edit-profile.html:188 msgid "Are you sure you want to delete this security key?" msgstr "" -#: templates/user/edit-profile.html:207 +#: templates/user/edit-profile.html:202 msgid "Are you sure you want to generate or regenerate a new set of scratch codes?" msgstr "" -#: templates/user/edit-profile.html:208 +#: templates/user/edit-profile.html:203 msgid "This will invalidate any previous scratch codes you have." msgstr "" -#: templates/user/edit-profile.html:209 templates/user/edit-profile.html:379 +#: templates/user/edit-profile.html:204 templates/user/edit-profile.html:396 msgid "You will not be able to view your scratch codes after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:278 +#: templates/user/edit-profile.html:273 msgid "Self-description:" msgstr "" -#: templates/user/edit-profile.html:285 +#: templates/user/edit-profile.html:280 msgid "Select your closest major city" msgstr "" -#: templates/user/edit-profile.html:286 +#: templates/user/edit-profile.html:281 msgid "Time zone:" msgstr "" -#: templates/user/edit-profile.html:290 +#: templates/user/edit-profile.html:285 msgid "Language:" msgstr "" -#: templates/user/edit-profile.html:294 +#: templates/user/edit-profile.html:289 +msgid "Site theme:" +msgstr "" + +#: templates/user/edit-profile.html:293 msgid "Editor theme:" msgstr "" -#: templates/user/edit-profile.html:299 +#: templates/user/edit-profile.html:298 msgid "Math engine:" msgstr "" -#: templates/user/edit-profile.html:308 +#: templates/user/edit-profile.html:307 msgid "Affiliated organizations:" msgstr "" -#: templates/user/edit-profile.html:334 +#: templates/user/edit-profile.html:333 msgid "Change your avatar" msgstr "" -#: templates/user/edit-profile.html:339 +#: templates/user/edit-profile.html:338 msgid "Change your password" msgstr "" -#: templates/user/edit-profile.html:352 -msgid "Two-factor Authentication is enabled:" +#: templates/user/edit-profile.html:350 +msgid "API token:" msgstr "" -#: templates/user/edit-profile.html:360 -msgid "Refresh" +#: templates/user/edit-profile.html:356 templates/user/edit-profile.html:384 +msgid "Hidden" msgstr "" -#: templates/user/edit-profile.html:363 -msgid "Scratch codes:" +#: templates/user/edit-profile.html:369 +msgid "Two-factor authentication is enabled:" msgstr "" -#: templates/user/edit-profile.html:367 templates/user/edit-profile.html:399 -msgid "Hidden" +#: templates/user/edit-profile.html:377 +msgid "Refresh" msgstr "" -#: templates/user/edit-profile.html:377 -msgid "If you ever need more scratch codes, you can regenerate them here." +#: templates/user/edit-profile.html:380 +msgid "Scratch codes:" msgstr "" -#: templates/user/edit-profile.html:385 -msgid "Two-factor Authentication is disabled:" +#: templates/user/edit-profile.html:394 +msgid "If you ever need more scratch codes, you can regenerate them here." msgstr "" -#: templates/user/edit-profile.html:393 -msgid "API token:" +#: templates/user/edit-profile.html:402 +msgid "Two-factor Authentication is disabled:" msgstr "" #: templates/user/edit-profile.html:410 diff --git a/locale/lt/LC_MESSAGES/djangojs.po b/locale/lt/LC_MESSAGES/djangojs.po index b18a28b38f..ab56a81ef7 100644 --- a/locale/lt/LC_MESSAGES/djangojs.po +++ b/locale/lt/LC_MESSAGES/djangojs.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-20 23:43+0000\n" -"PO-Revision-Date: 2022-12-21 00:43\n" +"POT-Creation-Date: 2023-01-23 05:23+0000\n" +"PO-Revision-Date: 2023-01-24 00:51\n" "Last-Translator: \n" "Language-Team: Lithuanian\n" "Language: lt_LT\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: djangojs.po\n" "X-Crowdin-File-ID: 12\n" -#: resources/common.js:195 +#: resources/common.js:194 msgctxt "time format with day" msgid "%d day %h:%m:%s" msgid_plural "%d days %h:%m:%s" @@ -26,7 +26,7 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: resources/common.js:198 +#: resources/common.js:197 msgctxt "time format without day" msgid "%h:%m:%s" msgstr "" diff --git a/locale/nl/LC_MESSAGES/django.po b/locale/nl/LC_MESSAGES/django.po index 62e854aefd..8e679fc183 100644 --- a/locale/nl/LC_MESSAGES/django.po +++ b/locale/nl/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-20 23:04+0000\n" -"PO-Revision-Date: 2023-01-21 00:48\n" +"POT-Creation-Date: 2023-02-17 22:33+0000\n" +"PO-Revision-Date: 2023-02-18 00:49\n" "Last-Translator: \n" "Language-Team: Dutch\n" "Language: nl_NL\n" @@ -17,91 +17,91 @@ msgstr "" "X-Crowdin-File: django.po\n" "X-Crowdin-File-ID: 10\n" -#: dmoj/settings.py:380 +#: dmoj/settings.py:392 msgid "Catalan" msgstr "" -#: dmoj/settings.py:381 +#: dmoj/settings.py:393 msgid "German" msgstr "" -#: dmoj/settings.py:382 +#: dmoj/settings.py:394 msgid "Greek" msgstr "" -#: dmoj/settings.py:383 +#: dmoj/settings.py:395 msgid "English" msgstr "" -#: dmoj/settings.py:384 +#: dmoj/settings.py:396 msgid "Spanish" msgstr "" -#: dmoj/settings.py:385 +#: dmoj/settings.py:397 msgid "French" msgstr "" -#: dmoj/settings.py:386 +#: dmoj/settings.py:398 msgid "Croatian" msgstr "" -#: dmoj/settings.py:387 +#: dmoj/settings.py:399 msgid "Hungarian" msgstr "" -#: dmoj/settings.py:388 +#: dmoj/settings.py:400 msgid "Japanese" msgstr "" -#: dmoj/settings.py:389 +#: dmoj/settings.py:401 msgid "Korean" msgstr "" -#: dmoj/settings.py:390 +#: dmoj/settings.py:402 msgid "Brazilian Portuguese" msgstr "" -#: dmoj/settings.py:391 +#: dmoj/settings.py:403 msgid "Romanian" msgstr "" -#: dmoj/settings.py:392 +#: dmoj/settings.py:404 msgid "Russian" msgstr "" -#: dmoj/settings.py:393 +#: dmoj/settings.py:405 msgid "Serbian (Latin)" msgstr "" -#: dmoj/settings.py:394 +#: dmoj/settings.py:406 msgid "Turkish" msgstr "" -#: dmoj/settings.py:395 +#: dmoj/settings.py:407 msgid "Vietnamese" msgstr "" -#: dmoj/settings.py:396 +#: dmoj/settings.py:408 msgid "Simplified Chinese" msgstr "" -#: dmoj/settings.py:397 +#: dmoj/settings.py:409 msgid "Traditional Chinese" msgstr "" -#: dmoj/urls.py:32 +#: dmoj/urls.py:31 msgid "Activation Successful!" msgstr "" -#: dmoj/urls.py:40 +#: dmoj/urls.py:39 msgid "Registration Completed" msgstr "" -#: dmoj/urls.py:44 +#: dmoj/urls.py:43 msgid "Registration Not Allowed" msgstr "" -#: dmoj/urls.py:93 templates/base.html:183 +#: dmoj/urls.py:92 templates/base.html:193 msgid "Home" msgstr "" @@ -140,8 +140,8 @@ msgid "Included contests" msgstr "" #: judge/admin/contest.py:65 templates/contest/contest.html:195 -#: templates/contest/moss.html:41 templates/problem/list.html:197 -#: templates/problem/list.html:213 templates/user/user-problems.html:58 +#: templates/contest/moss.html:41 templates/problem/list.html:188 +#: templates/problem/list.html:204 templates/user/user-problems.html:58 #: templates/user/user-problems.html:102 msgid "Problem" msgstr "" @@ -152,7 +152,7 @@ msgstr "" msgid "Problems" msgstr "" -#: judge/admin/contest.py:76 judge/admin/submission.py:249 +#: judge/admin/contest.py:76 judge/admin/submission.py:250 #: templates/admin/judge/submission/change_form.html:14 #: templates/admin/judge/submission/change_form.html:17 #: templates/submission/source.html:34 templates/submission/status.html:89 @@ -231,29 +231,29 @@ msgstr[1] "" msgid "Unlock contest submissions" msgstr "" -#: judge/admin/contest.py:280 judge/admin/submission.py:175 +#: judge/admin/contest.py:280 judge/admin/submission.py:176 #, python-format msgid "%d submission was successfully scheduled for rejudging." msgid_plural "%d submissions were successfully scheduled for rejudging." msgstr[0] "" msgstr[1] "" -#: judge/admin/contest.py:356 +#: judge/admin/contest.py:358 #, python-format msgid "%d participation recalculated." msgid_plural "%d participations recalculated." msgstr[0] "" msgstr[1] "" -#: judge/admin/contest.py:359 +#: judge/admin/contest.py:361 msgid "Recalculate results" msgstr "" -#: judge/admin/contest.py:363 judge/admin/organization.py:113 +#: judge/admin/contest.py:365 judge/admin/organization.py:113 msgid "username" msgstr "" -#: judge/admin/contest.py:368 templates/base.html:249 +#: judge/admin/contest.py:370 templates/base.html:259 msgid "virtual" msgstr "" @@ -266,8 +266,8 @@ msgid "Summary" msgstr "" #: judge/admin/interface.py:124 judge/models/contest.py:491 -#: judge/models/contest.py:623 judge/models/profile.py:331 -#: judge/models/profile.py:362 judge/models/submission.py:67 +#: judge/models/contest.py:623 judge/models/profile.py:347 +#: judge/models/profile.py:378 judge/models/submission.py:67 #: judge/models/ticket.py:32 msgid "user" msgstr "" @@ -298,8 +298,8 @@ msgid "Taxonomy" msgstr "" #: judge/admin/problem.py:133 templates/contest/contest.html:196 -#: templates/problem/data.html:380 templates/problem/list.html:202 -#: templates/problem/list.html:224 templates/user/base-users-table.html:10 +#: templates/problem/data.html:381 templates/problem/list.html:193 +#: templates/problem/list.html:215 templates/user/base-users-table.html:11 #: templates/user/user-problems.html:60 msgid "Points" msgstr "" @@ -308,9 +308,9 @@ msgstr "" msgid "Limits" msgstr "" -#: judge/admin/problem.py:135 judge/admin/submission.py:243 +#: judge/admin/problem.py:135 judge/admin/submission.py:244 #: templates/problem/submission-diff.html:65 templates/stats/tabs.html:4 -#: templates/submission/list.html:317 +#: templates/submission/list.html:319 msgid "Language" msgstr "" @@ -367,19 +367,19 @@ msgstr "" msgid "timezone" msgstr "" -#: judge/admin/profile.py:98 judge/admin/submission.py:222 +#: judge/admin/profile.py:98 judge/admin/submission.py:223 #: templates/organization/requests/log.html:9 #: templates/organization/requests/pending.html:12 -#: templates/ticket/list.html:201 +#: templates/ticket/list.html:202 msgid "User" msgstr "" -#: judge/admin/profile.py:103 templates/registration/registration_form.html:149 +#: judge/admin/profile.py:103 templates/registration/registration_form.html:145 msgid "Email" msgstr "" #: judge/admin/profile.py:108 judge/views/register.py:28 -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "Timezone" msgstr "" @@ -398,26 +398,26 @@ msgstr[1] "" msgid "Recalculate scores" msgstr "" -#: judge/admin/runtime.py:50 templates/user/edit-profile.html:124 -#: templates/user/edit-profile.html:246 templates/user/edit-profile.html:366 -#: templates/user/edit-profile.html:396 +#: judge/admin/runtime.py:52 templates/user/edit-profile.html:119 +#: templates/user/edit-profile.html:241 templates/user/edit-profile.html:353 +#: templates/user/edit-profile.html:383 msgid "Regenerate" msgstr "" -#: judge/admin/runtime.py:64 +#: judge/admin/runtime.py:66 msgid "Description" msgstr "" -#: judge/admin/runtime.py:65 +#: judge/admin/runtime.py:67 msgid "Information" msgstr "" -#: judge/admin/runtime.py:66 +#: judge/admin/runtime.py:68 msgid "Capabilities" msgstr "" #: judge/admin/submission.py:24 judge/admin/submission.py:43 -#: judge/admin/submission.py:232 +#: judge/admin/submission.py:233 msgid "None" msgstr "" @@ -449,57 +449,57 @@ msgctxt "contest problem" msgid "%(problem)s in %(contest)s" msgstr "" -#: judge/admin/submission.py:160 judge/admin/submission.py:182 +#: judge/admin/submission.py:161 judge/admin/submission.py:183 msgid "You do not have the permission to rejudge submissions." msgstr "" -#: judge/admin/submission.py:166 +#: judge/admin/submission.py:167 msgid "You do not have the permission to rejudge THAT many submissions." msgstr "" -#: judge/admin/submission.py:178 +#: judge/admin/submission.py:179 msgid "Rejudge the selected submissions" msgstr "" -#: judge/admin/submission.py:204 judge/views/problem_manage.py:129 +#: judge/admin/submission.py:205 judge/views/problem_manage.py:129 #, python-format msgid "%d submission was successfully rescored." msgid_plural "%d submissions were successfully rescored." msgstr[0] "" msgstr[1] "" -#: judge/admin/submission.py:207 +#: judge/admin/submission.py:208 msgid "Rescore the selected submissions" msgstr "" -#: judge/admin/submission.py:211 +#: judge/admin/submission.py:212 msgid "Problem code" msgstr "" -#: judge/admin/submission.py:216 +#: judge/admin/submission.py:217 msgid "Problem name" msgstr "" -#: judge/admin/submission.py:226 templates/organization/requests/log.html:10 +#: judge/admin/submission.py:227 templates/organization/requests/log.html:10 #: templates/organization/requests/pending.html:13 msgid "Time" msgstr "" -#: judge/admin/submission.py:234 +#: judge/admin/submission.py:235 #, python-format msgid "%d KB" msgstr "" -#: judge/admin/submission.py:236 +#: judge/admin/submission.py:237 #, python-format msgid "%.2f MB" msgstr "" -#: judge/admin/submission.py:238 +#: judge/admin/submission.py:239 msgid "Memory" msgstr "" -#: judge/admin/submission.py:247 +#: judge/admin/submission.py:248 msgid "Locked" msgstr "" @@ -524,6 +524,7 @@ msgid "Comment body" msgstr "" #: judge/comments.py:47 judge/views/comment.py:40 judge/views/ticket.py:46 +#: judge/views/user.py:347 msgid "Your part is silent, little toad." msgstr "" @@ -631,7 +632,7 @@ msgstr "" msgid "Scratch codes must be 16 Base32 characters." msgstr "" -#: judge/forms.py:39 judge/forms.py:265 +#: judge/forms.py:39 judge/forms.py:266 msgid "Invalid scratch code." msgstr "" @@ -654,83 +655,83 @@ msgid_plural "You may not be part of more than {count} public organizations." msgstr[0] "" msgstr[1] "" -#: judge/forms.py:98 +#: judge/forms.py:99 msgid "Download comments?" msgstr "" -#: judge/forms.py:99 +#: judge/forms.py:100 msgid "Download submissions?" msgstr "" -#: judge/forms.py:100 +#: judge/forms.py:101 msgid "Filter by problem code glob:" msgstr "" -#: judge/forms.py:104 +#: judge/forms.py:105 msgid "Leave empty to include all submissions" msgstr "" -#: judge/forms.py:107 templates/problem/manage_submission.html:142 +#: judge/forms.py:108 templates/problem/manage_submission.html:144 msgid "Filter by result:" msgstr "" -#: judge/forms.py:113 +#: judge/forms.py:114 msgid "Please select at least one thing to download." msgstr "" -#: judge/forms.py:139 +#: judge/forms.py:140 msgid "Any judge" msgstr "" -#: judge/forms.py:160 judge/views/register.py:25 +#: judge/forms.py:161 judge/views/register.py:25 #: templates/problem/submission-diff.html:63 -#: templates/registration/registration_form.html:143 -#: templates/user/base-users-table.html:5 +#: templates/registration/registration_form.html:139 +#: templates/user/base-users-table.html:6 msgid "Username" msgstr "" -#: judge/forms.py:161 templates/registration/registration_form.html:155 -#: templates/registration/registration_form.html:169 +#: judge/forms.py:162 templates/registration/registration_form.html:151 +#: templates/registration/registration_form.html:165 msgid "Password" msgstr "" -#: judge/forms.py:193 +#: judge/forms.py:194 msgid "Invalid code length." msgstr "" -#: judge/forms.py:224 +#: judge/forms.py:225 msgid "Invalid WebAuthn response." msgstr "" -#: judge/forms.py:227 +#: judge/forms.py:228 msgid "No WebAuthn challenge issued." msgstr "" -#: judge/forms.py:233 +#: judge/forms.py:234 msgid "Invalid WebAuthn credential ID." msgstr "" -#: judge/forms.py:263 +#: judge/forms.py:264 msgid "Invalid two-factor authentication token or scratch code." msgstr "" -#: judge/forms.py:267 +#: judge/forms.py:268 msgid "Must specify either totp_token or webauthn_response." msgstr "" -#: judge/forms.py:271 judge/models/problem.py:118 +#: judge/forms.py:272 judge/models/problem.py:118 msgid "Problem code must be ^[a-z0-9]+$" msgstr "" -#: judge/forms.py:276 +#: judge/forms.py:277 msgid "Problem with code already exists." msgstr "" -#: judge/forms.py:281 judge/models/contest.py:68 +#: judge/forms.py:282 judge/models/contest.py:68 msgid "Contest id must be ^[a-z0-9]+$" msgstr "" -#: judge/forms.py:286 +#: judge/forms.py:287 msgid "Contest with key already exists." msgstr "" @@ -753,26 +754,42 @@ msgstr "" msgid "Unrated" msgstr "" -#: judge/models/choices.py:59 -msgid "Leave as LaTeX" +#: judge/models/choices.py:24 +msgid "Follow site theme" msgstr "" #: judge/models/choices.py:60 -msgid "SVG only" +msgid "Leave as LaTeX" msgstr "" #: judge/models/choices.py:61 -msgid "MathML only" +msgid "SVG only" msgstr "" #: judge/models/choices.py:62 -msgid "MathJax with SVG fallback" +msgid "MathML only" msgstr "" #: judge/models/choices.py:63 +msgid "MathJax with SVG fallback" +msgstr "" + +#: judge/models/choices.py:64 msgid "Detect best quality" msgstr "" +#: judge/models/choices.py:70 +msgid "Follow system default" +msgstr "" + +#: judge/models/choices.py:71 +msgid "Light" +msgstr "" + +#: judge/models/choices.py:72 +msgid "Dark" +msgstr "" + #: judge/models/comment.py:25 msgid "Page code must be ^[pcs]:[a-z0-9]+$|^b:\\d+$" msgstr "" @@ -1885,7 +1902,7 @@ msgid "Non-trailing spaces" msgstr "" #: judge/models/problem_data.py:28 -msgid "Unordered" +msgid "Sorted" msgstr "" #: judge/models/problem_data.py:29 @@ -2057,7 +2074,7 @@ msgid "Edit all organizations" msgstr "" #: judge/models/profile.py:98 judge/models/profile.py:103 -#: judge/models/profile.py:160 judge/models/profile.py:363 +#: judge/models/profile.py:161 judge/models/profile.py:379 msgid "organization" msgstr "" @@ -2098,7 +2115,7 @@ msgstr "" msgid "%(class)s in %(organization)s" msgstr "" -#: judge/models/profile.py:142 judge/models/profile.py:371 +#: judge/models/profile.py:142 judge/models/profile.py:387 msgid "class" msgstr "" @@ -2123,26 +2140,30 @@ msgid "Ace theme" msgstr "" #: judge/models/profile.py:158 -msgid "last access time" +msgid "site theme" msgstr "" #: judge/models/profile.py:159 +msgid "last access time" +msgstr "" + +#: judge/models/profile.py:160 msgid "last IP" msgstr "" -#: judge/models/profile.py:162 +#: judge/models/profile.py:163 msgid "display rank" msgstr "" -#: judge/models/profile.py:164 +#: judge/models/profile.py:165 msgid "Normal User" msgstr "" -#: judge/models/profile.py:165 +#: judge/models/profile.py:166 msgid "Problem Setter" msgstr "" -#: judge/models/profile.py:166 templates/base.html:211 +#: judge/models/profile.py:167 templates/base.html:221 #: templates/comments/list.html:97 templates/contest/contest-list-tabs.html:25 #: templates/contest/ranking-table.html:51 #: templates/problem/problem-list-tabs.html:6 @@ -2152,200 +2173,200 @@ msgstr "" msgid "Admin" msgstr "" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "comment mute" msgstr "" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "Some users are at their best when silent." msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "unlisted user" msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "User will not be ranked." msgstr "" -#: judge/models/profile.py:172 +#: judge/models/profile.py:173 msgid "banned from voting on problem point values" msgstr "" -#: judge/models/profile.py:173 +#: judge/models/profile.py:174 msgid "User will not be able to vote on problems' point values." msgstr "" -#: judge/models/profile.py:177 +#: judge/models/profile.py:178 msgid "user script" msgstr "" -#: judge/models/profile.py:178 +#: judge/models/profile.py:179 msgid "User-defined JavaScript for site customization." msgstr "" -#: judge/models/profile.py:179 +#: judge/models/profile.py:180 msgid "current contest" msgstr "" -#: judge/models/profile.py:181 +#: judge/models/profile.py:182 msgid "math engine" msgstr "" -#: judge/models/profile.py:183 +#: judge/models/profile.py:184 msgid "The rendering engine used to render math." msgstr "" -#: judge/models/profile.py:184 +#: judge/models/profile.py:185 msgid "TOTP 2FA enabled" msgstr "" -#: judge/models/profile.py:185 +#: judge/models/profile.py:186 msgid "Check to enable TOTP-based two-factor authentication." msgstr "" -#: judge/models/profile.py:186 +#: judge/models/profile.py:187 msgid "WebAuthn 2FA enabled" msgstr "" -#: judge/models/profile.py:187 +#: judge/models/profile.py:188 msgid "Check to enable WebAuthn-based two-factor authentication." msgstr "" -#: judge/models/profile.py:188 +#: judge/models/profile.py:189 msgid "TOTP key" msgstr "" -#: judge/models/profile.py:189 +#: judge/models/profile.py:190 msgid "32-character Base32-encoded key for TOTP." msgstr "" -#: judge/models/profile.py:191 +#: judge/models/profile.py:192 msgid "TOTP key must be empty or Base32." msgstr "" -#: judge/models/profile.py:192 +#: judge/models/profile.py:193 msgid "scratch codes" msgstr "" -#: judge/models/profile.py:193 +#: judge/models/profile.py:194 msgid "JSON array of 16-character Base32-encoded codes for scratch codes." msgstr "" -#: judge/models/profile.py:197 +#: judge/models/profile.py:198 msgid "Scratch codes must be empty or a JSON array of 16-character Base32 codes." msgstr "" -#: judge/models/profile.py:199 +#: judge/models/profile.py:200 msgid "last TOTP timecode" msgstr "" -#: judge/models/profile.py:200 +#: judge/models/profile.py:201 msgid "API token" msgstr "" -#: judge/models/profile.py:201 +#: judge/models/profile.py:202 msgid "64-character hex-encoded API access token." msgstr "" -#: judge/models/profile.py:203 +#: judge/models/profile.py:204 msgid "API token must be None or hexadecimal" msgstr "" -#: judge/models/profile.py:204 +#: judge/models/profile.py:205 msgid "internal notes" msgstr "" -#: judge/models/profile.py:205 +#: judge/models/profile.py:206 msgid "Notes for administrators regarding this user." msgstr "" -#: judge/models/profile.py:206 +#: judge/models/profile.py:207 msgid "last data download time" msgstr "" -#: judge/models/profile.py:207 +#: judge/models/profile.py:208 msgid "display name override" msgstr "" -#: judge/models/profile.py:208 +#: judge/models/profile.py:209 msgid "Name displayed in place of username." msgstr "" -#: judge/models/profile.py:323 +#: judge/models/profile.py:333 msgid "Shows in-progress development stuff" msgstr "" -#: judge/models/profile.py:324 +#: judge/models/profile.py:334 msgid "Edit TOTP settings" msgstr "" -#: judge/models/profile.py:326 +#: judge/models/profile.py:336 msgid "user profile" msgstr "" -#: judge/models/profile.py:327 +#: judge/models/profile.py:337 msgid "user profiles" msgstr "" -#: judge/models/profile.py:333 +#: judge/models/profile.py:349 msgid "device name" msgstr "" -#: judge/models/profile.py:334 +#: judge/models/profile.py:350 msgid "credential ID" msgstr "" -#: judge/models/profile.py:335 +#: judge/models/profile.py:351 msgid "public key" msgstr "" -#: judge/models/profile.py:336 +#: judge/models/profile.py:352 msgid "sign counter" msgstr "" -#: judge/models/profile.py:354 +#: judge/models/profile.py:370 #, python-format msgid "WebAuthn credential: %(name)s" msgstr "" -#: judge/models/profile.py:357 +#: judge/models/profile.py:373 msgid "WebAuthn credential" msgstr "" -#: judge/models/profile.py:358 +#: judge/models/profile.py:374 msgid "WebAuthn credentials" msgstr "" -#: judge/models/profile.py:365 +#: judge/models/profile.py:381 msgid "request time" msgstr "" -#: judge/models/profile.py:366 +#: judge/models/profile.py:382 msgid "state" msgstr "" -#: judge/models/profile.py:367 templates/organization/requests/tabs.html:4 +#: judge/models/profile.py:383 templates/organization/requests/tabs.html:4 msgid "Pending" msgstr "" -#: judge/models/profile.py:368 templates/organization/requests/tabs.html:10 +#: judge/models/profile.py:384 templates/organization/requests/tabs.html:10 msgid "Approved" msgstr "" -#: judge/models/profile.py:369 templates/organization/requests/tabs.html:13 +#: judge/models/profile.py:385 templates/organization/requests/tabs.html:13 msgid "Rejected" msgstr "" -#: judge/models/profile.py:372 +#: judge/models/profile.py:388 msgid "reason" msgstr "" -#: judge/models/profile.py:381 +#: judge/models/profile.py:397 msgid "organization join request" msgstr "" -#: judge/models/profile.py:382 +#: judge/models/profile.py:398 msgid "organization join requests" msgstr "" @@ -2588,15 +2609,15 @@ msgstr "" msgid "submission time" msgstr "" -#: judge/models/submission.py:70 judge/models/submission.py:255 +#: judge/models/submission.py:70 judge/models/submission.py:265 msgid "execution time" msgstr "" -#: judge/models/submission.py:71 judge/models/submission.py:256 +#: judge/models/submission.py:71 judge/models/submission.py:266 msgid "memory usage" msgstr "" -#: judge/models/submission.py:72 judge/models/submission.py:257 +#: judge/models/submission.py:72 judge/models/submission.py:267 msgid "points granted" msgstr "" @@ -2685,60 +2706,60 @@ msgstr "" msgid "submissions" msgstr "" -#: judge/models/submission.py:235 judge/models/submission.py:251 +#: judge/models/submission.py:245 judge/models/submission.py:261 msgid "associated submission" msgstr "" -#: judge/models/submission.py:237 +#: judge/models/submission.py:247 msgid "source code" msgstr "" -#: judge/models/submission.py:240 +#: judge/models/submission.py:250 #, python-format msgid "Source of %(submission)s" msgstr "" -#: judge/models/submission.py:243 +#: judge/models/submission.py:253 msgid "submission source" msgstr "" -#: judge/models/submission.py:244 +#: judge/models/submission.py:254 msgid "submission sources" msgstr "" -#: judge/models/submission.py:253 +#: judge/models/submission.py:263 msgid "test case ID" msgstr "" -#: judge/models/submission.py:254 +#: judge/models/submission.py:264 msgid "status flag" msgstr "" -#: judge/models/submission.py:258 +#: judge/models/submission.py:268 msgid "points possible" msgstr "" -#: judge/models/submission.py:259 +#: judge/models/submission.py:269 msgid "batch number" msgstr "" -#: judge/models/submission.py:260 +#: judge/models/submission.py:270 msgid "judging feedback" msgstr "" -#: judge/models/submission.py:261 +#: judge/models/submission.py:271 msgid "extended judging feedback" msgstr "" -#: judge/models/submission.py:262 +#: judge/models/submission.py:272 msgid "program output" msgstr "" -#: judge/models/submission.py:276 +#: judge/models/submission.py:286 msgid "submission test case" msgstr "" -#: judge/models/submission.py:277 +#: judge/models/submission.py:287 msgid "submission test cases" msgstr "" @@ -2956,7 +2977,7 @@ msgctxt "hours and minutes" msgid "%h:%m" msgstr "" -#: judge/views/blog.py:36 +#: judge/views/blog.py:37 #, python-format msgid "Page %d of Posts" msgstr "" @@ -3445,11 +3466,11 @@ msgstr "" msgid "Register" msgstr "" -#: judge/views/register.py:103 +#: judge/views/register.py:101 msgid "Activation Key Invalid" msgstr "" -#: judge/views/register.py:114 +#: judge/views/register.py:112 msgid "Authentication failure" msgstr "" @@ -3461,7 +3482,7 @@ msgstr "" msgid "Language statistics" msgstr "" -#: judge/views/status.py:23 templates/submission/list.html:308 +#: judge/views/status.py:23 templates/submission/list.html:310 msgid "Status" msgstr "" @@ -3644,41 +3665,45 @@ msgstr "" msgid "Preparing your data..." msgstr "" -#: judge/views/user.py:298 templates/user/edit-profile.html:345 +#: judge/views/user.py:298 templates/user/edit-profile.html:344 msgid "Download your data" msgstr "" +#: judge/views/user.py:347 +msgid "Can't edit profile" +msgstr "" + #: judge/views/user.py:354 msgid "Updated on site" msgstr "" -#: judge/views/user.py:387 templates/admin/auth/user/change_form.html:14 -#: templates/admin/auth/user/change_form.html:17 templates/base.html:213 +#: judge/views/user.py:386 templates/admin/auth/user/change_form.html:14 +#: templates/admin/auth/user/change_form.html:17 templates/base.html:223 #: templates/user/user-tabs.html:16 msgid "Edit profile" msgstr "" -#: judge/views/user.py:402 +#: judge/views/user.py:400 msgid "Generated API token for user" msgstr "" -#: judge/views/user.py:414 +#: judge/views/user.py:412 msgid "Removed API token for user" msgstr "" -#: judge/views/user.py:424 +#: judge/views/user.py:422 msgid "Generated scratch codes for user" msgstr "" -#: judge/views/user.py:430 templates/user/user-list-tabs.html:4 +#: judge/views/user.py:428 templates/user/user-list-tabs.html:4 msgid "Leaderboard" msgstr "" -#: judge/views/user.py:491 +#: judge/views/user.py:489 msgid "You have been successfully logged out." msgstr "" -#: judge/views/user.py:508 +#: judge/views/user.py:506 msgid "You have sent too many password reset requests. Please try again later." msgstr "" @@ -3707,13 +3732,13 @@ msgstr "" #: templates/admin/judge/judge/change_form.html:27 #: templates/admin/judge/judge/change_form.html:30 -#: templates/user/edit-profile.html:355 templates/user/edit-profile.html:358 +#: templates/user/edit-profile.html:372 templates/user/edit-profile.html:375 msgid "Disable" msgstr "" #: templates/admin/judge/judge/change_form.html:33 #: templates/admin/judge/judge/change_form.html:36 -#: templates/user/edit-profile.html:386 +#: templates/user/edit-profile.html:403 msgid "Enable" msgstr "" @@ -3733,48 +3758,48 @@ msgstr "" msgid "Edit user" msgstr "" -#: templates/base.html:206 +#: templates/base.html:216 #, python-format msgid "Hello, %(username)s." msgstr "" -#: templates/base.html:215 +#: templates/base.html:225 msgid "Stop impersonating" msgstr "" -#: templates/base.html:220 +#: templates/base.html:230 msgid "Log out" msgstr "" -#: templates/base.html:229 +#: templates/base.html:239 #: templates/registration/password_reset_complete.html:4 msgid "Log in" msgstr "" -#: templates/base.html:230 templates/registration/registration_form.html:181 +#: templates/base.html:240 templates/registration/registration_form.html:177 msgid "or" msgstr "" -#: templates/base.html:231 +#: templates/base.html:241 msgid "Sign up" msgstr "" -#: templates/base.html:243 +#: templates/base.html:253 msgid "spectating" msgstr "" -#: templates/base.html:256 +#: templates/base.html:266 msgid "This site works best with JavaScript enabled." msgstr "" -#: templates/base.html:283 +#: templates/base.html:293 msgid "proudly powered by **DMOJ**" msgstr "" #: templates/blog/content.html:13 templates/comments/list.html:89 #: templates/comments/list.html:105 templates/contest/contest-tabs.html:23 #: templates/contest/tag-title.html:9 templates/flatpages/admin_link.html:3 -#: templates/license.html:10 templates/problem/data.html:423 +#: templates/license.html:10 templates/problem/data.html:424 #: templates/problem/editorial.html:14 msgid "Edit" msgstr "" @@ -3975,15 +4000,15 @@ msgstr "" msgid "No votes" msgstr "" -#: templates/common-content.html:32 templates/user/edit-profile.html:219 +#: templates/common-content.html:32 templates/user/edit-profile.html:214 msgid "Click to copy" msgstr "" -#: templates/common-content.html:33 templates/user/edit-profile.html:220 +#: templates/common-content.html:33 templates/user/edit-profile.html:215 msgid "Copy" msgstr "" -#: templates/common-content.html:44 templates/user/edit-profile.html:231 +#: templates/common-content.html:44 templates/user/edit-profile.html:226 msgid "Copied!" msgstr "" @@ -4064,7 +4089,7 @@ msgstr "" msgid "Info" msgstr "" -#: templates/contest/contest-tabs.html:6 templates/submission/list.html:334 +#: templates/contest/contest-tabs.html:6 templates/submission/list.html:336 msgid "Statistics" msgstr "" @@ -4279,7 +4304,7 @@ msgstr "" #: templates/contest/contest.html:198 templates/contest/list.html:152 #: templates/contest/list.html:194 templates/contest/list.html:271 -#: templates/problem/list.html:203 templates/problem/list.html:235 +#: templates/problem/list.html:194 templates/problem/list.html:226 msgid "Users" msgstr "" @@ -4287,7 +4312,7 @@ msgstr "" msgid "Editorials" msgstr "" -#: templates/contest/contest.html:226 templates/problem/list.html:229 +#: templates/contest/contest.html:226 templates/problem/list.html:220 msgid "Editorial" msgstr "" @@ -4452,19 +4477,19 @@ msgstr "" msgid "Disqualify" msgstr "" -#: templates/contest/ranking.html:151 +#: templates/contest/ranking.html:46 msgid "Are you sure you want to disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:156 +#: templates/contest/ranking.html:51 msgid "Are you sure you want to un-disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:228 +#: templates/contest/ranking.html:124 msgid "View user participation" msgstr "" -#: templates/contest/ranking.html:232 +#: templates/contest/ranking.html:128 msgid "Show organizations" msgstr "" @@ -4651,7 +4676,7 @@ msgid "There are no requests to approve." msgstr "" #: templates/organization/requests/pending.html:17 -#: templates/problem/data.html:387 +#: templates/problem/data.html:388 msgid "Delete?" msgstr "" @@ -4687,59 +4712,59 @@ msgstr "" msgid "Enter a new code for the cloned problem:" msgstr "" -#: templates/problem/data.html:70 +#: templates/problem/data.html:71 msgid "precision (decimal digits)" msgstr "" -#: templates/problem/data.html:339 +#: templates/problem/data.html:340 msgid "View YAML" msgstr "" -#: templates/problem/data.html:355 +#: templates/problem/data.html:356 msgid "Show columns:" msgstr "" -#: templates/problem/data.html:358 templates/problem/data.html:382 +#: templates/problem/data.html:359 templates/problem/data.html:383 msgid "Output prefix" msgstr "" -#: templates/problem/data.html:362 templates/problem/data.html:383 +#: templates/problem/data.html:363 templates/problem/data.html:384 msgid "Output limit" msgstr "" -#: templates/problem/data.html:366 templates/problem/data.html:384 +#: templates/problem/data.html:367 templates/problem/data.html:385 msgid "Checker" msgstr "" -#: templates/problem/data.html:370 templates/problem/data.html:385 +#: templates/problem/data.html:371 templates/problem/data.html:386 msgid "Generator args" msgstr "" -#: templates/problem/data.html:377 +#: templates/problem/data.html:378 msgid "Type" msgstr "" -#: templates/problem/data.html:378 +#: templates/problem/data.html:379 msgid "Input file" msgstr "" -#: templates/problem/data.html:379 +#: templates/problem/data.html:380 msgid "Output file" msgstr "" -#: templates/problem/data.html:381 +#: templates/problem/data.html:382 msgid "Pretest?" msgstr "" -#: templates/problem/data.html:433 templates/problem/submit.html:256 +#: templates/problem/data.html:434 templates/problem/submit.html:190 msgid "Submit!" msgstr "" -#: templates/problem/data.html:434 +#: templates/problem/data.html:435 msgid "Add new case" msgstr "" -#: templates/problem/data.html:436 +#: templates/problem/data.html:437 msgid "Save" msgstr "" @@ -4757,100 +4782,100 @@ msgid_plural "Authors:" msgstr[0] "" msgstr[1] "" -#: templates/problem/list.html:58 +#: templates/problem/list.html:49 msgid "Filter by type..." msgstr "" -#: templates/problem/list.html:176 +#: templates/problem/list.html:167 msgid "Hot problems" msgstr "" -#: templates/problem/list.html:198 templates/problem/list.html:216 +#: templates/problem/list.html:189 templates/problem/list.html:207 #: templates/problem/search-form.html:35 templates/user/user-problems.html:59 msgid "Category" msgstr "" -#: templates/problem/list.html:200 templates/problem/list.html:220 +#: templates/problem/list.html:191 templates/problem/list.html:211 msgid "Types" msgstr "" -#: templates/problem/list.html:227 +#: templates/problem/list.html:218 #, python-format msgid "AC %%" msgstr "" -#: templates/problem/manage_submission.html:55 +#: templates/problem/manage_submission.html:56 msgid "Leave empty to not filter by language" msgstr "" -#: templates/problem/manage_submission.html:60 +#: templates/problem/manage_submission.html:62 msgid "Leave empty to not filter by result" msgstr "" -#: templates/problem/manage_submission.html:79 +#: templates/problem/manage_submission.html:81 msgid "Need valid values for both start and end IDs." msgstr "" -#: templates/problem/manage_submission.html:82 +#: templates/problem/manage_submission.html:84 msgid "End ID must be after start ID." msgstr "" -#: templates/problem/manage_submission.html:90 +#: templates/problem/manage_submission.html:92 #, python-brace-format msgid "You are about to rejudge {count} submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:96 +#: templates/problem/manage_submission.html:98 msgid "You are about to rejudge a few submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:115 +#: templates/problem/manage_submission.html:117 msgid "Rejudge Submissions" msgstr "" -#: templates/problem/manage_submission.html:120 +#: templates/problem/manage_submission.html:122 msgid "Filter by ID:" msgstr "" -#: templates/problem/manage_submission.html:123 +#: templates/problem/manage_submission.html:125 msgid "Starting ID:" msgstr "" -#: templates/problem/manage_submission.html:127 +#: templates/problem/manage_submission.html:129 msgid "Ending ID:" msgstr "" -#: templates/problem/manage_submission.html:131 +#: templates/problem/manage_submission.html:133 msgid "This range includes both endpoints." msgstr "" -#: templates/problem/manage_submission.html:134 +#: templates/problem/manage_submission.html:136 msgid "Filter by language:" msgstr "" -#: templates/problem/manage_submission.html:150 +#: templates/problem/manage_submission.html:152 msgid "Rejudge selected submissions" msgstr "" -#: templates/problem/manage_submission.html:157 +#: templates/problem/manage_submission.html:159 msgid "Rescore Everything" msgstr "" -#: templates/problem/manage_submission.html:158 +#: templates/problem/manage_submission.html:160 #, python-format msgid "This will rescore %(count)s submission." msgid_plural "This will rescore %(count)s submissions." msgstr[0] "" msgstr[1] "" -#: templates/problem/manage_submission.html:166 +#: templates/problem/manage_submission.html:168 #, python-format msgid "Are you sure you want to rescore %(count)s submission?" msgid_plural "Are you sure you want to rescore %(count)s submissions?" msgstr[0] "" msgstr[1] "" -#: templates/problem/manage_submission.html:171 +#: templates/problem/manage_submission.html:173 msgid "Rescore all submissions" msgstr "" @@ -5013,8 +5038,8 @@ msgstr "" msgid "Point range" msgstr "" -#: templates/problem/search-form.html:68 templates/submission/list.html:326 -#: templates/ticket/list.html:188 +#: templates/problem/search-form.html:68 templates/submission/list.html:328 +#: templates/ticket/list.html:189 msgid "Go" msgstr "" @@ -5023,7 +5048,7 @@ msgid "Random" msgstr "" #: templates/problem/submission-diff.html:62 -#: templates/status/language-list.html:34 templates/ticket/list.html:199 +#: templates/status/language-list.html:34 templates/ticket/list.html:200 msgid "ID" msgstr "" @@ -5035,31 +5060,31 @@ msgstr "" msgid "Date" msgstr "" -#: templates/problem/submit.html:117 +#: templates/problem/submit.html:118 msgid "Your source code must contain at most 65536 characters." msgstr "" -#: templates/problem/submit.html:204 +#: templates/problem/submit.html:138 msgid "Warning!" msgstr "" -#: templates/problem/submit.html:205 +#: templates/problem/submit.html:139 #, python-format msgid "Your default language, %(language)s, is unavailable for this problem and has been deselected." msgstr "" -#: templates/problem/submit.html:213 +#: templates/problem/submit.html:147 #, python-format msgid "You have %(left)s submission left" msgid_plural "You have %(left)s submissions left" msgstr[0] "" msgstr[1] "" -#: templates/problem/submit.html:218 +#: templates/problem/submit.html:152 msgid "You have 0 submissions left" msgstr "" -#: templates/problem/submit.html:252 +#: templates/problem/submit.html:186 msgid "No judge is available for this problem." msgstr "" @@ -5267,7 +5292,7 @@ msgstr "" msgid "Password reset on %(site_name)s" msgstr "" -#: templates/registration/profile_creation.html:44 +#: templates/registration/profile_creation.html:38 #: templates/registration/username_select.html:7 msgid "Continue >" msgstr "" @@ -5280,36 +5305,36 @@ msgstr "" msgid "You have successfully been registered. An email has been sent to the email address you provided to confirm your registration." msgstr "" -#: templates/registration/registration_form.html:170 +#: templates/registration/registration_form.html:166 msgid "(again, for confirmation)" msgstr "" -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "(select your closest major city)" msgstr "" -#: templates/registration/registration_form.html:182 +#: templates/registration/registration_form.html:178 msgid "pick from map" msgstr "" -#: templates/registration/registration_form.html:187 +#: templates/registration/registration_form.html:183 msgid "Default language" msgstr "" -#: templates/registration/registration_form.html:190 +#: templates/registration/registration_form.html:186 msgid "Affiliated organizations" msgstr "" -#: templates/registration/registration_form.html:199 -#: templates/user/edit-profile.html:322 +#: templates/registration/registration_form.html:195 +#: templates/user/edit-profile.html:321 msgid "Notify me about upcoming contests" msgstr "" -#: templates/registration/registration_form.html:213 +#: templates/registration/registration_form.html:209 msgid "By registering, you agree to our [Terms & Conditions][0]." msgstr "" -#: templates/registration/registration_form.html:216 +#: templates/registration/registration_form.html:212 msgid "Register!" msgstr "" @@ -5351,17 +5376,17 @@ msgid "Enable Two Factor Authentication" msgstr "" #: templates/registration/totp_enable.html:98 -#: templates/user/edit-profile.html:374 +#: templates/user/edit-profile.html:391 msgid "Below is a list of one-time use scratch codes." msgstr "" #: templates/registration/totp_enable.html:99 -#: templates/user/edit-profile.html:375 +#: templates/user/edit-profile.html:392 msgid "These codes can only be used once and are for emergency use." msgstr "" #: templates/registration/totp_enable.html:100 -#: templates/user/edit-profile.html:376 +#: templates/user/edit-profile.html:393 msgid "You can use these codes to login to your account or disable two-factor authentication." msgstr "" @@ -5370,7 +5395,7 @@ msgid "If you ever need more scratch codes, you can regenerate them on the edit msgstr "" #: templates/registration/totp_enable.html:102 -#: templates/user/edit-profile.html:378 +#: templates/user/edit-profile.html:395 msgid "Please write these down and keep them in a secure location." msgstr "" @@ -5388,12 +5413,12 @@ msgid "If you lose your authentication device and are unable to use your scratch msgstr "" #: templates/registration/two_factor_auth.html:33 -#: templates/user/edit-profile.html:164 +#: templates/user/edit-profile.html:159 msgid "WebAuthn is not supported by your browser." msgstr "" #: templates/registration/two_factor_auth.html:54 -#: templates/user/edit-profile.html:188 +#: templates/user/edit-profile.html:183 msgid "Failed to contact server." msgstr "" @@ -5491,23 +5516,23 @@ msgstr "" msgid "Are you sure you want to rejudge?" msgstr "" -#: templates/submission/list.html:74 +#: templates/submission/list.html:75 msgid "Filter by status..." msgstr "" -#: templates/submission/list.html:80 +#: templates/submission/list.html:82 msgid "Filter by language..." msgstr "" -#: templates/submission/list.html:304 +#: templates/submission/list.html:306 msgid "Filter submissions" msgstr "" -#: templates/submission/list.html:340 +#: templates/submission/list.html:342 msgid "Total:" msgstr "" -#: templates/submission/list.html:350 +#: templates/submission/list.html:352 msgid "You were disconnected. Refresh to show latest updates." msgstr "" @@ -5671,33 +5696,33 @@ msgstr "" msgid "Closed: " msgstr "" -#: templates/ticket/list.html:156 +#: templates/ticket/list.html:157 msgid "Use desktop notification" msgstr "" -#: templates/ticket/list.html:162 +#: templates/ticket/list.html:163 msgid "Hide closed tickets" msgstr "" -#: templates/ticket/list.html:167 +#: templates/ticket/list.html:168 msgid "Show my tickets only" msgstr "" -#: templates/ticket/list.html:171 +#: templates/ticket/list.html:172 msgid "Filing user" msgstr "" -#: templates/ticket/list.html:180 templates/ticket/ticket.html:196 +#: templates/ticket/list.html:181 templates/ticket/ticket.html:196 msgid "Assignee" msgid_plural "Assignees" msgstr[0] "" msgstr[1] "" -#: templates/ticket/list.html:200 +#: templates/ticket/list.html:201 msgid "Title" msgstr "" -#: templates/ticket/list.html:202 +#: templates/ticket/list.html:203 msgid "Assignees" msgstr "" @@ -5748,129 +5773,133 @@ msgstr "" msgid "Nothing here." msgstr "" -#: templates/user/base-users-table.html:3 +#: templates/user/base-users-table.html:4 msgid "Rank" msgstr "" -#: templates/user/base-users.html:14 templates/user/base-users.html:57 +#: templates/user/base-users.html:15 templates/user/base-users.html:58 msgid "Search by handle..." msgstr "" -#: templates/user/edit-profile.html:107 +#: templates/user/edit-profile.html:102 msgid "The administrators for this site require all the staff to have Two-factor Authentication enabled, so it may not be disabled at this time." msgstr "" -#: templates/user/edit-profile.html:112 +#: templates/user/edit-profile.html:107 msgid "Are you sure you want to generate or regenerate your API token?" msgstr "" -#: templates/user/edit-profile.html:113 +#: templates/user/edit-profile.html:108 msgid "This will invalidate any previous API tokens." msgstr "" -#: templates/user/edit-profile.html:114 +#: templates/user/edit-profile.html:109 msgid "It also allows access to your account without Two-factor Authentication." msgstr "" -#: templates/user/edit-profile.html:115 +#: templates/user/edit-profile.html:110 msgid "You will not be able to view your API token after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:116 templates/user/edit-profile.html:210 +#: templates/user/edit-profile.html:111 templates/user/edit-profile.html:205 msgid "Generating..." msgstr "" -#: templates/user/edit-profile.html:130 templates/user/edit-profile.html:398 +#: templates/user/edit-profile.html:125 templates/user/edit-profile.html:355 msgid "Remove" msgstr "" -#: templates/user/edit-profile.html:140 +#: templates/user/edit-profile.html:135 msgid "Are you sure you want to remove your API token?" msgstr "" -#: templates/user/edit-profile.html:147 templates/user/edit-profile.html:370 -#: templates/user/edit-profile.html:402 +#: templates/user/edit-profile.html:142 templates/user/edit-profile.html:359 +#: templates/user/edit-profile.html:387 msgid "Generate" msgstr "" -#: templates/user/edit-profile.html:193 +#: templates/user/edit-profile.html:188 msgid "Are you sure you want to delete this security key?" msgstr "" -#: templates/user/edit-profile.html:207 +#: templates/user/edit-profile.html:202 msgid "Are you sure you want to generate or regenerate a new set of scratch codes?" msgstr "" -#: templates/user/edit-profile.html:208 +#: templates/user/edit-profile.html:203 msgid "This will invalidate any previous scratch codes you have." msgstr "" -#: templates/user/edit-profile.html:209 templates/user/edit-profile.html:379 +#: templates/user/edit-profile.html:204 templates/user/edit-profile.html:396 msgid "You will not be able to view your scratch codes after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:278 +#: templates/user/edit-profile.html:273 msgid "Self-description:" msgstr "" -#: templates/user/edit-profile.html:285 +#: templates/user/edit-profile.html:280 msgid "Select your closest major city" msgstr "" -#: templates/user/edit-profile.html:286 +#: templates/user/edit-profile.html:281 msgid "Time zone:" msgstr "" -#: templates/user/edit-profile.html:290 +#: templates/user/edit-profile.html:285 msgid "Language:" msgstr "" -#: templates/user/edit-profile.html:294 +#: templates/user/edit-profile.html:289 +msgid "Site theme:" +msgstr "" + +#: templates/user/edit-profile.html:293 msgid "Editor theme:" msgstr "" -#: templates/user/edit-profile.html:299 +#: templates/user/edit-profile.html:298 msgid "Math engine:" msgstr "" -#: templates/user/edit-profile.html:308 +#: templates/user/edit-profile.html:307 msgid "Affiliated organizations:" msgstr "" -#: templates/user/edit-profile.html:334 +#: templates/user/edit-profile.html:333 msgid "Change your avatar" msgstr "" -#: templates/user/edit-profile.html:339 +#: templates/user/edit-profile.html:338 msgid "Change your password" msgstr "" -#: templates/user/edit-profile.html:352 -msgid "Two-factor Authentication is enabled:" +#: templates/user/edit-profile.html:350 +msgid "API token:" msgstr "" -#: templates/user/edit-profile.html:360 -msgid "Refresh" +#: templates/user/edit-profile.html:356 templates/user/edit-profile.html:384 +msgid "Hidden" msgstr "" -#: templates/user/edit-profile.html:363 -msgid "Scratch codes:" +#: templates/user/edit-profile.html:369 +msgid "Two-factor authentication is enabled:" msgstr "" -#: templates/user/edit-profile.html:367 templates/user/edit-profile.html:399 -msgid "Hidden" +#: templates/user/edit-profile.html:377 +msgid "Refresh" msgstr "" -#: templates/user/edit-profile.html:377 -msgid "If you ever need more scratch codes, you can regenerate them here." +#: templates/user/edit-profile.html:380 +msgid "Scratch codes:" msgstr "" -#: templates/user/edit-profile.html:385 -msgid "Two-factor Authentication is disabled:" +#: templates/user/edit-profile.html:394 +msgid "If you ever need more scratch codes, you can regenerate them here." msgstr "" -#: templates/user/edit-profile.html:393 -msgid "API token:" +#: templates/user/edit-profile.html:402 +msgid "Two-factor Authentication is disabled:" msgstr "" #: templates/user/edit-profile.html:410 diff --git a/locale/nl/LC_MESSAGES/djangojs.po b/locale/nl/LC_MESSAGES/djangojs.po index f673516efa..996d1763b4 100644 --- a/locale/nl/LC_MESSAGES/djangojs.po +++ b/locale/nl/LC_MESSAGES/djangojs.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-20 23:43+0000\n" -"PO-Revision-Date: 2022-12-21 00:43\n" +"POT-Creation-Date: 2023-01-23 05:23+0000\n" +"PO-Revision-Date: 2023-01-24 00:51\n" "Last-Translator: \n" "Language-Team: Dutch\n" "Language: nl_NL\n" @@ -17,14 +17,14 @@ msgstr "" "X-Crowdin-File: djangojs.po\n" "X-Crowdin-File-ID: 12\n" -#: resources/common.js:195 +#: resources/common.js:194 msgctxt "time format with day" msgid "%d day %h:%m:%s" msgid_plural "%d days %h:%m:%s" msgstr[0] "" msgstr[1] "" -#: resources/common.js:198 +#: resources/common.js:197 msgctxt "time format without day" msgid "%h:%m:%s" msgstr "" diff --git a/locale/pl/LC_MESSAGES/django.po b/locale/pl/LC_MESSAGES/django.po index 221ed2c347..d67f794c3e 100644 --- a/locale/pl/LC_MESSAGES/django.po +++ b/locale/pl/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-20 23:04+0000\n" -"PO-Revision-Date: 2023-01-22 00:52\n" +"POT-Creation-Date: 2023-02-17 22:33+0000\n" +"PO-Revision-Date: 2023-02-18 00:49\n" "Last-Translator: \n" "Language-Team: Polish\n" "Language: pl_PL\n" @@ -17,91 +17,91 @@ msgstr "" "X-Crowdin-File: django.po\n" "X-Crowdin-File-ID: 10\n" -#: dmoj/settings.py:380 +#: dmoj/settings.py:392 msgid "Catalan" msgstr "Kataloński" -#: dmoj/settings.py:381 +#: dmoj/settings.py:393 msgid "German" msgstr "Niemiecki" -#: dmoj/settings.py:382 +#: dmoj/settings.py:394 msgid "Greek" msgstr "Grecki" -#: dmoj/settings.py:383 +#: dmoj/settings.py:395 msgid "English" msgstr "Angielski" -#: dmoj/settings.py:384 +#: dmoj/settings.py:396 msgid "Spanish" msgstr "Hiszpański" -#: dmoj/settings.py:385 +#: dmoj/settings.py:397 msgid "French" msgstr "Francuski" -#: dmoj/settings.py:386 +#: dmoj/settings.py:398 msgid "Croatian" msgstr "Chorwacki" -#: dmoj/settings.py:387 +#: dmoj/settings.py:399 msgid "Hungarian" msgstr "Węgierski" -#: dmoj/settings.py:388 +#: dmoj/settings.py:400 msgid "Japanese" msgstr "Japoński" -#: dmoj/settings.py:389 +#: dmoj/settings.py:401 msgid "Korean" msgstr "Koreański" -#: dmoj/settings.py:390 +#: dmoj/settings.py:402 msgid "Brazilian Portuguese" msgstr "" -#: dmoj/settings.py:391 +#: dmoj/settings.py:403 msgid "Romanian" msgstr "Rumuński" -#: dmoj/settings.py:392 +#: dmoj/settings.py:404 msgid "Russian" msgstr "Rosyjski" -#: dmoj/settings.py:393 +#: dmoj/settings.py:405 msgid "Serbian (Latin)" msgstr "Serbski (alfabet łaciński)" -#: dmoj/settings.py:394 +#: dmoj/settings.py:406 msgid "Turkish" msgstr "Turecki" -#: dmoj/settings.py:395 +#: dmoj/settings.py:407 msgid "Vietnamese" msgstr "Wietnamski" -#: dmoj/settings.py:396 +#: dmoj/settings.py:408 msgid "Simplified Chinese" msgstr "Chiński Uproszczony" -#: dmoj/settings.py:397 +#: dmoj/settings.py:409 msgid "Traditional Chinese" msgstr "Chiński Tradycyjny" -#: dmoj/urls.py:32 +#: dmoj/urls.py:31 msgid "Activation Successful!" msgstr "Aktywowano pomyślnie!" -#: dmoj/urls.py:40 +#: dmoj/urls.py:39 msgid "Registration Completed" msgstr "Rejestracja zakończona" -#: dmoj/urls.py:44 +#: dmoj/urls.py:43 msgid "Registration Not Allowed" msgstr "Rejestracja niedozwolona" -#: dmoj/urls.py:93 templates/base.html:183 +#: dmoj/urls.py:92 templates/base.html:193 msgid "Home" msgstr "Strona główna" @@ -144,8 +144,8 @@ msgid "Included contests" msgstr "Załączniki" #: judge/admin/contest.py:65 templates/contest/contest.html:195 -#: templates/contest/moss.html:41 templates/problem/list.html:197 -#: templates/problem/list.html:213 templates/user/user-problems.html:58 +#: templates/contest/moss.html:41 templates/problem/list.html:188 +#: templates/problem/list.html:204 templates/user/user-problems.html:58 #: templates/user/user-problems.html:102 msgid "Problem" msgstr "Problem" @@ -156,7 +156,7 @@ msgstr "Problem" msgid "Problems" msgstr "Problemy" -#: judge/admin/contest.py:76 judge/admin/submission.py:249 +#: judge/admin/contest.py:76 judge/admin/submission.py:250 #: templates/admin/judge/submission/change_form.html:14 #: templates/admin/judge/submission/change_form.html:17 #: templates/submission/source.html:34 templates/submission/status.html:89 @@ -243,7 +243,7 @@ msgstr[3] "" msgid "Unlock contest submissions" msgstr "" -#: judge/admin/contest.py:280 judge/admin/submission.py:175 +#: judge/admin/contest.py:280 judge/admin/submission.py:176 #, python-format msgid "%d submission was successfully scheduled for rejudging." msgid_plural "%d submissions were successfully scheduled for rejudging." @@ -252,7 +252,7 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: judge/admin/contest.py:356 +#: judge/admin/contest.py:358 #, python-format msgid "%d participation recalculated." msgid_plural "%d participations recalculated." @@ -261,15 +261,15 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: judge/admin/contest.py:359 +#: judge/admin/contest.py:361 msgid "Recalculate results" msgstr "" -#: judge/admin/contest.py:363 judge/admin/organization.py:113 +#: judge/admin/contest.py:365 judge/admin/organization.py:113 msgid "username" msgstr "nazwa użytkownika" -#: judge/admin/contest.py:368 templates/base.html:249 +#: judge/admin/contest.py:370 templates/base.html:259 msgid "virtual" msgstr "" @@ -282,8 +282,8 @@ msgid "Summary" msgstr "Podsumowanie" #: judge/admin/interface.py:124 judge/models/contest.py:491 -#: judge/models/contest.py:623 judge/models/profile.py:331 -#: judge/models/profile.py:362 judge/models/submission.py:67 +#: judge/models/contest.py:623 judge/models/profile.py:347 +#: judge/models/profile.py:378 judge/models/submission.py:67 #: judge/models/ticket.py:32 msgid "user" msgstr "użytkownik" @@ -314,8 +314,8 @@ msgid "Taxonomy" msgstr "Taksonomia" #: judge/admin/problem.py:133 templates/contest/contest.html:196 -#: templates/problem/data.html:380 templates/problem/list.html:202 -#: templates/problem/list.html:224 templates/user/base-users-table.html:10 +#: templates/problem/data.html:381 templates/problem/list.html:193 +#: templates/problem/list.html:215 templates/user/base-users-table.html:11 #: templates/user/user-problems.html:60 msgid "Points" msgstr "Punkty" @@ -324,9 +324,9 @@ msgstr "Punkty" msgid "Limits" msgstr "Limity" -#: judge/admin/problem.py:135 judge/admin/submission.py:243 +#: judge/admin/problem.py:135 judge/admin/submission.py:244 #: templates/problem/submission-diff.html:65 templates/stats/tabs.html:4 -#: templates/submission/list.html:317 +#: templates/submission/list.html:319 msgid "Language" msgstr "Język" @@ -389,19 +389,19 @@ msgstr "problem" msgid "timezone" msgstr "strefa czasowa" -#: judge/admin/profile.py:98 judge/admin/submission.py:222 +#: judge/admin/profile.py:98 judge/admin/submission.py:223 #: templates/organization/requests/log.html:9 #: templates/organization/requests/pending.html:12 -#: templates/ticket/list.html:201 +#: templates/ticket/list.html:202 msgid "User" msgstr "Użytkownik" -#: judge/admin/profile.py:103 templates/registration/registration_form.html:149 +#: judge/admin/profile.py:103 templates/registration/registration_form.html:145 msgid "Email" msgstr "Adres e-mail" #: judge/admin/profile.py:108 judge/views/register.py:28 -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "Timezone" msgstr "Strefa czasowa" @@ -422,26 +422,26 @@ msgstr[3] "" msgid "Recalculate scores" msgstr "Przelicz punktację" -#: judge/admin/runtime.py:50 templates/user/edit-profile.html:124 -#: templates/user/edit-profile.html:246 templates/user/edit-profile.html:366 -#: templates/user/edit-profile.html:396 +#: judge/admin/runtime.py:52 templates/user/edit-profile.html:119 +#: templates/user/edit-profile.html:241 templates/user/edit-profile.html:353 +#: templates/user/edit-profile.html:383 msgid "Regenerate" msgstr "" -#: judge/admin/runtime.py:64 +#: judge/admin/runtime.py:66 msgid "Description" msgstr "Opis" -#: judge/admin/runtime.py:65 +#: judge/admin/runtime.py:67 msgid "Information" msgstr "Informacje" -#: judge/admin/runtime.py:66 +#: judge/admin/runtime.py:68 msgid "Capabilities" msgstr "Możliwości" #: judge/admin/submission.py:24 judge/admin/submission.py:43 -#: judge/admin/submission.py:232 +#: judge/admin/submission.py:233 msgid "None" msgstr "Brak" @@ -473,19 +473,19 @@ msgctxt "contest problem" msgid "%(problem)s in %(contest)s" msgstr "%(problem)s w %(contest)s" -#: judge/admin/submission.py:160 judge/admin/submission.py:182 +#: judge/admin/submission.py:161 judge/admin/submission.py:183 msgid "You do not have the permission to rejudge submissions." msgstr "Nie masz uprawnień, aby edytować tą witrynę." -#: judge/admin/submission.py:166 +#: judge/admin/submission.py:167 msgid "You do not have the permission to rejudge THAT many submissions." msgstr "" -#: judge/admin/submission.py:178 +#: judge/admin/submission.py:179 msgid "Rejudge the selected submissions" msgstr "" -#: judge/admin/submission.py:204 judge/views/problem_manage.py:129 +#: judge/admin/submission.py:205 judge/views/problem_manage.py:129 #, python-format msgid "%d submission was successfully rescored." msgid_plural "%d submissions were successfully rescored." @@ -494,38 +494,38 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: judge/admin/submission.py:207 +#: judge/admin/submission.py:208 msgid "Rescore the selected submissions" msgstr "" -#: judge/admin/submission.py:211 +#: judge/admin/submission.py:212 msgid "Problem code" msgstr "Kod problemu" -#: judge/admin/submission.py:216 +#: judge/admin/submission.py:217 msgid "Problem name" msgstr "Nazwa problemu" -#: judge/admin/submission.py:226 templates/organization/requests/log.html:10 +#: judge/admin/submission.py:227 templates/organization/requests/log.html:10 #: templates/organization/requests/pending.html:13 msgid "Time" msgstr "Czas" -#: judge/admin/submission.py:234 +#: judge/admin/submission.py:235 #, python-format msgid "%d KB" msgstr "%d KB" -#: judge/admin/submission.py:236 +#: judge/admin/submission.py:237 #, python-format msgid "%.2f MB" msgstr "%.2f MB" -#: judge/admin/submission.py:238 +#: judge/admin/submission.py:239 msgid "Memory" msgstr "Pamięć" -#: judge/admin/submission.py:247 +#: judge/admin/submission.py:248 msgid "Locked" msgstr "" @@ -550,6 +550,7 @@ msgid "Comment body" msgstr "Treść komentarza" #: judge/comments.py:47 judge/views/comment.py:40 judge/views/ticket.py:46 +#: judge/views/user.py:347 msgid "Your part is silent, little toad." msgstr "" @@ -663,7 +664,7 @@ msgstr "Nieprawidłowy token uwierzytelniania dwuskładnikowego." msgid "Scratch codes must be 16 Base32 characters." msgstr "" -#: judge/forms.py:39 judge/forms.py:265 +#: judge/forms.py:39 judge/forms.py:266 msgid "Invalid scratch code." msgstr "" @@ -688,83 +689,83 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: judge/forms.py:98 +#: judge/forms.py:99 msgid "Download comments?" msgstr "Pobrać komentarze?" -#: judge/forms.py:99 +#: judge/forms.py:100 msgid "Download submissions?" msgstr "" -#: judge/forms.py:100 +#: judge/forms.py:101 msgid "Filter by problem code glob:" msgstr "" -#: judge/forms.py:104 +#: judge/forms.py:105 msgid "Leave empty to include all submissions" msgstr "" -#: judge/forms.py:107 templates/problem/manage_submission.html:142 +#: judge/forms.py:108 templates/problem/manage_submission.html:144 msgid "Filter by result:" msgstr "" -#: judge/forms.py:113 +#: judge/forms.py:114 msgid "Please select at least one thing to download." msgstr "" -#: judge/forms.py:139 +#: judge/forms.py:140 msgid "Any judge" msgstr "Każdy sędzia" -#: judge/forms.py:160 judge/views/register.py:25 +#: judge/forms.py:161 judge/views/register.py:25 #: templates/problem/submission-diff.html:63 -#: templates/registration/registration_form.html:143 -#: templates/user/base-users-table.html:5 +#: templates/registration/registration_form.html:139 +#: templates/user/base-users-table.html:6 msgid "Username" msgstr "Nazwa użytkownika" -#: judge/forms.py:161 templates/registration/registration_form.html:155 -#: templates/registration/registration_form.html:169 +#: judge/forms.py:162 templates/registration/registration_form.html:151 +#: templates/registration/registration_form.html:165 msgid "Password" msgstr "Hasło" -#: judge/forms.py:193 +#: judge/forms.py:194 msgid "Invalid code length." msgstr "Nieprawidłowa długość kodu." -#: judge/forms.py:224 +#: judge/forms.py:225 msgid "Invalid WebAuthn response." msgstr "" -#: judge/forms.py:227 +#: judge/forms.py:228 msgid "No WebAuthn challenge issued." msgstr "" -#: judge/forms.py:233 +#: judge/forms.py:234 msgid "Invalid WebAuthn credential ID." msgstr "" -#: judge/forms.py:263 +#: judge/forms.py:264 msgid "Invalid two-factor authentication token or scratch code." msgstr "" -#: judge/forms.py:267 +#: judge/forms.py:268 msgid "Must specify either totp_token or webauthn_response." msgstr "" -#: judge/forms.py:271 judge/models/problem.py:118 +#: judge/forms.py:272 judge/models/problem.py:118 msgid "Problem code must be ^[a-z0-9]+$" msgstr "" -#: judge/forms.py:276 +#: judge/forms.py:277 msgid "Problem with code already exists." msgstr "" -#: judge/forms.py:281 judge/models/contest.py:68 +#: judge/forms.py:282 judge/models/contest.py:68 msgid "Contest id must be ^[a-z0-9]+$" msgstr "" -#: judge/forms.py:286 +#: judge/forms.py:287 msgid "Contest with key already exists." msgstr "" @@ -787,26 +788,42 @@ msgstr "w {time}" msgid "Unrated" msgstr "" -#: judge/models/choices.py:59 +#: judge/models/choices.py:24 +msgid "Follow site theme" +msgstr "" + +#: judge/models/choices.py:60 msgid "Leave as LaTeX" msgstr "Zostaw jako LaTeX" -#: judge/models/choices.py:60 +#: judge/models/choices.py:61 msgid "SVG only" msgstr "Tylko SVG" -#: judge/models/choices.py:61 +#: judge/models/choices.py:62 msgid "MathML only" msgstr "Tylko MathML" -#: judge/models/choices.py:62 +#: judge/models/choices.py:63 msgid "MathJax with SVG fallback" msgstr "MathJax z konwersją SVG" -#: judge/models/choices.py:63 +#: judge/models/choices.py:64 msgid "Detect best quality" msgstr "Wykryj najlepszą jakość" +#: judge/models/choices.py:70 +msgid "Follow system default" +msgstr "" + +#: judge/models/choices.py:71 +msgid "Light" +msgstr "Jasny" + +#: judge/models/choices.py:72 +msgid "Dark" +msgstr "Ciemny" + #: judge/models/comment.py:25 msgid "Page code must be ^[pcs]:[a-z0-9]+$|^b:\\d+$" msgstr "" @@ -1919,7 +1936,7 @@ msgid "Non-trailing spaces" msgstr "" #: judge/models/problem_data.py:28 -msgid "Unordered" +msgid "Sorted" msgstr "" #: judge/models/problem_data.py:29 @@ -2091,7 +2108,7 @@ msgid "Edit all organizations" msgstr "" #: judge/models/profile.py:98 judge/models/profile.py:103 -#: judge/models/profile.py:160 judge/models/profile.py:363 +#: judge/models/profile.py:161 judge/models/profile.py:379 msgid "organization" msgstr "organizacja" @@ -2132,7 +2149,7 @@ msgstr "" msgid "%(class)s in %(organization)s" msgstr "" -#: judge/models/profile.py:142 judge/models/profile.py:371 +#: judge/models/profile.py:142 judge/models/profile.py:387 msgid "class" msgstr "" @@ -2157,26 +2174,30 @@ msgid "Ace theme" msgstr "" #: judge/models/profile.py:158 -msgid "last access time" +msgid "site theme" msgstr "" #: judge/models/profile.py:159 +msgid "last access time" +msgstr "" + +#: judge/models/profile.py:160 msgid "last IP" msgstr "" -#: judge/models/profile.py:162 +#: judge/models/profile.py:163 msgid "display rank" msgstr "" -#: judge/models/profile.py:164 +#: judge/models/profile.py:165 msgid "Normal User" msgstr "" -#: judge/models/profile.py:165 +#: judge/models/profile.py:166 msgid "Problem Setter" msgstr "" -#: judge/models/profile.py:166 templates/base.html:211 +#: judge/models/profile.py:167 templates/base.html:221 #: templates/comments/list.html:97 templates/contest/contest-list-tabs.html:25 #: templates/contest/ranking-table.html:51 #: templates/problem/problem-list-tabs.html:6 @@ -2186,200 +2207,200 @@ msgstr "" msgid "Admin" msgstr "" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "comment mute" msgstr "" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "Some users are at their best when silent." msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "unlisted user" msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "User will not be ranked." msgstr "" -#: judge/models/profile.py:172 +#: judge/models/profile.py:173 msgid "banned from voting on problem point values" msgstr "" -#: judge/models/profile.py:173 +#: judge/models/profile.py:174 msgid "User will not be able to vote on problems' point values." msgstr "" -#: judge/models/profile.py:177 +#: judge/models/profile.py:178 msgid "user script" msgstr "" -#: judge/models/profile.py:178 +#: judge/models/profile.py:179 msgid "User-defined JavaScript for site customization." msgstr "" -#: judge/models/profile.py:179 +#: judge/models/profile.py:180 msgid "current contest" msgstr "" -#: judge/models/profile.py:181 +#: judge/models/profile.py:182 msgid "math engine" msgstr "" -#: judge/models/profile.py:183 +#: judge/models/profile.py:184 msgid "The rendering engine used to render math." msgstr "" -#: judge/models/profile.py:184 +#: judge/models/profile.py:185 msgid "TOTP 2FA enabled" msgstr "" -#: judge/models/profile.py:185 +#: judge/models/profile.py:186 msgid "Check to enable TOTP-based two-factor authentication." msgstr "" -#: judge/models/profile.py:186 +#: judge/models/profile.py:187 msgid "WebAuthn 2FA enabled" msgstr "" -#: judge/models/profile.py:187 +#: judge/models/profile.py:188 msgid "Check to enable WebAuthn-based two-factor authentication." msgstr "" -#: judge/models/profile.py:188 +#: judge/models/profile.py:189 msgid "TOTP key" msgstr "" -#: judge/models/profile.py:189 +#: judge/models/profile.py:190 msgid "32-character Base32-encoded key for TOTP." msgstr "" -#: judge/models/profile.py:191 +#: judge/models/profile.py:192 msgid "TOTP key must be empty or Base32." msgstr "" -#: judge/models/profile.py:192 +#: judge/models/profile.py:193 msgid "scratch codes" msgstr "" -#: judge/models/profile.py:193 +#: judge/models/profile.py:194 msgid "JSON array of 16-character Base32-encoded codes for scratch codes." msgstr "" -#: judge/models/profile.py:197 +#: judge/models/profile.py:198 msgid "Scratch codes must be empty or a JSON array of 16-character Base32 codes." msgstr "" -#: judge/models/profile.py:199 +#: judge/models/profile.py:200 msgid "last TOTP timecode" msgstr "" -#: judge/models/profile.py:200 +#: judge/models/profile.py:201 msgid "API token" msgstr "" -#: judge/models/profile.py:201 +#: judge/models/profile.py:202 msgid "64-character hex-encoded API access token." msgstr "" -#: judge/models/profile.py:203 +#: judge/models/profile.py:204 msgid "API token must be None or hexadecimal" msgstr "" -#: judge/models/profile.py:204 +#: judge/models/profile.py:205 msgid "internal notes" msgstr "" -#: judge/models/profile.py:205 +#: judge/models/profile.py:206 msgid "Notes for administrators regarding this user." msgstr "" -#: judge/models/profile.py:206 +#: judge/models/profile.py:207 msgid "last data download time" msgstr "" -#: judge/models/profile.py:207 +#: judge/models/profile.py:208 msgid "display name override" msgstr "" -#: judge/models/profile.py:208 +#: judge/models/profile.py:209 msgid "Name displayed in place of username." msgstr "" -#: judge/models/profile.py:323 +#: judge/models/profile.py:333 msgid "Shows in-progress development stuff" msgstr "" -#: judge/models/profile.py:324 +#: judge/models/profile.py:334 msgid "Edit TOTP settings" msgstr "" -#: judge/models/profile.py:326 +#: judge/models/profile.py:336 msgid "user profile" msgstr "" -#: judge/models/profile.py:327 +#: judge/models/profile.py:337 msgid "user profiles" msgstr "" -#: judge/models/profile.py:333 +#: judge/models/profile.py:349 msgid "device name" msgstr "" -#: judge/models/profile.py:334 +#: judge/models/profile.py:350 msgid "credential ID" msgstr "" -#: judge/models/profile.py:335 +#: judge/models/profile.py:351 msgid "public key" msgstr "" -#: judge/models/profile.py:336 +#: judge/models/profile.py:352 msgid "sign counter" msgstr "" -#: judge/models/profile.py:354 +#: judge/models/profile.py:370 #, python-format msgid "WebAuthn credential: %(name)s" msgstr "" -#: judge/models/profile.py:357 +#: judge/models/profile.py:373 msgid "WebAuthn credential" msgstr "" -#: judge/models/profile.py:358 +#: judge/models/profile.py:374 msgid "WebAuthn credentials" msgstr "" -#: judge/models/profile.py:365 +#: judge/models/profile.py:381 msgid "request time" msgstr "" -#: judge/models/profile.py:366 +#: judge/models/profile.py:382 msgid "state" msgstr "" -#: judge/models/profile.py:367 templates/organization/requests/tabs.html:4 +#: judge/models/profile.py:383 templates/organization/requests/tabs.html:4 msgid "Pending" msgstr "" -#: judge/models/profile.py:368 templates/organization/requests/tabs.html:10 +#: judge/models/profile.py:384 templates/organization/requests/tabs.html:10 msgid "Approved" msgstr "" -#: judge/models/profile.py:369 templates/organization/requests/tabs.html:13 +#: judge/models/profile.py:385 templates/organization/requests/tabs.html:13 msgid "Rejected" msgstr "" -#: judge/models/profile.py:372 +#: judge/models/profile.py:388 msgid "reason" msgstr "" -#: judge/models/profile.py:381 +#: judge/models/profile.py:397 msgid "organization join request" msgstr "" -#: judge/models/profile.py:382 +#: judge/models/profile.py:398 msgid "organization join requests" msgstr "" @@ -2622,15 +2643,15 @@ msgstr "" msgid "submission time" msgstr "" -#: judge/models/submission.py:70 judge/models/submission.py:255 +#: judge/models/submission.py:70 judge/models/submission.py:265 msgid "execution time" msgstr "" -#: judge/models/submission.py:71 judge/models/submission.py:256 +#: judge/models/submission.py:71 judge/models/submission.py:266 msgid "memory usage" msgstr "" -#: judge/models/submission.py:72 judge/models/submission.py:257 +#: judge/models/submission.py:72 judge/models/submission.py:267 msgid "points granted" msgstr "" @@ -2719,60 +2740,60 @@ msgstr "" msgid "submissions" msgstr "zgłoszenia" -#: judge/models/submission.py:235 judge/models/submission.py:251 +#: judge/models/submission.py:245 judge/models/submission.py:261 msgid "associated submission" msgstr "" -#: judge/models/submission.py:237 +#: judge/models/submission.py:247 msgid "source code" msgstr "kod źródłowy" -#: judge/models/submission.py:240 +#: judge/models/submission.py:250 #, python-format msgid "Source of %(submission)s" msgstr "" -#: judge/models/submission.py:243 +#: judge/models/submission.py:253 msgid "submission source" msgstr "" -#: judge/models/submission.py:244 +#: judge/models/submission.py:254 msgid "submission sources" msgstr "" -#: judge/models/submission.py:253 +#: judge/models/submission.py:263 msgid "test case ID" msgstr "" -#: judge/models/submission.py:254 +#: judge/models/submission.py:264 msgid "status flag" msgstr "" -#: judge/models/submission.py:258 +#: judge/models/submission.py:268 msgid "points possible" msgstr "" -#: judge/models/submission.py:259 +#: judge/models/submission.py:269 msgid "batch number" msgstr "" -#: judge/models/submission.py:260 +#: judge/models/submission.py:270 msgid "judging feedback" msgstr "" -#: judge/models/submission.py:261 +#: judge/models/submission.py:271 msgid "extended judging feedback" msgstr "" -#: judge/models/submission.py:262 +#: judge/models/submission.py:272 msgid "program output" msgstr "" -#: judge/models/submission.py:276 +#: judge/models/submission.py:286 msgid "submission test case" msgstr "" -#: judge/models/submission.py:277 +#: judge/models/submission.py:287 msgid "submission test cases" msgstr "" @@ -2996,7 +3017,7 @@ msgctxt "hours and minutes" msgid "%h:%m" msgstr "" -#: judge/views/blog.py:36 +#: judge/views/blog.py:37 #, python-format msgid "Page %d of Posts" msgstr "" @@ -3495,11 +3516,11 @@ msgstr "" msgid "Register" msgstr "" -#: judge/views/register.py:103 +#: judge/views/register.py:101 msgid "Activation Key Invalid" msgstr "" -#: judge/views/register.py:114 +#: judge/views/register.py:112 msgid "Authentication failure" msgstr "" @@ -3511,7 +3532,7 @@ msgstr "" msgid "Language statistics" msgstr "" -#: judge/views/status.py:23 templates/submission/list.html:308 +#: judge/views/status.py:23 templates/submission/list.html:310 msgid "Status" msgstr "" @@ -3694,41 +3715,45 @@ msgstr "" msgid "Preparing your data..." msgstr "" -#: judge/views/user.py:298 templates/user/edit-profile.html:345 +#: judge/views/user.py:298 templates/user/edit-profile.html:344 msgid "Download your data" msgstr "" +#: judge/views/user.py:347 +msgid "Can't edit profile" +msgstr "" + #: judge/views/user.py:354 msgid "Updated on site" msgstr "" -#: judge/views/user.py:387 templates/admin/auth/user/change_form.html:14 -#: templates/admin/auth/user/change_form.html:17 templates/base.html:213 +#: judge/views/user.py:386 templates/admin/auth/user/change_form.html:14 +#: templates/admin/auth/user/change_form.html:17 templates/base.html:223 #: templates/user/user-tabs.html:16 msgid "Edit profile" msgstr "" -#: judge/views/user.py:402 +#: judge/views/user.py:400 msgid "Generated API token for user" msgstr "" -#: judge/views/user.py:414 +#: judge/views/user.py:412 msgid "Removed API token for user" msgstr "" -#: judge/views/user.py:424 +#: judge/views/user.py:422 msgid "Generated scratch codes for user" msgstr "" -#: judge/views/user.py:430 templates/user/user-list-tabs.html:4 +#: judge/views/user.py:428 templates/user/user-list-tabs.html:4 msgid "Leaderboard" msgstr "" -#: judge/views/user.py:491 +#: judge/views/user.py:489 msgid "You have been successfully logged out." msgstr "" -#: judge/views/user.py:508 +#: judge/views/user.py:506 msgid "You have sent too many password reset requests. Please try again later." msgstr "" @@ -3757,13 +3782,13 @@ msgstr "" #: templates/admin/judge/judge/change_form.html:27 #: templates/admin/judge/judge/change_form.html:30 -#: templates/user/edit-profile.html:355 templates/user/edit-profile.html:358 +#: templates/user/edit-profile.html:372 templates/user/edit-profile.html:375 msgid "Disable" msgstr "" #: templates/admin/judge/judge/change_form.html:33 #: templates/admin/judge/judge/change_form.html:36 -#: templates/user/edit-profile.html:386 +#: templates/user/edit-profile.html:403 msgid "Enable" msgstr "" @@ -3783,48 +3808,48 @@ msgstr "" msgid "Edit user" msgstr "" -#: templates/base.html:206 +#: templates/base.html:216 #, python-format msgid "Hello, %(username)s." msgstr "" -#: templates/base.html:215 +#: templates/base.html:225 msgid "Stop impersonating" msgstr "" -#: templates/base.html:220 +#: templates/base.html:230 msgid "Log out" msgstr "" -#: templates/base.html:229 +#: templates/base.html:239 #: templates/registration/password_reset_complete.html:4 msgid "Log in" msgstr "" -#: templates/base.html:230 templates/registration/registration_form.html:181 +#: templates/base.html:240 templates/registration/registration_form.html:177 msgid "or" msgstr "" -#: templates/base.html:231 +#: templates/base.html:241 msgid "Sign up" msgstr "" -#: templates/base.html:243 +#: templates/base.html:253 msgid "spectating" msgstr "" -#: templates/base.html:256 +#: templates/base.html:266 msgid "This site works best with JavaScript enabled." msgstr "" -#: templates/base.html:283 +#: templates/base.html:293 msgid "proudly powered by **DMOJ**" msgstr "" #: templates/blog/content.html:13 templates/comments/list.html:89 #: templates/comments/list.html:105 templates/contest/contest-tabs.html:23 #: templates/contest/tag-title.html:9 templates/flatpages/admin_link.html:3 -#: templates/license.html:10 templates/problem/data.html:423 +#: templates/license.html:10 templates/problem/data.html:424 #: templates/problem/editorial.html:14 msgid "Edit" msgstr "" @@ -4025,15 +4050,15 @@ msgstr "" msgid "No votes" msgstr "" -#: templates/common-content.html:32 templates/user/edit-profile.html:219 +#: templates/common-content.html:32 templates/user/edit-profile.html:214 msgid "Click to copy" msgstr "" -#: templates/common-content.html:33 templates/user/edit-profile.html:220 +#: templates/common-content.html:33 templates/user/edit-profile.html:215 msgid "Copy" msgstr "" -#: templates/common-content.html:44 templates/user/edit-profile.html:231 +#: templates/common-content.html:44 templates/user/edit-profile.html:226 msgid "Copied!" msgstr "" @@ -4114,7 +4139,7 @@ msgstr "" msgid "Info" msgstr "" -#: templates/contest/contest-tabs.html:6 templates/submission/list.html:334 +#: templates/contest/contest-tabs.html:6 templates/submission/list.html:336 msgid "Statistics" msgstr "" @@ -4335,7 +4360,7 @@ msgstr "" #: templates/contest/contest.html:198 templates/contest/list.html:152 #: templates/contest/list.html:194 templates/contest/list.html:271 -#: templates/problem/list.html:203 templates/problem/list.html:235 +#: templates/problem/list.html:194 templates/problem/list.html:226 msgid "Users" msgstr "" @@ -4343,7 +4368,7 @@ msgstr "" msgid "Editorials" msgstr "" -#: templates/contest/contest.html:226 templates/problem/list.html:229 +#: templates/contest/contest.html:226 templates/problem/list.html:220 msgid "Editorial" msgstr "" @@ -4510,19 +4535,19 @@ msgstr "" msgid "Disqualify" msgstr "" -#: templates/contest/ranking.html:151 +#: templates/contest/ranking.html:46 msgid "Are you sure you want to disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:156 +#: templates/contest/ranking.html:51 msgid "Are you sure you want to un-disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:228 +#: templates/contest/ranking.html:124 msgid "View user participation" msgstr "" -#: templates/contest/ranking.html:232 +#: templates/contest/ranking.html:128 msgid "Show organizations" msgstr "" @@ -4709,7 +4734,7 @@ msgid "There are no requests to approve." msgstr "" #: templates/organization/requests/pending.html:17 -#: templates/problem/data.html:387 +#: templates/problem/data.html:388 msgid "Delete?" msgstr "" @@ -4745,59 +4770,59 @@ msgstr "" msgid "Enter a new code for the cloned problem:" msgstr "" -#: templates/problem/data.html:70 +#: templates/problem/data.html:71 msgid "precision (decimal digits)" msgstr "" -#: templates/problem/data.html:339 +#: templates/problem/data.html:340 msgid "View YAML" msgstr "" -#: templates/problem/data.html:355 +#: templates/problem/data.html:356 msgid "Show columns:" msgstr "" -#: templates/problem/data.html:358 templates/problem/data.html:382 +#: templates/problem/data.html:359 templates/problem/data.html:383 msgid "Output prefix" msgstr "" -#: templates/problem/data.html:362 templates/problem/data.html:383 +#: templates/problem/data.html:363 templates/problem/data.html:384 msgid "Output limit" msgstr "" -#: templates/problem/data.html:366 templates/problem/data.html:384 +#: templates/problem/data.html:367 templates/problem/data.html:385 msgid "Checker" msgstr "" -#: templates/problem/data.html:370 templates/problem/data.html:385 +#: templates/problem/data.html:371 templates/problem/data.html:386 msgid "Generator args" msgstr "" -#: templates/problem/data.html:377 +#: templates/problem/data.html:378 msgid "Type" msgstr "" -#: templates/problem/data.html:378 +#: templates/problem/data.html:379 msgid "Input file" msgstr "" -#: templates/problem/data.html:379 +#: templates/problem/data.html:380 msgid "Output file" msgstr "" -#: templates/problem/data.html:381 +#: templates/problem/data.html:382 msgid "Pretest?" msgstr "" -#: templates/problem/data.html:433 templates/problem/submit.html:256 +#: templates/problem/data.html:434 templates/problem/submit.html:190 msgid "Submit!" msgstr "" -#: templates/problem/data.html:434 +#: templates/problem/data.html:435 msgid "Add new case" msgstr "" -#: templates/problem/data.html:436 +#: templates/problem/data.html:437 msgid "Save" msgstr "" @@ -4817,86 +4842,86 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: templates/problem/list.html:58 +#: templates/problem/list.html:49 msgid "Filter by type..." msgstr "" -#: templates/problem/list.html:176 +#: templates/problem/list.html:167 msgid "Hot problems" msgstr "" -#: templates/problem/list.html:198 templates/problem/list.html:216 +#: templates/problem/list.html:189 templates/problem/list.html:207 #: templates/problem/search-form.html:35 templates/user/user-problems.html:59 msgid "Category" msgstr "" -#: templates/problem/list.html:200 templates/problem/list.html:220 +#: templates/problem/list.html:191 templates/problem/list.html:211 msgid "Types" msgstr "" -#: templates/problem/list.html:227 +#: templates/problem/list.html:218 #, python-format msgid "AC %%" msgstr "" -#: templates/problem/manage_submission.html:55 +#: templates/problem/manage_submission.html:56 msgid "Leave empty to not filter by language" msgstr "" -#: templates/problem/manage_submission.html:60 +#: templates/problem/manage_submission.html:62 msgid "Leave empty to not filter by result" msgstr "" -#: templates/problem/manage_submission.html:79 +#: templates/problem/manage_submission.html:81 msgid "Need valid values for both start and end IDs." msgstr "" -#: templates/problem/manage_submission.html:82 +#: templates/problem/manage_submission.html:84 msgid "End ID must be after start ID." msgstr "" -#: templates/problem/manage_submission.html:90 +#: templates/problem/manage_submission.html:92 #, python-brace-format msgid "You are about to rejudge {count} submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:96 +#: templates/problem/manage_submission.html:98 msgid "You are about to rejudge a few submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:115 +#: templates/problem/manage_submission.html:117 msgid "Rejudge Submissions" msgstr "" -#: templates/problem/manage_submission.html:120 +#: templates/problem/manage_submission.html:122 msgid "Filter by ID:" msgstr "" -#: templates/problem/manage_submission.html:123 +#: templates/problem/manage_submission.html:125 msgid "Starting ID:" msgstr "" -#: templates/problem/manage_submission.html:127 +#: templates/problem/manage_submission.html:129 msgid "Ending ID:" msgstr "" -#: templates/problem/manage_submission.html:131 +#: templates/problem/manage_submission.html:133 msgid "This range includes both endpoints." msgstr "" -#: templates/problem/manage_submission.html:134 +#: templates/problem/manage_submission.html:136 msgid "Filter by language:" msgstr "" -#: templates/problem/manage_submission.html:150 +#: templates/problem/manage_submission.html:152 msgid "Rejudge selected submissions" msgstr "" -#: templates/problem/manage_submission.html:157 +#: templates/problem/manage_submission.html:159 msgid "Rescore Everything" msgstr "" -#: templates/problem/manage_submission.html:158 +#: templates/problem/manage_submission.html:160 #, python-format msgid "This will rescore %(count)s submission." msgid_plural "This will rescore %(count)s submissions." @@ -4905,7 +4930,7 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: templates/problem/manage_submission.html:166 +#: templates/problem/manage_submission.html:168 #, python-format msgid "Are you sure you want to rescore %(count)s submission?" msgid_plural "Are you sure you want to rescore %(count)s submissions?" @@ -4914,7 +4939,7 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: templates/problem/manage_submission.html:171 +#: templates/problem/manage_submission.html:173 msgid "Rescore all submissions" msgstr "" @@ -5083,8 +5108,8 @@ msgstr "" msgid "Point range" msgstr "" -#: templates/problem/search-form.html:68 templates/submission/list.html:326 -#: templates/ticket/list.html:188 +#: templates/problem/search-form.html:68 templates/submission/list.html:328 +#: templates/ticket/list.html:189 msgid "Go" msgstr "" @@ -5093,7 +5118,7 @@ msgid "Random" msgstr "" #: templates/problem/submission-diff.html:62 -#: templates/status/language-list.html:34 templates/ticket/list.html:199 +#: templates/status/language-list.html:34 templates/ticket/list.html:200 msgid "ID" msgstr "" @@ -5105,20 +5130,20 @@ msgstr "Wynik" msgid "Date" msgstr "Data" -#: templates/problem/submit.html:117 +#: templates/problem/submit.html:118 msgid "Your source code must contain at most 65536 characters." msgstr "" -#: templates/problem/submit.html:204 +#: templates/problem/submit.html:138 msgid "Warning!" msgstr "" -#: templates/problem/submit.html:205 +#: templates/problem/submit.html:139 #, python-format msgid "Your default language, %(language)s, is unavailable for this problem and has been deselected." msgstr "" -#: templates/problem/submit.html:213 +#: templates/problem/submit.html:147 #, python-format msgid "You have %(left)s submission left" msgid_plural "You have %(left)s submissions left" @@ -5127,11 +5152,11 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: templates/problem/submit.html:218 +#: templates/problem/submit.html:152 msgid "You have 0 submissions left" msgstr "" -#: templates/problem/submit.html:252 +#: templates/problem/submit.html:186 msgid "No judge is available for this problem." msgstr "" @@ -5343,7 +5368,7 @@ msgstr "" msgid "Password reset on %(site_name)s" msgstr "" -#: templates/registration/profile_creation.html:44 +#: templates/registration/profile_creation.html:38 #: templates/registration/username_select.html:7 msgid "Continue >" msgstr "" @@ -5356,36 +5381,36 @@ msgstr "" msgid "You have successfully been registered. An email has been sent to the email address you provided to confirm your registration." msgstr "" -#: templates/registration/registration_form.html:170 +#: templates/registration/registration_form.html:166 msgid "(again, for confirmation)" msgstr "" -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "(select your closest major city)" msgstr "" -#: templates/registration/registration_form.html:182 +#: templates/registration/registration_form.html:178 msgid "pick from map" msgstr "" -#: templates/registration/registration_form.html:187 +#: templates/registration/registration_form.html:183 msgid "Default language" msgstr "" -#: templates/registration/registration_form.html:190 +#: templates/registration/registration_form.html:186 msgid "Affiliated organizations" msgstr "" -#: templates/registration/registration_form.html:199 -#: templates/user/edit-profile.html:322 +#: templates/registration/registration_form.html:195 +#: templates/user/edit-profile.html:321 msgid "Notify me about upcoming contests" msgstr "" -#: templates/registration/registration_form.html:213 +#: templates/registration/registration_form.html:209 msgid "By registering, you agree to our [Terms & Conditions][0]." msgstr "" -#: templates/registration/registration_form.html:216 +#: templates/registration/registration_form.html:212 msgid "Register!" msgstr "" @@ -5427,17 +5452,17 @@ msgid "Enable Two Factor Authentication" msgstr "" #: templates/registration/totp_enable.html:98 -#: templates/user/edit-profile.html:374 +#: templates/user/edit-profile.html:391 msgid "Below is a list of one-time use scratch codes." msgstr "" #: templates/registration/totp_enable.html:99 -#: templates/user/edit-profile.html:375 +#: templates/user/edit-profile.html:392 msgid "These codes can only be used once and are for emergency use." msgstr "" #: templates/registration/totp_enable.html:100 -#: templates/user/edit-profile.html:376 +#: templates/user/edit-profile.html:393 msgid "You can use these codes to login to your account or disable two-factor authentication." msgstr "" @@ -5446,7 +5471,7 @@ msgid "If you ever need more scratch codes, you can regenerate them on the edit msgstr "" #: templates/registration/totp_enable.html:102 -#: templates/user/edit-profile.html:378 +#: templates/user/edit-profile.html:395 msgid "Please write these down and keep them in a secure location." msgstr "" @@ -5464,12 +5489,12 @@ msgid "If you lose your authentication device and are unable to use your scratch msgstr "" #: templates/registration/two_factor_auth.html:33 -#: templates/user/edit-profile.html:164 +#: templates/user/edit-profile.html:159 msgid "WebAuthn is not supported by your browser." msgstr "" #: templates/registration/two_factor_auth.html:54 -#: templates/user/edit-profile.html:188 +#: templates/user/edit-profile.html:183 msgid "Failed to contact server." msgstr "" @@ -5567,23 +5592,23 @@ msgstr "" msgid "Are you sure you want to rejudge?" msgstr "" -#: templates/submission/list.html:74 +#: templates/submission/list.html:75 msgid "Filter by status..." msgstr "" -#: templates/submission/list.html:80 +#: templates/submission/list.html:82 msgid "Filter by language..." msgstr "" -#: templates/submission/list.html:304 +#: templates/submission/list.html:306 msgid "Filter submissions" msgstr "" -#: templates/submission/list.html:340 +#: templates/submission/list.html:342 msgid "Total:" msgstr "" -#: templates/submission/list.html:350 +#: templates/submission/list.html:352 msgid "You were disconnected. Refresh to show latest updates." msgstr "" @@ -5747,23 +5772,23 @@ msgstr "" msgid "Closed: " msgstr "" -#: templates/ticket/list.html:156 +#: templates/ticket/list.html:157 msgid "Use desktop notification" msgstr "" -#: templates/ticket/list.html:162 +#: templates/ticket/list.html:163 msgid "Hide closed tickets" msgstr "" -#: templates/ticket/list.html:167 +#: templates/ticket/list.html:168 msgid "Show my tickets only" msgstr "" -#: templates/ticket/list.html:171 +#: templates/ticket/list.html:172 msgid "Filing user" msgstr "" -#: templates/ticket/list.html:180 templates/ticket/ticket.html:196 +#: templates/ticket/list.html:181 templates/ticket/ticket.html:196 msgid "Assignee" msgid_plural "Assignees" msgstr[0] "" @@ -5771,11 +5796,11 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: templates/ticket/list.html:200 +#: templates/ticket/list.html:201 msgid "Title" msgstr "" -#: templates/ticket/list.html:202 +#: templates/ticket/list.html:203 msgid "Assignees" msgstr "" @@ -5826,129 +5851,133 @@ msgstr "" msgid "Nothing here." msgstr "" -#: templates/user/base-users-table.html:3 +#: templates/user/base-users-table.html:4 msgid "Rank" msgstr "" -#: templates/user/base-users.html:14 templates/user/base-users.html:57 +#: templates/user/base-users.html:15 templates/user/base-users.html:58 msgid "Search by handle..." msgstr "" -#: templates/user/edit-profile.html:107 +#: templates/user/edit-profile.html:102 msgid "The administrators for this site require all the staff to have Two-factor Authentication enabled, so it may not be disabled at this time." msgstr "" -#: templates/user/edit-profile.html:112 +#: templates/user/edit-profile.html:107 msgid "Are you sure you want to generate or regenerate your API token?" msgstr "" -#: templates/user/edit-profile.html:113 +#: templates/user/edit-profile.html:108 msgid "This will invalidate any previous API tokens." msgstr "" -#: templates/user/edit-profile.html:114 +#: templates/user/edit-profile.html:109 msgid "It also allows access to your account without Two-factor Authentication." msgstr "" -#: templates/user/edit-profile.html:115 +#: templates/user/edit-profile.html:110 msgid "You will not be able to view your API token after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:116 templates/user/edit-profile.html:210 +#: templates/user/edit-profile.html:111 templates/user/edit-profile.html:205 msgid "Generating..." msgstr "" -#: templates/user/edit-profile.html:130 templates/user/edit-profile.html:398 +#: templates/user/edit-profile.html:125 templates/user/edit-profile.html:355 msgid "Remove" msgstr "" -#: templates/user/edit-profile.html:140 +#: templates/user/edit-profile.html:135 msgid "Are you sure you want to remove your API token?" msgstr "" -#: templates/user/edit-profile.html:147 templates/user/edit-profile.html:370 -#: templates/user/edit-profile.html:402 +#: templates/user/edit-profile.html:142 templates/user/edit-profile.html:359 +#: templates/user/edit-profile.html:387 msgid "Generate" msgstr "" -#: templates/user/edit-profile.html:193 +#: templates/user/edit-profile.html:188 msgid "Are you sure you want to delete this security key?" msgstr "" -#: templates/user/edit-profile.html:207 +#: templates/user/edit-profile.html:202 msgid "Are you sure you want to generate or regenerate a new set of scratch codes?" msgstr "" -#: templates/user/edit-profile.html:208 +#: templates/user/edit-profile.html:203 msgid "This will invalidate any previous scratch codes you have." msgstr "" -#: templates/user/edit-profile.html:209 templates/user/edit-profile.html:379 +#: templates/user/edit-profile.html:204 templates/user/edit-profile.html:396 msgid "You will not be able to view your scratch codes after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:278 +#: templates/user/edit-profile.html:273 msgid "Self-description:" msgstr "" -#: templates/user/edit-profile.html:285 +#: templates/user/edit-profile.html:280 msgid "Select your closest major city" msgstr "" -#: templates/user/edit-profile.html:286 +#: templates/user/edit-profile.html:281 msgid "Time zone:" msgstr "Strefa czasowa:" -#: templates/user/edit-profile.html:290 +#: templates/user/edit-profile.html:285 msgid "Language:" msgstr "Język:" -#: templates/user/edit-profile.html:294 +#: templates/user/edit-profile.html:289 +msgid "Site theme:" +msgstr "" + +#: templates/user/edit-profile.html:293 msgid "Editor theme:" msgstr "" -#: templates/user/edit-profile.html:299 +#: templates/user/edit-profile.html:298 msgid "Math engine:" msgstr "" -#: templates/user/edit-profile.html:308 +#: templates/user/edit-profile.html:307 msgid "Affiliated organizations:" msgstr "" -#: templates/user/edit-profile.html:334 +#: templates/user/edit-profile.html:333 msgid "Change your avatar" msgstr "" -#: templates/user/edit-profile.html:339 +#: templates/user/edit-profile.html:338 msgid "Change your password" msgstr "" -#: templates/user/edit-profile.html:352 -msgid "Two-factor Authentication is enabled:" +#: templates/user/edit-profile.html:350 +msgid "API token:" msgstr "" -#: templates/user/edit-profile.html:360 -msgid "Refresh" +#: templates/user/edit-profile.html:356 templates/user/edit-profile.html:384 +msgid "Hidden" msgstr "" -#: templates/user/edit-profile.html:363 -msgid "Scratch codes:" +#: templates/user/edit-profile.html:369 +msgid "Two-factor authentication is enabled:" msgstr "" -#: templates/user/edit-profile.html:367 templates/user/edit-profile.html:399 -msgid "Hidden" +#: templates/user/edit-profile.html:377 +msgid "Refresh" msgstr "" -#: templates/user/edit-profile.html:377 -msgid "If you ever need more scratch codes, you can regenerate them here." +#: templates/user/edit-profile.html:380 +msgid "Scratch codes:" msgstr "" -#: templates/user/edit-profile.html:385 -msgid "Two-factor Authentication is disabled:" +#: templates/user/edit-profile.html:394 +msgid "If you ever need more scratch codes, you can regenerate them here." msgstr "" -#: templates/user/edit-profile.html:393 -msgid "API token:" +#: templates/user/edit-profile.html:402 +msgid "Two-factor Authentication is disabled:" msgstr "" #: templates/user/edit-profile.html:410 diff --git a/locale/pl/LC_MESSAGES/djangojs.po b/locale/pl/LC_MESSAGES/djangojs.po index d5f3374f19..a712563966 100644 --- a/locale/pl/LC_MESSAGES/djangojs.po +++ b/locale/pl/LC_MESSAGES/djangojs.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-20 23:43+0000\n" -"PO-Revision-Date: 2022-12-21 00:43\n" +"POT-Creation-Date: 2023-01-23 05:23+0000\n" +"PO-Revision-Date: 2023-01-24 00:52\n" "Last-Translator: \n" "Language-Team: Polish\n" "Language: pl_PL\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: djangojs.po\n" "X-Crowdin-File-ID: 12\n" -#: resources/common.js:195 +#: resources/common.js:194 msgctxt "time format with day" msgid "%d day %h:%m:%s" msgid_plural "%d days %h:%m:%s" @@ -26,7 +26,7 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "%d dni %h:%m:%s" -#: resources/common.js:198 +#: resources/common.js:197 msgctxt "time format without day" msgid "%h:%m:%s" msgstr "%h:%m:%s" diff --git a/locale/pt/LC_MESSAGES/django.po b/locale/pt/LC_MESSAGES/django.po index 07cf6c310f..eaa4456317 100644 --- a/locale/pt/LC_MESSAGES/django.po +++ b/locale/pt/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-20 23:04+0000\n" -"PO-Revision-Date: 2023-01-21 00:49\n" +"POT-Creation-Date: 2023-02-17 22:33+0000\n" +"PO-Revision-Date: 2023-02-18 00:49\n" "Last-Translator: \n" "Language-Team: Portuguese, Brazilian\n" "Language: pt_BR\n" @@ -17,91 +17,91 @@ msgstr "" "X-Crowdin-File: django.po\n" "X-Crowdin-File-ID: 10\n" -#: dmoj/settings.py:380 +#: dmoj/settings.py:392 msgid "Catalan" msgstr "" -#: dmoj/settings.py:381 +#: dmoj/settings.py:393 msgid "German" msgstr "" -#: dmoj/settings.py:382 +#: dmoj/settings.py:394 msgid "Greek" msgstr "" -#: dmoj/settings.py:383 +#: dmoj/settings.py:395 msgid "English" msgstr "" -#: dmoj/settings.py:384 +#: dmoj/settings.py:396 msgid "Spanish" msgstr "" -#: dmoj/settings.py:385 +#: dmoj/settings.py:397 msgid "French" msgstr "" -#: dmoj/settings.py:386 +#: dmoj/settings.py:398 msgid "Croatian" msgstr "" -#: dmoj/settings.py:387 +#: dmoj/settings.py:399 msgid "Hungarian" msgstr "" -#: dmoj/settings.py:388 +#: dmoj/settings.py:400 msgid "Japanese" msgstr "" -#: dmoj/settings.py:389 +#: dmoj/settings.py:401 msgid "Korean" msgstr "" -#: dmoj/settings.py:390 +#: dmoj/settings.py:402 msgid "Brazilian Portuguese" msgstr "" -#: dmoj/settings.py:391 +#: dmoj/settings.py:403 msgid "Romanian" msgstr "" -#: dmoj/settings.py:392 +#: dmoj/settings.py:404 msgid "Russian" msgstr "" -#: dmoj/settings.py:393 +#: dmoj/settings.py:405 msgid "Serbian (Latin)" msgstr "" -#: dmoj/settings.py:394 +#: dmoj/settings.py:406 msgid "Turkish" msgstr "" -#: dmoj/settings.py:395 +#: dmoj/settings.py:407 msgid "Vietnamese" msgstr "" -#: dmoj/settings.py:396 +#: dmoj/settings.py:408 msgid "Simplified Chinese" msgstr "" -#: dmoj/settings.py:397 +#: dmoj/settings.py:409 msgid "Traditional Chinese" msgstr "" -#: dmoj/urls.py:32 +#: dmoj/urls.py:31 msgid "Activation Successful!" msgstr "" -#: dmoj/urls.py:40 +#: dmoj/urls.py:39 msgid "Registration Completed" msgstr "" -#: dmoj/urls.py:44 +#: dmoj/urls.py:43 msgid "Registration Not Allowed" msgstr "" -#: dmoj/urls.py:93 templates/base.html:183 +#: dmoj/urls.py:92 templates/base.html:193 msgid "Home" msgstr "" @@ -140,8 +140,8 @@ msgid "Included contests" msgstr "" #: judge/admin/contest.py:65 templates/contest/contest.html:195 -#: templates/contest/moss.html:41 templates/problem/list.html:197 -#: templates/problem/list.html:213 templates/user/user-problems.html:58 +#: templates/contest/moss.html:41 templates/problem/list.html:188 +#: templates/problem/list.html:204 templates/user/user-problems.html:58 #: templates/user/user-problems.html:102 msgid "Problem" msgstr "" @@ -152,7 +152,7 @@ msgstr "" msgid "Problems" msgstr "" -#: judge/admin/contest.py:76 judge/admin/submission.py:249 +#: judge/admin/contest.py:76 judge/admin/submission.py:250 #: templates/admin/judge/submission/change_form.html:14 #: templates/admin/judge/submission/change_form.html:17 #: templates/submission/source.html:34 templates/submission/status.html:89 @@ -231,29 +231,29 @@ msgstr[1] "" msgid "Unlock contest submissions" msgstr "" -#: judge/admin/contest.py:280 judge/admin/submission.py:175 +#: judge/admin/contest.py:280 judge/admin/submission.py:176 #, python-format msgid "%d submission was successfully scheduled for rejudging." msgid_plural "%d submissions were successfully scheduled for rejudging." msgstr[0] "" msgstr[1] "" -#: judge/admin/contest.py:356 +#: judge/admin/contest.py:358 #, python-format msgid "%d participation recalculated." msgid_plural "%d participations recalculated." msgstr[0] "" msgstr[1] "" -#: judge/admin/contest.py:359 +#: judge/admin/contest.py:361 msgid "Recalculate results" msgstr "" -#: judge/admin/contest.py:363 judge/admin/organization.py:113 +#: judge/admin/contest.py:365 judge/admin/organization.py:113 msgid "username" msgstr "" -#: judge/admin/contest.py:368 templates/base.html:249 +#: judge/admin/contest.py:370 templates/base.html:259 msgid "virtual" msgstr "" @@ -266,8 +266,8 @@ msgid "Summary" msgstr "" #: judge/admin/interface.py:124 judge/models/contest.py:491 -#: judge/models/contest.py:623 judge/models/profile.py:331 -#: judge/models/profile.py:362 judge/models/submission.py:67 +#: judge/models/contest.py:623 judge/models/profile.py:347 +#: judge/models/profile.py:378 judge/models/submission.py:67 #: judge/models/ticket.py:32 msgid "user" msgstr "" @@ -298,8 +298,8 @@ msgid "Taxonomy" msgstr "" #: judge/admin/problem.py:133 templates/contest/contest.html:196 -#: templates/problem/data.html:380 templates/problem/list.html:202 -#: templates/problem/list.html:224 templates/user/base-users-table.html:10 +#: templates/problem/data.html:381 templates/problem/list.html:193 +#: templates/problem/list.html:215 templates/user/base-users-table.html:11 #: templates/user/user-problems.html:60 msgid "Points" msgstr "" @@ -308,9 +308,9 @@ msgstr "" msgid "Limits" msgstr "" -#: judge/admin/problem.py:135 judge/admin/submission.py:243 +#: judge/admin/problem.py:135 judge/admin/submission.py:244 #: templates/problem/submission-diff.html:65 templates/stats/tabs.html:4 -#: templates/submission/list.html:317 +#: templates/submission/list.html:319 msgid "Language" msgstr "" @@ -367,19 +367,19 @@ msgstr "" msgid "timezone" msgstr "" -#: judge/admin/profile.py:98 judge/admin/submission.py:222 +#: judge/admin/profile.py:98 judge/admin/submission.py:223 #: templates/organization/requests/log.html:9 #: templates/organization/requests/pending.html:12 -#: templates/ticket/list.html:201 +#: templates/ticket/list.html:202 msgid "User" msgstr "" -#: judge/admin/profile.py:103 templates/registration/registration_form.html:149 +#: judge/admin/profile.py:103 templates/registration/registration_form.html:145 msgid "Email" msgstr "" #: judge/admin/profile.py:108 judge/views/register.py:28 -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "Timezone" msgstr "" @@ -398,26 +398,26 @@ msgstr[1] "" msgid "Recalculate scores" msgstr "" -#: judge/admin/runtime.py:50 templates/user/edit-profile.html:124 -#: templates/user/edit-profile.html:246 templates/user/edit-profile.html:366 -#: templates/user/edit-profile.html:396 +#: judge/admin/runtime.py:52 templates/user/edit-profile.html:119 +#: templates/user/edit-profile.html:241 templates/user/edit-profile.html:353 +#: templates/user/edit-profile.html:383 msgid "Regenerate" msgstr "" -#: judge/admin/runtime.py:64 +#: judge/admin/runtime.py:66 msgid "Description" msgstr "" -#: judge/admin/runtime.py:65 +#: judge/admin/runtime.py:67 msgid "Information" msgstr "" -#: judge/admin/runtime.py:66 +#: judge/admin/runtime.py:68 msgid "Capabilities" msgstr "" #: judge/admin/submission.py:24 judge/admin/submission.py:43 -#: judge/admin/submission.py:232 +#: judge/admin/submission.py:233 msgid "None" msgstr "" @@ -449,57 +449,57 @@ msgctxt "contest problem" msgid "%(problem)s in %(contest)s" msgstr "" -#: judge/admin/submission.py:160 judge/admin/submission.py:182 +#: judge/admin/submission.py:161 judge/admin/submission.py:183 msgid "You do not have the permission to rejudge submissions." msgstr "" -#: judge/admin/submission.py:166 +#: judge/admin/submission.py:167 msgid "You do not have the permission to rejudge THAT many submissions." msgstr "" -#: judge/admin/submission.py:178 +#: judge/admin/submission.py:179 msgid "Rejudge the selected submissions" msgstr "" -#: judge/admin/submission.py:204 judge/views/problem_manage.py:129 +#: judge/admin/submission.py:205 judge/views/problem_manage.py:129 #, python-format msgid "%d submission was successfully rescored." msgid_plural "%d submissions were successfully rescored." msgstr[0] "" msgstr[1] "" -#: judge/admin/submission.py:207 +#: judge/admin/submission.py:208 msgid "Rescore the selected submissions" msgstr "" -#: judge/admin/submission.py:211 +#: judge/admin/submission.py:212 msgid "Problem code" msgstr "" -#: judge/admin/submission.py:216 +#: judge/admin/submission.py:217 msgid "Problem name" msgstr "" -#: judge/admin/submission.py:226 templates/organization/requests/log.html:10 +#: judge/admin/submission.py:227 templates/organization/requests/log.html:10 #: templates/organization/requests/pending.html:13 msgid "Time" msgstr "" -#: judge/admin/submission.py:234 +#: judge/admin/submission.py:235 #, python-format msgid "%d KB" msgstr "" -#: judge/admin/submission.py:236 +#: judge/admin/submission.py:237 #, python-format msgid "%.2f MB" msgstr "" -#: judge/admin/submission.py:238 +#: judge/admin/submission.py:239 msgid "Memory" msgstr "" -#: judge/admin/submission.py:247 +#: judge/admin/submission.py:248 msgid "Locked" msgstr "" @@ -524,6 +524,7 @@ msgid "Comment body" msgstr "" #: judge/comments.py:47 judge/views/comment.py:40 judge/views/ticket.py:46 +#: judge/views/user.py:347 msgid "Your part is silent, little toad." msgstr "" @@ -631,7 +632,7 @@ msgstr "" msgid "Scratch codes must be 16 Base32 characters." msgstr "" -#: judge/forms.py:39 judge/forms.py:265 +#: judge/forms.py:39 judge/forms.py:266 msgid "Invalid scratch code." msgstr "" @@ -654,83 +655,83 @@ msgid_plural "You may not be part of more than {count} public organizations." msgstr[0] "" msgstr[1] "" -#: judge/forms.py:98 +#: judge/forms.py:99 msgid "Download comments?" msgstr "" -#: judge/forms.py:99 +#: judge/forms.py:100 msgid "Download submissions?" msgstr "" -#: judge/forms.py:100 +#: judge/forms.py:101 msgid "Filter by problem code glob:" msgstr "" -#: judge/forms.py:104 +#: judge/forms.py:105 msgid "Leave empty to include all submissions" msgstr "" -#: judge/forms.py:107 templates/problem/manage_submission.html:142 +#: judge/forms.py:108 templates/problem/manage_submission.html:144 msgid "Filter by result:" msgstr "" -#: judge/forms.py:113 +#: judge/forms.py:114 msgid "Please select at least one thing to download." msgstr "" -#: judge/forms.py:139 +#: judge/forms.py:140 msgid "Any judge" msgstr "" -#: judge/forms.py:160 judge/views/register.py:25 +#: judge/forms.py:161 judge/views/register.py:25 #: templates/problem/submission-diff.html:63 -#: templates/registration/registration_form.html:143 -#: templates/user/base-users-table.html:5 +#: templates/registration/registration_form.html:139 +#: templates/user/base-users-table.html:6 msgid "Username" msgstr "" -#: judge/forms.py:161 templates/registration/registration_form.html:155 -#: templates/registration/registration_form.html:169 +#: judge/forms.py:162 templates/registration/registration_form.html:151 +#: templates/registration/registration_form.html:165 msgid "Password" msgstr "" -#: judge/forms.py:193 +#: judge/forms.py:194 msgid "Invalid code length." msgstr "" -#: judge/forms.py:224 +#: judge/forms.py:225 msgid "Invalid WebAuthn response." msgstr "" -#: judge/forms.py:227 +#: judge/forms.py:228 msgid "No WebAuthn challenge issued." msgstr "" -#: judge/forms.py:233 +#: judge/forms.py:234 msgid "Invalid WebAuthn credential ID." msgstr "" -#: judge/forms.py:263 +#: judge/forms.py:264 msgid "Invalid two-factor authentication token or scratch code." msgstr "" -#: judge/forms.py:267 +#: judge/forms.py:268 msgid "Must specify either totp_token or webauthn_response." msgstr "" -#: judge/forms.py:271 judge/models/problem.py:118 +#: judge/forms.py:272 judge/models/problem.py:118 msgid "Problem code must be ^[a-z0-9]+$" msgstr "" -#: judge/forms.py:276 +#: judge/forms.py:277 msgid "Problem with code already exists." msgstr "" -#: judge/forms.py:281 judge/models/contest.py:68 +#: judge/forms.py:282 judge/models/contest.py:68 msgid "Contest id must be ^[a-z0-9]+$" msgstr "" -#: judge/forms.py:286 +#: judge/forms.py:287 msgid "Contest with key already exists." msgstr "" @@ -753,26 +754,42 @@ msgstr "" msgid "Unrated" msgstr "" -#: judge/models/choices.py:59 -msgid "Leave as LaTeX" +#: judge/models/choices.py:24 +msgid "Follow site theme" msgstr "" #: judge/models/choices.py:60 -msgid "SVG only" +msgid "Leave as LaTeX" msgstr "" #: judge/models/choices.py:61 -msgid "MathML only" +msgid "SVG only" msgstr "" #: judge/models/choices.py:62 -msgid "MathJax with SVG fallback" +msgid "MathML only" msgstr "" #: judge/models/choices.py:63 +msgid "MathJax with SVG fallback" +msgstr "" + +#: judge/models/choices.py:64 msgid "Detect best quality" msgstr "" +#: judge/models/choices.py:70 +msgid "Follow system default" +msgstr "" + +#: judge/models/choices.py:71 +msgid "Light" +msgstr "" + +#: judge/models/choices.py:72 +msgid "Dark" +msgstr "" + #: judge/models/comment.py:25 msgid "Page code must be ^[pcs]:[a-z0-9]+$|^b:\\d+$" msgstr "" @@ -1885,7 +1902,7 @@ msgid "Non-trailing spaces" msgstr "" #: judge/models/problem_data.py:28 -msgid "Unordered" +msgid "Sorted" msgstr "" #: judge/models/problem_data.py:29 @@ -2057,7 +2074,7 @@ msgid "Edit all organizations" msgstr "" #: judge/models/profile.py:98 judge/models/profile.py:103 -#: judge/models/profile.py:160 judge/models/profile.py:363 +#: judge/models/profile.py:161 judge/models/profile.py:379 msgid "organization" msgstr "" @@ -2098,7 +2115,7 @@ msgstr "" msgid "%(class)s in %(organization)s" msgstr "" -#: judge/models/profile.py:142 judge/models/profile.py:371 +#: judge/models/profile.py:142 judge/models/profile.py:387 msgid "class" msgstr "" @@ -2123,26 +2140,30 @@ msgid "Ace theme" msgstr "" #: judge/models/profile.py:158 -msgid "last access time" +msgid "site theme" msgstr "" #: judge/models/profile.py:159 +msgid "last access time" +msgstr "" + +#: judge/models/profile.py:160 msgid "last IP" msgstr "" -#: judge/models/profile.py:162 +#: judge/models/profile.py:163 msgid "display rank" msgstr "" -#: judge/models/profile.py:164 +#: judge/models/profile.py:165 msgid "Normal User" msgstr "" -#: judge/models/profile.py:165 +#: judge/models/profile.py:166 msgid "Problem Setter" msgstr "" -#: judge/models/profile.py:166 templates/base.html:211 +#: judge/models/profile.py:167 templates/base.html:221 #: templates/comments/list.html:97 templates/contest/contest-list-tabs.html:25 #: templates/contest/ranking-table.html:51 #: templates/problem/problem-list-tabs.html:6 @@ -2152,200 +2173,200 @@ msgstr "" msgid "Admin" msgstr "" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "comment mute" msgstr "" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "Some users are at their best when silent." msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "unlisted user" msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "User will not be ranked." msgstr "" -#: judge/models/profile.py:172 +#: judge/models/profile.py:173 msgid "banned from voting on problem point values" msgstr "" -#: judge/models/profile.py:173 +#: judge/models/profile.py:174 msgid "User will not be able to vote on problems' point values." msgstr "" -#: judge/models/profile.py:177 +#: judge/models/profile.py:178 msgid "user script" msgstr "" -#: judge/models/profile.py:178 +#: judge/models/profile.py:179 msgid "User-defined JavaScript for site customization." msgstr "" -#: judge/models/profile.py:179 +#: judge/models/profile.py:180 msgid "current contest" msgstr "" -#: judge/models/profile.py:181 +#: judge/models/profile.py:182 msgid "math engine" msgstr "" -#: judge/models/profile.py:183 +#: judge/models/profile.py:184 msgid "The rendering engine used to render math." msgstr "" -#: judge/models/profile.py:184 +#: judge/models/profile.py:185 msgid "TOTP 2FA enabled" msgstr "" -#: judge/models/profile.py:185 +#: judge/models/profile.py:186 msgid "Check to enable TOTP-based two-factor authentication." msgstr "" -#: judge/models/profile.py:186 +#: judge/models/profile.py:187 msgid "WebAuthn 2FA enabled" msgstr "" -#: judge/models/profile.py:187 +#: judge/models/profile.py:188 msgid "Check to enable WebAuthn-based two-factor authentication." msgstr "" -#: judge/models/profile.py:188 +#: judge/models/profile.py:189 msgid "TOTP key" msgstr "" -#: judge/models/profile.py:189 +#: judge/models/profile.py:190 msgid "32-character Base32-encoded key for TOTP." msgstr "" -#: judge/models/profile.py:191 +#: judge/models/profile.py:192 msgid "TOTP key must be empty or Base32." msgstr "" -#: judge/models/profile.py:192 +#: judge/models/profile.py:193 msgid "scratch codes" msgstr "" -#: judge/models/profile.py:193 +#: judge/models/profile.py:194 msgid "JSON array of 16-character Base32-encoded codes for scratch codes." msgstr "" -#: judge/models/profile.py:197 +#: judge/models/profile.py:198 msgid "Scratch codes must be empty or a JSON array of 16-character Base32 codes." msgstr "" -#: judge/models/profile.py:199 +#: judge/models/profile.py:200 msgid "last TOTP timecode" msgstr "" -#: judge/models/profile.py:200 +#: judge/models/profile.py:201 msgid "API token" msgstr "" -#: judge/models/profile.py:201 +#: judge/models/profile.py:202 msgid "64-character hex-encoded API access token." msgstr "" -#: judge/models/profile.py:203 +#: judge/models/profile.py:204 msgid "API token must be None or hexadecimal" msgstr "" -#: judge/models/profile.py:204 +#: judge/models/profile.py:205 msgid "internal notes" msgstr "" -#: judge/models/profile.py:205 +#: judge/models/profile.py:206 msgid "Notes for administrators regarding this user." msgstr "" -#: judge/models/profile.py:206 +#: judge/models/profile.py:207 msgid "last data download time" msgstr "" -#: judge/models/profile.py:207 +#: judge/models/profile.py:208 msgid "display name override" msgstr "" -#: judge/models/profile.py:208 +#: judge/models/profile.py:209 msgid "Name displayed in place of username." msgstr "" -#: judge/models/profile.py:323 +#: judge/models/profile.py:333 msgid "Shows in-progress development stuff" msgstr "" -#: judge/models/profile.py:324 +#: judge/models/profile.py:334 msgid "Edit TOTP settings" msgstr "" -#: judge/models/profile.py:326 +#: judge/models/profile.py:336 msgid "user profile" msgstr "" -#: judge/models/profile.py:327 +#: judge/models/profile.py:337 msgid "user profiles" msgstr "" -#: judge/models/profile.py:333 +#: judge/models/profile.py:349 msgid "device name" msgstr "" -#: judge/models/profile.py:334 +#: judge/models/profile.py:350 msgid "credential ID" msgstr "" -#: judge/models/profile.py:335 +#: judge/models/profile.py:351 msgid "public key" msgstr "" -#: judge/models/profile.py:336 +#: judge/models/profile.py:352 msgid "sign counter" msgstr "" -#: judge/models/profile.py:354 +#: judge/models/profile.py:370 #, python-format msgid "WebAuthn credential: %(name)s" msgstr "" -#: judge/models/profile.py:357 +#: judge/models/profile.py:373 msgid "WebAuthn credential" msgstr "" -#: judge/models/profile.py:358 +#: judge/models/profile.py:374 msgid "WebAuthn credentials" msgstr "" -#: judge/models/profile.py:365 +#: judge/models/profile.py:381 msgid "request time" msgstr "" -#: judge/models/profile.py:366 +#: judge/models/profile.py:382 msgid "state" msgstr "" -#: judge/models/profile.py:367 templates/organization/requests/tabs.html:4 +#: judge/models/profile.py:383 templates/organization/requests/tabs.html:4 msgid "Pending" msgstr "" -#: judge/models/profile.py:368 templates/organization/requests/tabs.html:10 +#: judge/models/profile.py:384 templates/organization/requests/tabs.html:10 msgid "Approved" msgstr "" -#: judge/models/profile.py:369 templates/organization/requests/tabs.html:13 +#: judge/models/profile.py:385 templates/organization/requests/tabs.html:13 msgid "Rejected" msgstr "" -#: judge/models/profile.py:372 +#: judge/models/profile.py:388 msgid "reason" msgstr "" -#: judge/models/profile.py:381 +#: judge/models/profile.py:397 msgid "organization join request" msgstr "" -#: judge/models/profile.py:382 +#: judge/models/profile.py:398 msgid "organization join requests" msgstr "" @@ -2588,15 +2609,15 @@ msgstr "" msgid "submission time" msgstr "" -#: judge/models/submission.py:70 judge/models/submission.py:255 +#: judge/models/submission.py:70 judge/models/submission.py:265 msgid "execution time" msgstr "" -#: judge/models/submission.py:71 judge/models/submission.py:256 +#: judge/models/submission.py:71 judge/models/submission.py:266 msgid "memory usage" msgstr "" -#: judge/models/submission.py:72 judge/models/submission.py:257 +#: judge/models/submission.py:72 judge/models/submission.py:267 msgid "points granted" msgstr "" @@ -2685,60 +2706,60 @@ msgstr "" msgid "submissions" msgstr "" -#: judge/models/submission.py:235 judge/models/submission.py:251 +#: judge/models/submission.py:245 judge/models/submission.py:261 msgid "associated submission" msgstr "" -#: judge/models/submission.py:237 +#: judge/models/submission.py:247 msgid "source code" msgstr "" -#: judge/models/submission.py:240 +#: judge/models/submission.py:250 #, python-format msgid "Source of %(submission)s" msgstr "" -#: judge/models/submission.py:243 +#: judge/models/submission.py:253 msgid "submission source" msgstr "" -#: judge/models/submission.py:244 +#: judge/models/submission.py:254 msgid "submission sources" msgstr "" -#: judge/models/submission.py:253 +#: judge/models/submission.py:263 msgid "test case ID" msgstr "" -#: judge/models/submission.py:254 +#: judge/models/submission.py:264 msgid "status flag" msgstr "" -#: judge/models/submission.py:258 +#: judge/models/submission.py:268 msgid "points possible" msgstr "" -#: judge/models/submission.py:259 +#: judge/models/submission.py:269 msgid "batch number" msgstr "" -#: judge/models/submission.py:260 +#: judge/models/submission.py:270 msgid "judging feedback" msgstr "" -#: judge/models/submission.py:261 +#: judge/models/submission.py:271 msgid "extended judging feedback" msgstr "" -#: judge/models/submission.py:262 +#: judge/models/submission.py:272 msgid "program output" msgstr "" -#: judge/models/submission.py:276 +#: judge/models/submission.py:286 msgid "submission test case" msgstr "" -#: judge/models/submission.py:277 +#: judge/models/submission.py:287 msgid "submission test cases" msgstr "" @@ -2956,7 +2977,7 @@ msgctxt "hours and minutes" msgid "%h:%m" msgstr "" -#: judge/views/blog.py:36 +#: judge/views/blog.py:37 #, python-format msgid "Page %d of Posts" msgstr "" @@ -3445,11 +3466,11 @@ msgstr "" msgid "Register" msgstr "" -#: judge/views/register.py:103 +#: judge/views/register.py:101 msgid "Activation Key Invalid" msgstr "" -#: judge/views/register.py:114 +#: judge/views/register.py:112 msgid "Authentication failure" msgstr "" @@ -3461,7 +3482,7 @@ msgstr "" msgid "Language statistics" msgstr "" -#: judge/views/status.py:23 templates/submission/list.html:308 +#: judge/views/status.py:23 templates/submission/list.html:310 msgid "Status" msgstr "" @@ -3644,41 +3665,45 @@ msgstr "" msgid "Preparing your data..." msgstr "" -#: judge/views/user.py:298 templates/user/edit-profile.html:345 +#: judge/views/user.py:298 templates/user/edit-profile.html:344 msgid "Download your data" msgstr "" +#: judge/views/user.py:347 +msgid "Can't edit profile" +msgstr "" + #: judge/views/user.py:354 msgid "Updated on site" msgstr "" -#: judge/views/user.py:387 templates/admin/auth/user/change_form.html:14 -#: templates/admin/auth/user/change_form.html:17 templates/base.html:213 +#: judge/views/user.py:386 templates/admin/auth/user/change_form.html:14 +#: templates/admin/auth/user/change_form.html:17 templates/base.html:223 #: templates/user/user-tabs.html:16 msgid "Edit profile" msgstr "" -#: judge/views/user.py:402 +#: judge/views/user.py:400 msgid "Generated API token for user" msgstr "" -#: judge/views/user.py:414 +#: judge/views/user.py:412 msgid "Removed API token for user" msgstr "" -#: judge/views/user.py:424 +#: judge/views/user.py:422 msgid "Generated scratch codes for user" msgstr "" -#: judge/views/user.py:430 templates/user/user-list-tabs.html:4 +#: judge/views/user.py:428 templates/user/user-list-tabs.html:4 msgid "Leaderboard" msgstr "" -#: judge/views/user.py:491 +#: judge/views/user.py:489 msgid "You have been successfully logged out." msgstr "" -#: judge/views/user.py:508 +#: judge/views/user.py:506 msgid "You have sent too many password reset requests. Please try again later." msgstr "" @@ -3707,13 +3732,13 @@ msgstr "" #: templates/admin/judge/judge/change_form.html:27 #: templates/admin/judge/judge/change_form.html:30 -#: templates/user/edit-profile.html:355 templates/user/edit-profile.html:358 +#: templates/user/edit-profile.html:372 templates/user/edit-profile.html:375 msgid "Disable" msgstr "" #: templates/admin/judge/judge/change_form.html:33 #: templates/admin/judge/judge/change_form.html:36 -#: templates/user/edit-profile.html:386 +#: templates/user/edit-profile.html:403 msgid "Enable" msgstr "" @@ -3733,48 +3758,48 @@ msgstr "" msgid "Edit user" msgstr "" -#: templates/base.html:206 +#: templates/base.html:216 #, python-format msgid "Hello, %(username)s." msgstr "" -#: templates/base.html:215 +#: templates/base.html:225 msgid "Stop impersonating" msgstr "" -#: templates/base.html:220 +#: templates/base.html:230 msgid "Log out" msgstr "" -#: templates/base.html:229 +#: templates/base.html:239 #: templates/registration/password_reset_complete.html:4 msgid "Log in" msgstr "" -#: templates/base.html:230 templates/registration/registration_form.html:181 +#: templates/base.html:240 templates/registration/registration_form.html:177 msgid "or" msgstr "" -#: templates/base.html:231 +#: templates/base.html:241 msgid "Sign up" msgstr "" -#: templates/base.html:243 +#: templates/base.html:253 msgid "spectating" msgstr "" -#: templates/base.html:256 +#: templates/base.html:266 msgid "This site works best with JavaScript enabled." msgstr "" -#: templates/base.html:283 +#: templates/base.html:293 msgid "proudly powered by **DMOJ**" msgstr "" #: templates/blog/content.html:13 templates/comments/list.html:89 #: templates/comments/list.html:105 templates/contest/contest-tabs.html:23 #: templates/contest/tag-title.html:9 templates/flatpages/admin_link.html:3 -#: templates/license.html:10 templates/problem/data.html:423 +#: templates/license.html:10 templates/problem/data.html:424 #: templates/problem/editorial.html:14 msgid "Edit" msgstr "" @@ -3975,15 +4000,15 @@ msgstr "" msgid "No votes" msgstr "" -#: templates/common-content.html:32 templates/user/edit-profile.html:219 +#: templates/common-content.html:32 templates/user/edit-profile.html:214 msgid "Click to copy" msgstr "" -#: templates/common-content.html:33 templates/user/edit-profile.html:220 +#: templates/common-content.html:33 templates/user/edit-profile.html:215 msgid "Copy" msgstr "" -#: templates/common-content.html:44 templates/user/edit-profile.html:231 +#: templates/common-content.html:44 templates/user/edit-profile.html:226 msgid "Copied!" msgstr "" @@ -4064,7 +4089,7 @@ msgstr "" msgid "Info" msgstr "" -#: templates/contest/contest-tabs.html:6 templates/submission/list.html:334 +#: templates/contest/contest-tabs.html:6 templates/submission/list.html:336 msgid "Statistics" msgstr "" @@ -4279,7 +4304,7 @@ msgstr "" #: templates/contest/contest.html:198 templates/contest/list.html:152 #: templates/contest/list.html:194 templates/contest/list.html:271 -#: templates/problem/list.html:203 templates/problem/list.html:235 +#: templates/problem/list.html:194 templates/problem/list.html:226 msgid "Users" msgstr "" @@ -4287,7 +4312,7 @@ msgstr "" msgid "Editorials" msgstr "" -#: templates/contest/contest.html:226 templates/problem/list.html:229 +#: templates/contest/contest.html:226 templates/problem/list.html:220 msgid "Editorial" msgstr "" @@ -4452,19 +4477,19 @@ msgstr "" msgid "Disqualify" msgstr "" -#: templates/contest/ranking.html:151 +#: templates/contest/ranking.html:46 msgid "Are you sure you want to disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:156 +#: templates/contest/ranking.html:51 msgid "Are you sure you want to un-disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:228 +#: templates/contest/ranking.html:124 msgid "View user participation" msgstr "" -#: templates/contest/ranking.html:232 +#: templates/contest/ranking.html:128 msgid "Show organizations" msgstr "" @@ -4651,7 +4676,7 @@ msgid "There are no requests to approve." msgstr "" #: templates/organization/requests/pending.html:17 -#: templates/problem/data.html:387 +#: templates/problem/data.html:388 msgid "Delete?" msgstr "" @@ -4687,59 +4712,59 @@ msgstr "" msgid "Enter a new code for the cloned problem:" msgstr "" -#: templates/problem/data.html:70 +#: templates/problem/data.html:71 msgid "precision (decimal digits)" msgstr "" -#: templates/problem/data.html:339 +#: templates/problem/data.html:340 msgid "View YAML" msgstr "" -#: templates/problem/data.html:355 +#: templates/problem/data.html:356 msgid "Show columns:" msgstr "" -#: templates/problem/data.html:358 templates/problem/data.html:382 +#: templates/problem/data.html:359 templates/problem/data.html:383 msgid "Output prefix" msgstr "" -#: templates/problem/data.html:362 templates/problem/data.html:383 +#: templates/problem/data.html:363 templates/problem/data.html:384 msgid "Output limit" msgstr "" -#: templates/problem/data.html:366 templates/problem/data.html:384 +#: templates/problem/data.html:367 templates/problem/data.html:385 msgid "Checker" msgstr "" -#: templates/problem/data.html:370 templates/problem/data.html:385 +#: templates/problem/data.html:371 templates/problem/data.html:386 msgid "Generator args" msgstr "" -#: templates/problem/data.html:377 +#: templates/problem/data.html:378 msgid "Type" msgstr "" -#: templates/problem/data.html:378 +#: templates/problem/data.html:379 msgid "Input file" msgstr "" -#: templates/problem/data.html:379 +#: templates/problem/data.html:380 msgid "Output file" msgstr "" -#: templates/problem/data.html:381 +#: templates/problem/data.html:382 msgid "Pretest?" msgstr "" -#: templates/problem/data.html:433 templates/problem/submit.html:256 +#: templates/problem/data.html:434 templates/problem/submit.html:190 msgid "Submit!" msgstr "" -#: templates/problem/data.html:434 +#: templates/problem/data.html:435 msgid "Add new case" msgstr "" -#: templates/problem/data.html:436 +#: templates/problem/data.html:437 msgid "Save" msgstr "" @@ -4757,100 +4782,100 @@ msgid_plural "Authors:" msgstr[0] "" msgstr[1] "" -#: templates/problem/list.html:58 +#: templates/problem/list.html:49 msgid "Filter by type..." msgstr "" -#: templates/problem/list.html:176 +#: templates/problem/list.html:167 msgid "Hot problems" msgstr "" -#: templates/problem/list.html:198 templates/problem/list.html:216 +#: templates/problem/list.html:189 templates/problem/list.html:207 #: templates/problem/search-form.html:35 templates/user/user-problems.html:59 msgid "Category" msgstr "" -#: templates/problem/list.html:200 templates/problem/list.html:220 +#: templates/problem/list.html:191 templates/problem/list.html:211 msgid "Types" msgstr "" -#: templates/problem/list.html:227 +#: templates/problem/list.html:218 #, python-format msgid "AC %%" msgstr "" -#: templates/problem/manage_submission.html:55 +#: templates/problem/manage_submission.html:56 msgid "Leave empty to not filter by language" msgstr "" -#: templates/problem/manage_submission.html:60 +#: templates/problem/manage_submission.html:62 msgid "Leave empty to not filter by result" msgstr "" -#: templates/problem/manage_submission.html:79 +#: templates/problem/manage_submission.html:81 msgid "Need valid values for both start and end IDs." msgstr "" -#: templates/problem/manage_submission.html:82 +#: templates/problem/manage_submission.html:84 msgid "End ID must be after start ID." msgstr "" -#: templates/problem/manage_submission.html:90 +#: templates/problem/manage_submission.html:92 #, python-brace-format msgid "You are about to rejudge {count} submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:96 +#: templates/problem/manage_submission.html:98 msgid "You are about to rejudge a few submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:115 +#: templates/problem/manage_submission.html:117 msgid "Rejudge Submissions" msgstr "" -#: templates/problem/manage_submission.html:120 +#: templates/problem/manage_submission.html:122 msgid "Filter by ID:" msgstr "" -#: templates/problem/manage_submission.html:123 +#: templates/problem/manage_submission.html:125 msgid "Starting ID:" msgstr "" -#: templates/problem/manage_submission.html:127 +#: templates/problem/manage_submission.html:129 msgid "Ending ID:" msgstr "" -#: templates/problem/manage_submission.html:131 +#: templates/problem/manage_submission.html:133 msgid "This range includes both endpoints." msgstr "" -#: templates/problem/manage_submission.html:134 +#: templates/problem/manage_submission.html:136 msgid "Filter by language:" msgstr "" -#: templates/problem/manage_submission.html:150 +#: templates/problem/manage_submission.html:152 msgid "Rejudge selected submissions" msgstr "" -#: templates/problem/manage_submission.html:157 +#: templates/problem/manage_submission.html:159 msgid "Rescore Everything" msgstr "" -#: templates/problem/manage_submission.html:158 +#: templates/problem/manage_submission.html:160 #, python-format msgid "This will rescore %(count)s submission." msgid_plural "This will rescore %(count)s submissions." msgstr[0] "" msgstr[1] "" -#: templates/problem/manage_submission.html:166 +#: templates/problem/manage_submission.html:168 #, python-format msgid "Are you sure you want to rescore %(count)s submission?" msgid_plural "Are you sure you want to rescore %(count)s submissions?" msgstr[0] "" msgstr[1] "" -#: templates/problem/manage_submission.html:171 +#: templates/problem/manage_submission.html:173 msgid "Rescore all submissions" msgstr "" @@ -5013,8 +5038,8 @@ msgstr "" msgid "Point range" msgstr "" -#: templates/problem/search-form.html:68 templates/submission/list.html:326 -#: templates/ticket/list.html:188 +#: templates/problem/search-form.html:68 templates/submission/list.html:328 +#: templates/ticket/list.html:189 msgid "Go" msgstr "" @@ -5023,7 +5048,7 @@ msgid "Random" msgstr "" #: templates/problem/submission-diff.html:62 -#: templates/status/language-list.html:34 templates/ticket/list.html:199 +#: templates/status/language-list.html:34 templates/ticket/list.html:200 msgid "ID" msgstr "" @@ -5035,31 +5060,31 @@ msgstr "" msgid "Date" msgstr "" -#: templates/problem/submit.html:117 +#: templates/problem/submit.html:118 msgid "Your source code must contain at most 65536 characters." msgstr "" -#: templates/problem/submit.html:204 +#: templates/problem/submit.html:138 msgid "Warning!" msgstr "" -#: templates/problem/submit.html:205 +#: templates/problem/submit.html:139 #, python-format msgid "Your default language, %(language)s, is unavailable for this problem and has been deselected." msgstr "" -#: templates/problem/submit.html:213 +#: templates/problem/submit.html:147 #, python-format msgid "You have %(left)s submission left" msgid_plural "You have %(left)s submissions left" msgstr[0] "" msgstr[1] "" -#: templates/problem/submit.html:218 +#: templates/problem/submit.html:152 msgid "You have 0 submissions left" msgstr "" -#: templates/problem/submit.html:252 +#: templates/problem/submit.html:186 msgid "No judge is available for this problem." msgstr "" @@ -5267,7 +5292,7 @@ msgstr "" msgid "Password reset on %(site_name)s" msgstr "" -#: templates/registration/profile_creation.html:44 +#: templates/registration/profile_creation.html:38 #: templates/registration/username_select.html:7 msgid "Continue >" msgstr "" @@ -5280,36 +5305,36 @@ msgstr "" msgid "You have successfully been registered. An email has been sent to the email address you provided to confirm your registration." msgstr "" -#: templates/registration/registration_form.html:170 +#: templates/registration/registration_form.html:166 msgid "(again, for confirmation)" msgstr "" -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "(select your closest major city)" msgstr "" -#: templates/registration/registration_form.html:182 +#: templates/registration/registration_form.html:178 msgid "pick from map" msgstr "" -#: templates/registration/registration_form.html:187 +#: templates/registration/registration_form.html:183 msgid "Default language" msgstr "" -#: templates/registration/registration_form.html:190 +#: templates/registration/registration_form.html:186 msgid "Affiliated organizations" msgstr "" -#: templates/registration/registration_form.html:199 -#: templates/user/edit-profile.html:322 +#: templates/registration/registration_form.html:195 +#: templates/user/edit-profile.html:321 msgid "Notify me about upcoming contests" msgstr "" -#: templates/registration/registration_form.html:213 +#: templates/registration/registration_form.html:209 msgid "By registering, you agree to our [Terms & Conditions][0]." msgstr "" -#: templates/registration/registration_form.html:216 +#: templates/registration/registration_form.html:212 msgid "Register!" msgstr "" @@ -5351,17 +5376,17 @@ msgid "Enable Two Factor Authentication" msgstr "" #: templates/registration/totp_enable.html:98 -#: templates/user/edit-profile.html:374 +#: templates/user/edit-profile.html:391 msgid "Below is a list of one-time use scratch codes." msgstr "" #: templates/registration/totp_enable.html:99 -#: templates/user/edit-profile.html:375 +#: templates/user/edit-profile.html:392 msgid "These codes can only be used once and are for emergency use." msgstr "" #: templates/registration/totp_enable.html:100 -#: templates/user/edit-profile.html:376 +#: templates/user/edit-profile.html:393 msgid "You can use these codes to login to your account or disable two-factor authentication." msgstr "" @@ -5370,7 +5395,7 @@ msgid "If you ever need more scratch codes, you can regenerate them on the edit msgstr "" #: templates/registration/totp_enable.html:102 -#: templates/user/edit-profile.html:378 +#: templates/user/edit-profile.html:395 msgid "Please write these down and keep them in a secure location." msgstr "" @@ -5388,12 +5413,12 @@ msgid "If you lose your authentication device and are unable to use your scratch msgstr "" #: templates/registration/two_factor_auth.html:33 -#: templates/user/edit-profile.html:164 +#: templates/user/edit-profile.html:159 msgid "WebAuthn is not supported by your browser." msgstr "" #: templates/registration/two_factor_auth.html:54 -#: templates/user/edit-profile.html:188 +#: templates/user/edit-profile.html:183 msgid "Failed to contact server." msgstr "" @@ -5491,23 +5516,23 @@ msgstr "" msgid "Are you sure you want to rejudge?" msgstr "" -#: templates/submission/list.html:74 +#: templates/submission/list.html:75 msgid "Filter by status..." msgstr "" -#: templates/submission/list.html:80 +#: templates/submission/list.html:82 msgid "Filter by language..." msgstr "" -#: templates/submission/list.html:304 +#: templates/submission/list.html:306 msgid "Filter submissions" msgstr "" -#: templates/submission/list.html:340 +#: templates/submission/list.html:342 msgid "Total:" msgstr "" -#: templates/submission/list.html:350 +#: templates/submission/list.html:352 msgid "You were disconnected. Refresh to show latest updates." msgstr "" @@ -5671,33 +5696,33 @@ msgstr "" msgid "Closed: " msgstr "" -#: templates/ticket/list.html:156 +#: templates/ticket/list.html:157 msgid "Use desktop notification" msgstr "" -#: templates/ticket/list.html:162 +#: templates/ticket/list.html:163 msgid "Hide closed tickets" msgstr "" -#: templates/ticket/list.html:167 +#: templates/ticket/list.html:168 msgid "Show my tickets only" msgstr "" -#: templates/ticket/list.html:171 +#: templates/ticket/list.html:172 msgid "Filing user" msgstr "" -#: templates/ticket/list.html:180 templates/ticket/ticket.html:196 +#: templates/ticket/list.html:181 templates/ticket/ticket.html:196 msgid "Assignee" msgid_plural "Assignees" msgstr[0] "" msgstr[1] "" -#: templates/ticket/list.html:200 +#: templates/ticket/list.html:201 msgid "Title" msgstr "" -#: templates/ticket/list.html:202 +#: templates/ticket/list.html:203 msgid "Assignees" msgstr "" @@ -5748,129 +5773,133 @@ msgstr "" msgid "Nothing here." msgstr "" -#: templates/user/base-users-table.html:3 +#: templates/user/base-users-table.html:4 msgid "Rank" msgstr "" -#: templates/user/base-users.html:14 templates/user/base-users.html:57 +#: templates/user/base-users.html:15 templates/user/base-users.html:58 msgid "Search by handle..." msgstr "" -#: templates/user/edit-profile.html:107 +#: templates/user/edit-profile.html:102 msgid "The administrators for this site require all the staff to have Two-factor Authentication enabled, so it may not be disabled at this time." msgstr "" -#: templates/user/edit-profile.html:112 +#: templates/user/edit-profile.html:107 msgid "Are you sure you want to generate or regenerate your API token?" msgstr "" -#: templates/user/edit-profile.html:113 +#: templates/user/edit-profile.html:108 msgid "This will invalidate any previous API tokens." msgstr "" -#: templates/user/edit-profile.html:114 +#: templates/user/edit-profile.html:109 msgid "It also allows access to your account without Two-factor Authentication." msgstr "" -#: templates/user/edit-profile.html:115 +#: templates/user/edit-profile.html:110 msgid "You will not be able to view your API token after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:116 templates/user/edit-profile.html:210 +#: templates/user/edit-profile.html:111 templates/user/edit-profile.html:205 msgid "Generating..." msgstr "" -#: templates/user/edit-profile.html:130 templates/user/edit-profile.html:398 +#: templates/user/edit-profile.html:125 templates/user/edit-profile.html:355 msgid "Remove" msgstr "" -#: templates/user/edit-profile.html:140 +#: templates/user/edit-profile.html:135 msgid "Are you sure you want to remove your API token?" msgstr "" -#: templates/user/edit-profile.html:147 templates/user/edit-profile.html:370 -#: templates/user/edit-profile.html:402 +#: templates/user/edit-profile.html:142 templates/user/edit-profile.html:359 +#: templates/user/edit-profile.html:387 msgid "Generate" msgstr "" -#: templates/user/edit-profile.html:193 +#: templates/user/edit-profile.html:188 msgid "Are you sure you want to delete this security key?" msgstr "" -#: templates/user/edit-profile.html:207 +#: templates/user/edit-profile.html:202 msgid "Are you sure you want to generate or regenerate a new set of scratch codes?" msgstr "" -#: templates/user/edit-profile.html:208 +#: templates/user/edit-profile.html:203 msgid "This will invalidate any previous scratch codes you have." msgstr "" -#: templates/user/edit-profile.html:209 templates/user/edit-profile.html:379 +#: templates/user/edit-profile.html:204 templates/user/edit-profile.html:396 msgid "You will not be able to view your scratch codes after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:278 +#: templates/user/edit-profile.html:273 msgid "Self-description:" msgstr "" -#: templates/user/edit-profile.html:285 +#: templates/user/edit-profile.html:280 msgid "Select your closest major city" msgstr "" -#: templates/user/edit-profile.html:286 +#: templates/user/edit-profile.html:281 msgid "Time zone:" msgstr "" -#: templates/user/edit-profile.html:290 +#: templates/user/edit-profile.html:285 msgid "Language:" msgstr "" -#: templates/user/edit-profile.html:294 +#: templates/user/edit-profile.html:289 +msgid "Site theme:" +msgstr "" + +#: templates/user/edit-profile.html:293 msgid "Editor theme:" msgstr "" -#: templates/user/edit-profile.html:299 +#: templates/user/edit-profile.html:298 msgid "Math engine:" msgstr "" -#: templates/user/edit-profile.html:308 +#: templates/user/edit-profile.html:307 msgid "Affiliated organizations:" msgstr "" -#: templates/user/edit-profile.html:334 +#: templates/user/edit-profile.html:333 msgid "Change your avatar" msgstr "" -#: templates/user/edit-profile.html:339 +#: templates/user/edit-profile.html:338 msgid "Change your password" msgstr "" -#: templates/user/edit-profile.html:352 -msgid "Two-factor Authentication is enabled:" +#: templates/user/edit-profile.html:350 +msgid "API token:" msgstr "" -#: templates/user/edit-profile.html:360 -msgid "Refresh" +#: templates/user/edit-profile.html:356 templates/user/edit-profile.html:384 +msgid "Hidden" msgstr "" -#: templates/user/edit-profile.html:363 -msgid "Scratch codes:" +#: templates/user/edit-profile.html:369 +msgid "Two-factor authentication is enabled:" msgstr "" -#: templates/user/edit-profile.html:367 templates/user/edit-profile.html:399 -msgid "Hidden" +#: templates/user/edit-profile.html:377 +msgid "Refresh" msgstr "" -#: templates/user/edit-profile.html:377 -msgid "If you ever need more scratch codes, you can regenerate them here." +#: templates/user/edit-profile.html:380 +msgid "Scratch codes:" msgstr "" -#: templates/user/edit-profile.html:385 -msgid "Two-factor Authentication is disabled:" +#: templates/user/edit-profile.html:394 +msgid "If you ever need more scratch codes, you can regenerate them here." msgstr "" -#: templates/user/edit-profile.html:393 -msgid "API token:" +#: templates/user/edit-profile.html:402 +msgid "Two-factor Authentication is disabled:" msgstr "" #: templates/user/edit-profile.html:410 diff --git a/locale/pt/LC_MESSAGES/djangojs.po b/locale/pt/LC_MESSAGES/djangojs.po index 4d849f5f55..194238e1f0 100644 --- a/locale/pt/LC_MESSAGES/djangojs.po +++ b/locale/pt/LC_MESSAGES/djangojs.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-20 23:43+0000\n" -"PO-Revision-Date: 2022-12-21 00:44\n" +"POT-Creation-Date: 2023-01-23 05:23+0000\n" +"PO-Revision-Date: 2023-01-24 00:52\n" "Last-Translator: \n" "Language-Team: Portuguese, Brazilian\n" "Language: pt_BR\n" @@ -17,14 +17,14 @@ msgstr "" "X-Crowdin-File: djangojs.po\n" "X-Crowdin-File-ID: 12\n" -#: resources/common.js:195 +#: resources/common.js:194 msgctxt "time format with day" msgid "%d day %h:%m:%s" msgid_plural "%d days %h:%m:%s" msgstr[0] "" msgstr[1] "" -#: resources/common.js:198 +#: resources/common.js:197 msgctxt "time format without day" msgid "%h:%m:%s" msgstr "" diff --git a/locale/ro/LC_MESSAGES/django.po b/locale/ro/LC_MESSAGES/django.po index 3bd0ffcb38..00b36f9dcb 100644 --- a/locale/ro/LC_MESSAGES/django.po +++ b/locale/ro/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-20 23:04+0000\n" -"PO-Revision-Date: 2023-01-22 00:52\n" +"POT-Creation-Date: 2023-02-17 22:33+0000\n" +"PO-Revision-Date: 2023-02-18 00:50\n" "Last-Translator: \n" "Language-Team: Romanian\n" "Language: ro_RO\n" @@ -17,91 +17,91 @@ msgstr "" "X-Crowdin-File: django.po\n" "X-Crowdin-File-ID: 10\n" -#: dmoj/settings.py:380 +#: dmoj/settings.py:392 msgid "Catalan" msgstr "Catalană" -#: dmoj/settings.py:381 +#: dmoj/settings.py:393 msgid "German" msgstr "Germană" -#: dmoj/settings.py:382 +#: dmoj/settings.py:394 msgid "Greek" msgstr "Greacă" -#: dmoj/settings.py:383 +#: dmoj/settings.py:395 msgid "English" msgstr "Engleză" -#: dmoj/settings.py:384 +#: dmoj/settings.py:396 msgid "Spanish" msgstr "Spaniolă" -#: dmoj/settings.py:385 +#: dmoj/settings.py:397 msgid "French" msgstr "Franceză" -#: dmoj/settings.py:386 +#: dmoj/settings.py:398 msgid "Croatian" msgstr "Croată" -#: dmoj/settings.py:387 +#: dmoj/settings.py:399 msgid "Hungarian" msgstr "Maghiară" -#: dmoj/settings.py:388 +#: dmoj/settings.py:400 msgid "Japanese" msgstr "Japoneză" -#: dmoj/settings.py:389 +#: dmoj/settings.py:401 msgid "Korean" msgstr "Coreeană" -#: dmoj/settings.py:390 +#: dmoj/settings.py:402 msgid "Brazilian Portuguese" msgstr "Portugheză Braziliană" -#: dmoj/settings.py:391 +#: dmoj/settings.py:403 msgid "Romanian" msgstr "Română" -#: dmoj/settings.py:392 +#: dmoj/settings.py:404 msgid "Russian" msgstr "Rusă" -#: dmoj/settings.py:393 +#: dmoj/settings.py:405 msgid "Serbian (Latin)" msgstr "Sârbă (Latină)" -#: dmoj/settings.py:394 +#: dmoj/settings.py:406 msgid "Turkish" msgstr "Turcă" -#: dmoj/settings.py:395 +#: dmoj/settings.py:407 msgid "Vietnamese" msgstr "Vietnameză" -#: dmoj/settings.py:396 +#: dmoj/settings.py:408 msgid "Simplified Chinese" msgstr "Chineză Simplificată" -#: dmoj/settings.py:397 +#: dmoj/settings.py:409 msgid "Traditional Chinese" msgstr "Chineză Tradițională" -#: dmoj/urls.py:32 +#: dmoj/urls.py:31 msgid "Activation Successful!" msgstr "" -#: dmoj/urls.py:40 +#: dmoj/urls.py:39 msgid "Registration Completed" msgstr "" -#: dmoj/urls.py:44 +#: dmoj/urls.py:43 msgid "Registration Not Allowed" msgstr "" -#: dmoj/urls.py:93 templates/base.html:183 +#: dmoj/urls.py:92 templates/base.html:193 msgid "Home" msgstr "Start" @@ -142,8 +142,8 @@ msgid "Included contests" msgstr "Concursuri incluse" #: judge/admin/contest.py:65 templates/contest/contest.html:195 -#: templates/contest/moss.html:41 templates/problem/list.html:197 -#: templates/problem/list.html:213 templates/user/user-problems.html:58 +#: templates/contest/moss.html:41 templates/problem/list.html:188 +#: templates/problem/list.html:204 templates/user/user-problems.html:58 #: templates/user/user-problems.html:102 msgid "Problem" msgstr "Problemă" @@ -154,7 +154,7 @@ msgstr "Problemă" msgid "Problems" msgstr "Probleme" -#: judge/admin/contest.py:76 judge/admin/submission.py:249 +#: judge/admin/contest.py:76 judge/admin/submission.py:250 #: templates/admin/judge/submission/change_form.html:14 #: templates/admin/judge/submission/change_form.html:17 #: templates/submission/source.html:34 templates/submission/status.html:89 @@ -237,7 +237,7 @@ msgstr[2] "" msgid "Unlock contest submissions" msgstr "Deblochează submisiile către concurs" -#: judge/admin/contest.py:280 judge/admin/submission.py:175 +#: judge/admin/contest.py:280 judge/admin/submission.py:176 #, python-format msgid "%d submission was successfully scheduled for rejudging." msgid_plural "%d submissions were successfully scheduled for rejudging." @@ -245,7 +245,7 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: judge/admin/contest.py:356 +#: judge/admin/contest.py:358 #, python-format msgid "%d participation recalculated." msgid_plural "%d participations recalculated." @@ -253,15 +253,15 @@ msgstr[0] "%d participare a fost recalculată." msgstr[1] "%d participări au fost recalculate." msgstr[2] "%d participări au fost recalculate." -#: judge/admin/contest.py:359 +#: judge/admin/contest.py:361 msgid "Recalculate results" msgstr "Recalculează rezultatele" -#: judge/admin/contest.py:363 judge/admin/organization.py:113 +#: judge/admin/contest.py:365 judge/admin/organization.py:113 msgid "username" msgstr "nume de utilizator" -#: judge/admin/contest.py:368 templates/base.html:249 +#: judge/admin/contest.py:370 templates/base.html:259 msgid "virtual" msgstr "virtual" @@ -274,8 +274,8 @@ msgid "Summary" msgstr "Rezumat" #: judge/admin/interface.py:124 judge/models/contest.py:491 -#: judge/models/contest.py:623 judge/models/profile.py:331 -#: judge/models/profile.py:362 judge/models/submission.py:67 +#: judge/models/contest.py:623 judge/models/profile.py:347 +#: judge/models/profile.py:378 judge/models/submission.py:67 #: judge/models/ticket.py:32 msgid "user" msgstr "utilizator" @@ -306,8 +306,8 @@ msgid "Taxonomy" msgstr "Taxonomie" #: judge/admin/problem.py:133 templates/contest/contest.html:196 -#: templates/problem/data.html:380 templates/problem/list.html:202 -#: templates/problem/list.html:224 templates/user/base-users-table.html:10 +#: templates/problem/data.html:381 templates/problem/list.html:193 +#: templates/problem/list.html:215 templates/user/base-users-table.html:11 #: templates/user/user-problems.html:60 msgid "Points" msgstr "Puncte" @@ -316,9 +316,9 @@ msgstr "Puncte" msgid "Limits" msgstr "Limite" -#: judge/admin/problem.py:135 judge/admin/submission.py:243 +#: judge/admin/problem.py:135 judge/admin/submission.py:244 #: templates/problem/submission-diff.html:65 templates/stats/tabs.html:4 -#: templates/submission/list.html:317 +#: templates/submission/list.html:319 msgid "Language" msgstr "Limbaj" @@ -378,19 +378,19 @@ msgstr "problemă" msgid "timezone" msgstr "fus orar" -#: judge/admin/profile.py:98 judge/admin/submission.py:222 +#: judge/admin/profile.py:98 judge/admin/submission.py:223 #: templates/organization/requests/log.html:9 #: templates/organization/requests/pending.html:12 -#: templates/ticket/list.html:201 +#: templates/ticket/list.html:202 msgid "User" msgstr "Utilizator" -#: judge/admin/profile.py:103 templates/registration/registration_form.html:149 +#: judge/admin/profile.py:103 templates/registration/registration_form.html:145 msgid "Email" msgstr "Email" #: judge/admin/profile.py:108 judge/views/register.py:28 -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "Timezone" msgstr "Fus orar" @@ -410,26 +410,26 @@ msgstr[2] "%d utilizatorii au scoruri recalculate." msgid "Recalculate scores" msgstr "Recalculați scorurile" -#: judge/admin/runtime.py:50 templates/user/edit-profile.html:124 -#: templates/user/edit-profile.html:246 templates/user/edit-profile.html:366 -#: templates/user/edit-profile.html:396 +#: judge/admin/runtime.py:52 templates/user/edit-profile.html:119 +#: templates/user/edit-profile.html:241 templates/user/edit-profile.html:353 +#: templates/user/edit-profile.html:383 msgid "Regenerate" msgstr "Regenerează" -#: judge/admin/runtime.py:64 +#: judge/admin/runtime.py:66 msgid "Description" msgstr "Descriere" -#: judge/admin/runtime.py:65 +#: judge/admin/runtime.py:67 msgid "Information" msgstr "Informație" -#: judge/admin/runtime.py:66 +#: judge/admin/runtime.py:68 msgid "Capabilities" msgstr "Capabilități" #: judge/admin/submission.py:24 judge/admin/submission.py:43 -#: judge/admin/submission.py:232 +#: judge/admin/submission.py:233 msgid "None" msgstr "Gol" @@ -461,19 +461,19 @@ msgctxt "contest problem" msgid "%(problem)s in %(contest)s" msgstr "%(problem)s în %(contest)s" -#: judge/admin/submission.py:160 judge/admin/submission.py:182 +#: judge/admin/submission.py:161 judge/admin/submission.py:183 msgid "You do not have the permission to rejudge submissions." msgstr "Nu aveți permisiunea de a rejuriza submisii." -#: judge/admin/submission.py:166 +#: judge/admin/submission.py:167 msgid "You do not have the permission to rejudge THAT many submissions." msgstr "Nu aveți permisiunea de a rejuriza ATÂT de multe submisii." -#: judge/admin/submission.py:178 +#: judge/admin/submission.py:179 msgid "Rejudge the selected submissions" msgstr "Rejurizează submisiile selectate" -#: judge/admin/submission.py:204 judge/views/problem_manage.py:129 +#: judge/admin/submission.py:205 judge/views/problem_manage.py:129 #, python-format msgid "%d submission was successfully rescored." msgid_plural "%d submissions were successfully rescored." @@ -481,38 +481,38 @@ msgstr[0] "%d submisie a fost repunctată cu succes." msgstr[1] "%d submisii au fost repunctate cu succes." msgstr[2] "%d submisii au fost repunctate cu succes." -#: judge/admin/submission.py:207 +#: judge/admin/submission.py:208 msgid "Rescore the selected submissions" msgstr "Repunctează submisiile selectate" -#: judge/admin/submission.py:211 +#: judge/admin/submission.py:212 msgid "Problem code" msgstr "Codul problemei" -#: judge/admin/submission.py:216 +#: judge/admin/submission.py:217 msgid "Problem name" msgstr "Numele problemei" -#: judge/admin/submission.py:226 templates/organization/requests/log.html:10 +#: judge/admin/submission.py:227 templates/organization/requests/log.html:10 #: templates/organization/requests/pending.html:13 msgid "Time" msgstr "Ora" -#: judge/admin/submission.py:234 +#: judge/admin/submission.py:235 #, python-format msgid "%d KB" msgstr "%d KB" -#: judge/admin/submission.py:236 +#: judge/admin/submission.py:237 #, python-format msgid "%.2f MB" msgstr "%.2f MB" -#: judge/admin/submission.py:238 +#: judge/admin/submission.py:239 msgid "Memory" msgstr "Memorie" -#: judge/admin/submission.py:247 +#: judge/admin/submission.py:248 msgid "Locked" msgstr "" @@ -537,6 +537,7 @@ msgid "Comment body" msgstr "Comentariu" #: judge/comments.py:47 judge/views/comment.py:40 judge/views/ticket.py:46 +#: judge/views/user.py:347 msgid "Your part is silent, little toad." msgstr "" @@ -647,7 +648,7 @@ msgstr "" msgid "Scratch codes must be 16 Base32 characters." msgstr "" -#: judge/forms.py:39 judge/forms.py:265 +#: judge/forms.py:39 judge/forms.py:266 msgid "Invalid scratch code." msgstr "" @@ -671,83 +672,83 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: judge/forms.py:98 +#: judge/forms.py:99 msgid "Download comments?" msgstr "Descarci comentariile?" -#: judge/forms.py:99 +#: judge/forms.py:100 msgid "Download submissions?" msgstr "Descarci submisiile?" -#: judge/forms.py:100 +#: judge/forms.py:101 msgid "Filter by problem code glob:" msgstr "" -#: judge/forms.py:104 +#: judge/forms.py:105 msgid "Leave empty to include all submissions" msgstr "" -#: judge/forms.py:107 templates/problem/manage_submission.html:142 +#: judge/forms.py:108 templates/problem/manage_submission.html:144 msgid "Filter by result:" msgstr "Filtrează după rezultat:" -#: judge/forms.py:113 +#: judge/forms.py:114 msgid "Please select at least one thing to download." msgstr "" -#: judge/forms.py:139 +#: judge/forms.py:140 msgid "Any judge" msgstr "Orice evaluator" -#: judge/forms.py:160 judge/views/register.py:25 +#: judge/forms.py:161 judge/views/register.py:25 #: templates/problem/submission-diff.html:63 -#: templates/registration/registration_form.html:143 -#: templates/user/base-users-table.html:5 +#: templates/registration/registration_form.html:139 +#: templates/user/base-users-table.html:6 msgid "Username" msgstr "Nume de utilizator" -#: judge/forms.py:161 templates/registration/registration_form.html:155 -#: templates/registration/registration_form.html:169 +#: judge/forms.py:162 templates/registration/registration_form.html:151 +#: templates/registration/registration_form.html:165 msgid "Password" msgstr "Parolă" -#: judge/forms.py:193 +#: judge/forms.py:194 msgid "Invalid code length." msgstr "" -#: judge/forms.py:224 +#: judge/forms.py:225 msgid "Invalid WebAuthn response." msgstr "" -#: judge/forms.py:227 +#: judge/forms.py:228 msgid "No WebAuthn challenge issued." msgstr "" -#: judge/forms.py:233 +#: judge/forms.py:234 msgid "Invalid WebAuthn credential ID." msgstr "" -#: judge/forms.py:263 +#: judge/forms.py:264 msgid "Invalid two-factor authentication token or scratch code." msgstr "" -#: judge/forms.py:267 +#: judge/forms.py:268 msgid "Must specify either totp_token or webauthn_response." msgstr "" -#: judge/forms.py:271 judge/models/problem.py:118 +#: judge/forms.py:272 judge/models/problem.py:118 msgid "Problem code must be ^[a-z0-9]+$" msgstr "Codul problemei trebuie să fie ^[a-z0-9]+$" -#: judge/forms.py:276 +#: judge/forms.py:277 msgid "Problem with code already exists." msgstr "O problemă cu acest cod există deja." -#: judge/forms.py:281 judge/models/contest.py:68 +#: judge/forms.py:282 judge/models/contest.py:68 msgid "Contest id must be ^[a-z0-9]+$" msgstr "Identificatorul de concurs trebuie să fie ^[a-z0-9]+$" -#: judge/forms.py:286 +#: judge/forms.py:287 msgid "Contest with key already exists." msgstr "Un concurs cu această cheie există deja." @@ -770,26 +771,42 @@ msgstr "pe {time}" msgid "Unrated" msgstr "Nu are evaluări" -#: judge/models/choices.py:59 +#: judge/models/choices.py:24 +msgid "Follow site theme" +msgstr "" + +#: judge/models/choices.py:60 msgid "Leave as LaTeX" msgstr "Lasă ca LaTeX" -#: judge/models/choices.py:60 +#: judge/models/choices.py:61 msgid "SVG only" msgstr "Doar SVG" -#: judge/models/choices.py:61 +#: judge/models/choices.py:62 msgid "MathML only" msgstr "Doar MathML" -#: judge/models/choices.py:62 +#: judge/models/choices.py:63 msgid "MathJax with SVG fallback" msgstr "MathJax cu SVG ca fallback" -#: judge/models/choices.py:63 +#: judge/models/choices.py:64 msgid "Detect best quality" msgstr "Detectează cea mai bună calitate" +#: judge/models/choices.py:70 +msgid "Follow system default" +msgstr "" + +#: judge/models/choices.py:71 +msgid "Light" +msgstr "" + +#: judge/models/choices.py:72 +msgid "Dark" +msgstr "" + #: judge/models/comment.py:25 msgid "Page code must be ^[pcs]:[a-z0-9]+$|^b:\\d+$" msgstr "Codul paginii trebuie să fie ^[pcs]:[a-z0-9]+$|^b:\\d+$" @@ -1902,7 +1919,7 @@ msgid "Non-trailing spaces" msgstr "" #: judge/models/problem_data.py:28 -msgid "Unordered" +msgid "Sorted" msgstr "" #: judge/models/problem_data.py:29 @@ -2074,7 +2091,7 @@ msgid "Edit all organizations" msgstr "" #: judge/models/profile.py:98 judge/models/profile.py:103 -#: judge/models/profile.py:160 judge/models/profile.py:363 +#: judge/models/profile.py:161 judge/models/profile.py:379 msgid "organization" msgstr "organizație" @@ -2115,7 +2132,7 @@ msgstr "membrii" msgid "%(class)s in %(organization)s" msgstr "" -#: judge/models/profile.py:142 judge/models/profile.py:371 +#: judge/models/profile.py:142 judge/models/profile.py:387 msgid "class" msgstr "clasă" @@ -2140,26 +2157,30 @@ msgid "Ace theme" msgstr "" #: judge/models/profile.py:158 -msgid "last access time" +msgid "site theme" msgstr "" #: judge/models/profile.py:159 +msgid "last access time" +msgstr "" + +#: judge/models/profile.py:160 msgid "last IP" msgstr "ultimul IP" -#: judge/models/profile.py:162 +#: judge/models/profile.py:163 msgid "display rank" msgstr "" -#: judge/models/profile.py:164 +#: judge/models/profile.py:165 msgid "Normal User" msgstr "" -#: judge/models/profile.py:165 +#: judge/models/profile.py:166 msgid "Problem Setter" msgstr "" -#: judge/models/profile.py:166 templates/base.html:211 +#: judge/models/profile.py:167 templates/base.html:221 #: templates/comments/list.html:97 templates/contest/contest-list-tabs.html:25 #: templates/contest/ranking-table.html:51 #: templates/problem/problem-list-tabs.html:6 @@ -2169,200 +2190,200 @@ msgstr "" msgid "Admin" msgstr "Administrare" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "comment mute" msgstr "" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "Some users are at their best when silent." msgstr "Pe unii utilizatori e preferabil sa nu ȋi auzi." -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "unlisted user" msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "User will not be ranked." msgstr "" -#: judge/models/profile.py:172 +#: judge/models/profile.py:173 msgid "banned from voting on problem point values" msgstr "" -#: judge/models/profile.py:173 +#: judge/models/profile.py:174 msgid "User will not be able to vote on problems' point values." msgstr "" -#: judge/models/profile.py:177 +#: judge/models/profile.py:178 msgid "user script" msgstr "" -#: judge/models/profile.py:178 +#: judge/models/profile.py:179 msgid "User-defined JavaScript for site customization." msgstr "JavaScript definit de utilizator pentru personalizarea site-ului." -#: judge/models/profile.py:179 +#: judge/models/profile.py:180 msgid "current contest" msgstr "" -#: judge/models/profile.py:181 +#: judge/models/profile.py:182 msgid "math engine" msgstr "motor de matematică" -#: judge/models/profile.py:183 +#: judge/models/profile.py:184 msgid "The rendering engine used to render math." msgstr "" -#: judge/models/profile.py:184 +#: judge/models/profile.py:185 msgid "TOTP 2FA enabled" msgstr "" -#: judge/models/profile.py:185 +#: judge/models/profile.py:186 msgid "Check to enable TOTP-based two-factor authentication." msgstr "" -#: judge/models/profile.py:186 +#: judge/models/profile.py:187 msgid "WebAuthn 2FA enabled" msgstr "" -#: judge/models/profile.py:187 +#: judge/models/profile.py:188 msgid "Check to enable WebAuthn-based two-factor authentication." msgstr "" -#: judge/models/profile.py:188 +#: judge/models/profile.py:189 msgid "TOTP key" msgstr "" -#: judge/models/profile.py:189 +#: judge/models/profile.py:190 msgid "32-character Base32-encoded key for TOTP." msgstr "" -#: judge/models/profile.py:191 +#: judge/models/profile.py:192 msgid "TOTP key must be empty or Base32." msgstr "" -#: judge/models/profile.py:192 +#: judge/models/profile.py:193 msgid "scratch codes" msgstr "" -#: judge/models/profile.py:193 +#: judge/models/profile.py:194 msgid "JSON array of 16-character Base32-encoded codes for scratch codes." msgstr "" -#: judge/models/profile.py:197 +#: judge/models/profile.py:198 msgid "Scratch codes must be empty or a JSON array of 16-character Base32 codes." msgstr "" -#: judge/models/profile.py:199 +#: judge/models/profile.py:200 msgid "last TOTP timecode" msgstr "" -#: judge/models/profile.py:200 +#: judge/models/profile.py:201 msgid "API token" msgstr "" -#: judge/models/profile.py:201 +#: judge/models/profile.py:202 msgid "64-character hex-encoded API access token." msgstr "" -#: judge/models/profile.py:203 +#: judge/models/profile.py:204 msgid "API token must be None or hexadecimal" msgstr "" -#: judge/models/profile.py:204 +#: judge/models/profile.py:205 msgid "internal notes" msgstr "" -#: judge/models/profile.py:205 +#: judge/models/profile.py:206 msgid "Notes for administrators regarding this user." msgstr "" -#: judge/models/profile.py:206 +#: judge/models/profile.py:207 msgid "last data download time" msgstr "" -#: judge/models/profile.py:207 +#: judge/models/profile.py:208 msgid "display name override" msgstr "" -#: judge/models/profile.py:208 +#: judge/models/profile.py:209 msgid "Name displayed in place of username." msgstr "" -#: judge/models/profile.py:323 +#: judge/models/profile.py:333 msgid "Shows in-progress development stuff" msgstr "" -#: judge/models/profile.py:324 +#: judge/models/profile.py:334 msgid "Edit TOTP settings" msgstr "" -#: judge/models/profile.py:326 +#: judge/models/profile.py:336 msgid "user profile" msgstr "profil utilizator" -#: judge/models/profile.py:327 +#: judge/models/profile.py:337 msgid "user profiles" msgstr "profiluri utilizatori" -#: judge/models/profile.py:333 +#: judge/models/profile.py:349 msgid "device name" msgstr "nume dispozitiv" -#: judge/models/profile.py:334 +#: judge/models/profile.py:350 msgid "credential ID" msgstr "" -#: judge/models/profile.py:335 +#: judge/models/profile.py:351 msgid "public key" msgstr "" -#: judge/models/profile.py:336 +#: judge/models/profile.py:352 msgid "sign counter" msgstr "" -#: judge/models/profile.py:354 +#: judge/models/profile.py:370 #, python-format msgid "WebAuthn credential: %(name)s" msgstr "" -#: judge/models/profile.py:357 +#: judge/models/profile.py:373 msgid "WebAuthn credential" msgstr "" -#: judge/models/profile.py:358 +#: judge/models/profile.py:374 msgid "WebAuthn credentials" msgstr "" -#: judge/models/profile.py:365 +#: judge/models/profile.py:381 msgid "request time" msgstr "" -#: judge/models/profile.py:366 +#: judge/models/profile.py:382 msgid "state" msgstr "stare" -#: judge/models/profile.py:367 templates/organization/requests/tabs.html:4 +#: judge/models/profile.py:383 templates/organization/requests/tabs.html:4 msgid "Pending" msgstr "Nehotărât" -#: judge/models/profile.py:368 templates/organization/requests/tabs.html:10 +#: judge/models/profile.py:384 templates/organization/requests/tabs.html:10 msgid "Approved" msgstr "Aprobat" -#: judge/models/profile.py:369 templates/organization/requests/tabs.html:13 +#: judge/models/profile.py:385 templates/organization/requests/tabs.html:13 msgid "Rejected" msgstr "Respins" -#: judge/models/profile.py:372 +#: judge/models/profile.py:388 msgid "reason" msgstr "motiv" -#: judge/models/profile.py:381 +#: judge/models/profile.py:397 msgid "organization join request" msgstr "cerere de a se alătura organizației" -#: judge/models/profile.py:382 +#: judge/models/profile.py:398 msgid "organization join requests" msgstr "cereri de a se alătura organizației" @@ -2605,15 +2626,15 @@ msgstr "Internal Error (judging server error)" msgid "submission time" msgstr "" -#: judge/models/submission.py:70 judge/models/submission.py:255 +#: judge/models/submission.py:70 judge/models/submission.py:265 msgid "execution time" msgstr "timp de execuție" -#: judge/models/submission.py:71 judge/models/submission.py:256 +#: judge/models/submission.py:71 judge/models/submission.py:266 msgid "memory usage" msgstr "consum de memorie" -#: judge/models/submission.py:72 judge/models/submission.py:257 +#: judge/models/submission.py:72 judge/models/submission.py:267 msgid "points granted" msgstr "puncte acordate" @@ -2702,60 +2723,60 @@ msgstr "" msgid "submissions" msgstr "submisii" -#: judge/models/submission.py:235 judge/models/submission.py:251 +#: judge/models/submission.py:245 judge/models/submission.py:261 msgid "associated submission" msgstr "" -#: judge/models/submission.py:237 +#: judge/models/submission.py:247 msgid "source code" msgstr "" -#: judge/models/submission.py:240 +#: judge/models/submission.py:250 #, python-format msgid "Source of %(submission)s" msgstr "" -#: judge/models/submission.py:243 +#: judge/models/submission.py:253 msgid "submission source" msgstr "" -#: judge/models/submission.py:244 +#: judge/models/submission.py:254 msgid "submission sources" msgstr "" -#: judge/models/submission.py:253 +#: judge/models/submission.py:263 msgid "test case ID" msgstr "" -#: judge/models/submission.py:254 +#: judge/models/submission.py:264 msgid "status flag" msgstr "" -#: judge/models/submission.py:258 +#: judge/models/submission.py:268 msgid "points possible" msgstr "" -#: judge/models/submission.py:259 +#: judge/models/submission.py:269 msgid "batch number" msgstr "" -#: judge/models/submission.py:260 +#: judge/models/submission.py:270 msgid "judging feedback" msgstr "" -#: judge/models/submission.py:261 +#: judge/models/submission.py:271 msgid "extended judging feedback" msgstr "" -#: judge/models/submission.py:262 +#: judge/models/submission.py:272 msgid "program output" msgstr "" -#: judge/models/submission.py:276 +#: judge/models/submission.py:286 msgid "submission test case" msgstr "testul submisiei" -#: judge/models/submission.py:277 +#: judge/models/submission.py:287 msgid "submission test cases" msgstr "testele submisiei" @@ -2976,7 +2997,7 @@ msgctxt "hours and minutes" msgid "%h:%m" msgstr "%h:%m" -#: judge/views/blog.py:36 +#: judge/views/blog.py:37 #, python-format msgid "Page %d of Posts" msgstr "Pagina %d din Posturi" @@ -3470,11 +3491,11 @@ msgstr "Furnizorul dvs. de e-mail nu este permis datorită istoriei de abuz. Vă msgid "Register" msgstr "Înscrie-te" -#: judge/views/register.py:103 +#: judge/views/register.py:101 msgid "Activation Key Invalid" msgstr "" -#: judge/views/register.py:114 +#: judge/views/register.py:112 msgid "Authentication failure" msgstr "Problemă la autentificare" @@ -3486,7 +3507,7 @@ msgstr "" msgid "Language statistics" msgstr "Statistici ale limbei" -#: judge/views/status.py:23 templates/submission/list.html:308 +#: judge/views/status.py:23 templates/submission/list.html:310 msgid "Status" msgstr "Stare" @@ -3669,41 +3690,45 @@ msgstr "j M Y, \\o\\r\\a G:i" msgid "Preparing your data..." msgstr "" -#: judge/views/user.py:298 templates/user/edit-profile.html:345 +#: judge/views/user.py:298 templates/user/edit-profile.html:344 msgid "Download your data" msgstr "" +#: judge/views/user.py:347 +msgid "Can't edit profile" +msgstr "" + #: judge/views/user.py:354 msgid "Updated on site" msgstr "Actualizat pe loc" -#: judge/views/user.py:387 templates/admin/auth/user/change_form.html:14 -#: templates/admin/auth/user/change_form.html:17 templates/base.html:213 +#: judge/views/user.py:386 templates/admin/auth/user/change_form.html:14 +#: templates/admin/auth/user/change_form.html:17 templates/base.html:223 #: templates/user/user-tabs.html:16 msgid "Edit profile" msgstr "Editează-ți profilul" -#: judge/views/user.py:402 +#: judge/views/user.py:400 msgid "Generated API token for user" msgstr "" -#: judge/views/user.py:414 +#: judge/views/user.py:412 msgid "Removed API token for user" msgstr "" -#: judge/views/user.py:424 +#: judge/views/user.py:422 msgid "Generated scratch codes for user" msgstr "" -#: judge/views/user.py:430 templates/user/user-list-tabs.html:4 +#: judge/views/user.py:428 templates/user/user-list-tabs.html:4 msgid "Leaderboard" msgstr "" -#: judge/views/user.py:491 +#: judge/views/user.py:489 msgid "You have been successfully logged out." msgstr "" -#: judge/views/user.py:508 +#: judge/views/user.py:506 msgid "You have sent too many password reset requests. Please try again later." msgstr "" @@ -3732,13 +3757,13 @@ msgstr "" #: templates/admin/judge/judge/change_form.html:27 #: templates/admin/judge/judge/change_form.html:30 -#: templates/user/edit-profile.html:355 templates/user/edit-profile.html:358 +#: templates/user/edit-profile.html:372 templates/user/edit-profile.html:375 msgid "Disable" msgstr "Dezactivează" #: templates/admin/judge/judge/change_form.html:33 #: templates/admin/judge/judge/change_form.html:36 -#: templates/user/edit-profile.html:386 +#: templates/user/edit-profile.html:403 msgid "Enable" msgstr "Activează" @@ -3758,48 +3783,48 @@ msgstr "" msgid "Edit user" msgstr "Editează utilizator" -#: templates/base.html:206 +#: templates/base.html:216 #, python-format msgid "Hello, %(username)s." msgstr "Bună ziua, %(username)s." -#: templates/base.html:215 +#: templates/base.html:225 msgid "Stop impersonating" msgstr "" -#: templates/base.html:220 +#: templates/base.html:230 msgid "Log out" msgstr "Log out" -#: templates/base.html:229 +#: templates/base.html:239 #: templates/registration/password_reset_complete.html:4 msgid "Log in" msgstr "Autentificare" -#: templates/base.html:230 templates/registration/registration_form.html:181 +#: templates/base.html:240 templates/registration/registration_form.html:177 msgid "or" msgstr "sau" -#: templates/base.html:231 +#: templates/base.html:241 msgid "Sign up" msgstr "Înregistrare" -#: templates/base.html:243 +#: templates/base.html:253 msgid "spectating" msgstr "" -#: templates/base.html:256 +#: templates/base.html:266 msgid "This site works best with JavaScript enabled." msgstr "Acest site funcționează cel mai bine cu JavaScript activat." -#: templates/base.html:283 +#: templates/base.html:293 msgid "proudly powered by **DMOJ**" msgstr "" #: templates/blog/content.html:13 templates/comments/list.html:89 #: templates/comments/list.html:105 templates/contest/contest-tabs.html:23 #: templates/contest/tag-title.html:9 templates/flatpages/admin_link.html:3 -#: templates/license.html:10 templates/problem/data.html:423 +#: templates/license.html:10 templates/problem/data.html:424 #: templates/problem/editorial.html:14 msgid "Edit" msgstr "Modifică" @@ -4000,15 +4025,15 @@ msgstr "Scor" msgid "No votes" msgstr "" -#: templates/common-content.html:32 templates/user/edit-profile.html:219 +#: templates/common-content.html:32 templates/user/edit-profile.html:214 msgid "Click to copy" msgstr "" -#: templates/common-content.html:33 templates/user/edit-profile.html:220 +#: templates/common-content.html:33 templates/user/edit-profile.html:215 msgid "Copy" msgstr "" -#: templates/common-content.html:44 templates/user/edit-profile.html:231 +#: templates/common-content.html:44 templates/user/edit-profile.html:226 msgid "Copied!" msgstr "" @@ -4089,7 +4114,7 @@ msgstr "Calendar" msgid "Info" msgstr "" -#: templates/contest/contest-tabs.html:6 templates/submission/list.html:334 +#: templates/contest/contest-tabs.html:6 templates/submission/list.html:336 msgid "Statistics" msgstr "Stastici" @@ -4307,7 +4332,7 @@ msgstr "" #: templates/contest/contest.html:198 templates/contest/list.html:152 #: templates/contest/list.html:194 templates/contest/list.html:271 -#: templates/problem/list.html:203 templates/problem/list.html:235 +#: templates/problem/list.html:194 templates/problem/list.html:226 msgid "Users" msgstr "Utilizatori" @@ -4315,7 +4340,7 @@ msgstr "Utilizatori" msgid "Editorials" msgstr "" -#: templates/contest/contest.html:226 templates/problem/list.html:229 +#: templates/contest/contest.html:226 templates/problem/list.html:220 msgid "Editorial" msgstr "" @@ -4481,19 +4506,19 @@ msgstr "Dez-descalifică" msgid "Disqualify" msgstr "Descalifică" -#: templates/contest/ranking.html:151 +#: templates/contest/ranking.html:46 msgid "Are you sure you want to disqualify this participation?" msgstr "Ești sigur că vrei să descalifici această participare?" -#: templates/contest/ranking.html:156 +#: templates/contest/ranking.html:51 msgid "Are you sure you want to un-disqualify this participation?" msgstr "Ești sigur că vrei să dez-descalifici această participare?" -#: templates/contest/ranking.html:228 +#: templates/contest/ranking.html:124 msgid "View user participation" msgstr "" -#: templates/contest/ranking.html:232 +#: templates/contest/ranking.html:128 msgid "Show organizations" msgstr "Arată organizațiile" @@ -4680,7 +4705,7 @@ msgid "There are no requests to approve." msgstr "Nu aveți cereri de aprobare." #: templates/organization/requests/pending.html:17 -#: templates/problem/data.html:387 +#: templates/problem/data.html:388 msgid "Delete?" msgstr "Ștergeți?" @@ -4716,59 +4741,59 @@ msgstr "" msgid "Enter a new code for the cloned problem:" msgstr "" -#: templates/problem/data.html:70 +#: templates/problem/data.html:71 msgid "precision (decimal digits)" msgstr "" -#: templates/problem/data.html:339 +#: templates/problem/data.html:340 msgid "View YAML" msgstr "Vezi YAML" -#: templates/problem/data.html:355 +#: templates/problem/data.html:356 msgid "Show columns:" msgstr "" -#: templates/problem/data.html:358 templates/problem/data.html:382 +#: templates/problem/data.html:359 templates/problem/data.html:383 msgid "Output prefix" msgstr "" -#: templates/problem/data.html:362 templates/problem/data.html:383 +#: templates/problem/data.html:363 templates/problem/data.html:384 msgid "Output limit" msgstr "" -#: templates/problem/data.html:366 templates/problem/data.html:384 +#: templates/problem/data.html:367 templates/problem/data.html:385 msgid "Checker" msgstr "Verificator" -#: templates/problem/data.html:370 templates/problem/data.html:385 +#: templates/problem/data.html:371 templates/problem/data.html:386 msgid "Generator args" msgstr "" -#: templates/problem/data.html:377 +#: templates/problem/data.html:378 msgid "Type" msgstr "" -#: templates/problem/data.html:378 +#: templates/problem/data.html:379 msgid "Input file" msgstr "" -#: templates/problem/data.html:379 +#: templates/problem/data.html:380 msgid "Output file" msgstr "" -#: templates/problem/data.html:381 +#: templates/problem/data.html:382 msgid "Pretest?" msgstr "" -#: templates/problem/data.html:433 templates/problem/submit.html:256 +#: templates/problem/data.html:434 templates/problem/submit.html:190 msgid "Submit!" msgstr "Trimiteți!" -#: templates/problem/data.html:434 +#: templates/problem/data.html:435 msgid "Add new case" msgstr "" -#: templates/problem/data.html:436 +#: templates/problem/data.html:437 msgid "Save" msgstr "" @@ -4787,86 +4812,86 @@ msgstr[0] "Autor:" msgstr[1] "Autori:" msgstr[2] "Autori:" -#: templates/problem/list.html:58 +#: templates/problem/list.html:49 msgid "Filter by type..." msgstr "" -#: templates/problem/list.html:176 +#: templates/problem/list.html:167 msgid "Hot problems" msgstr "" -#: templates/problem/list.html:198 templates/problem/list.html:216 +#: templates/problem/list.html:189 templates/problem/list.html:207 #: templates/problem/search-form.html:35 templates/user/user-problems.html:59 msgid "Category" msgstr "Categorie" -#: templates/problem/list.html:200 templates/problem/list.html:220 +#: templates/problem/list.html:191 templates/problem/list.html:211 msgid "Types" msgstr "Tipuri" -#: templates/problem/list.html:227 +#: templates/problem/list.html:218 #, python-format msgid "AC %%" msgstr "" -#: templates/problem/manage_submission.html:55 +#: templates/problem/manage_submission.html:56 msgid "Leave empty to not filter by language" msgstr "" -#: templates/problem/manage_submission.html:60 +#: templates/problem/manage_submission.html:62 msgid "Leave empty to not filter by result" msgstr "" -#: templates/problem/manage_submission.html:79 +#: templates/problem/manage_submission.html:81 msgid "Need valid values for both start and end IDs." msgstr "" -#: templates/problem/manage_submission.html:82 +#: templates/problem/manage_submission.html:84 msgid "End ID must be after start ID." msgstr "" -#: templates/problem/manage_submission.html:90 +#: templates/problem/manage_submission.html:92 #, python-brace-format msgid "You are about to rejudge {count} submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:96 +#: templates/problem/manage_submission.html:98 msgid "You are about to rejudge a few submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:115 +#: templates/problem/manage_submission.html:117 msgid "Rejudge Submissions" msgstr "" -#: templates/problem/manage_submission.html:120 +#: templates/problem/manage_submission.html:122 msgid "Filter by ID:" msgstr "Filtrează după ID:" -#: templates/problem/manage_submission.html:123 +#: templates/problem/manage_submission.html:125 msgid "Starting ID:" msgstr "" -#: templates/problem/manage_submission.html:127 +#: templates/problem/manage_submission.html:129 msgid "Ending ID:" msgstr "" -#: templates/problem/manage_submission.html:131 +#: templates/problem/manage_submission.html:133 msgid "This range includes both endpoints." msgstr "" -#: templates/problem/manage_submission.html:134 +#: templates/problem/manage_submission.html:136 msgid "Filter by language:" msgstr "" -#: templates/problem/manage_submission.html:150 +#: templates/problem/manage_submission.html:152 msgid "Rejudge selected submissions" msgstr "" -#: templates/problem/manage_submission.html:157 +#: templates/problem/manage_submission.html:159 msgid "Rescore Everything" msgstr "Reevaluează Totul" -#: templates/problem/manage_submission.html:158 +#: templates/problem/manage_submission.html:160 #, python-format msgid "This will rescore %(count)s submission." msgid_plural "This will rescore %(count)s submissions." @@ -4874,7 +4899,7 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: templates/problem/manage_submission.html:166 +#: templates/problem/manage_submission.html:168 #, python-format msgid "Are you sure you want to rescore %(count)s submission?" msgid_plural "Are you sure you want to rescore %(count)s submissions?" @@ -4882,7 +4907,7 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: templates/problem/manage_submission.html:171 +#: templates/problem/manage_submission.html:173 msgid "Rescore all submissions" msgstr "Reevaluează toate submisiile" @@ -5048,8 +5073,8 @@ msgstr "Tipuri de probleme" msgid "Point range" msgstr "Interval de puncte" -#: templates/problem/search-form.html:68 templates/submission/list.html:326 -#: templates/ticket/list.html:188 +#: templates/problem/search-form.html:68 templates/submission/list.html:328 +#: templates/ticket/list.html:189 msgid "Go" msgstr "Caută" @@ -5058,7 +5083,7 @@ msgid "Random" msgstr "Aleatoriu" #: templates/problem/submission-diff.html:62 -#: templates/status/language-list.html:34 templates/ticket/list.html:199 +#: templates/status/language-list.html:34 templates/ticket/list.html:200 msgid "ID" msgstr "ID" @@ -5070,20 +5095,20 @@ msgstr "Rezultat" msgid "Date" msgstr "" -#: templates/problem/submit.html:117 +#: templates/problem/submit.html:118 msgid "Your source code must contain at most 65536 characters." msgstr "Codul sursă trebuie să conțină cel mult 65536 de caractere." -#: templates/problem/submit.html:204 +#: templates/problem/submit.html:138 msgid "Warning!" msgstr "Atenție!" -#: templates/problem/submit.html:205 +#: templates/problem/submit.html:139 #, python-format msgid "Your default language, %(language)s, is unavailable for this problem and has been deselected." msgstr "" -#: templates/problem/submit.html:213 +#: templates/problem/submit.html:147 #, python-format msgid "You have %(left)s submission left" msgid_plural "You have %(left)s submissions left" @@ -5091,11 +5116,11 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: templates/problem/submit.html:218 +#: templates/problem/submit.html:152 msgid "You have 0 submissions left" msgstr "" -#: templates/problem/submit.html:252 +#: templates/problem/submit.html:186 msgid "No judge is available for this problem." msgstr "Nici un judge nu este disponibil pentru această problemă." @@ -5305,7 +5330,7 @@ msgstr "Echipa %(site_name)s" msgid "Password reset on %(site_name)s" msgstr "Parola resetată pe %(site_name)s" -#: templates/registration/profile_creation.html:44 +#: templates/registration/profile_creation.html:38 #: templates/registration/username_select.html:7 msgid "Continue >" msgstr "Continuă >" @@ -5318,36 +5343,36 @@ msgstr "Înregistrarea este închisă în prezent. Vă rugăm să luați legătu msgid "You have successfully been registered. An email has been sent to the email address you provided to confirm your registration." msgstr "V-ați înregistrat cu succes! Un email a fost trimis la adresa de email oferită pentru a confirma înregistrarea dumneavoastră." -#: templates/registration/registration_form.html:170 +#: templates/registration/registration_form.html:166 msgid "(again, for confirmation)" msgstr "" -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "(select your closest major city)" msgstr "" -#: templates/registration/registration_form.html:182 +#: templates/registration/registration_form.html:178 msgid "pick from map" msgstr "alege de pe hartă" -#: templates/registration/registration_form.html:187 +#: templates/registration/registration_form.html:183 msgid "Default language" msgstr "" -#: templates/registration/registration_form.html:190 +#: templates/registration/registration_form.html:186 msgid "Affiliated organizations" msgstr "" -#: templates/registration/registration_form.html:199 -#: templates/user/edit-profile.html:322 +#: templates/registration/registration_form.html:195 +#: templates/user/edit-profile.html:321 msgid "Notify me about upcoming contests" msgstr "" -#: templates/registration/registration_form.html:213 +#: templates/registration/registration_form.html:209 msgid "By registering, you agree to our [Terms & Conditions][0]." msgstr "" -#: templates/registration/registration_form.html:216 +#: templates/registration/registration_form.html:212 msgid "Register!" msgstr "Înscrie-te!" @@ -5389,17 +5414,17 @@ msgid "Enable Two Factor Authentication" msgstr "" #: templates/registration/totp_enable.html:98 -#: templates/user/edit-profile.html:374 +#: templates/user/edit-profile.html:391 msgid "Below is a list of one-time use scratch codes." msgstr "" #: templates/registration/totp_enable.html:99 -#: templates/user/edit-profile.html:375 +#: templates/user/edit-profile.html:392 msgid "These codes can only be used once and are for emergency use." msgstr "" #: templates/registration/totp_enable.html:100 -#: templates/user/edit-profile.html:376 +#: templates/user/edit-profile.html:393 msgid "You can use these codes to login to your account or disable two-factor authentication." msgstr "" @@ -5408,7 +5433,7 @@ msgid "If you ever need more scratch codes, you can regenerate them on the edit msgstr "" #: templates/registration/totp_enable.html:102 -#: templates/user/edit-profile.html:378 +#: templates/user/edit-profile.html:395 msgid "Please write these down and keep them in a secure location." msgstr "" @@ -5426,12 +5451,12 @@ msgid "If you lose your authentication device and are unable to use your scratch msgstr "" #: templates/registration/two_factor_auth.html:33 -#: templates/user/edit-profile.html:164 +#: templates/user/edit-profile.html:159 msgid "WebAuthn is not supported by your browser." msgstr "" #: templates/registration/two_factor_auth.html:54 -#: templates/user/edit-profile.html:188 +#: templates/user/edit-profile.html:183 msgid "Failed to contact server." msgstr "" @@ -5529,23 +5554,23 @@ msgstr "Informații eroare" msgid "Are you sure you want to rejudge?" msgstr "" -#: templates/submission/list.html:74 +#: templates/submission/list.html:75 msgid "Filter by status..." msgstr "Filtrează după stare..." -#: templates/submission/list.html:80 +#: templates/submission/list.html:82 msgid "Filter by language..." msgstr "Filtrează după limbaj..." -#: templates/submission/list.html:304 +#: templates/submission/list.html:306 msgid "Filter submissions" msgstr "Filtrează submisiile" -#: templates/submission/list.html:340 +#: templates/submission/list.html:342 msgid "Total:" msgstr "Total:" -#: templates/submission/list.html:350 +#: templates/submission/list.html:352 msgid "You were disconnected. Refresh to show latest updates." msgstr "Ai fost deconectat. Reîmprospătează pagina pentru a afișa ultimele actualizări." @@ -5709,34 +5734,34 @@ msgstr "Redeschise: " msgid "Closed: " msgstr "Închise: " -#: templates/ticket/list.html:156 +#: templates/ticket/list.html:157 msgid "Use desktop notification" msgstr "" -#: templates/ticket/list.html:162 +#: templates/ticket/list.html:163 msgid "Hide closed tickets" msgstr "" -#: templates/ticket/list.html:167 +#: templates/ticket/list.html:168 msgid "Show my tickets only" msgstr "" -#: templates/ticket/list.html:171 +#: templates/ticket/list.html:172 msgid "Filing user" msgstr "" -#: templates/ticket/list.html:180 templates/ticket/ticket.html:196 +#: templates/ticket/list.html:181 templates/ticket/ticket.html:196 msgid "Assignee" msgid_plural "Assignees" msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: templates/ticket/list.html:200 +#: templates/ticket/list.html:201 msgid "Title" msgstr "Titlu" -#: templates/ticket/list.html:202 +#: templates/ticket/list.html:203 msgid "Assignees" msgstr "" @@ -5787,131 +5812,135 @@ msgstr "" msgid "Nothing here." msgstr "Nimic aici." -#: templates/user/base-users-table.html:3 +#: templates/user/base-users-table.html:4 msgid "Rank" msgstr "Rang" -#: templates/user/base-users.html:14 templates/user/base-users.html:57 +#: templates/user/base-users.html:15 templates/user/base-users.html:58 msgid "Search by handle..." msgstr "" -#: templates/user/edit-profile.html:107 +#: templates/user/edit-profile.html:102 msgid "The administrators for this site require all the staff to have Two-factor Authentication enabled, so it may not be disabled at this time." msgstr "" -#: templates/user/edit-profile.html:112 +#: templates/user/edit-profile.html:107 msgid "Are you sure you want to generate or regenerate your API token?" msgstr "" -#: templates/user/edit-profile.html:113 +#: templates/user/edit-profile.html:108 msgid "This will invalidate any previous API tokens." msgstr "" -#: templates/user/edit-profile.html:114 +#: templates/user/edit-profile.html:109 msgid "It also allows access to your account without Two-factor Authentication." msgstr "" -#: templates/user/edit-profile.html:115 +#: templates/user/edit-profile.html:110 msgid "You will not be able to view your API token after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:116 templates/user/edit-profile.html:210 +#: templates/user/edit-profile.html:111 templates/user/edit-profile.html:205 msgid "Generating..." msgstr "Se generează..." -#: templates/user/edit-profile.html:130 templates/user/edit-profile.html:398 +#: templates/user/edit-profile.html:125 templates/user/edit-profile.html:355 msgid "Remove" msgstr "Șterge" -#: templates/user/edit-profile.html:140 +#: templates/user/edit-profile.html:135 msgid "Are you sure you want to remove your API token?" msgstr "Ești sigur că vrei să ștergi token-ul tău de API?" -#: templates/user/edit-profile.html:147 templates/user/edit-profile.html:370 -#: templates/user/edit-profile.html:402 +#: templates/user/edit-profile.html:142 templates/user/edit-profile.html:359 +#: templates/user/edit-profile.html:387 msgid "Generate" msgstr "Generează" -#: templates/user/edit-profile.html:193 +#: templates/user/edit-profile.html:188 msgid "Are you sure you want to delete this security key?" msgstr "Ești sigur că vrei să ștergi această cheie de securitate?" -#: templates/user/edit-profile.html:207 +#: templates/user/edit-profile.html:202 msgid "Are you sure you want to generate or regenerate a new set of scratch codes?" msgstr "" -#: templates/user/edit-profile.html:208 +#: templates/user/edit-profile.html:203 msgid "This will invalidate any previous scratch codes you have." msgstr "" -#: templates/user/edit-profile.html:209 templates/user/edit-profile.html:379 +#: templates/user/edit-profile.html:204 templates/user/edit-profile.html:396 msgid "You will not be able to view your scratch codes after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:278 +#: templates/user/edit-profile.html:273 msgid "Self-description:" msgstr "Auto-descriere:" -#: templates/user/edit-profile.html:285 +#: templates/user/edit-profile.html:280 msgid "Select your closest major city" msgstr "Selectează cel mai apropiat oraș major" -#: templates/user/edit-profile.html:286 +#: templates/user/edit-profile.html:281 msgid "Time zone:" msgstr "Fus orar:" -#: templates/user/edit-profile.html:290 +#: templates/user/edit-profile.html:285 msgid "Language:" msgstr "Limbaj:" -#: templates/user/edit-profile.html:294 +#: templates/user/edit-profile.html:289 +msgid "Site theme:" +msgstr "" + +#: templates/user/edit-profile.html:293 msgid "Editor theme:" msgstr "Temă editor:" -#: templates/user/edit-profile.html:299 +#: templates/user/edit-profile.html:298 msgid "Math engine:" msgstr "Motor de matematică:" -#: templates/user/edit-profile.html:308 +#: templates/user/edit-profile.html:307 msgid "Affiliated organizations:" msgstr "" -#: templates/user/edit-profile.html:334 +#: templates/user/edit-profile.html:333 msgid "Change your avatar" msgstr "Schimbați avatarul" -#: templates/user/edit-profile.html:339 +#: templates/user/edit-profile.html:338 msgid "Change your password" msgstr "Schimbați parola" -#: templates/user/edit-profile.html:352 -msgid "Two-factor Authentication is enabled:" -msgstr "Autentificarea în doi pași este activată:" +#: templates/user/edit-profile.html:350 +msgid "API token:" +msgstr "Token API:" -#: templates/user/edit-profile.html:360 +#: templates/user/edit-profile.html:356 templates/user/edit-profile.html:384 +msgid "Hidden" +msgstr "Ascuns" + +#: templates/user/edit-profile.html:369 +msgid "Two-factor authentication is enabled:" +msgstr "" + +#: templates/user/edit-profile.html:377 msgid "Refresh" msgstr "Reîmprospătează" -#: templates/user/edit-profile.html:363 +#: templates/user/edit-profile.html:380 msgid "Scratch codes:" msgstr "" -#: templates/user/edit-profile.html:367 templates/user/edit-profile.html:399 -msgid "Hidden" -msgstr "Ascuns" - -#: templates/user/edit-profile.html:377 +#: templates/user/edit-profile.html:394 msgid "If you ever need more scratch codes, you can regenerate them here." msgstr "" -#: templates/user/edit-profile.html:385 +#: templates/user/edit-profile.html:402 msgid "Two-factor Authentication is disabled:" msgstr "Autentificarea în doi pași este dezactivată:" -#: templates/user/edit-profile.html:393 -msgid "API token:" -msgstr "Token API:" - #: templates/user/edit-profile.html:410 msgid "Security keys:" msgstr "Chei de securitate:" diff --git a/locale/ro/LC_MESSAGES/djangojs.po b/locale/ro/LC_MESSAGES/djangojs.po index 074c707a99..695c27bb28 100644 --- a/locale/ro/LC_MESSAGES/djangojs.po +++ b/locale/ro/LC_MESSAGES/djangojs.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-20 23:43+0000\n" -"PO-Revision-Date: 2022-12-21 00:44\n" +"POT-Creation-Date: 2023-01-23 05:23+0000\n" +"PO-Revision-Date: 2023-01-24 00:52\n" "Last-Translator: \n" "Language-Team: Romanian\n" "Language: ro_RO\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: djangojs.po\n" "X-Crowdin-File-ID: 12\n" -#: resources/common.js:195 +#: resources/common.js:194 msgctxt "time format with day" msgid "%d day %h:%m:%s" msgid_plural "%d days %h:%m:%s" @@ -25,7 +25,7 @@ msgstr[0] "%d zi %h:%m:%s" msgstr[1] "%d zi %h:%m:%s" msgstr[2] "%d zile %h:%m:%s" -#: resources/common.js:198 +#: resources/common.js:197 msgctxt "time format without day" msgid "%h:%m:%s" msgstr "%h:%m:%s" diff --git a/locale/ru/LC_MESSAGES/django.po b/locale/ru/LC_MESSAGES/django.po index 91ab1a7aaa..fa64384dbf 100644 --- a/locale/ru/LC_MESSAGES/django.po +++ b/locale/ru/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-20 23:04+0000\n" -"PO-Revision-Date: 2023-01-22 00:52\n" +"POT-Creation-Date: 2023-02-17 22:33+0000\n" +"PO-Revision-Date: 2023-02-18 00:50\n" "Last-Translator: \n" "Language-Team: Russian\n" "Language: ru_RU\n" @@ -17,91 +17,91 @@ msgstr "" "X-Crowdin-File: django.po\n" "X-Crowdin-File-ID: 10\n" -#: dmoj/settings.py:380 +#: dmoj/settings.py:392 msgid "Catalan" msgstr "Каталанский" -#: dmoj/settings.py:381 +#: dmoj/settings.py:393 msgid "German" msgstr "Немецкий" -#: dmoj/settings.py:382 +#: dmoj/settings.py:394 msgid "Greek" msgstr "Греческий" -#: dmoj/settings.py:383 +#: dmoj/settings.py:395 msgid "English" msgstr "Английский" -#: dmoj/settings.py:384 +#: dmoj/settings.py:396 msgid "Spanish" msgstr "Испанский" -#: dmoj/settings.py:385 +#: dmoj/settings.py:397 msgid "French" msgstr "Французский" -#: dmoj/settings.py:386 +#: dmoj/settings.py:398 msgid "Croatian" msgstr "Хорватский" -#: dmoj/settings.py:387 +#: dmoj/settings.py:399 msgid "Hungarian" msgstr "Венгерский" -#: dmoj/settings.py:388 +#: dmoj/settings.py:400 msgid "Japanese" msgstr "Японский" -#: dmoj/settings.py:389 +#: dmoj/settings.py:401 msgid "Korean" msgstr "Корейский" -#: dmoj/settings.py:390 +#: dmoj/settings.py:402 msgid "Brazilian Portuguese" msgstr "Бразильский португальский" -#: dmoj/settings.py:391 +#: dmoj/settings.py:403 msgid "Romanian" msgstr "Румынский" -#: dmoj/settings.py:392 +#: dmoj/settings.py:404 msgid "Russian" msgstr "Русский" -#: dmoj/settings.py:393 +#: dmoj/settings.py:405 msgid "Serbian (Latin)" msgstr "Сербский (латиница)" -#: dmoj/settings.py:394 +#: dmoj/settings.py:406 msgid "Turkish" msgstr "Турецкий" -#: dmoj/settings.py:395 +#: dmoj/settings.py:407 msgid "Vietnamese" msgstr "Вьетнамский" -#: dmoj/settings.py:396 +#: dmoj/settings.py:408 msgid "Simplified Chinese" msgstr "Упрощенный китайский" -#: dmoj/settings.py:397 +#: dmoj/settings.py:409 msgid "Traditional Chinese" msgstr "Традиционный китайский" -#: dmoj/urls.py:32 +#: dmoj/urls.py:31 msgid "Activation Successful!" -msgstr "" +msgstr "Активация прошла успешно!" -#: dmoj/urls.py:40 +#: dmoj/urls.py:39 msgid "Registration Completed" -msgstr "" +msgstr "Регистрация завершена" -#: dmoj/urls.py:44 +#: dmoj/urls.py:43 msgid "Registration Not Allowed" -msgstr "" +msgstr "Регистрация запрещена" -#: dmoj/urls.py:93 templates/base.html:183 +#: dmoj/urls.py:92 templates/base.html:193 msgid "Home" msgstr "Главная" @@ -144,8 +144,8 @@ msgid "Included contests" msgstr "Включены конкурсы" #: judge/admin/contest.py:65 templates/contest/contest.html:195 -#: templates/contest/moss.html:41 templates/problem/list.html:197 -#: templates/problem/list.html:213 templates/user/user-problems.html:58 +#: templates/contest/moss.html:41 templates/problem/list.html:188 +#: templates/problem/list.html:204 templates/user/user-problems.html:58 #: templates/user/user-problems.html:102 msgid "Problem" msgstr "Проблема" @@ -156,12 +156,12 @@ msgstr "Проблема" msgid "Problems" msgstr "Задачи" -#: judge/admin/contest.py:76 judge/admin/submission.py:249 +#: judge/admin/contest.py:76 judge/admin/submission.py:250 #: templates/admin/judge/submission/change_form.html:14 #: templates/admin/judge/submission/change_form.html:17 #: templates/submission/source.html:34 templates/submission/status.html:89 msgid "Rejudge" -msgstr "" +msgstr "Перетестирование" #: judge/admin/contest.py:122 msgid "Settings" @@ -195,8 +195,8 @@ msgstr "Судья" #, python-format msgid "%d contest successfully marked as visible." msgid_plural "%d contests successfully marked as visible." -msgstr[0] "" -msgstr[1] "" +msgstr[0] "%d соревнование успешно помечено как видимое." +msgstr[1] "%d соревнований успешно помечены как скрытые." msgstr[2] "" msgstr[3] "" @@ -243,7 +243,7 @@ msgstr[3] "%d соревнования успешно разблокирован msgid "Unlock contest submissions" msgstr "Разблокировать решения соревнования" -#: judge/admin/contest.py:280 judge/admin/submission.py:175 +#: judge/admin/contest.py:280 judge/admin/submission.py:176 #, python-format msgid "%d submission was successfully scheduled for rejudging." msgid_plural "%d submissions were successfully scheduled for rejudging." @@ -252,24 +252,24 @@ msgstr[1] "%d решений было успешно запланировано msgstr[2] "%d решений было успешно запланировано для повторного тестирования." msgstr[3] "%d решения были успешно запланированы для повторного тестирования." -#: judge/admin/contest.py:356 +#: judge/admin/contest.py:358 #, python-format msgid "%d participation recalculated." msgid_plural "%d participations recalculated." -msgstr[0] "" -msgstr[1] "" +msgstr[0] "%d участие в соревновании пересчитано" +msgstr[1] "%d участий в соревнованиях пересчитано" msgstr[2] "" msgstr[3] "" -#: judge/admin/contest.py:359 +#: judge/admin/contest.py:361 msgid "Recalculate results" msgstr "Пересчитать результаты" -#: judge/admin/contest.py:363 judge/admin/organization.py:113 +#: judge/admin/contest.py:365 judge/admin/organization.py:113 msgid "username" msgstr "имя пользователя" -#: judge/admin/contest.py:368 templates/base.html:249 +#: judge/admin/contest.py:370 templates/base.html:259 msgid "virtual" msgstr "виртуальный" @@ -282,8 +282,8 @@ msgid "Summary" msgstr "Сводка" #: judge/admin/interface.py:124 judge/models/contest.py:491 -#: judge/models/contest.py:623 judge/models/profile.py:331 -#: judge/models/profile.py:362 judge/models/submission.py:67 +#: judge/models/contest.py:623 judge/models/profile.py:347 +#: judge/models/profile.py:378 judge/models/submission.py:67 #: judge/models/ticket.py:32 msgid "user" msgstr "пользователь" @@ -299,7 +299,7 @@ msgstr "Посмотреть на сайте" #: judge/admin/problem.py:21 msgid "Edit reason" -msgstr "" +msgstr "Причина изменения" #: judge/admin/problem.py:30 msgid "Describe the changes you made (optional)" @@ -314,8 +314,8 @@ msgid "Taxonomy" msgstr "Таксономия" #: judge/admin/problem.py:133 templates/contest/contest.html:196 -#: templates/problem/data.html:380 templates/problem/list.html:202 -#: templates/problem/list.html:224 templates/user/base-users-table.html:10 +#: templates/problem/data.html:381 templates/problem/list.html:193 +#: templates/problem/list.html:215 templates/user/base-users-table.html:11 #: templates/user/user-problems.html:60 msgid "Points" msgstr "Очки" @@ -324,9 +324,9 @@ msgstr "Очки" msgid "Limits" msgstr "Ограничения" -#: judge/admin/problem.py:135 judge/admin/submission.py:243 +#: judge/admin/problem.py:135 judge/admin/submission.py:244 #: templates/problem/submission-diff.html:65 templates/stats/tabs.html:4 -#: templates/submission/list.html:317 +#: templates/submission/list.html:319 msgid "Language" msgstr "Язык" @@ -389,19 +389,19 @@ msgstr "задача" msgid "timezone" msgstr "часовой пояс" -#: judge/admin/profile.py:98 judge/admin/submission.py:222 +#: judge/admin/profile.py:98 judge/admin/submission.py:223 #: templates/organization/requests/log.html:9 #: templates/organization/requests/pending.html:12 -#: templates/ticket/list.html:201 +#: templates/ticket/list.html:202 msgid "User" msgstr "Пользователь" -#: judge/admin/profile.py:103 templates/registration/registration_form.html:149 +#: judge/admin/profile.py:103 templates/registration/registration_form.html:145 msgid "Email" msgstr "Эл. почта" #: judge/admin/profile.py:108 judge/views/register.py:28 -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "Timezone" msgstr "Часовой пояс" @@ -422,26 +422,26 @@ msgstr[3] "У %d пользователей пересчитали баллы." msgid "Recalculate scores" msgstr "Пересчитать баллы" -#: judge/admin/runtime.py:50 templates/user/edit-profile.html:124 -#: templates/user/edit-profile.html:246 templates/user/edit-profile.html:366 -#: templates/user/edit-profile.html:396 +#: judge/admin/runtime.py:52 templates/user/edit-profile.html:119 +#: templates/user/edit-profile.html:241 templates/user/edit-profile.html:353 +#: templates/user/edit-profile.html:383 msgid "Regenerate" -msgstr "" +msgstr "Сгенерировать новый" -#: judge/admin/runtime.py:64 +#: judge/admin/runtime.py:66 msgid "Description" msgstr "Описание" -#: judge/admin/runtime.py:65 +#: judge/admin/runtime.py:67 msgid "Information" msgstr "Информация" -#: judge/admin/runtime.py:66 +#: judge/admin/runtime.py:68 msgid "Capabilities" msgstr "Возможности" #: judge/admin/submission.py:24 judge/admin/submission.py:43 -#: judge/admin/submission.py:232 +#: judge/admin/submission.py:233 msgid "None" msgstr "Не указано" @@ -473,19 +473,19 @@ msgctxt "contest problem" msgid "%(problem)s in %(contest)s" msgstr "%(problem)s в %(contest)s" -#: judge/admin/submission.py:160 judge/admin/submission.py:182 +#: judge/admin/submission.py:161 judge/admin/submission.py:183 msgid "You do not have the permission to rejudge submissions." msgstr "У вас нет доступа перетестировать поссылки." -#: judge/admin/submission.py:166 +#: judge/admin/submission.py:167 msgid "You do not have the permission to rejudge THAT many submissions." msgstr "У вас нет доступа перетестировать ТАК много посылок." -#: judge/admin/submission.py:178 +#: judge/admin/submission.py:179 msgid "Rejudge the selected submissions" msgstr "Перетестировать выбранные посылки" -#: judge/admin/submission.py:204 judge/views/problem_manage.py:129 +#: judge/admin/submission.py:205 judge/views/problem_manage.py:129 #, python-format msgid "%d submission was successfully rescored." msgid_plural "%d submissions were successfully rescored." @@ -494,38 +494,38 @@ msgstr[1] "%d решений были переоценены." msgstr[2] "%d решения были переоценены." msgstr[3] "%d решения были переоценены." -#: judge/admin/submission.py:207 +#: judge/admin/submission.py:208 msgid "Rescore the selected submissions" msgstr "Пересчитать выбранные решения" -#: judge/admin/submission.py:211 +#: judge/admin/submission.py:212 msgid "Problem code" msgstr "Исходный код" -#: judge/admin/submission.py:216 +#: judge/admin/submission.py:217 msgid "Problem name" msgstr "Название задачи" -#: judge/admin/submission.py:226 templates/organization/requests/log.html:10 +#: judge/admin/submission.py:227 templates/organization/requests/log.html:10 #: templates/organization/requests/pending.html:13 msgid "Time" msgstr "Время" -#: judge/admin/submission.py:234 +#: judge/admin/submission.py:235 #, python-format msgid "%d KB" msgstr "%d KB" -#: judge/admin/submission.py:236 +#: judge/admin/submission.py:237 #, python-format msgid "%.2f MB" msgstr "%.2f MB" -#: judge/admin/submission.py:238 +#: judge/admin/submission.py:239 msgid "Memory" msgstr "Память" -#: judge/admin/submission.py:247 +#: judge/admin/submission.py:248 msgid "Locked" msgstr "" @@ -550,6 +550,7 @@ msgid "Comment body" msgstr "Содержание комментария" #: judge/comments.py:47 judge/views/comment.py:40 judge/views/ticket.py:46 +#: judge/views/user.py:347 msgid "Your part is silent, little toad." msgstr "Твоя роль-молчание, маленькая жаба." @@ -663,7 +664,7 @@ msgstr "Недействительный двухфакторный код ау msgid "Scratch codes must be 16 Base32 characters." msgstr "Коды Scratch должны содержать 16 символов Base32." -#: judge/forms.py:39 judge/forms.py:265 +#: judge/forms.py:39 judge/forms.py:266 msgid "Invalid scratch code." msgstr "Неверный scratch-код." @@ -688,83 +689,83 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: judge/forms.py:98 +#: judge/forms.py:99 msgid "Download comments?" msgstr "Загрузить комментарии?" -#: judge/forms.py:99 +#: judge/forms.py:100 msgid "Download submissions?" msgstr "Загрузить решения?" -#: judge/forms.py:100 +#: judge/forms.py:101 msgid "Filter by problem code glob:" msgstr "Фильтр по коду задач:" -#: judge/forms.py:104 +#: judge/forms.py:105 msgid "Leave empty to include all submissions" msgstr "Оставьте пустым, чтобы включить все сданные решения" -#: judge/forms.py:107 templates/problem/manage_submission.html:142 +#: judge/forms.py:108 templates/problem/manage_submission.html:144 msgid "Filter by result:" msgstr "Фильтр по результату:" -#: judge/forms.py:113 +#: judge/forms.py:114 msgid "Please select at least one thing to download." msgstr "Пожалуйста, выберите хотя бы одну вещь для загрузки." -#: judge/forms.py:139 +#: judge/forms.py:140 msgid "Any judge" msgstr "Любой судья" -#: judge/forms.py:160 judge/views/register.py:25 +#: judge/forms.py:161 judge/views/register.py:25 #: templates/problem/submission-diff.html:63 -#: templates/registration/registration_form.html:143 -#: templates/user/base-users-table.html:5 +#: templates/registration/registration_form.html:139 +#: templates/user/base-users-table.html:6 msgid "Username" msgstr "Имя пользователя" -#: judge/forms.py:161 templates/registration/registration_form.html:155 -#: templates/registration/registration_form.html:169 +#: judge/forms.py:162 templates/registration/registration_form.html:151 +#: templates/registration/registration_form.html:165 msgid "Password" msgstr "Пароль" -#: judge/forms.py:193 +#: judge/forms.py:194 msgid "Invalid code length." msgstr "Неверная длина кода." -#: judge/forms.py:224 +#: judge/forms.py:225 msgid "Invalid WebAuthn response." msgstr "Недействительный WebAuthn ответ." -#: judge/forms.py:227 +#: judge/forms.py:228 msgid "No WebAuthn challenge issued." msgstr "" -#: judge/forms.py:233 +#: judge/forms.py:234 msgid "Invalid WebAuthn credential ID." msgstr "Неверный идентификатор учетных данных WebAuthn." -#: judge/forms.py:263 +#: judge/forms.py:264 msgid "Invalid two-factor authentication token or scratch code." msgstr "Неверный токен двухфакторной аутентификации или scratch-код." -#: judge/forms.py:267 +#: judge/forms.py:268 msgid "Must specify either totp_token or webauthn_response." msgstr "Необходимо указать totp_token или webauthn_response." -#: judge/forms.py:271 judge/models/problem.py:118 +#: judge/forms.py:272 judge/models/problem.py:118 msgid "Problem code must be ^[a-z0-9]+$" msgstr "Код задачи должен быть ^[a-z0-9]+$" -#: judge/forms.py:276 +#: judge/forms.py:277 msgid "Problem with code already exists." msgstr "Задача с кодом уже существует." -#: judge/forms.py:281 judge/models/contest.py:68 +#: judge/forms.py:282 judge/models/contest.py:68 msgid "Contest id must be ^[a-z0-9]+$" msgstr "Идентификатор соревнования должен быть ^[a-z0-9]+$" -#: judge/forms.py:286 +#: judge/forms.py:287 msgid "Contest with key already exists." msgstr "Соревнование с ключом уже существует." @@ -787,26 +788,42 @@ msgstr "" msgid "Unrated" msgstr "Не в рейтинге" -#: judge/models/choices.py:59 +#: judge/models/choices.py:24 +msgid "Follow site theme" +msgstr "" + +#: judge/models/choices.py:60 msgid "Leave as LaTeX" msgstr "Оставить LaTeX" -#: judge/models/choices.py:60 +#: judge/models/choices.py:61 msgid "SVG only" msgstr "Только SVG" -#: judge/models/choices.py:61 +#: judge/models/choices.py:62 msgid "MathML only" msgstr "Только MathML" -#: judge/models/choices.py:62 +#: judge/models/choices.py:63 msgid "MathJax with SVG fallback" msgstr "MathJax с резервным вариантом SVG" -#: judge/models/choices.py:63 +#: judge/models/choices.py:64 msgid "Detect best quality" msgstr "Определить лучшее качество" +#: judge/models/choices.py:70 +msgid "Follow system default" +msgstr "" + +#: judge/models/choices.py:71 +msgid "Light" +msgstr "Светлая" + +#: judge/models/choices.py:72 +msgid "Dark" +msgstr "Тёмная" + #: judge/models/comment.py:25 msgid "Page code must be ^[pcs]:[a-z0-9]+$|^b:\\d+$" msgstr "Код страницы должен быть ^[pcs]:[a-z0-9]+$|^b:\\d+$" @@ -1919,7 +1936,7 @@ msgid "Non-trailing spaces" msgstr "" #: judge/models/problem_data.py:28 -msgid "Unordered" +msgid "Sorted" msgstr "" #: judge/models/problem_data.py:29 @@ -2091,7 +2108,7 @@ msgid "Edit all organizations" msgstr "" #: judge/models/profile.py:98 judge/models/profile.py:103 -#: judge/models/profile.py:160 judge/models/profile.py:363 +#: judge/models/profile.py:161 judge/models/profile.py:379 msgid "organization" msgstr "" @@ -2132,7 +2149,7 @@ msgstr "" msgid "%(class)s in %(organization)s" msgstr "" -#: judge/models/profile.py:142 judge/models/profile.py:371 +#: judge/models/profile.py:142 judge/models/profile.py:387 msgid "class" msgstr "" @@ -2157,26 +2174,30 @@ msgid "Ace theme" msgstr "" #: judge/models/profile.py:158 -msgid "last access time" +msgid "site theme" msgstr "" #: judge/models/profile.py:159 +msgid "last access time" +msgstr "" + +#: judge/models/profile.py:160 msgid "last IP" msgstr "" -#: judge/models/profile.py:162 +#: judge/models/profile.py:163 msgid "display rank" msgstr "" -#: judge/models/profile.py:164 +#: judge/models/profile.py:165 msgid "Normal User" msgstr "" -#: judge/models/profile.py:165 +#: judge/models/profile.py:166 msgid "Problem Setter" msgstr "" -#: judge/models/profile.py:166 templates/base.html:211 +#: judge/models/profile.py:167 templates/base.html:221 #: templates/comments/list.html:97 templates/contest/contest-list-tabs.html:25 #: templates/contest/ranking-table.html:51 #: templates/problem/problem-list-tabs.html:6 @@ -2186,200 +2207,200 @@ msgstr "" msgid "Admin" msgstr "" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "comment mute" msgstr "" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "Some users are at their best when silent." msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "unlisted user" msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "User will not be ranked." msgstr "" -#: judge/models/profile.py:172 +#: judge/models/profile.py:173 msgid "banned from voting on problem point values" msgstr "" -#: judge/models/profile.py:173 +#: judge/models/profile.py:174 msgid "User will not be able to vote on problems' point values." msgstr "" -#: judge/models/profile.py:177 +#: judge/models/profile.py:178 msgid "user script" msgstr "" -#: judge/models/profile.py:178 +#: judge/models/profile.py:179 msgid "User-defined JavaScript for site customization." msgstr "" -#: judge/models/profile.py:179 +#: judge/models/profile.py:180 msgid "current contest" msgstr "" -#: judge/models/profile.py:181 +#: judge/models/profile.py:182 msgid "math engine" msgstr "" -#: judge/models/profile.py:183 +#: judge/models/profile.py:184 msgid "The rendering engine used to render math." msgstr "" -#: judge/models/profile.py:184 +#: judge/models/profile.py:185 msgid "TOTP 2FA enabled" msgstr "" -#: judge/models/profile.py:185 +#: judge/models/profile.py:186 msgid "Check to enable TOTP-based two-factor authentication." msgstr "" -#: judge/models/profile.py:186 +#: judge/models/profile.py:187 msgid "WebAuthn 2FA enabled" msgstr "" -#: judge/models/profile.py:187 +#: judge/models/profile.py:188 msgid "Check to enable WebAuthn-based two-factor authentication." msgstr "" -#: judge/models/profile.py:188 +#: judge/models/profile.py:189 msgid "TOTP key" msgstr "" -#: judge/models/profile.py:189 +#: judge/models/profile.py:190 msgid "32-character Base32-encoded key for TOTP." msgstr "" -#: judge/models/profile.py:191 +#: judge/models/profile.py:192 msgid "TOTP key must be empty or Base32." msgstr "" -#: judge/models/profile.py:192 +#: judge/models/profile.py:193 msgid "scratch codes" msgstr "" -#: judge/models/profile.py:193 +#: judge/models/profile.py:194 msgid "JSON array of 16-character Base32-encoded codes for scratch codes." msgstr "" -#: judge/models/profile.py:197 +#: judge/models/profile.py:198 msgid "Scratch codes must be empty or a JSON array of 16-character Base32 codes." msgstr "" -#: judge/models/profile.py:199 +#: judge/models/profile.py:200 msgid "last TOTP timecode" msgstr "" -#: judge/models/profile.py:200 +#: judge/models/profile.py:201 msgid "API token" msgstr "" -#: judge/models/profile.py:201 +#: judge/models/profile.py:202 msgid "64-character hex-encoded API access token." msgstr "" -#: judge/models/profile.py:203 +#: judge/models/profile.py:204 msgid "API token must be None or hexadecimal" msgstr "" -#: judge/models/profile.py:204 +#: judge/models/profile.py:205 msgid "internal notes" msgstr "" -#: judge/models/profile.py:205 +#: judge/models/profile.py:206 msgid "Notes for administrators regarding this user." msgstr "" -#: judge/models/profile.py:206 +#: judge/models/profile.py:207 msgid "last data download time" msgstr "" -#: judge/models/profile.py:207 +#: judge/models/profile.py:208 msgid "display name override" msgstr "" -#: judge/models/profile.py:208 +#: judge/models/profile.py:209 msgid "Name displayed in place of username." msgstr "" -#: judge/models/profile.py:323 +#: judge/models/profile.py:333 msgid "Shows in-progress development stuff" msgstr "" -#: judge/models/profile.py:324 +#: judge/models/profile.py:334 msgid "Edit TOTP settings" msgstr "" -#: judge/models/profile.py:326 +#: judge/models/profile.py:336 msgid "user profile" msgstr "" -#: judge/models/profile.py:327 +#: judge/models/profile.py:337 msgid "user profiles" msgstr "" -#: judge/models/profile.py:333 +#: judge/models/profile.py:349 msgid "device name" msgstr "" -#: judge/models/profile.py:334 +#: judge/models/profile.py:350 msgid "credential ID" msgstr "" -#: judge/models/profile.py:335 +#: judge/models/profile.py:351 msgid "public key" msgstr "" -#: judge/models/profile.py:336 +#: judge/models/profile.py:352 msgid "sign counter" msgstr "" -#: judge/models/profile.py:354 +#: judge/models/profile.py:370 #, python-format msgid "WebAuthn credential: %(name)s" msgstr "" -#: judge/models/profile.py:357 +#: judge/models/profile.py:373 msgid "WebAuthn credential" msgstr "" -#: judge/models/profile.py:358 +#: judge/models/profile.py:374 msgid "WebAuthn credentials" msgstr "" -#: judge/models/profile.py:365 +#: judge/models/profile.py:381 msgid "request time" msgstr "" -#: judge/models/profile.py:366 +#: judge/models/profile.py:382 msgid "state" msgstr "" -#: judge/models/profile.py:367 templates/organization/requests/tabs.html:4 +#: judge/models/profile.py:383 templates/organization/requests/tabs.html:4 msgid "Pending" msgstr "" -#: judge/models/profile.py:368 templates/organization/requests/tabs.html:10 +#: judge/models/profile.py:384 templates/organization/requests/tabs.html:10 msgid "Approved" msgstr "" -#: judge/models/profile.py:369 templates/organization/requests/tabs.html:13 +#: judge/models/profile.py:385 templates/organization/requests/tabs.html:13 msgid "Rejected" msgstr "" -#: judge/models/profile.py:372 +#: judge/models/profile.py:388 msgid "reason" msgstr "" -#: judge/models/profile.py:381 +#: judge/models/profile.py:397 msgid "organization join request" msgstr "" -#: judge/models/profile.py:382 +#: judge/models/profile.py:398 msgid "organization join requests" msgstr "" @@ -2622,15 +2643,15 @@ msgstr "" msgid "submission time" msgstr "" -#: judge/models/submission.py:70 judge/models/submission.py:255 +#: judge/models/submission.py:70 judge/models/submission.py:265 msgid "execution time" msgstr "" -#: judge/models/submission.py:71 judge/models/submission.py:256 +#: judge/models/submission.py:71 judge/models/submission.py:266 msgid "memory usage" msgstr "" -#: judge/models/submission.py:72 judge/models/submission.py:257 +#: judge/models/submission.py:72 judge/models/submission.py:267 msgid "points granted" msgstr "" @@ -2719,60 +2740,60 @@ msgstr "" msgid "submissions" msgstr "" -#: judge/models/submission.py:235 judge/models/submission.py:251 +#: judge/models/submission.py:245 judge/models/submission.py:261 msgid "associated submission" msgstr "" -#: judge/models/submission.py:237 +#: judge/models/submission.py:247 msgid "source code" msgstr "" -#: judge/models/submission.py:240 +#: judge/models/submission.py:250 #, python-format msgid "Source of %(submission)s" msgstr "" -#: judge/models/submission.py:243 +#: judge/models/submission.py:253 msgid "submission source" msgstr "" -#: judge/models/submission.py:244 +#: judge/models/submission.py:254 msgid "submission sources" msgstr "" -#: judge/models/submission.py:253 +#: judge/models/submission.py:263 msgid "test case ID" msgstr "" -#: judge/models/submission.py:254 +#: judge/models/submission.py:264 msgid "status flag" msgstr "" -#: judge/models/submission.py:258 +#: judge/models/submission.py:268 msgid "points possible" msgstr "" -#: judge/models/submission.py:259 +#: judge/models/submission.py:269 msgid "batch number" msgstr "" -#: judge/models/submission.py:260 +#: judge/models/submission.py:270 msgid "judging feedback" msgstr "" -#: judge/models/submission.py:261 +#: judge/models/submission.py:271 msgid "extended judging feedback" msgstr "" -#: judge/models/submission.py:262 +#: judge/models/submission.py:272 msgid "program output" msgstr "" -#: judge/models/submission.py:276 +#: judge/models/submission.py:286 msgid "submission test case" msgstr "" -#: judge/models/submission.py:277 +#: judge/models/submission.py:287 msgid "submission test cases" msgstr "" @@ -2996,7 +3017,7 @@ msgctxt "hours and minutes" msgid "%h:%m" msgstr "%h:%m" -#: judge/views/blog.py:36 +#: judge/views/blog.py:37 #, python-format msgid "Page %d of Posts" msgstr "" @@ -3495,11 +3516,11 @@ msgstr "" msgid "Register" msgstr "Зарегистрироваться" -#: judge/views/register.py:103 +#: judge/views/register.py:101 msgid "Activation Key Invalid" msgstr "" -#: judge/views/register.py:114 +#: judge/views/register.py:112 msgid "Authentication failure" msgstr "Ошибка авторизации" @@ -3511,7 +3532,7 @@ msgstr "" msgid "Language statistics" msgstr "Статистика языка" -#: judge/views/status.py:23 templates/submission/list.html:308 +#: judge/views/status.py:23 templates/submission/list.html:310 msgid "Status" msgstr "Статус" @@ -3694,41 +3715,45 @@ msgstr "" msgid "Preparing your data..." msgstr "" -#: judge/views/user.py:298 templates/user/edit-profile.html:345 +#: judge/views/user.py:298 templates/user/edit-profile.html:344 msgid "Download your data" msgstr "" +#: judge/views/user.py:347 +msgid "Can't edit profile" +msgstr "" + #: judge/views/user.py:354 msgid "Updated on site" msgstr "" -#: judge/views/user.py:387 templates/admin/auth/user/change_form.html:14 -#: templates/admin/auth/user/change_form.html:17 templates/base.html:213 +#: judge/views/user.py:386 templates/admin/auth/user/change_form.html:14 +#: templates/admin/auth/user/change_form.html:17 templates/base.html:223 #: templates/user/user-tabs.html:16 msgid "Edit profile" msgstr "" -#: judge/views/user.py:402 +#: judge/views/user.py:400 msgid "Generated API token for user" msgstr "" -#: judge/views/user.py:414 +#: judge/views/user.py:412 msgid "Removed API token for user" msgstr "" -#: judge/views/user.py:424 +#: judge/views/user.py:422 msgid "Generated scratch codes for user" msgstr "" -#: judge/views/user.py:430 templates/user/user-list-tabs.html:4 +#: judge/views/user.py:428 templates/user/user-list-tabs.html:4 msgid "Leaderboard" msgstr "" -#: judge/views/user.py:491 +#: judge/views/user.py:489 msgid "You have been successfully logged out." msgstr "" -#: judge/views/user.py:508 +#: judge/views/user.py:506 msgid "You have sent too many password reset requests. Please try again later." msgstr "" @@ -3757,13 +3782,13 @@ msgstr "" #: templates/admin/judge/judge/change_form.html:27 #: templates/admin/judge/judge/change_form.html:30 -#: templates/user/edit-profile.html:355 templates/user/edit-profile.html:358 +#: templates/user/edit-profile.html:372 templates/user/edit-profile.html:375 msgid "Disable" msgstr "" #: templates/admin/judge/judge/change_form.html:33 #: templates/admin/judge/judge/change_form.html:36 -#: templates/user/edit-profile.html:386 +#: templates/user/edit-profile.html:403 msgid "Enable" msgstr "" @@ -3783,48 +3808,48 @@ msgstr "" msgid "Edit user" msgstr "" -#: templates/base.html:206 +#: templates/base.html:216 #, python-format msgid "Hello, %(username)s." msgstr "" -#: templates/base.html:215 +#: templates/base.html:225 msgid "Stop impersonating" msgstr "" -#: templates/base.html:220 +#: templates/base.html:230 msgid "Log out" msgstr "Bыйти" -#: templates/base.html:229 +#: templates/base.html:239 #: templates/registration/password_reset_complete.html:4 msgid "Log in" msgstr "Войти" -#: templates/base.html:230 templates/registration/registration_form.html:181 +#: templates/base.html:240 templates/registration/registration_form.html:177 msgid "or" msgstr "" -#: templates/base.html:231 +#: templates/base.html:241 msgid "Sign up" msgstr "" -#: templates/base.html:243 +#: templates/base.html:253 msgid "spectating" msgstr "" -#: templates/base.html:256 +#: templates/base.html:266 msgid "This site works best with JavaScript enabled." msgstr "" -#: templates/base.html:283 +#: templates/base.html:293 msgid "proudly powered by **DMOJ**" msgstr "" #: templates/blog/content.html:13 templates/comments/list.html:89 #: templates/comments/list.html:105 templates/contest/contest-tabs.html:23 #: templates/contest/tag-title.html:9 templates/flatpages/admin_link.html:3 -#: templates/license.html:10 templates/problem/data.html:423 +#: templates/license.html:10 templates/problem/data.html:424 #: templates/problem/editorial.html:14 msgid "Edit" msgstr "Редактировать" @@ -4025,15 +4050,15 @@ msgstr "" msgid "No votes" msgstr "" -#: templates/common-content.html:32 templates/user/edit-profile.html:219 +#: templates/common-content.html:32 templates/user/edit-profile.html:214 msgid "Click to copy" msgstr "" -#: templates/common-content.html:33 templates/user/edit-profile.html:220 +#: templates/common-content.html:33 templates/user/edit-profile.html:215 msgid "Copy" msgstr "" -#: templates/common-content.html:44 templates/user/edit-profile.html:231 +#: templates/common-content.html:44 templates/user/edit-profile.html:226 msgid "Copied!" msgstr "" @@ -4114,7 +4139,7 @@ msgstr "" msgid "Info" msgstr "" -#: templates/contest/contest-tabs.html:6 templates/submission/list.html:334 +#: templates/contest/contest-tabs.html:6 templates/submission/list.html:336 msgid "Statistics" msgstr "Статистика" @@ -4335,7 +4360,7 @@ msgstr "" #: templates/contest/contest.html:198 templates/contest/list.html:152 #: templates/contest/list.html:194 templates/contest/list.html:271 -#: templates/problem/list.html:203 templates/problem/list.html:235 +#: templates/problem/list.html:194 templates/problem/list.html:226 msgid "Users" msgstr "Пользователи" @@ -4343,7 +4368,7 @@ msgstr "Пользователи" msgid "Editorials" msgstr "" -#: templates/contest/contest.html:226 templates/problem/list.html:229 +#: templates/contest/contest.html:226 templates/problem/list.html:220 msgid "Editorial" msgstr "" @@ -4510,19 +4535,19 @@ msgstr "" msgid "Disqualify" msgstr "" -#: templates/contest/ranking.html:151 +#: templates/contest/ranking.html:46 msgid "Are you sure you want to disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:156 +#: templates/contest/ranking.html:51 msgid "Are you sure you want to un-disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:228 +#: templates/contest/ranking.html:124 msgid "View user participation" msgstr "" -#: templates/contest/ranking.html:232 +#: templates/contest/ranking.html:128 msgid "Show organizations" msgstr "" @@ -4709,7 +4734,7 @@ msgid "There are no requests to approve." msgstr "" #: templates/organization/requests/pending.html:17 -#: templates/problem/data.html:387 +#: templates/problem/data.html:388 msgid "Delete?" msgstr "" @@ -4745,59 +4770,59 @@ msgstr "" msgid "Enter a new code for the cloned problem:" msgstr "" -#: templates/problem/data.html:70 +#: templates/problem/data.html:71 msgid "precision (decimal digits)" msgstr "" -#: templates/problem/data.html:339 +#: templates/problem/data.html:340 msgid "View YAML" msgstr "" -#: templates/problem/data.html:355 +#: templates/problem/data.html:356 msgid "Show columns:" msgstr "" -#: templates/problem/data.html:358 templates/problem/data.html:382 +#: templates/problem/data.html:359 templates/problem/data.html:383 msgid "Output prefix" msgstr "" -#: templates/problem/data.html:362 templates/problem/data.html:383 +#: templates/problem/data.html:363 templates/problem/data.html:384 msgid "Output limit" msgstr "" -#: templates/problem/data.html:366 templates/problem/data.html:384 +#: templates/problem/data.html:367 templates/problem/data.html:385 msgid "Checker" msgstr "" -#: templates/problem/data.html:370 templates/problem/data.html:385 +#: templates/problem/data.html:371 templates/problem/data.html:386 msgid "Generator args" msgstr "" -#: templates/problem/data.html:377 +#: templates/problem/data.html:378 msgid "Type" msgstr "Тип" -#: templates/problem/data.html:378 +#: templates/problem/data.html:379 msgid "Input file" msgstr "" -#: templates/problem/data.html:379 +#: templates/problem/data.html:380 msgid "Output file" msgstr "" -#: templates/problem/data.html:381 +#: templates/problem/data.html:382 msgid "Pretest?" msgstr "" -#: templates/problem/data.html:433 templates/problem/submit.html:256 +#: templates/problem/data.html:434 templates/problem/submit.html:190 msgid "Submit!" msgstr "Отправить!" -#: templates/problem/data.html:434 +#: templates/problem/data.html:435 msgid "Add new case" msgstr "Добавить новый пример" -#: templates/problem/data.html:436 +#: templates/problem/data.html:437 msgid "Save" msgstr "" @@ -4817,86 +4842,86 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: templates/problem/list.html:58 +#: templates/problem/list.html:49 msgid "Filter by type..." msgstr "" -#: templates/problem/list.html:176 +#: templates/problem/list.html:167 msgid "Hot problems" msgstr "" -#: templates/problem/list.html:198 templates/problem/list.html:216 +#: templates/problem/list.html:189 templates/problem/list.html:207 #: templates/problem/search-form.html:35 templates/user/user-problems.html:59 msgid "Category" msgstr "Категория" -#: templates/problem/list.html:200 templates/problem/list.html:220 +#: templates/problem/list.html:191 templates/problem/list.html:211 msgid "Types" msgstr "Типы" -#: templates/problem/list.html:227 +#: templates/problem/list.html:218 #, python-format msgid "AC %%" msgstr "" -#: templates/problem/manage_submission.html:55 +#: templates/problem/manage_submission.html:56 msgid "Leave empty to not filter by language" msgstr "" -#: templates/problem/manage_submission.html:60 +#: templates/problem/manage_submission.html:62 msgid "Leave empty to not filter by result" msgstr "" -#: templates/problem/manage_submission.html:79 +#: templates/problem/manage_submission.html:81 msgid "Need valid values for both start and end IDs." msgstr "" -#: templates/problem/manage_submission.html:82 +#: templates/problem/manage_submission.html:84 msgid "End ID must be after start ID." msgstr "" -#: templates/problem/manage_submission.html:90 +#: templates/problem/manage_submission.html:92 #, python-brace-format msgid "You are about to rejudge {count} submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:96 +#: templates/problem/manage_submission.html:98 msgid "You are about to rejudge a few submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:115 +#: templates/problem/manage_submission.html:117 msgid "Rejudge Submissions" msgstr "" -#: templates/problem/manage_submission.html:120 +#: templates/problem/manage_submission.html:122 msgid "Filter by ID:" msgstr "" -#: templates/problem/manage_submission.html:123 +#: templates/problem/manage_submission.html:125 msgid "Starting ID:" msgstr "" -#: templates/problem/manage_submission.html:127 +#: templates/problem/manage_submission.html:129 msgid "Ending ID:" msgstr "" -#: templates/problem/manage_submission.html:131 +#: templates/problem/manage_submission.html:133 msgid "This range includes both endpoints." msgstr "" -#: templates/problem/manage_submission.html:134 +#: templates/problem/manage_submission.html:136 msgid "Filter by language:" msgstr "" -#: templates/problem/manage_submission.html:150 +#: templates/problem/manage_submission.html:152 msgid "Rejudge selected submissions" msgstr "" -#: templates/problem/manage_submission.html:157 +#: templates/problem/manage_submission.html:159 msgid "Rescore Everything" msgstr "" -#: templates/problem/manage_submission.html:158 +#: templates/problem/manage_submission.html:160 #, python-format msgid "This will rescore %(count)s submission." msgid_plural "This will rescore %(count)s submissions." @@ -4905,7 +4930,7 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: templates/problem/manage_submission.html:166 +#: templates/problem/manage_submission.html:168 #, python-format msgid "Are you sure you want to rescore %(count)s submission?" msgid_plural "Are you sure you want to rescore %(count)s submissions?" @@ -4914,7 +4939,7 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: templates/problem/manage_submission.html:171 +#: templates/problem/manage_submission.html:173 msgid "Rescore all submissions" msgstr "" @@ -5083,8 +5108,8 @@ msgstr "" msgid "Point range" msgstr "" -#: templates/problem/search-form.html:68 templates/submission/list.html:326 -#: templates/ticket/list.html:188 +#: templates/problem/search-form.html:68 templates/submission/list.html:328 +#: templates/ticket/list.html:189 msgid "Go" msgstr "" @@ -5093,7 +5118,7 @@ msgid "Random" msgstr "Случайная задача" #: templates/problem/submission-diff.html:62 -#: templates/status/language-list.html:34 templates/ticket/list.html:199 +#: templates/status/language-list.html:34 templates/ticket/list.html:200 msgid "ID" msgstr "ID" @@ -5105,20 +5130,20 @@ msgstr "" msgid "Date" msgstr "" -#: templates/problem/submit.html:117 +#: templates/problem/submit.html:118 msgid "Your source code must contain at most 65536 characters." msgstr "" -#: templates/problem/submit.html:204 +#: templates/problem/submit.html:138 msgid "Warning!" msgstr "" -#: templates/problem/submit.html:205 +#: templates/problem/submit.html:139 #, python-format msgid "Your default language, %(language)s, is unavailable for this problem and has been deselected." msgstr "" -#: templates/problem/submit.html:213 +#: templates/problem/submit.html:147 #, python-format msgid "You have %(left)s submission left" msgid_plural "You have %(left)s submissions left" @@ -5127,11 +5152,11 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: templates/problem/submit.html:218 +#: templates/problem/submit.html:152 msgid "You have 0 submissions left" msgstr "" -#: templates/problem/submit.html:252 +#: templates/problem/submit.html:186 msgid "No judge is available for this problem." msgstr "" @@ -5343,7 +5368,7 @@ msgstr "" msgid "Password reset on %(site_name)s" msgstr "" -#: templates/registration/profile_creation.html:44 +#: templates/registration/profile_creation.html:38 #: templates/registration/username_select.html:7 msgid "Continue >" msgstr "Продолжить >" @@ -5356,36 +5381,36 @@ msgstr "" msgid "You have successfully been registered. An email has been sent to the email address you provided to confirm your registration." msgstr "" -#: templates/registration/registration_form.html:170 +#: templates/registration/registration_form.html:166 msgid "(again, for confirmation)" msgstr "" -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "(select your closest major city)" msgstr "" -#: templates/registration/registration_form.html:182 +#: templates/registration/registration_form.html:178 msgid "pick from map" msgstr "выбрать на карте" -#: templates/registration/registration_form.html:187 +#: templates/registration/registration_form.html:183 msgid "Default language" msgstr "" -#: templates/registration/registration_form.html:190 +#: templates/registration/registration_form.html:186 msgid "Affiliated organizations" msgstr "" -#: templates/registration/registration_form.html:199 -#: templates/user/edit-profile.html:322 +#: templates/registration/registration_form.html:195 +#: templates/user/edit-profile.html:321 msgid "Notify me about upcoming contests" msgstr "Уведомлять меня о предстоящих соревнованиях" -#: templates/registration/registration_form.html:213 +#: templates/registration/registration_form.html:209 msgid "By registering, you agree to our [Terms & Conditions][0]." msgstr "" -#: templates/registration/registration_form.html:216 +#: templates/registration/registration_form.html:212 msgid "Register!" msgstr "Зарегистрироваться!" @@ -5427,17 +5452,17 @@ msgid "Enable Two Factor Authentication" msgstr "" #: templates/registration/totp_enable.html:98 -#: templates/user/edit-profile.html:374 +#: templates/user/edit-profile.html:391 msgid "Below is a list of one-time use scratch codes." msgstr "" #: templates/registration/totp_enable.html:99 -#: templates/user/edit-profile.html:375 +#: templates/user/edit-profile.html:392 msgid "These codes can only be used once and are for emergency use." msgstr "" #: templates/registration/totp_enable.html:100 -#: templates/user/edit-profile.html:376 +#: templates/user/edit-profile.html:393 msgid "You can use these codes to login to your account or disable two-factor authentication." msgstr "" @@ -5446,7 +5471,7 @@ msgid "If you ever need more scratch codes, you can regenerate them on the edit msgstr "" #: templates/registration/totp_enable.html:102 -#: templates/user/edit-profile.html:378 +#: templates/user/edit-profile.html:395 msgid "Please write these down and keep them in a secure location." msgstr "" @@ -5464,12 +5489,12 @@ msgid "If you lose your authentication device and are unable to use your scratch msgstr "" #: templates/registration/two_factor_auth.html:33 -#: templates/user/edit-profile.html:164 +#: templates/user/edit-profile.html:159 msgid "WebAuthn is not supported by your browser." msgstr "" #: templates/registration/two_factor_auth.html:54 -#: templates/user/edit-profile.html:188 +#: templates/user/edit-profile.html:183 msgid "Failed to contact server." msgstr "" @@ -5567,23 +5592,23 @@ msgstr "Сведения об ошибке" msgid "Are you sure you want to rejudge?" msgstr "" -#: templates/submission/list.html:74 +#: templates/submission/list.html:75 msgid "Filter by status..." msgstr "" -#: templates/submission/list.html:80 +#: templates/submission/list.html:82 msgid "Filter by language..." msgstr "" -#: templates/submission/list.html:304 +#: templates/submission/list.html:306 msgid "Filter submissions" msgstr "" -#: templates/submission/list.html:340 +#: templates/submission/list.html:342 msgid "Total:" msgstr "" -#: templates/submission/list.html:350 +#: templates/submission/list.html:352 msgid "You were disconnected. Refresh to show latest updates." msgstr "" @@ -5747,23 +5772,23 @@ msgstr "" msgid "Closed: " msgstr "" -#: templates/ticket/list.html:156 +#: templates/ticket/list.html:157 msgid "Use desktop notification" msgstr "" -#: templates/ticket/list.html:162 +#: templates/ticket/list.html:163 msgid "Hide closed tickets" msgstr "" -#: templates/ticket/list.html:167 +#: templates/ticket/list.html:168 msgid "Show my tickets only" msgstr "" -#: templates/ticket/list.html:171 +#: templates/ticket/list.html:172 msgid "Filing user" msgstr "" -#: templates/ticket/list.html:180 templates/ticket/ticket.html:196 +#: templates/ticket/list.html:181 templates/ticket/ticket.html:196 msgid "Assignee" msgid_plural "Assignees" msgstr[0] "" @@ -5771,11 +5796,11 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: templates/ticket/list.html:200 +#: templates/ticket/list.html:201 msgid "Title" msgstr "" -#: templates/ticket/list.html:202 +#: templates/ticket/list.html:203 msgid "Assignees" msgstr "" @@ -5826,129 +5851,133 @@ msgstr "" msgid "Nothing here." msgstr "" -#: templates/user/base-users-table.html:3 +#: templates/user/base-users-table.html:4 msgid "Rank" msgstr "" -#: templates/user/base-users.html:14 templates/user/base-users.html:57 +#: templates/user/base-users.html:15 templates/user/base-users.html:58 msgid "Search by handle..." msgstr "" -#: templates/user/edit-profile.html:107 +#: templates/user/edit-profile.html:102 msgid "The administrators for this site require all the staff to have Two-factor Authentication enabled, so it may not be disabled at this time." msgstr "" -#: templates/user/edit-profile.html:112 +#: templates/user/edit-profile.html:107 msgid "Are you sure you want to generate or regenerate your API token?" msgstr "" -#: templates/user/edit-profile.html:113 +#: templates/user/edit-profile.html:108 msgid "This will invalidate any previous API tokens." msgstr "" -#: templates/user/edit-profile.html:114 +#: templates/user/edit-profile.html:109 msgid "It also allows access to your account without Two-factor Authentication." msgstr "" -#: templates/user/edit-profile.html:115 +#: templates/user/edit-profile.html:110 msgid "You will not be able to view your API token after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:116 templates/user/edit-profile.html:210 +#: templates/user/edit-profile.html:111 templates/user/edit-profile.html:205 msgid "Generating..." msgstr "" -#: templates/user/edit-profile.html:130 templates/user/edit-profile.html:398 +#: templates/user/edit-profile.html:125 templates/user/edit-profile.html:355 msgid "Remove" msgstr "" -#: templates/user/edit-profile.html:140 +#: templates/user/edit-profile.html:135 msgid "Are you sure you want to remove your API token?" msgstr "" -#: templates/user/edit-profile.html:147 templates/user/edit-profile.html:370 -#: templates/user/edit-profile.html:402 +#: templates/user/edit-profile.html:142 templates/user/edit-profile.html:359 +#: templates/user/edit-profile.html:387 msgid "Generate" msgstr "" -#: templates/user/edit-profile.html:193 +#: templates/user/edit-profile.html:188 msgid "Are you sure you want to delete this security key?" msgstr "" -#: templates/user/edit-profile.html:207 +#: templates/user/edit-profile.html:202 msgid "Are you sure you want to generate or regenerate a new set of scratch codes?" msgstr "" -#: templates/user/edit-profile.html:208 +#: templates/user/edit-profile.html:203 msgid "This will invalidate any previous scratch codes you have." msgstr "" -#: templates/user/edit-profile.html:209 templates/user/edit-profile.html:379 +#: templates/user/edit-profile.html:204 templates/user/edit-profile.html:396 msgid "You will not be able to view your scratch codes after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:278 +#: templates/user/edit-profile.html:273 msgid "Self-description:" msgstr "" -#: templates/user/edit-profile.html:285 +#: templates/user/edit-profile.html:280 msgid "Select your closest major city" msgstr "" -#: templates/user/edit-profile.html:286 +#: templates/user/edit-profile.html:281 msgid "Time zone:" msgstr "Часовой пояс:" -#: templates/user/edit-profile.html:290 +#: templates/user/edit-profile.html:285 msgid "Language:" msgstr "Язык:" -#: templates/user/edit-profile.html:294 +#: templates/user/edit-profile.html:289 +msgid "Site theme:" +msgstr "" + +#: templates/user/edit-profile.html:293 msgid "Editor theme:" msgstr "" -#: templates/user/edit-profile.html:299 +#: templates/user/edit-profile.html:298 msgid "Math engine:" msgstr "" -#: templates/user/edit-profile.html:308 +#: templates/user/edit-profile.html:307 msgid "Affiliated organizations:" msgstr "" -#: templates/user/edit-profile.html:334 +#: templates/user/edit-profile.html:333 msgid "Change your avatar" msgstr "" -#: templates/user/edit-profile.html:339 +#: templates/user/edit-profile.html:338 msgid "Change your password" msgstr "" -#: templates/user/edit-profile.html:352 -msgid "Two-factor Authentication is enabled:" +#: templates/user/edit-profile.html:350 +msgid "API token:" msgstr "" -#: templates/user/edit-profile.html:360 -msgid "Refresh" +#: templates/user/edit-profile.html:356 templates/user/edit-profile.html:384 +msgid "Hidden" msgstr "" -#: templates/user/edit-profile.html:363 -msgid "Scratch codes:" +#: templates/user/edit-profile.html:369 +msgid "Two-factor authentication is enabled:" msgstr "" -#: templates/user/edit-profile.html:367 templates/user/edit-profile.html:399 -msgid "Hidden" +#: templates/user/edit-profile.html:377 +msgid "Refresh" msgstr "" -#: templates/user/edit-profile.html:377 -msgid "If you ever need more scratch codes, you can regenerate them here." +#: templates/user/edit-profile.html:380 +msgid "Scratch codes:" msgstr "" -#: templates/user/edit-profile.html:385 -msgid "Two-factor Authentication is disabled:" +#: templates/user/edit-profile.html:394 +msgid "If you ever need more scratch codes, you can regenerate them here." msgstr "" -#: templates/user/edit-profile.html:393 -msgid "API token:" +#: templates/user/edit-profile.html:402 +msgid "Two-factor Authentication is disabled:" msgstr "" #: templates/user/edit-profile.html:410 diff --git a/locale/ru/LC_MESSAGES/djangojs.po b/locale/ru/LC_MESSAGES/djangojs.po index 054041da41..6524025199 100644 --- a/locale/ru/LC_MESSAGES/djangojs.po +++ b/locale/ru/LC_MESSAGES/djangojs.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-20 23:43+0000\n" -"PO-Revision-Date: 2022-12-21 00:44\n" +"POT-Creation-Date: 2023-01-23 05:23+0000\n" +"PO-Revision-Date: 2023-01-24 00:52\n" "Last-Translator: \n" "Language-Team: Russian\n" "Language: ru_RU\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: djangojs.po\n" "X-Crowdin-File-ID: 12\n" -#: resources/common.js:195 +#: resources/common.js:194 msgctxt "time format with day" msgid "%d day %h:%m:%s" msgid_plural "%d days %h:%m:%s" @@ -26,7 +26,7 @@ msgstr[1] "%d дней %h:%m:%s" msgstr[2] "%d дней %h:%m:%s" msgstr[3] "%d дней %h:%m:%s" -#: resources/common.js:198 +#: resources/common.js:197 msgctxt "time format without day" msgid "%h:%m:%s" msgstr "%h:%m:%s" diff --git a/locale/sr_Latn/LC_MESSAGES/django.po b/locale/sr_Latn/LC_MESSAGES/django.po index 0f052cf882..c1e5d5fb5d 100644 --- a/locale/sr_Latn/LC_MESSAGES/django.po +++ b/locale/sr_Latn/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-20 23:04+0000\n" -"PO-Revision-Date: 2023-01-22 00:52\n" +"POT-Creation-Date: 2023-02-17 22:33+0000\n" +"PO-Revision-Date: 2023-02-18 00:50\n" "Last-Translator: \n" "Language-Team: Serbian (Latin)\n" "Language: sr_CS\n" @@ -17,91 +17,91 @@ msgstr "" "X-Crowdin-File: django.po\n" "X-Crowdin-File-ID: 10\n" -#: dmoj/settings.py:380 +#: dmoj/settings.py:392 msgid "Catalan" msgstr "Katalonski" -#: dmoj/settings.py:381 +#: dmoj/settings.py:393 msgid "German" msgstr "Nemački" -#: dmoj/settings.py:382 +#: dmoj/settings.py:394 msgid "Greek" msgstr "Grčki" -#: dmoj/settings.py:383 +#: dmoj/settings.py:395 msgid "English" msgstr "Engleski" -#: dmoj/settings.py:384 +#: dmoj/settings.py:396 msgid "Spanish" msgstr "Španski" -#: dmoj/settings.py:385 +#: dmoj/settings.py:397 msgid "French" msgstr "Francuski" -#: dmoj/settings.py:386 +#: dmoj/settings.py:398 msgid "Croatian" msgstr "Hrvatski" -#: dmoj/settings.py:387 +#: dmoj/settings.py:399 msgid "Hungarian" msgstr "Mađarski" -#: dmoj/settings.py:388 +#: dmoj/settings.py:400 msgid "Japanese" msgstr "Japanski" -#: dmoj/settings.py:389 +#: dmoj/settings.py:401 msgid "Korean" msgstr "Korejski" -#: dmoj/settings.py:390 +#: dmoj/settings.py:402 msgid "Brazilian Portuguese" msgstr "Brazilski Portugalski" -#: dmoj/settings.py:391 +#: dmoj/settings.py:403 msgid "Romanian" msgstr "Rumunski" -#: dmoj/settings.py:392 +#: dmoj/settings.py:404 msgid "Russian" msgstr "Ruski" -#: dmoj/settings.py:393 +#: dmoj/settings.py:405 msgid "Serbian (Latin)" msgstr "Srpski (Latinica)" -#: dmoj/settings.py:394 +#: dmoj/settings.py:406 msgid "Turkish" msgstr "Turski" -#: dmoj/settings.py:395 +#: dmoj/settings.py:407 msgid "Vietnamese" msgstr "Vijetnamski" -#: dmoj/settings.py:396 +#: dmoj/settings.py:408 msgid "Simplified Chinese" msgstr "Pojednostavljeni Kineski" -#: dmoj/settings.py:397 +#: dmoj/settings.py:409 msgid "Traditional Chinese" msgstr "Klasični Kinezki" -#: dmoj/urls.py:32 +#: dmoj/urls.py:31 msgid "Activation Successful!" msgstr "" -#: dmoj/urls.py:40 +#: dmoj/urls.py:39 msgid "Registration Completed" msgstr "" -#: dmoj/urls.py:44 +#: dmoj/urls.py:43 msgid "Registration Not Allowed" msgstr "" -#: dmoj/urls.py:93 templates/base.html:183 +#: dmoj/urls.py:92 templates/base.html:193 msgid "Home" msgstr "Naslovna Strana" @@ -142,8 +142,8 @@ msgid "Included contests" msgstr "Uključena takmičenja" #: judge/admin/contest.py:65 templates/contest/contest.html:195 -#: templates/contest/moss.html:41 templates/problem/list.html:197 -#: templates/problem/list.html:213 templates/user/user-problems.html:58 +#: templates/contest/moss.html:41 templates/problem/list.html:188 +#: templates/problem/list.html:204 templates/user/user-problems.html:58 #: templates/user/user-problems.html:102 msgid "Problem" msgstr "Zadatak" @@ -154,7 +154,7 @@ msgstr "Zadatak" msgid "Problems" msgstr "Zadaci" -#: judge/admin/contest.py:76 judge/admin/submission.py:249 +#: judge/admin/contest.py:76 judge/admin/submission.py:250 #: templates/admin/judge/submission/change_form.html:14 #: templates/admin/judge/submission/change_form.html:17 #: templates/submission/source.html:34 templates/submission/status.html:89 @@ -237,7 +237,7 @@ msgstr[2] "%d Takmičenja uspešno otključana." msgid "Unlock contest submissions" msgstr "Otključaj predaju takmičenja" -#: judge/admin/contest.py:280 judge/admin/submission.py:175 +#: judge/admin/contest.py:280 judge/admin/submission.py:176 #, python-format msgid "%d submission was successfully scheduled for rejudging." msgid_plural "%d submissions were successfully scheduled for rejudging." @@ -245,7 +245,7 @@ msgstr[0] "%d predaja je uspešno zakazana za ponovno ocenjivanje." msgstr[1] "%d predaje su uspešno zakazane za ponovno ocenjivanje." msgstr[2] "%d predaje su uspešno zakazane za ponovno ocenjivanje." -#: judge/admin/contest.py:356 +#: judge/admin/contest.py:358 #, python-format msgid "%d participation recalculated." msgid_plural "%d participations recalculated." @@ -253,15 +253,15 @@ msgstr[0] "%d učestvovanje preračunato." msgstr[1] "%d učestvovanja preračunata." msgstr[2] "%d učestvovanja preračunata." -#: judge/admin/contest.py:359 +#: judge/admin/contest.py:361 msgid "Recalculate results" msgstr "Preračunati rezultati" -#: judge/admin/contest.py:363 judge/admin/organization.py:113 +#: judge/admin/contest.py:365 judge/admin/organization.py:113 msgid "username" msgstr "korisničko ime" -#: judge/admin/contest.py:368 templates/base.html:249 +#: judge/admin/contest.py:370 templates/base.html:259 msgid "virtual" msgstr "virtualno" @@ -274,8 +274,8 @@ msgid "Summary" msgstr "Kratak sadržaj" #: judge/admin/interface.py:124 judge/models/contest.py:491 -#: judge/models/contest.py:623 judge/models/profile.py:331 -#: judge/models/profile.py:362 judge/models/submission.py:67 +#: judge/models/contest.py:623 judge/models/profile.py:347 +#: judge/models/profile.py:378 judge/models/submission.py:67 #: judge/models/ticket.py:32 msgid "user" msgstr "korisnik" @@ -306,8 +306,8 @@ msgid "Taxonomy" msgstr "Taksonomija" #: judge/admin/problem.py:133 templates/contest/contest.html:196 -#: templates/problem/data.html:380 templates/problem/list.html:202 -#: templates/problem/list.html:224 templates/user/base-users-table.html:10 +#: templates/problem/data.html:381 templates/problem/list.html:193 +#: templates/problem/list.html:215 templates/user/base-users-table.html:11 #: templates/user/user-problems.html:60 msgid "Points" msgstr "Poeni" @@ -316,9 +316,9 @@ msgstr "Poeni" msgid "Limits" msgstr "Granice" -#: judge/admin/problem.py:135 judge/admin/submission.py:243 +#: judge/admin/problem.py:135 judge/admin/submission.py:244 #: templates/problem/submission-diff.html:65 templates/stats/tabs.html:4 -#: templates/submission/list.html:317 +#: templates/submission/list.html:319 msgid "Language" msgstr "Jezik" @@ -378,19 +378,19 @@ msgstr "zadatak" msgid "timezone" msgstr "vremenska zona" -#: judge/admin/profile.py:98 judge/admin/submission.py:222 +#: judge/admin/profile.py:98 judge/admin/submission.py:223 #: templates/organization/requests/log.html:9 #: templates/organization/requests/pending.html:12 -#: templates/ticket/list.html:201 +#: templates/ticket/list.html:202 msgid "User" msgstr "Korisnik" -#: judge/admin/profile.py:103 templates/registration/registration_form.html:149 +#: judge/admin/profile.py:103 templates/registration/registration_form.html:145 msgid "Email" msgstr "Email" #: judge/admin/profile.py:108 judge/views/register.py:28 -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "Timezone" msgstr "Vremenska zona" @@ -410,26 +410,26 @@ msgstr[2] "%d korisnikovi rezultati su preračunati." msgid "Recalculate scores" msgstr "Preračunaj rezultate" -#: judge/admin/runtime.py:50 templates/user/edit-profile.html:124 -#: templates/user/edit-profile.html:246 templates/user/edit-profile.html:366 -#: templates/user/edit-profile.html:396 +#: judge/admin/runtime.py:52 templates/user/edit-profile.html:119 +#: templates/user/edit-profile.html:241 templates/user/edit-profile.html:353 +#: templates/user/edit-profile.html:383 msgid "Regenerate" msgstr "" -#: judge/admin/runtime.py:64 +#: judge/admin/runtime.py:66 msgid "Description" msgstr "Opis" -#: judge/admin/runtime.py:65 +#: judge/admin/runtime.py:67 msgid "Information" msgstr "Informacija" -#: judge/admin/runtime.py:66 +#: judge/admin/runtime.py:68 msgid "Capabilities" msgstr "Sposobnosti" #: judge/admin/submission.py:24 judge/admin/submission.py:43 -#: judge/admin/submission.py:232 +#: judge/admin/submission.py:233 msgid "None" msgstr "Nijedan" @@ -461,19 +461,19 @@ msgctxt "contest problem" msgid "%(problem)s in %(contest)s" msgstr "%(problem)s u %(contest)s" -#: judge/admin/submission.py:160 judge/admin/submission.py:182 +#: judge/admin/submission.py:161 judge/admin/submission.py:183 msgid "You do not have the permission to rejudge submissions." msgstr "Nemate prava da ponovo ocenite predaje." -#: judge/admin/submission.py:166 +#: judge/admin/submission.py:167 msgid "You do not have the permission to rejudge THAT many submissions." msgstr "Nemate prava da ponovo ocenite TOLIKO puno predaja." -#: judge/admin/submission.py:178 +#: judge/admin/submission.py:179 msgid "Rejudge the selected submissions" msgstr "Ponovo oceni izabrane predaje" -#: judge/admin/submission.py:204 judge/views/problem_manage.py:129 +#: judge/admin/submission.py:205 judge/views/problem_manage.py:129 #, python-format msgid "%d submission was successfully rescored." msgid_plural "%d submissions were successfully rescored." @@ -481,38 +481,38 @@ msgstr[0] "%d predaja je uspešno preračunata." msgstr[1] "%d predaje su uspešno preračunate." msgstr[2] "%d predaje su uspešno preračunate." -#: judge/admin/submission.py:207 +#: judge/admin/submission.py:208 msgid "Rescore the selected submissions" msgstr "Preračunaj izabrane predaje" -#: judge/admin/submission.py:211 +#: judge/admin/submission.py:212 msgid "Problem code" msgstr "Kod zadatka" -#: judge/admin/submission.py:216 +#: judge/admin/submission.py:217 msgid "Problem name" msgstr "Ime zadatka" -#: judge/admin/submission.py:226 templates/organization/requests/log.html:10 +#: judge/admin/submission.py:227 templates/organization/requests/log.html:10 #: templates/organization/requests/pending.html:13 msgid "Time" msgstr "Vreme" -#: judge/admin/submission.py:234 +#: judge/admin/submission.py:235 #, python-format msgid "%d KB" msgstr "%d KB" -#: judge/admin/submission.py:236 +#: judge/admin/submission.py:237 #, python-format msgid "%.2f MB" msgstr "%.2f MB" -#: judge/admin/submission.py:238 +#: judge/admin/submission.py:239 msgid "Memory" msgstr "Memorija" -#: judge/admin/submission.py:247 +#: judge/admin/submission.py:248 msgid "Locked" msgstr "" @@ -537,6 +537,7 @@ msgid "Comment body" msgstr "Sastav komentara" #: judge/comments.py:47 judge/views/comment.py:40 judge/views/ticket.py:46 +#: judge/views/user.py:347 msgid "Your part is silent, little toad." msgstr "Trenutno ste ućutkani, skrati jezičinu." @@ -647,7 +648,7 @@ msgstr "Nevažeći token za dvofaktornu autentifikaciju." msgid "Scratch codes must be 16 Base32 characters." msgstr "Scratch kod mora biti 16 Base32 karaktera." -#: judge/forms.py:39 judge/forms.py:265 +#: judge/forms.py:39 judge/forms.py:266 msgid "Invalid scratch code." msgstr "Nevažeći scratch kod." @@ -671,83 +672,83 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: judge/forms.py:98 +#: judge/forms.py:99 msgid "Download comments?" msgstr "Download komentare?" -#: judge/forms.py:99 +#: judge/forms.py:100 msgid "Download submissions?" msgstr "Download rešenja?" -#: judge/forms.py:100 +#: judge/forms.py:101 msgid "Filter by problem code glob:" msgstr "Filtriraj po glob kodu zadatka:" -#: judge/forms.py:104 +#: judge/forms.py:105 msgid "Leave empty to include all submissions" msgstr "Ostavi prazno da uključiš sva rešenja" -#: judge/forms.py:107 templates/problem/manage_submission.html:142 +#: judge/forms.py:108 templates/problem/manage_submission.html:144 msgid "Filter by result:" msgstr "Filtriraj po rezultatima:" -#: judge/forms.py:113 +#: judge/forms.py:114 msgid "Please select at least one thing to download." msgstr "Izaberite barem jednu stvar za download." -#: judge/forms.py:139 +#: judge/forms.py:140 msgid "Any judge" msgstr "Bilo koji sudija" -#: judge/forms.py:160 judge/views/register.py:25 +#: judge/forms.py:161 judge/views/register.py:25 #: templates/problem/submission-diff.html:63 -#: templates/registration/registration_form.html:143 -#: templates/user/base-users-table.html:5 +#: templates/registration/registration_form.html:139 +#: templates/user/base-users-table.html:6 msgid "Username" msgstr "Korisničko Ime" -#: judge/forms.py:161 templates/registration/registration_form.html:155 -#: templates/registration/registration_form.html:169 +#: judge/forms.py:162 templates/registration/registration_form.html:151 +#: templates/registration/registration_form.html:165 msgid "Password" msgstr "Lozinka" -#: judge/forms.py:193 +#: judge/forms.py:194 msgid "Invalid code length." msgstr "Nevažeća dužina koda." -#: judge/forms.py:224 +#: judge/forms.py:225 msgid "Invalid WebAuthn response." msgstr "Nevažeći WebAuthn odgovor." -#: judge/forms.py:227 +#: judge/forms.py:228 msgid "No WebAuthn challenge issued." msgstr "" -#: judge/forms.py:233 +#: judge/forms.py:234 msgid "Invalid WebAuthn credential ID." msgstr "Nevažeći WebAuthn credential ID." -#: judge/forms.py:263 +#: judge/forms.py:264 msgid "Invalid two-factor authentication token or scratch code." msgstr "Nevažeći token za dvofaktornu autentifikaciju ili scratch kod." -#: judge/forms.py:267 +#: judge/forms.py:268 msgid "Must specify either totp_token or webauthn_response." msgstr "" -#: judge/forms.py:271 judge/models/problem.py:118 +#: judge/forms.py:272 judge/models/problem.py:118 msgid "Problem code must be ^[a-z0-9]+$" msgstr "Kod zadatka mora biti ^[a-z0-9]+$" -#: judge/forms.py:276 +#: judge/forms.py:277 msgid "Problem with code already exists." msgstr "Zadatak sa tim kodom več postoji." -#: judge/forms.py:281 judge/models/contest.py:68 +#: judge/forms.py:282 judge/models/contest.py:68 msgid "Contest id must be ^[a-z0-9]+$" msgstr "ID takmičenja mora biti ^[a-z0-9]+$" -#: judge/forms.py:286 +#: judge/forms.py:287 msgid "Contest with key already exists." msgstr "Takmičenje sa tim ključem već postoji." @@ -770,26 +771,42 @@ msgstr "na {time}" msgid "Unrated" msgstr "" -#: judge/models/choices.py:59 +#: judge/models/choices.py:24 +msgid "Follow site theme" +msgstr "" + +#: judge/models/choices.py:60 msgid "Leave as LaTeX" msgstr "Ostavi kao LaTeX" -#: judge/models/choices.py:60 +#: judge/models/choices.py:61 msgid "SVG only" msgstr "Samo SVG" -#: judge/models/choices.py:61 +#: judge/models/choices.py:62 msgid "MathML only" msgstr "Samo MathML" -#: judge/models/choices.py:62 +#: judge/models/choices.py:63 msgid "MathJax with SVG fallback" msgstr "MathJax sa SVG alternativom" -#: judge/models/choices.py:63 +#: judge/models/choices.py:64 msgid "Detect best quality" msgstr "Otkrij najbolji kvalitet" +#: judge/models/choices.py:70 +msgid "Follow system default" +msgstr "" + +#: judge/models/choices.py:71 +msgid "Light" +msgstr "" + +#: judge/models/choices.py:72 +msgid "Dark" +msgstr "" + #: judge/models/comment.py:25 msgid "Page code must be ^[pcs]:[a-z0-9]+$|^b:\\d+$" msgstr "Kod stranice mora biti ^[pcs]:[a-z0-9]+$|^b:\\d+$" @@ -1902,7 +1919,7 @@ msgid "Non-trailing spaces" msgstr "" #: judge/models/problem_data.py:28 -msgid "Unordered" +msgid "Sorted" msgstr "" #: judge/models/problem_data.py:29 @@ -2074,7 +2091,7 @@ msgid "Edit all organizations" msgstr "Edit-uj sve organizacije" #: judge/models/profile.py:98 judge/models/profile.py:103 -#: judge/models/profile.py:160 judge/models/profile.py:363 +#: judge/models/profile.py:161 judge/models/profile.py:379 msgid "organization" msgstr "organizacija" @@ -2115,7 +2132,7 @@ msgstr "" msgid "%(class)s in %(organization)s" msgstr "" -#: judge/models/profile.py:142 judge/models/profile.py:371 +#: judge/models/profile.py:142 judge/models/profile.py:387 msgid "class" msgstr "" @@ -2140,26 +2157,30 @@ msgid "Ace theme" msgstr "" #: judge/models/profile.py:158 +msgid "site theme" +msgstr "" + +#: judge/models/profile.py:159 msgid "last access time" msgstr "vreme poslednjeg pristupa" -#: judge/models/profile.py:159 +#: judge/models/profile.py:160 msgid "last IP" msgstr "poslednji IP" -#: judge/models/profile.py:162 +#: judge/models/profile.py:163 msgid "display rank" msgstr "prikaži rang" -#: judge/models/profile.py:164 +#: judge/models/profile.py:165 msgid "Normal User" msgstr "Običan Korisnik" -#: judge/models/profile.py:165 +#: judge/models/profile.py:166 msgid "Problem Setter" msgstr "Pisac Zadatka" -#: judge/models/profile.py:166 templates/base.html:211 +#: judge/models/profile.py:167 templates/base.html:221 #: templates/comments/list.html:97 templates/contest/contest-list-tabs.html:25 #: templates/contest/ranking-table.html:51 #: templates/problem/problem-list-tabs.html:6 @@ -2169,200 +2190,200 @@ msgstr "Pisac Zadatka" msgid "Admin" msgstr "Administrator" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "comment mute" msgstr "nemi komentar" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "Some users are at their best when silent." msgstr "U ćutanju je zlato." -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "unlisted user" msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "User will not be ranked." msgstr "Korisnik neće biti rangiran." -#: judge/models/profile.py:172 +#: judge/models/profile.py:173 msgid "banned from voting on problem point values" msgstr "" -#: judge/models/profile.py:173 +#: judge/models/profile.py:174 msgid "User will not be able to vote on problems' point values." msgstr "" -#: judge/models/profile.py:177 +#: judge/models/profile.py:178 msgid "user script" msgstr "" -#: judge/models/profile.py:178 +#: judge/models/profile.py:179 msgid "User-defined JavaScript for site customization." msgstr "" -#: judge/models/profile.py:179 +#: judge/models/profile.py:180 msgid "current contest" msgstr "takmičenje u toku" -#: judge/models/profile.py:181 +#: judge/models/profile.py:182 msgid "math engine" msgstr "math engine" -#: judge/models/profile.py:183 +#: judge/models/profile.py:184 msgid "The rendering engine used to render math." msgstr "" -#: judge/models/profile.py:184 +#: judge/models/profile.py:185 msgid "TOTP 2FA enabled" msgstr "" -#: judge/models/profile.py:185 +#: judge/models/profile.py:186 msgid "Check to enable TOTP-based two-factor authentication." msgstr "" -#: judge/models/profile.py:186 +#: judge/models/profile.py:187 msgid "WebAuthn 2FA enabled" msgstr "" -#: judge/models/profile.py:187 +#: judge/models/profile.py:188 msgid "Check to enable WebAuthn-based two-factor authentication." msgstr "" -#: judge/models/profile.py:188 +#: judge/models/profile.py:189 msgid "TOTP key" msgstr "" -#: judge/models/profile.py:189 +#: judge/models/profile.py:190 msgid "32-character Base32-encoded key for TOTP." msgstr "" -#: judge/models/profile.py:191 +#: judge/models/profile.py:192 msgid "TOTP key must be empty or Base32." msgstr "" -#: judge/models/profile.py:192 +#: judge/models/profile.py:193 msgid "scratch codes" msgstr "" -#: judge/models/profile.py:193 +#: judge/models/profile.py:194 msgid "JSON array of 16-character Base32-encoded codes for scratch codes." msgstr "" -#: judge/models/profile.py:197 +#: judge/models/profile.py:198 msgid "Scratch codes must be empty or a JSON array of 16-character Base32 codes." msgstr "" -#: judge/models/profile.py:199 +#: judge/models/profile.py:200 msgid "last TOTP timecode" msgstr "" -#: judge/models/profile.py:200 +#: judge/models/profile.py:201 msgid "API token" msgstr "API token" -#: judge/models/profile.py:201 +#: judge/models/profile.py:202 msgid "64-character hex-encoded API access token." msgstr "" -#: judge/models/profile.py:203 +#: judge/models/profile.py:204 msgid "API token must be None or hexadecimal" msgstr "" -#: judge/models/profile.py:204 +#: judge/models/profile.py:205 msgid "internal notes" msgstr "interne beleške" -#: judge/models/profile.py:205 +#: judge/models/profile.py:206 msgid "Notes for administrators regarding this user." msgstr "" -#: judge/models/profile.py:206 +#: judge/models/profile.py:207 msgid "last data download time" msgstr "" -#: judge/models/profile.py:207 +#: judge/models/profile.py:208 msgid "display name override" msgstr "" -#: judge/models/profile.py:208 +#: judge/models/profile.py:209 msgid "Name displayed in place of username." msgstr "" -#: judge/models/profile.py:323 +#: judge/models/profile.py:333 msgid "Shows in-progress development stuff" msgstr "" -#: judge/models/profile.py:324 +#: judge/models/profile.py:334 msgid "Edit TOTP settings" msgstr "" -#: judge/models/profile.py:326 +#: judge/models/profile.py:336 msgid "user profile" msgstr "profil korisnika" -#: judge/models/profile.py:327 +#: judge/models/profile.py:337 msgid "user profiles" msgstr "" -#: judge/models/profile.py:333 +#: judge/models/profile.py:349 msgid "device name" msgstr "ime uređaja" -#: judge/models/profile.py:334 +#: judge/models/profile.py:350 msgid "credential ID" msgstr "" -#: judge/models/profile.py:335 +#: judge/models/profile.py:351 msgid "public key" msgstr "" -#: judge/models/profile.py:336 +#: judge/models/profile.py:352 msgid "sign counter" msgstr "" -#: judge/models/profile.py:354 +#: judge/models/profile.py:370 #, python-format msgid "WebAuthn credential: %(name)s" msgstr "" -#: judge/models/profile.py:357 +#: judge/models/profile.py:373 msgid "WebAuthn credential" msgstr "" -#: judge/models/profile.py:358 +#: judge/models/profile.py:374 msgid "WebAuthn credentials" msgstr "" -#: judge/models/profile.py:365 +#: judge/models/profile.py:381 msgid "request time" msgstr "" -#: judge/models/profile.py:366 +#: judge/models/profile.py:382 msgid "state" msgstr "status" -#: judge/models/profile.py:367 templates/organization/requests/tabs.html:4 +#: judge/models/profile.py:383 templates/organization/requests/tabs.html:4 msgid "Pending" msgstr "" -#: judge/models/profile.py:368 templates/organization/requests/tabs.html:10 +#: judge/models/profile.py:384 templates/organization/requests/tabs.html:10 msgid "Approved" msgstr "" -#: judge/models/profile.py:369 templates/organization/requests/tabs.html:13 +#: judge/models/profile.py:385 templates/organization/requests/tabs.html:13 msgid "Rejected" msgstr "Odbijeno" -#: judge/models/profile.py:372 +#: judge/models/profile.py:388 msgid "reason" msgstr "razlog" -#: judge/models/profile.py:381 +#: judge/models/profile.py:397 msgid "organization join request" msgstr "" -#: judge/models/profile.py:382 +#: judge/models/profile.py:398 msgid "organization join requests" msgstr "" @@ -2605,15 +2626,15 @@ msgstr "" msgid "submission time" msgstr "" -#: judge/models/submission.py:70 judge/models/submission.py:255 +#: judge/models/submission.py:70 judge/models/submission.py:265 msgid "execution time" msgstr "" -#: judge/models/submission.py:71 judge/models/submission.py:256 +#: judge/models/submission.py:71 judge/models/submission.py:266 msgid "memory usage" msgstr "" -#: judge/models/submission.py:72 judge/models/submission.py:257 +#: judge/models/submission.py:72 judge/models/submission.py:267 msgid "points granted" msgstr "" @@ -2702,60 +2723,60 @@ msgstr "" msgid "submissions" msgstr "" -#: judge/models/submission.py:235 judge/models/submission.py:251 +#: judge/models/submission.py:245 judge/models/submission.py:261 msgid "associated submission" msgstr "" -#: judge/models/submission.py:237 +#: judge/models/submission.py:247 msgid "source code" msgstr "" -#: judge/models/submission.py:240 +#: judge/models/submission.py:250 #, python-format msgid "Source of %(submission)s" msgstr "" -#: judge/models/submission.py:243 +#: judge/models/submission.py:253 msgid "submission source" msgstr "" -#: judge/models/submission.py:244 +#: judge/models/submission.py:254 msgid "submission sources" msgstr "" -#: judge/models/submission.py:253 +#: judge/models/submission.py:263 msgid "test case ID" msgstr "" -#: judge/models/submission.py:254 +#: judge/models/submission.py:264 msgid "status flag" msgstr "statusna zastava" -#: judge/models/submission.py:258 +#: judge/models/submission.py:268 msgid "points possible" msgstr "" -#: judge/models/submission.py:259 +#: judge/models/submission.py:269 msgid "batch number" msgstr "" -#: judge/models/submission.py:260 +#: judge/models/submission.py:270 msgid "judging feedback" msgstr "" -#: judge/models/submission.py:261 +#: judge/models/submission.py:271 msgid "extended judging feedback" msgstr "" -#: judge/models/submission.py:262 +#: judge/models/submission.py:272 msgid "program output" msgstr "" -#: judge/models/submission.py:276 +#: judge/models/submission.py:286 msgid "submission test case" msgstr "" -#: judge/models/submission.py:277 +#: judge/models/submission.py:287 msgid "submission test cases" msgstr "" @@ -2976,7 +2997,7 @@ msgctxt "hours and minutes" msgid "%h:%m" msgstr "%h:%m" -#: judge/views/blog.py:36 +#: judge/views/blog.py:37 #, python-format msgid "Page %d of Posts" msgstr "" @@ -3470,11 +3491,11 @@ msgstr "" msgid "Register" msgstr "" -#: judge/views/register.py:103 +#: judge/views/register.py:101 msgid "Activation Key Invalid" msgstr "" -#: judge/views/register.py:114 +#: judge/views/register.py:112 msgid "Authentication failure" msgstr "" @@ -3486,7 +3507,7 @@ msgstr "" msgid "Language statistics" msgstr "" -#: judge/views/status.py:23 templates/submission/list.html:308 +#: judge/views/status.py:23 templates/submission/list.html:310 msgid "Status" msgstr "" @@ -3669,41 +3690,45 @@ msgstr "j. M Y. \\у H:i" msgid "Preparing your data..." msgstr "" -#: judge/views/user.py:298 templates/user/edit-profile.html:345 +#: judge/views/user.py:298 templates/user/edit-profile.html:344 msgid "Download your data" msgstr "Skini vaše podatke" +#: judge/views/user.py:347 +msgid "Can't edit profile" +msgstr "" + #: judge/views/user.py:354 msgid "Updated on site" msgstr "" -#: judge/views/user.py:387 templates/admin/auth/user/change_form.html:14 -#: templates/admin/auth/user/change_form.html:17 templates/base.html:213 +#: judge/views/user.py:386 templates/admin/auth/user/change_form.html:14 +#: templates/admin/auth/user/change_form.html:17 templates/base.html:223 #: templates/user/user-tabs.html:16 msgid "Edit profile" msgstr "" -#: judge/views/user.py:402 +#: judge/views/user.py:400 msgid "Generated API token for user" msgstr "" -#: judge/views/user.py:414 +#: judge/views/user.py:412 msgid "Removed API token for user" msgstr "" -#: judge/views/user.py:424 +#: judge/views/user.py:422 msgid "Generated scratch codes for user" msgstr "" -#: judge/views/user.py:430 templates/user/user-list-tabs.html:4 +#: judge/views/user.py:428 templates/user/user-list-tabs.html:4 msgid "Leaderboard" msgstr "" -#: judge/views/user.py:491 +#: judge/views/user.py:489 msgid "You have been successfully logged out." msgstr "" -#: judge/views/user.py:508 +#: judge/views/user.py:506 msgid "You have sent too many password reset requests. Please try again later." msgstr "" @@ -3732,13 +3757,13 @@ msgstr "" #: templates/admin/judge/judge/change_form.html:27 #: templates/admin/judge/judge/change_form.html:30 -#: templates/user/edit-profile.html:355 templates/user/edit-profile.html:358 +#: templates/user/edit-profile.html:372 templates/user/edit-profile.html:375 msgid "Disable" msgstr "" #: templates/admin/judge/judge/change_form.html:33 #: templates/admin/judge/judge/change_form.html:36 -#: templates/user/edit-profile.html:386 +#: templates/user/edit-profile.html:403 msgid "Enable" msgstr "Uključi" @@ -3758,48 +3783,48 @@ msgstr "" msgid "Edit user" msgstr "" -#: templates/base.html:206 +#: templates/base.html:216 #, python-format msgid "Hello, %(username)s." msgstr "Zdravo, %(username)s." -#: templates/base.html:215 +#: templates/base.html:225 msgid "Stop impersonating" msgstr "" -#: templates/base.html:220 +#: templates/base.html:230 msgid "Log out" msgstr "" -#: templates/base.html:229 +#: templates/base.html:239 #: templates/registration/password_reset_complete.html:4 msgid "Log in" msgstr "" -#: templates/base.html:230 templates/registration/registration_form.html:181 +#: templates/base.html:240 templates/registration/registration_form.html:177 msgid "or" msgstr "ili" -#: templates/base.html:231 +#: templates/base.html:241 msgid "Sign up" msgstr "" -#: templates/base.html:243 +#: templates/base.html:253 msgid "spectating" msgstr "" -#: templates/base.html:256 +#: templates/base.html:266 msgid "This site works best with JavaScript enabled." msgstr "" -#: templates/base.html:283 +#: templates/base.html:293 msgid "proudly powered by **DMOJ**" msgstr "" #: templates/blog/content.html:13 templates/comments/list.html:89 #: templates/comments/list.html:105 templates/contest/contest-tabs.html:23 #: templates/contest/tag-title.html:9 templates/flatpages/admin_link.html:3 -#: templates/license.html:10 templates/problem/data.html:423 +#: templates/license.html:10 templates/problem/data.html:424 #: templates/problem/editorial.html:14 msgid "Edit" msgstr "Edit-uj" @@ -4000,15 +4025,15 @@ msgstr "Rezultat" msgid "No votes" msgstr "" -#: templates/common-content.html:32 templates/user/edit-profile.html:219 +#: templates/common-content.html:32 templates/user/edit-profile.html:214 msgid "Click to copy" msgstr "" -#: templates/common-content.html:33 templates/user/edit-profile.html:220 +#: templates/common-content.html:33 templates/user/edit-profile.html:215 msgid "Copy" msgstr "" -#: templates/common-content.html:44 templates/user/edit-profile.html:231 +#: templates/common-content.html:44 templates/user/edit-profile.html:226 msgid "Copied!" msgstr "" @@ -4089,7 +4114,7 @@ msgstr "" msgid "Info" msgstr "" -#: templates/contest/contest-tabs.html:6 templates/submission/list.html:334 +#: templates/contest/contest-tabs.html:6 templates/submission/list.html:336 msgid "Statistics" msgstr "" @@ -4307,7 +4332,7 @@ msgstr "" #: templates/contest/contest.html:198 templates/contest/list.html:152 #: templates/contest/list.html:194 templates/contest/list.html:271 -#: templates/problem/list.html:203 templates/problem/list.html:235 +#: templates/problem/list.html:194 templates/problem/list.html:226 msgid "Users" msgstr "" @@ -4315,7 +4340,7 @@ msgstr "" msgid "Editorials" msgstr "" -#: templates/contest/contest.html:226 templates/problem/list.html:229 +#: templates/contest/contest.html:226 templates/problem/list.html:220 msgid "Editorial" msgstr "" @@ -4481,19 +4506,19 @@ msgstr "" msgid "Disqualify" msgstr "" -#: templates/contest/ranking.html:151 +#: templates/contest/ranking.html:46 msgid "Are you sure you want to disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:156 +#: templates/contest/ranking.html:51 msgid "Are you sure you want to un-disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:228 +#: templates/contest/ranking.html:124 msgid "View user participation" msgstr "" -#: templates/contest/ranking.html:232 +#: templates/contest/ranking.html:128 msgid "Show organizations" msgstr "Pokaži organizacije" @@ -4680,7 +4705,7 @@ msgid "There are no requests to approve." msgstr "" #: templates/organization/requests/pending.html:17 -#: templates/problem/data.html:387 +#: templates/problem/data.html:388 msgid "Delete?" msgstr "" @@ -4716,59 +4741,59 @@ msgstr "" msgid "Enter a new code for the cloned problem:" msgstr "" -#: templates/problem/data.html:70 +#: templates/problem/data.html:71 msgid "precision (decimal digits)" msgstr "" -#: templates/problem/data.html:339 +#: templates/problem/data.html:340 msgid "View YAML" msgstr "Pogledaj YAML" -#: templates/problem/data.html:355 +#: templates/problem/data.html:356 msgid "Show columns:" msgstr "" -#: templates/problem/data.html:358 templates/problem/data.html:382 +#: templates/problem/data.html:359 templates/problem/data.html:383 msgid "Output prefix" msgstr "" -#: templates/problem/data.html:362 templates/problem/data.html:383 +#: templates/problem/data.html:363 templates/problem/data.html:384 msgid "Output limit" msgstr "" -#: templates/problem/data.html:366 templates/problem/data.html:384 +#: templates/problem/data.html:367 templates/problem/data.html:385 msgid "Checker" msgstr "" -#: templates/problem/data.html:370 templates/problem/data.html:385 +#: templates/problem/data.html:371 templates/problem/data.html:386 msgid "Generator args" msgstr "" -#: templates/problem/data.html:377 +#: templates/problem/data.html:378 msgid "Type" msgstr "Tip" -#: templates/problem/data.html:378 +#: templates/problem/data.html:379 msgid "Input file" msgstr "" -#: templates/problem/data.html:379 +#: templates/problem/data.html:380 msgid "Output file" msgstr "" -#: templates/problem/data.html:381 +#: templates/problem/data.html:382 msgid "Pretest?" msgstr "" -#: templates/problem/data.html:433 templates/problem/submit.html:256 +#: templates/problem/data.html:434 templates/problem/submit.html:190 msgid "Submit!" msgstr "Predaj!" -#: templates/problem/data.html:434 +#: templates/problem/data.html:435 msgid "Add new case" msgstr "" -#: templates/problem/data.html:436 +#: templates/problem/data.html:437 msgid "Save" msgstr "" @@ -4787,86 +4812,86 @@ msgstr[0] "Autor:" msgstr[1] "" msgstr[2] "" -#: templates/problem/list.html:58 +#: templates/problem/list.html:49 msgid "Filter by type..." msgstr "" -#: templates/problem/list.html:176 +#: templates/problem/list.html:167 msgid "Hot problems" msgstr "Popularni zadaci" -#: templates/problem/list.html:198 templates/problem/list.html:216 +#: templates/problem/list.html:189 templates/problem/list.html:207 #: templates/problem/search-form.html:35 templates/user/user-problems.html:59 msgid "Category" msgstr "Kategorija" -#: templates/problem/list.html:200 templates/problem/list.html:220 +#: templates/problem/list.html:191 templates/problem/list.html:211 msgid "Types" msgstr "" -#: templates/problem/list.html:227 +#: templates/problem/list.html:218 #, python-format msgid "AC %%" msgstr "" -#: templates/problem/manage_submission.html:55 +#: templates/problem/manage_submission.html:56 msgid "Leave empty to not filter by language" msgstr "" -#: templates/problem/manage_submission.html:60 +#: templates/problem/manage_submission.html:62 msgid "Leave empty to not filter by result" msgstr "" -#: templates/problem/manage_submission.html:79 +#: templates/problem/manage_submission.html:81 msgid "Need valid values for both start and end IDs." msgstr "" -#: templates/problem/manage_submission.html:82 +#: templates/problem/manage_submission.html:84 msgid "End ID must be after start ID." msgstr "" -#: templates/problem/manage_submission.html:90 +#: templates/problem/manage_submission.html:92 #, python-brace-format msgid "You are about to rejudge {count} submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:96 +#: templates/problem/manage_submission.html:98 msgid "You are about to rejudge a few submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:115 +#: templates/problem/manage_submission.html:117 msgid "Rejudge Submissions" msgstr "" -#: templates/problem/manage_submission.html:120 +#: templates/problem/manage_submission.html:122 msgid "Filter by ID:" msgstr "" -#: templates/problem/manage_submission.html:123 +#: templates/problem/manage_submission.html:125 msgid "Starting ID:" msgstr "" -#: templates/problem/manage_submission.html:127 +#: templates/problem/manage_submission.html:129 msgid "Ending ID:" msgstr "" -#: templates/problem/manage_submission.html:131 +#: templates/problem/manage_submission.html:133 msgid "This range includes both endpoints." msgstr "" -#: templates/problem/manage_submission.html:134 +#: templates/problem/manage_submission.html:136 msgid "Filter by language:" msgstr "" -#: templates/problem/manage_submission.html:150 +#: templates/problem/manage_submission.html:152 msgid "Rejudge selected submissions" msgstr "" -#: templates/problem/manage_submission.html:157 +#: templates/problem/manage_submission.html:159 msgid "Rescore Everything" msgstr "" -#: templates/problem/manage_submission.html:158 +#: templates/problem/manage_submission.html:160 #, python-format msgid "This will rescore %(count)s submission." msgid_plural "This will rescore %(count)s submissions." @@ -4874,7 +4899,7 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: templates/problem/manage_submission.html:166 +#: templates/problem/manage_submission.html:168 #, python-format msgid "Are you sure you want to rescore %(count)s submission?" msgid_plural "Are you sure you want to rescore %(count)s submissions?" @@ -4882,7 +4907,7 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: templates/problem/manage_submission.html:171 +#: templates/problem/manage_submission.html:173 msgid "Rescore all submissions" msgstr "" @@ -5048,8 +5073,8 @@ msgstr "Tipovi zadatka" msgid "Point range" msgstr "" -#: templates/problem/search-form.html:68 templates/submission/list.html:326 -#: templates/ticket/list.html:188 +#: templates/problem/search-form.html:68 templates/submission/list.html:328 +#: templates/ticket/list.html:189 msgid "Go" msgstr "Idi" @@ -5058,7 +5083,7 @@ msgid "Random" msgstr "" #: templates/problem/submission-diff.html:62 -#: templates/status/language-list.html:34 templates/ticket/list.html:199 +#: templates/status/language-list.html:34 templates/ticket/list.html:200 msgid "ID" msgstr "ID" @@ -5070,20 +5095,20 @@ msgstr "Rezultat" msgid "Date" msgstr "Datum" -#: templates/problem/submit.html:117 +#: templates/problem/submit.html:118 msgid "Your source code must contain at most 65536 characters." msgstr "" -#: templates/problem/submit.html:204 +#: templates/problem/submit.html:138 msgid "Warning!" msgstr "" -#: templates/problem/submit.html:205 +#: templates/problem/submit.html:139 #, python-format msgid "Your default language, %(language)s, is unavailable for this problem and has been deselected." msgstr "" -#: templates/problem/submit.html:213 +#: templates/problem/submit.html:147 #, python-format msgid "You have %(left)s submission left" msgid_plural "You have %(left)s submissions left" @@ -5091,11 +5116,11 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: templates/problem/submit.html:218 +#: templates/problem/submit.html:152 msgid "You have 0 submissions left" msgstr "" -#: templates/problem/submit.html:252 +#: templates/problem/submit.html:186 msgid "No judge is available for this problem." msgstr "" @@ -5305,7 +5330,7 @@ msgstr "" msgid "Password reset on %(site_name)s" msgstr "" -#: templates/registration/profile_creation.html:44 +#: templates/registration/profile_creation.html:38 #: templates/registration/username_select.html:7 msgid "Continue >" msgstr "" @@ -5318,36 +5343,36 @@ msgstr "" msgid "You have successfully been registered. An email has been sent to the email address you provided to confirm your registration." msgstr "" -#: templates/registration/registration_form.html:170 +#: templates/registration/registration_form.html:166 msgid "(again, for confirmation)" msgstr "" -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "(select your closest major city)" msgstr "" -#: templates/registration/registration_form.html:182 +#: templates/registration/registration_form.html:178 msgid "pick from map" msgstr "" -#: templates/registration/registration_form.html:187 +#: templates/registration/registration_form.html:183 msgid "Default language" msgstr "" -#: templates/registration/registration_form.html:190 +#: templates/registration/registration_form.html:186 msgid "Affiliated organizations" msgstr "" -#: templates/registration/registration_form.html:199 -#: templates/user/edit-profile.html:322 +#: templates/registration/registration_form.html:195 +#: templates/user/edit-profile.html:321 msgid "Notify me about upcoming contests" msgstr "" -#: templates/registration/registration_form.html:213 +#: templates/registration/registration_form.html:209 msgid "By registering, you agree to our [Terms & Conditions][0]." msgstr "" -#: templates/registration/registration_form.html:216 +#: templates/registration/registration_form.html:212 msgid "Register!" msgstr "" @@ -5389,17 +5414,17 @@ msgid "Enable Two Factor Authentication" msgstr "Omogući Dvofaktornu Autentifikaciju" #: templates/registration/totp_enable.html:98 -#: templates/user/edit-profile.html:374 +#: templates/user/edit-profile.html:391 msgid "Below is a list of one-time use scratch codes." msgstr "" #: templates/registration/totp_enable.html:99 -#: templates/user/edit-profile.html:375 +#: templates/user/edit-profile.html:392 msgid "These codes can only be used once and are for emergency use." msgstr "" #: templates/registration/totp_enable.html:100 -#: templates/user/edit-profile.html:376 +#: templates/user/edit-profile.html:393 msgid "You can use these codes to login to your account or disable two-factor authentication." msgstr "" @@ -5408,7 +5433,7 @@ msgid "If you ever need more scratch codes, you can regenerate them on the edit msgstr "" #: templates/registration/totp_enable.html:102 -#: templates/user/edit-profile.html:378 +#: templates/user/edit-profile.html:395 msgid "Please write these down and keep them in a secure location." msgstr "" @@ -5426,12 +5451,12 @@ msgid "If you lose your authentication device and are unable to use your scratch msgstr "" #: templates/registration/two_factor_auth.html:33 -#: templates/user/edit-profile.html:164 +#: templates/user/edit-profile.html:159 msgid "WebAuthn is not supported by your browser." msgstr "" #: templates/registration/two_factor_auth.html:54 -#: templates/user/edit-profile.html:188 +#: templates/user/edit-profile.html:183 msgid "Failed to contact server." msgstr "" @@ -5529,23 +5554,23 @@ msgstr "" msgid "Are you sure you want to rejudge?" msgstr "" -#: templates/submission/list.html:74 +#: templates/submission/list.html:75 msgid "Filter by status..." msgstr "" -#: templates/submission/list.html:80 +#: templates/submission/list.html:82 msgid "Filter by language..." msgstr "" -#: templates/submission/list.html:304 +#: templates/submission/list.html:306 msgid "Filter submissions" msgstr "" -#: templates/submission/list.html:340 +#: templates/submission/list.html:342 msgid "Total:" msgstr "" -#: templates/submission/list.html:350 +#: templates/submission/list.html:352 msgid "You were disconnected. Refresh to show latest updates." msgstr "" @@ -5709,34 +5734,34 @@ msgstr "" msgid "Closed: " msgstr "" -#: templates/ticket/list.html:156 +#: templates/ticket/list.html:157 msgid "Use desktop notification" msgstr "" -#: templates/ticket/list.html:162 +#: templates/ticket/list.html:163 msgid "Hide closed tickets" msgstr "" -#: templates/ticket/list.html:167 +#: templates/ticket/list.html:168 msgid "Show my tickets only" msgstr "" -#: templates/ticket/list.html:171 +#: templates/ticket/list.html:172 msgid "Filing user" msgstr "" -#: templates/ticket/list.html:180 templates/ticket/ticket.html:196 +#: templates/ticket/list.html:181 templates/ticket/ticket.html:196 msgid "Assignee" msgid_plural "Assignees" msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: templates/ticket/list.html:200 +#: templates/ticket/list.html:201 msgid "Title" msgstr "" -#: templates/ticket/list.html:202 +#: templates/ticket/list.html:203 msgid "Assignees" msgstr "" @@ -5787,131 +5812,135 @@ msgstr "" msgid "Nothing here." msgstr "" -#: templates/user/base-users-table.html:3 +#: templates/user/base-users-table.html:4 msgid "Rank" msgstr "Rang" -#: templates/user/base-users.html:14 templates/user/base-users.html:57 +#: templates/user/base-users.html:15 templates/user/base-users.html:58 msgid "Search by handle..." msgstr "" -#: templates/user/edit-profile.html:107 +#: templates/user/edit-profile.html:102 msgid "The administrators for this site require all the staff to have Two-factor Authentication enabled, so it may not be disabled at this time." msgstr "" -#: templates/user/edit-profile.html:112 +#: templates/user/edit-profile.html:107 msgid "Are you sure you want to generate or regenerate your API token?" msgstr "" -#: templates/user/edit-profile.html:113 +#: templates/user/edit-profile.html:108 msgid "This will invalidate any previous API tokens." msgstr "" -#: templates/user/edit-profile.html:114 +#: templates/user/edit-profile.html:109 msgid "It also allows access to your account without Two-factor Authentication." msgstr "" -#: templates/user/edit-profile.html:115 +#: templates/user/edit-profile.html:110 msgid "You will not be able to view your API token after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:116 templates/user/edit-profile.html:210 +#: templates/user/edit-profile.html:111 templates/user/edit-profile.html:205 msgid "Generating..." msgstr "" -#: templates/user/edit-profile.html:130 templates/user/edit-profile.html:398 +#: templates/user/edit-profile.html:125 templates/user/edit-profile.html:355 msgid "Remove" msgstr "" -#: templates/user/edit-profile.html:140 +#: templates/user/edit-profile.html:135 msgid "Are you sure you want to remove your API token?" msgstr "" -#: templates/user/edit-profile.html:147 templates/user/edit-profile.html:370 -#: templates/user/edit-profile.html:402 +#: templates/user/edit-profile.html:142 templates/user/edit-profile.html:359 +#: templates/user/edit-profile.html:387 msgid "Generate" msgstr "" -#: templates/user/edit-profile.html:193 +#: templates/user/edit-profile.html:188 msgid "Are you sure you want to delete this security key?" msgstr "" -#: templates/user/edit-profile.html:207 +#: templates/user/edit-profile.html:202 msgid "Are you sure you want to generate or regenerate a new set of scratch codes?" msgstr "" -#: templates/user/edit-profile.html:208 +#: templates/user/edit-profile.html:203 msgid "This will invalidate any previous scratch codes you have." msgstr "" -#: templates/user/edit-profile.html:209 templates/user/edit-profile.html:379 +#: templates/user/edit-profile.html:204 templates/user/edit-profile.html:396 msgid "You will not be able to view your scratch codes after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:278 +#: templates/user/edit-profile.html:273 msgid "Self-description:" msgstr "Samo-opis:" -#: templates/user/edit-profile.html:285 +#: templates/user/edit-profile.html:280 msgid "Select your closest major city" msgstr "" -#: templates/user/edit-profile.html:286 +#: templates/user/edit-profile.html:281 msgid "Time zone:" msgstr "Vremenska zona:" -#: templates/user/edit-profile.html:290 +#: templates/user/edit-profile.html:285 msgid "Language:" msgstr "Jezik:" -#: templates/user/edit-profile.html:294 +#: templates/user/edit-profile.html:289 +msgid "Site theme:" +msgstr "" + +#: templates/user/edit-profile.html:293 msgid "Editor theme:" msgstr "" -#: templates/user/edit-profile.html:299 +#: templates/user/edit-profile.html:298 msgid "Math engine:" msgstr "Math engine:" -#: templates/user/edit-profile.html:308 +#: templates/user/edit-profile.html:307 msgid "Affiliated organizations:" msgstr "" -#: templates/user/edit-profile.html:334 +#: templates/user/edit-profile.html:333 msgid "Change your avatar" msgstr "" -#: templates/user/edit-profile.html:339 +#: templates/user/edit-profile.html:338 msgid "Change your password" msgstr "" -#: templates/user/edit-profile.html:352 -msgid "Two-factor Authentication is enabled:" -msgstr "Dvofaktorna autentifikacija je uključena:" +#: templates/user/edit-profile.html:350 +msgid "API token:" +msgstr "API token:" -#: templates/user/edit-profile.html:360 +#: templates/user/edit-profile.html:356 templates/user/edit-profile.html:384 +msgid "Hidden" +msgstr "Sakriveno" + +#: templates/user/edit-profile.html:369 +msgid "Two-factor authentication is enabled:" +msgstr "" + +#: templates/user/edit-profile.html:377 msgid "Refresh" msgstr "" -#: templates/user/edit-profile.html:363 +#: templates/user/edit-profile.html:380 msgid "Scratch codes:" msgstr "" -#: templates/user/edit-profile.html:367 templates/user/edit-profile.html:399 -msgid "Hidden" -msgstr "Sakriveno" - -#: templates/user/edit-profile.html:377 +#: templates/user/edit-profile.html:394 msgid "If you ever need more scratch codes, you can regenerate them here." msgstr "" -#: templates/user/edit-profile.html:385 +#: templates/user/edit-profile.html:402 msgid "Two-factor Authentication is disabled:" msgstr "Dvofaktorna autentifikacija je isključena:" -#: templates/user/edit-profile.html:393 -msgid "API token:" -msgstr "API token:" - #: templates/user/edit-profile.html:410 msgid "Security keys:" msgstr "" diff --git a/locale/sr_Latn/LC_MESSAGES/djangojs.po b/locale/sr_Latn/LC_MESSAGES/djangojs.po index 2180270dad..069c01c126 100644 --- a/locale/sr_Latn/LC_MESSAGES/djangojs.po +++ b/locale/sr_Latn/LC_MESSAGES/djangojs.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-20 23:43+0000\n" -"PO-Revision-Date: 2022-12-21 00:44\n" +"POT-Creation-Date: 2023-01-23 05:23+0000\n" +"PO-Revision-Date: 2023-01-24 00:52\n" "Last-Translator: \n" "Language-Team: Serbian (Latin)\n" "Language: sr_CS\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: djangojs.po\n" "X-Crowdin-File-ID: 12\n" -#: resources/common.js:195 +#: resources/common.js:194 msgctxt "time format with day" msgid "%d day %h:%m:%s" msgid_plural "%d days %h:%m:%s" @@ -25,7 +25,7 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: resources/common.js:198 +#: resources/common.js:197 msgctxt "time format without day" msgid "%h:%m:%s" msgstr "" diff --git a/locale/tr/LC_MESSAGES/django.po b/locale/tr/LC_MESSAGES/django.po index c7d4da30bb..eb39917824 100644 --- a/locale/tr/LC_MESSAGES/django.po +++ b/locale/tr/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-20 23:04+0000\n" -"PO-Revision-Date: 2023-01-22 00:52\n" +"POT-Creation-Date: 2023-02-17 22:33+0000\n" +"PO-Revision-Date: 2023-02-18 00:50\n" "Last-Translator: \n" "Language-Team: Turkish\n" "Language: tr_TR\n" @@ -17,91 +17,91 @@ msgstr "" "X-Crowdin-File: django.po\n" "X-Crowdin-File-ID: 10\n" -#: dmoj/settings.py:380 +#: dmoj/settings.py:392 msgid "Catalan" msgstr "Katalanca" -#: dmoj/settings.py:381 +#: dmoj/settings.py:393 msgid "German" msgstr "Almanca" -#: dmoj/settings.py:382 +#: dmoj/settings.py:394 msgid "Greek" msgstr "Yunanca" -#: dmoj/settings.py:383 +#: dmoj/settings.py:395 msgid "English" msgstr "İngilizce" -#: dmoj/settings.py:384 +#: dmoj/settings.py:396 msgid "Spanish" msgstr "İspanyolca" -#: dmoj/settings.py:385 +#: dmoj/settings.py:397 msgid "French" msgstr "Fransızca" -#: dmoj/settings.py:386 +#: dmoj/settings.py:398 msgid "Croatian" msgstr "Hırvatça" -#: dmoj/settings.py:387 +#: dmoj/settings.py:399 msgid "Hungarian" msgstr "Macarca" -#: dmoj/settings.py:388 +#: dmoj/settings.py:400 msgid "Japanese" msgstr "Japonca" -#: dmoj/settings.py:389 +#: dmoj/settings.py:401 msgid "Korean" msgstr "Korece" -#: dmoj/settings.py:390 +#: dmoj/settings.py:402 msgid "Brazilian Portuguese" msgstr "Brezilya Portekizcesi" -#: dmoj/settings.py:391 +#: dmoj/settings.py:403 msgid "Romanian" msgstr "Rumence" -#: dmoj/settings.py:392 +#: dmoj/settings.py:404 msgid "Russian" msgstr "Rusça" -#: dmoj/settings.py:393 +#: dmoj/settings.py:405 msgid "Serbian (Latin)" msgstr "Sırpça (Latin)" -#: dmoj/settings.py:394 +#: dmoj/settings.py:406 msgid "Turkish" msgstr "Türkçe" -#: dmoj/settings.py:395 +#: dmoj/settings.py:407 msgid "Vietnamese" msgstr "Vietnamca" -#: dmoj/settings.py:396 +#: dmoj/settings.py:408 msgid "Simplified Chinese" msgstr "Basitleştirilmiş Çince" -#: dmoj/settings.py:397 +#: dmoj/settings.py:409 msgid "Traditional Chinese" msgstr "Geleneksel Çince" -#: dmoj/urls.py:32 +#: dmoj/urls.py:31 msgid "Activation Successful!" msgstr "" -#: dmoj/urls.py:40 +#: dmoj/urls.py:39 msgid "Registration Completed" msgstr "" -#: dmoj/urls.py:44 +#: dmoj/urls.py:43 msgid "Registration Not Allowed" msgstr "" -#: dmoj/urls.py:93 templates/base.html:183 +#: dmoj/urls.py:92 templates/base.html:193 msgid "Home" msgstr "Ana sayfa" @@ -140,8 +140,8 @@ msgid "Included contests" msgstr "Yarışmalar" #: judge/admin/contest.py:65 templates/contest/contest.html:195 -#: templates/contest/moss.html:41 templates/problem/list.html:197 -#: templates/problem/list.html:213 templates/user/user-problems.html:58 +#: templates/contest/moss.html:41 templates/problem/list.html:188 +#: templates/problem/list.html:204 templates/user/user-problems.html:58 #: templates/user/user-problems.html:102 msgid "Problem" msgstr "" @@ -152,7 +152,7 @@ msgstr "" msgid "Problems" msgstr "Problemler" -#: judge/admin/contest.py:76 judge/admin/submission.py:249 +#: judge/admin/contest.py:76 judge/admin/submission.py:250 #: templates/admin/judge/submission/change_form.html:14 #: templates/admin/judge/submission/change_form.html:17 #: templates/submission/source.html:34 templates/submission/status.html:89 @@ -231,29 +231,29 @@ msgstr[1] "" msgid "Unlock contest submissions" msgstr "" -#: judge/admin/contest.py:280 judge/admin/submission.py:175 +#: judge/admin/contest.py:280 judge/admin/submission.py:176 #, python-format msgid "%d submission was successfully scheduled for rejudging." msgid_plural "%d submissions were successfully scheduled for rejudging." msgstr[0] "" msgstr[1] "" -#: judge/admin/contest.py:356 +#: judge/admin/contest.py:358 #, python-format msgid "%d participation recalculated." msgid_plural "%d participations recalculated." msgstr[0] "" msgstr[1] "" -#: judge/admin/contest.py:359 +#: judge/admin/contest.py:361 msgid "Recalculate results" msgstr "" -#: judge/admin/contest.py:363 judge/admin/organization.py:113 +#: judge/admin/contest.py:365 judge/admin/organization.py:113 msgid "username" msgstr "kullanıcı adı" -#: judge/admin/contest.py:368 templates/base.html:249 +#: judge/admin/contest.py:370 templates/base.html:259 msgid "virtual" msgstr "sanal" @@ -266,8 +266,8 @@ msgid "Summary" msgstr "Özet" #: judge/admin/interface.py:124 judge/models/contest.py:491 -#: judge/models/contest.py:623 judge/models/profile.py:331 -#: judge/models/profile.py:362 judge/models/submission.py:67 +#: judge/models/contest.py:623 judge/models/profile.py:347 +#: judge/models/profile.py:378 judge/models/submission.py:67 #: judge/models/ticket.py:32 msgid "user" msgstr "kullanıcı" @@ -298,8 +298,8 @@ msgid "Taxonomy" msgstr "Tasnif" #: judge/admin/problem.py:133 templates/contest/contest.html:196 -#: templates/problem/data.html:380 templates/problem/list.html:202 -#: templates/problem/list.html:224 templates/user/base-users-table.html:10 +#: templates/problem/data.html:381 templates/problem/list.html:193 +#: templates/problem/list.html:215 templates/user/base-users-table.html:11 #: templates/user/user-problems.html:60 msgid "Points" msgstr "Puanlar" @@ -308,9 +308,9 @@ msgstr "Puanlar" msgid "Limits" msgstr "Sınırlar" -#: judge/admin/problem.py:135 judge/admin/submission.py:243 +#: judge/admin/problem.py:135 judge/admin/submission.py:244 #: templates/problem/submission-diff.html:65 templates/stats/tabs.html:4 -#: templates/submission/list.html:317 +#: templates/submission/list.html:319 msgid "Language" msgstr "Dil" @@ -367,19 +367,19 @@ msgstr "" msgid "timezone" msgstr "saat dilimi" -#: judge/admin/profile.py:98 judge/admin/submission.py:222 +#: judge/admin/profile.py:98 judge/admin/submission.py:223 #: templates/organization/requests/log.html:9 #: templates/organization/requests/pending.html:12 -#: templates/ticket/list.html:201 +#: templates/ticket/list.html:202 msgid "User" msgstr "Kullanıcı" -#: judge/admin/profile.py:103 templates/registration/registration_form.html:149 +#: judge/admin/profile.py:103 templates/registration/registration_form.html:145 msgid "Email" msgstr "E-posta" #: judge/admin/profile.py:108 judge/views/register.py:28 -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "Timezone" msgstr "Saat dilimi" @@ -398,26 +398,26 @@ msgstr[1] "%d kullanıcının puanları yeniden hesaplandı." msgid "Recalculate scores" msgstr "Puanları yeniden hesapla" -#: judge/admin/runtime.py:50 templates/user/edit-profile.html:124 -#: templates/user/edit-profile.html:246 templates/user/edit-profile.html:366 -#: templates/user/edit-profile.html:396 +#: judge/admin/runtime.py:52 templates/user/edit-profile.html:119 +#: templates/user/edit-profile.html:241 templates/user/edit-profile.html:353 +#: templates/user/edit-profile.html:383 msgid "Regenerate" msgstr "" -#: judge/admin/runtime.py:64 +#: judge/admin/runtime.py:66 msgid "Description" msgstr "Tanım" -#: judge/admin/runtime.py:65 +#: judge/admin/runtime.py:67 msgid "Information" msgstr "Bilgi" -#: judge/admin/runtime.py:66 +#: judge/admin/runtime.py:68 msgid "Capabilities" msgstr "Desteklenenler" #: judge/admin/submission.py:24 judge/admin/submission.py:43 -#: judge/admin/submission.py:232 +#: judge/admin/submission.py:233 msgid "None" msgstr "Hiç" @@ -449,57 +449,57 @@ msgctxt "contest problem" msgid "%(problem)s in %(contest)s" msgstr "%(problem)s - %(contest)s" -#: judge/admin/submission.py:160 judge/admin/submission.py:182 +#: judge/admin/submission.py:161 judge/admin/submission.py:183 msgid "You do not have the permission to rejudge submissions." msgstr "Çözümleri yeniden değerlendirme yetkin yok." -#: judge/admin/submission.py:166 +#: judge/admin/submission.py:167 msgid "You do not have the permission to rejudge THAT many submissions." msgstr "Bu miktarda çözümü yeniden değerlendirme yetkin yok." -#: judge/admin/submission.py:178 +#: judge/admin/submission.py:179 msgid "Rejudge the selected submissions" msgstr "Seçili çözümleri yeniden değerlendir" -#: judge/admin/submission.py:204 judge/views/problem_manage.py:129 +#: judge/admin/submission.py:205 judge/views/problem_manage.py:129 #, python-format msgid "%d submission was successfully rescored." msgid_plural "%d submissions were successfully rescored." msgstr[0] "%d çözüm yeniden puanlandı." msgstr[1] "%d çözüm yeniden puanlandı." -#: judge/admin/submission.py:207 +#: judge/admin/submission.py:208 msgid "Rescore the selected submissions" msgstr "Seçili çözümleri yeniden puanla" -#: judge/admin/submission.py:211 +#: judge/admin/submission.py:212 msgid "Problem code" msgstr "Problem anahtarı" -#: judge/admin/submission.py:216 +#: judge/admin/submission.py:217 msgid "Problem name" msgstr "Problem adı" -#: judge/admin/submission.py:226 templates/organization/requests/log.html:10 +#: judge/admin/submission.py:227 templates/organization/requests/log.html:10 #: templates/organization/requests/pending.html:13 msgid "Time" msgstr "Zaman" -#: judge/admin/submission.py:234 +#: judge/admin/submission.py:235 #, python-format msgid "%d KB" msgstr "%d KB" -#: judge/admin/submission.py:236 +#: judge/admin/submission.py:237 #, python-format msgid "%.2f MB" msgstr "%.2f MB" -#: judge/admin/submission.py:238 +#: judge/admin/submission.py:239 msgid "Memory" msgstr "Bellek" -#: judge/admin/submission.py:247 +#: judge/admin/submission.py:248 msgid "Locked" msgstr "" @@ -524,6 +524,7 @@ msgid "Comment body" msgstr "Yorum" #: judge/comments.py:47 judge/views/comment.py:40 judge/views/ticket.py:46 +#: judge/views/user.py:347 msgid "Your part is silent, little toad." msgstr "Senin rolün sessiz, küçük kurbağa." @@ -631,7 +632,7 @@ msgstr "" msgid "Scratch codes must be 16 Base32 characters." msgstr "" -#: judge/forms.py:39 judge/forms.py:265 +#: judge/forms.py:39 judge/forms.py:266 msgid "Invalid scratch code." msgstr "" @@ -654,83 +655,83 @@ msgid_plural "You may not be part of more than {count} public organizations." msgstr[0] "" msgstr[1] "" -#: judge/forms.py:98 +#: judge/forms.py:99 msgid "Download comments?" msgstr "" -#: judge/forms.py:99 +#: judge/forms.py:100 msgid "Download submissions?" msgstr "" -#: judge/forms.py:100 +#: judge/forms.py:101 msgid "Filter by problem code glob:" msgstr "" -#: judge/forms.py:104 +#: judge/forms.py:105 msgid "Leave empty to include all submissions" msgstr "" -#: judge/forms.py:107 templates/problem/manage_submission.html:142 +#: judge/forms.py:108 templates/problem/manage_submission.html:144 msgid "Filter by result:" msgstr "" -#: judge/forms.py:113 +#: judge/forms.py:114 msgid "Please select at least one thing to download." msgstr "" -#: judge/forms.py:139 +#: judge/forms.py:140 msgid "Any judge" msgstr "" -#: judge/forms.py:160 judge/views/register.py:25 +#: judge/forms.py:161 judge/views/register.py:25 #: templates/problem/submission-diff.html:63 -#: templates/registration/registration_form.html:143 -#: templates/user/base-users-table.html:5 +#: templates/registration/registration_form.html:139 +#: templates/user/base-users-table.html:6 msgid "Username" msgstr "Kullanıcı Adı" -#: judge/forms.py:161 templates/registration/registration_form.html:155 -#: templates/registration/registration_form.html:169 +#: judge/forms.py:162 templates/registration/registration_form.html:151 +#: templates/registration/registration_form.html:165 msgid "Password" msgstr "Şifre" -#: judge/forms.py:193 +#: judge/forms.py:194 msgid "Invalid code length." msgstr "" -#: judge/forms.py:224 +#: judge/forms.py:225 msgid "Invalid WebAuthn response." msgstr "" -#: judge/forms.py:227 +#: judge/forms.py:228 msgid "No WebAuthn challenge issued." msgstr "" -#: judge/forms.py:233 +#: judge/forms.py:234 msgid "Invalid WebAuthn credential ID." msgstr "" -#: judge/forms.py:263 +#: judge/forms.py:264 msgid "Invalid two-factor authentication token or scratch code." msgstr "" -#: judge/forms.py:267 +#: judge/forms.py:268 msgid "Must specify either totp_token or webauthn_response." msgstr "" -#: judge/forms.py:271 judge/models/problem.py:118 +#: judge/forms.py:272 judge/models/problem.py:118 msgid "Problem code must be ^[a-z0-9]+$" msgstr "Problem kodu ^[a-z0-9]+$ olmalıdır" -#: judge/forms.py:276 +#: judge/forms.py:277 msgid "Problem with code already exists." msgstr "" -#: judge/forms.py:281 judge/models/contest.py:68 +#: judge/forms.py:282 judge/models/contest.py:68 msgid "Contest id must be ^[a-z0-9]+$" msgstr "Yarışma ID'si ^[a-z0-9]+$ olmalıdır" -#: judge/forms.py:286 +#: judge/forms.py:287 msgid "Contest with key already exists." msgstr "" @@ -753,26 +754,42 @@ msgstr "{time} tarihinde" msgid "Unrated" msgstr "" -#: judge/models/choices.py:59 +#: judge/models/choices.py:24 +msgid "Follow site theme" +msgstr "" + +#: judge/models/choices.py:60 msgid "Leave as LaTeX" msgstr "LaTeX olarak bırak" -#: judge/models/choices.py:60 +#: judge/models/choices.py:61 msgid "SVG only" msgstr "Yalnızca SVG" -#: judge/models/choices.py:61 +#: judge/models/choices.py:62 msgid "MathML only" msgstr "Yalnızca MathML" -#: judge/models/choices.py:62 +#: judge/models/choices.py:63 msgid "MathJax with SVG fallback" msgstr "MathJax, fallback olarak SVG" -#: judge/models/choices.py:63 +#: judge/models/choices.py:64 msgid "Detect best quality" msgstr "En iyi kaliteyi tespit et" +#: judge/models/choices.py:70 +msgid "Follow system default" +msgstr "" + +#: judge/models/choices.py:71 +msgid "Light" +msgstr "Açık" + +#: judge/models/choices.py:72 +msgid "Dark" +msgstr "Koyu" + #: judge/models/comment.py:25 msgid "Page code must be ^[pcs]:[a-z0-9]+$|^b:\\d+$" msgstr "" @@ -1885,7 +1902,7 @@ msgid "Non-trailing spaces" msgstr "" #: judge/models/problem_data.py:28 -msgid "Unordered" +msgid "Sorted" msgstr "" #: judge/models/problem_data.py:29 @@ -2057,7 +2074,7 @@ msgid "Edit all organizations" msgstr "" #: judge/models/profile.py:98 judge/models/profile.py:103 -#: judge/models/profile.py:160 judge/models/profile.py:363 +#: judge/models/profile.py:161 judge/models/profile.py:379 msgid "organization" msgstr "organizasyon" @@ -2098,7 +2115,7 @@ msgstr "üyeler" msgid "%(class)s in %(organization)s" msgstr "" -#: judge/models/profile.py:142 judge/models/profile.py:371 +#: judge/models/profile.py:142 judge/models/profile.py:387 msgid "class" msgstr "" @@ -2123,26 +2140,30 @@ msgid "Ace theme" msgstr "" #: judge/models/profile.py:158 +msgid "site theme" +msgstr "" + +#: judge/models/profile.py:159 msgid "last access time" msgstr "son erişim" -#: judge/models/profile.py:159 +#: judge/models/profile.py:160 msgid "last IP" msgstr "son IP" -#: judge/models/profile.py:162 +#: judge/models/profile.py:163 msgid "display rank" msgstr "görünen derece" -#: judge/models/profile.py:164 +#: judge/models/profile.py:165 msgid "Normal User" msgstr "" -#: judge/models/profile.py:165 +#: judge/models/profile.py:166 msgid "Problem Setter" msgstr "" -#: judge/models/profile.py:166 templates/base.html:211 +#: judge/models/profile.py:167 templates/base.html:221 #: templates/comments/list.html:97 templates/contest/contest-list-tabs.html:25 #: templates/contest/ranking-table.html:51 #: templates/problem/problem-list-tabs.html:6 @@ -2152,200 +2173,200 @@ msgstr "" msgid "Admin" msgstr "Yönetici" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "comment mute" msgstr "yorum engeli" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "Some users are at their best when silent." msgstr "Bazı kullanıcıların sessiz kalması daha iyidir." -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "unlisted user" msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "User will not be ranked." msgstr "" -#: judge/models/profile.py:172 +#: judge/models/profile.py:173 msgid "banned from voting on problem point values" msgstr "" -#: judge/models/profile.py:173 +#: judge/models/profile.py:174 msgid "User will not be able to vote on problems' point values." msgstr "" -#: judge/models/profile.py:177 +#: judge/models/profile.py:178 msgid "user script" msgstr "userscript" -#: judge/models/profile.py:178 +#: judge/models/profile.py:179 msgid "User-defined JavaScript for site customization." msgstr "Site düzenlemesi için kullanıcı tanımlı JavaScript." -#: judge/models/profile.py:179 +#: judge/models/profile.py:180 msgid "current contest" msgstr "şu anki yarışma" -#: judge/models/profile.py:181 +#: judge/models/profile.py:182 msgid "math engine" msgstr "matematik motoru" -#: judge/models/profile.py:183 +#: judge/models/profile.py:184 msgid "The rendering engine used to render math." msgstr "Matematiksel ifadeleri gösteren program." -#: judge/models/profile.py:184 +#: judge/models/profile.py:185 msgid "TOTP 2FA enabled" msgstr "" -#: judge/models/profile.py:185 +#: judge/models/profile.py:186 msgid "Check to enable TOTP-based two-factor authentication." msgstr "" -#: judge/models/profile.py:186 +#: judge/models/profile.py:187 msgid "WebAuthn 2FA enabled" msgstr "" -#: judge/models/profile.py:187 +#: judge/models/profile.py:188 msgid "Check to enable WebAuthn-based two-factor authentication." msgstr "" -#: judge/models/profile.py:188 +#: judge/models/profile.py:189 msgid "TOTP key" msgstr "" -#: judge/models/profile.py:189 +#: judge/models/profile.py:190 msgid "32-character Base32-encoded key for TOTP." msgstr "" -#: judge/models/profile.py:191 +#: judge/models/profile.py:192 msgid "TOTP key must be empty or Base32." msgstr "" -#: judge/models/profile.py:192 +#: judge/models/profile.py:193 msgid "scratch codes" msgstr "" -#: judge/models/profile.py:193 +#: judge/models/profile.py:194 msgid "JSON array of 16-character Base32-encoded codes for scratch codes." msgstr "" -#: judge/models/profile.py:197 +#: judge/models/profile.py:198 msgid "Scratch codes must be empty or a JSON array of 16-character Base32 codes." msgstr "" -#: judge/models/profile.py:199 +#: judge/models/profile.py:200 msgid "last TOTP timecode" msgstr "" -#: judge/models/profile.py:200 +#: judge/models/profile.py:201 msgid "API token" msgstr "" -#: judge/models/profile.py:201 +#: judge/models/profile.py:202 msgid "64-character hex-encoded API access token." msgstr "" -#: judge/models/profile.py:203 +#: judge/models/profile.py:204 msgid "API token must be None or hexadecimal" msgstr "" -#: judge/models/profile.py:204 +#: judge/models/profile.py:205 msgid "internal notes" msgstr "" -#: judge/models/profile.py:205 +#: judge/models/profile.py:206 msgid "Notes for administrators regarding this user." msgstr "" -#: judge/models/profile.py:206 +#: judge/models/profile.py:207 msgid "last data download time" msgstr "" -#: judge/models/profile.py:207 +#: judge/models/profile.py:208 msgid "display name override" msgstr "" -#: judge/models/profile.py:208 +#: judge/models/profile.py:209 msgid "Name displayed in place of username." msgstr "" -#: judge/models/profile.py:323 +#: judge/models/profile.py:333 msgid "Shows in-progress development stuff" msgstr "" -#: judge/models/profile.py:324 +#: judge/models/profile.py:334 msgid "Edit TOTP settings" msgstr "" -#: judge/models/profile.py:326 +#: judge/models/profile.py:336 msgid "user profile" msgstr "kullanıcı profili" -#: judge/models/profile.py:327 +#: judge/models/profile.py:337 msgid "user profiles" msgstr "kullanıcı profilleri" -#: judge/models/profile.py:333 +#: judge/models/profile.py:349 msgid "device name" msgstr "" -#: judge/models/profile.py:334 +#: judge/models/profile.py:350 msgid "credential ID" msgstr "" -#: judge/models/profile.py:335 +#: judge/models/profile.py:351 msgid "public key" msgstr "" -#: judge/models/profile.py:336 +#: judge/models/profile.py:352 msgid "sign counter" msgstr "" -#: judge/models/profile.py:354 +#: judge/models/profile.py:370 #, python-format msgid "WebAuthn credential: %(name)s" msgstr "" -#: judge/models/profile.py:357 +#: judge/models/profile.py:373 msgid "WebAuthn credential" msgstr "" -#: judge/models/profile.py:358 +#: judge/models/profile.py:374 msgid "WebAuthn credentials" msgstr "" -#: judge/models/profile.py:365 +#: judge/models/profile.py:381 msgid "request time" msgstr "istek zamanı" -#: judge/models/profile.py:366 +#: judge/models/profile.py:382 msgid "state" msgstr "durum" -#: judge/models/profile.py:367 templates/organization/requests/tabs.html:4 +#: judge/models/profile.py:383 templates/organization/requests/tabs.html:4 msgid "Pending" msgstr "Beklemede" -#: judge/models/profile.py:368 templates/organization/requests/tabs.html:10 +#: judge/models/profile.py:384 templates/organization/requests/tabs.html:10 msgid "Approved" msgstr "Onaylandı" -#: judge/models/profile.py:369 templates/organization/requests/tabs.html:13 +#: judge/models/profile.py:385 templates/organization/requests/tabs.html:13 msgid "Rejected" msgstr "Geri çevrildi" -#: judge/models/profile.py:372 +#: judge/models/profile.py:388 msgid "reason" msgstr "sebep" -#: judge/models/profile.py:381 +#: judge/models/profile.py:397 msgid "organization join request" msgstr "organizasyona katılma isteği" -#: judge/models/profile.py:382 +#: judge/models/profile.py:398 msgid "organization join requests" msgstr "organizasyona katılma istekleri" @@ -2588,15 +2609,15 @@ msgstr "İç Hata (judge sunucusu hatası)" msgid "submission time" msgstr "çözüm süresi" -#: judge/models/submission.py:70 judge/models/submission.py:255 +#: judge/models/submission.py:70 judge/models/submission.py:265 msgid "execution time" msgstr "çalışma süresi" -#: judge/models/submission.py:71 judge/models/submission.py:256 +#: judge/models/submission.py:71 judge/models/submission.py:266 msgid "memory usage" msgstr "bellek kullanımı" -#: judge/models/submission.py:72 judge/models/submission.py:257 +#: judge/models/submission.py:72 judge/models/submission.py:267 msgid "points granted" msgstr "verilen puan" @@ -2685,60 +2706,60 @@ msgstr "" msgid "submissions" msgstr "çözümler" -#: judge/models/submission.py:235 judge/models/submission.py:251 +#: judge/models/submission.py:245 judge/models/submission.py:261 msgid "associated submission" msgstr "ilişkili çözüm gönderisi" -#: judge/models/submission.py:237 +#: judge/models/submission.py:247 msgid "source code" msgstr "kaynak kodu" -#: judge/models/submission.py:240 +#: judge/models/submission.py:250 #, python-format msgid "Source of %(submission)s" msgstr "" -#: judge/models/submission.py:243 +#: judge/models/submission.py:253 msgid "submission source" msgstr "" -#: judge/models/submission.py:244 +#: judge/models/submission.py:254 msgid "submission sources" msgstr "" -#: judge/models/submission.py:253 +#: judge/models/submission.py:263 msgid "test case ID" msgstr "test ID" -#: judge/models/submission.py:254 +#: judge/models/submission.py:264 msgid "status flag" msgstr "durum kodu" -#: judge/models/submission.py:258 +#: judge/models/submission.py:268 msgid "points possible" msgstr "alınabilecek puan" -#: judge/models/submission.py:259 +#: judge/models/submission.py:269 msgid "batch number" msgstr "küme #" -#: judge/models/submission.py:260 +#: judge/models/submission.py:270 msgid "judging feedback" msgstr "" -#: judge/models/submission.py:261 +#: judge/models/submission.py:271 msgid "extended judging feedback" msgstr "" -#: judge/models/submission.py:262 +#: judge/models/submission.py:272 msgid "program output" msgstr "program çıktısı" -#: judge/models/submission.py:276 +#: judge/models/submission.py:286 msgid "submission test case" msgstr "çözüm testi" -#: judge/models/submission.py:277 +#: judge/models/submission.py:287 msgid "submission test cases" msgstr "çözüm testleri" @@ -2956,7 +2977,7 @@ msgctxt "hours and minutes" msgid "%h:%m" msgstr "%h:%m" -#: judge/views/blog.py:36 +#: judge/views/blog.py:37 #, python-format msgid "Page %d of Posts" msgstr "Sayfa %d" @@ -3445,11 +3466,11 @@ msgstr "E-posta sağlayıcın geçmişte yaşanan suistimallerden dolayı geçer msgid "Register" msgstr "Kaydol" -#: judge/views/register.py:103 +#: judge/views/register.py:101 msgid "Activation Key Invalid" msgstr "" -#: judge/views/register.py:114 +#: judge/views/register.py:112 msgid "Authentication failure" msgstr "Kimlik doğrulama hatası" @@ -3461,7 +3482,7 @@ msgstr "Diğer" msgid "Language statistics" msgstr "Dil istatistikleri" -#: judge/views/status.py:23 templates/submission/list.html:308 +#: judge/views/status.py:23 templates/submission/list.html:310 msgid "Status" msgstr "Durum" @@ -3644,41 +3665,45 @@ msgstr "j M Y, G:i" msgid "Preparing your data..." msgstr "" -#: judge/views/user.py:298 templates/user/edit-profile.html:345 +#: judge/views/user.py:298 templates/user/edit-profile.html:344 msgid "Download your data" msgstr "" +#: judge/views/user.py:347 +msgid "Can't edit profile" +msgstr "" + #: judge/views/user.py:354 msgid "Updated on site" msgstr "Sitede güncellendi" -#: judge/views/user.py:387 templates/admin/auth/user/change_form.html:14 -#: templates/admin/auth/user/change_form.html:17 templates/base.html:213 +#: judge/views/user.py:386 templates/admin/auth/user/change_form.html:14 +#: templates/admin/auth/user/change_form.html:17 templates/base.html:223 #: templates/user/user-tabs.html:16 msgid "Edit profile" msgstr "Profili düzenle" -#: judge/views/user.py:402 +#: judge/views/user.py:400 msgid "Generated API token for user" msgstr "" -#: judge/views/user.py:414 +#: judge/views/user.py:412 msgid "Removed API token for user" msgstr "" -#: judge/views/user.py:424 +#: judge/views/user.py:422 msgid "Generated scratch codes for user" msgstr "" -#: judge/views/user.py:430 templates/user/user-list-tabs.html:4 +#: judge/views/user.py:428 templates/user/user-list-tabs.html:4 msgid "Leaderboard" msgstr "Sıralama" -#: judge/views/user.py:491 +#: judge/views/user.py:489 msgid "You have been successfully logged out." msgstr "" -#: judge/views/user.py:508 +#: judge/views/user.py:506 msgid "You have sent too many password reset requests. Please try again later." msgstr "" @@ -3707,13 +3732,13 @@ msgstr "" #: templates/admin/judge/judge/change_form.html:27 #: templates/admin/judge/judge/change_form.html:30 -#: templates/user/edit-profile.html:355 templates/user/edit-profile.html:358 +#: templates/user/edit-profile.html:372 templates/user/edit-profile.html:375 msgid "Disable" msgstr "" #: templates/admin/judge/judge/change_form.html:33 #: templates/admin/judge/judge/change_form.html:36 -#: templates/user/edit-profile.html:386 +#: templates/user/edit-profile.html:403 msgid "Enable" msgstr "" @@ -3733,48 +3758,48 @@ msgstr "" msgid "Edit user" msgstr "Kullanıcı düzenle" -#: templates/base.html:206 +#: templates/base.html:216 #, python-format msgid "Hello, %(username)s." msgstr "Merhaba, %(username)s." -#: templates/base.html:215 +#: templates/base.html:225 msgid "Stop impersonating" msgstr "" -#: templates/base.html:220 +#: templates/base.html:230 msgid "Log out" msgstr "Çıkış yap" -#: templates/base.html:229 +#: templates/base.html:239 #: templates/registration/password_reset_complete.html:4 msgid "Log in" msgstr "Giriş yap" -#: templates/base.html:230 templates/registration/registration_form.html:181 +#: templates/base.html:240 templates/registration/registration_form.html:177 msgid "or" msgstr "ya da" -#: templates/base.html:231 +#: templates/base.html:241 msgid "Sign up" msgstr "" -#: templates/base.html:243 +#: templates/base.html:253 msgid "spectating" msgstr "izleniyor" -#: templates/base.html:256 +#: templates/base.html:266 msgid "This site works best with JavaScript enabled." msgstr "Bu sitenin düzgün görüntülenmesi için JavaScript etkin olmalıdır." -#: templates/base.html:283 +#: templates/base.html:293 msgid "proudly powered by **DMOJ**" msgstr "" #: templates/blog/content.html:13 templates/comments/list.html:89 #: templates/comments/list.html:105 templates/contest/contest-tabs.html:23 #: templates/contest/tag-title.html:9 templates/flatpages/admin_link.html:3 -#: templates/license.html:10 templates/problem/data.html:423 +#: templates/license.html:10 templates/problem/data.html:424 #: templates/problem/editorial.html:14 msgid "Edit" msgstr "Düzenle" @@ -3975,15 +4000,15 @@ msgstr "Puan" msgid "No votes" msgstr "" -#: templates/common-content.html:32 templates/user/edit-profile.html:219 +#: templates/common-content.html:32 templates/user/edit-profile.html:214 msgid "Click to copy" msgstr "" -#: templates/common-content.html:33 templates/user/edit-profile.html:220 +#: templates/common-content.html:33 templates/user/edit-profile.html:215 msgid "Copy" msgstr "" -#: templates/common-content.html:44 templates/user/edit-profile.html:231 +#: templates/common-content.html:44 templates/user/edit-profile.html:226 msgid "Copied!" msgstr "" @@ -4064,7 +4089,7 @@ msgstr "Takvim" msgid "Info" msgstr "Hakkında" -#: templates/contest/contest-tabs.html:6 templates/submission/list.html:334 +#: templates/contest/contest-tabs.html:6 templates/submission/list.html:336 msgid "Statistics" msgstr "İstatistikler" @@ -4279,7 +4304,7 @@ msgstr "AC Oranı" #: templates/contest/contest.html:198 templates/contest/list.html:152 #: templates/contest/list.html:194 templates/contest/list.html:271 -#: templates/problem/list.html:203 templates/problem/list.html:235 +#: templates/problem/list.html:194 templates/problem/list.html:226 msgid "Users" msgstr "Kullanıcılar" @@ -4287,7 +4312,7 @@ msgstr "Kullanıcılar" msgid "Editorials" msgstr "" -#: templates/contest/contest.html:226 templates/problem/list.html:229 +#: templates/contest/contest.html:226 templates/problem/list.html:220 msgid "Editorial" msgstr "Problem analizi" @@ -4452,19 +4477,19 @@ msgstr "" msgid "Disqualify" msgstr "" -#: templates/contest/ranking.html:151 +#: templates/contest/ranking.html:46 msgid "Are you sure you want to disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:156 +#: templates/contest/ranking.html:51 msgid "Are you sure you want to un-disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:228 +#: templates/contest/ranking.html:124 msgid "View user participation" msgstr "Kullanıcı katılımını göster" -#: templates/contest/ranking.html:232 +#: templates/contest/ranking.html:128 msgid "Show organizations" msgstr "Organizasyonları göster" @@ -4651,7 +4676,7 @@ msgid "There are no requests to approve." msgstr "Onaylanacak istek yok." #: templates/organization/requests/pending.html:17 -#: templates/problem/data.html:387 +#: templates/problem/data.html:388 msgid "Delete?" msgstr "Sil?" @@ -4687,59 +4712,59 @@ msgstr "" msgid "Enter a new code for the cloned problem:" msgstr "" -#: templates/problem/data.html:70 +#: templates/problem/data.html:71 msgid "precision (decimal digits)" msgstr "" -#: templates/problem/data.html:339 +#: templates/problem/data.html:340 msgid "View YAML" msgstr "YAML'i görüntüle" -#: templates/problem/data.html:355 +#: templates/problem/data.html:356 msgid "Show columns:" msgstr "Sütunları göster:" -#: templates/problem/data.html:358 templates/problem/data.html:382 +#: templates/problem/data.html:359 templates/problem/data.html:383 msgid "Output prefix" msgstr "Çıktı öneki" -#: templates/problem/data.html:362 templates/problem/data.html:383 +#: templates/problem/data.html:363 templates/problem/data.html:384 msgid "Output limit" msgstr "Çıktı sınırı" -#: templates/problem/data.html:366 templates/problem/data.html:384 +#: templates/problem/data.html:367 templates/problem/data.html:385 msgid "Checker" msgstr "" -#: templates/problem/data.html:370 templates/problem/data.html:385 +#: templates/problem/data.html:371 templates/problem/data.html:386 msgid "Generator args" msgstr "Generator değişkenleri" -#: templates/problem/data.html:377 +#: templates/problem/data.html:378 msgid "Type" msgstr "Tip" -#: templates/problem/data.html:378 +#: templates/problem/data.html:379 msgid "Input file" msgstr "Girdi dosyası" -#: templates/problem/data.html:379 +#: templates/problem/data.html:380 msgid "Output file" msgstr "Çıktı dosyası" -#: templates/problem/data.html:381 +#: templates/problem/data.html:382 msgid "Pretest?" msgstr "Ön test?" -#: templates/problem/data.html:433 templates/problem/submit.html:256 +#: templates/problem/data.html:434 templates/problem/submit.html:190 msgid "Submit!" msgstr "Gönder!" -#: templates/problem/data.html:434 +#: templates/problem/data.html:435 msgid "Add new case" msgstr "Yeni test ekle" -#: templates/problem/data.html:436 +#: templates/problem/data.html:437 msgid "Save" msgstr "" @@ -4757,100 +4782,100 @@ msgid_plural "Authors:" msgstr[0] "Yazar:" msgstr[1] "Yazarlar:" -#: templates/problem/list.html:58 +#: templates/problem/list.html:49 msgid "Filter by type..." msgstr "Tipe göre filtrele..." -#: templates/problem/list.html:176 +#: templates/problem/list.html:167 msgid "Hot problems" msgstr "Popüler problemler" -#: templates/problem/list.html:198 templates/problem/list.html:216 +#: templates/problem/list.html:189 templates/problem/list.html:207 #: templates/problem/search-form.html:35 templates/user/user-problems.html:59 msgid "Category" msgstr "Kategori" -#: templates/problem/list.html:200 templates/problem/list.html:220 +#: templates/problem/list.html:191 templates/problem/list.html:211 msgid "Types" msgstr "Tipler" -#: templates/problem/list.html:227 +#: templates/problem/list.html:218 #, python-format msgid "AC %%" msgstr "AC %%" -#: templates/problem/manage_submission.html:55 +#: templates/problem/manage_submission.html:56 msgid "Leave empty to not filter by language" msgstr "" -#: templates/problem/manage_submission.html:60 +#: templates/problem/manage_submission.html:62 msgid "Leave empty to not filter by result" msgstr "" -#: templates/problem/manage_submission.html:79 +#: templates/problem/manage_submission.html:81 msgid "Need valid values for both start and end IDs." msgstr "" -#: templates/problem/manage_submission.html:82 +#: templates/problem/manage_submission.html:84 msgid "End ID must be after start ID." msgstr "" -#: templates/problem/manage_submission.html:90 +#: templates/problem/manage_submission.html:92 #, python-brace-format msgid "You are about to rejudge {count} submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:96 +#: templates/problem/manage_submission.html:98 msgid "You are about to rejudge a few submissions. Are you sure you want to do this?" msgstr "" -#: templates/problem/manage_submission.html:115 +#: templates/problem/manage_submission.html:117 msgid "Rejudge Submissions" msgstr "" -#: templates/problem/manage_submission.html:120 +#: templates/problem/manage_submission.html:122 msgid "Filter by ID:" msgstr "" -#: templates/problem/manage_submission.html:123 +#: templates/problem/manage_submission.html:125 msgid "Starting ID:" msgstr "" -#: templates/problem/manage_submission.html:127 +#: templates/problem/manage_submission.html:129 msgid "Ending ID:" msgstr "" -#: templates/problem/manage_submission.html:131 +#: templates/problem/manage_submission.html:133 msgid "This range includes both endpoints." msgstr "" -#: templates/problem/manage_submission.html:134 +#: templates/problem/manage_submission.html:136 msgid "Filter by language:" msgstr "" -#: templates/problem/manage_submission.html:150 +#: templates/problem/manage_submission.html:152 msgid "Rejudge selected submissions" msgstr "" -#: templates/problem/manage_submission.html:157 +#: templates/problem/manage_submission.html:159 msgid "Rescore Everything" msgstr "" -#: templates/problem/manage_submission.html:158 +#: templates/problem/manage_submission.html:160 #, python-format msgid "This will rescore %(count)s submission." msgid_plural "This will rescore %(count)s submissions." msgstr[0] "" msgstr[1] "" -#: templates/problem/manage_submission.html:166 +#: templates/problem/manage_submission.html:168 #, python-format msgid "Are you sure you want to rescore %(count)s submission?" msgid_plural "Are you sure you want to rescore %(count)s submissions?" msgstr[0] "" msgstr[1] "" -#: templates/problem/manage_submission.html:171 +#: templates/problem/manage_submission.html:173 msgid "Rescore all submissions" msgstr "" @@ -5013,8 +5038,8 @@ msgstr "Problem tipleri" msgid "Point range" msgstr "Puan aralığı" -#: templates/problem/search-form.html:68 templates/submission/list.html:326 -#: templates/ticket/list.html:188 +#: templates/problem/search-form.html:68 templates/submission/list.html:328 +#: templates/ticket/list.html:189 msgid "Go" msgstr "Git" @@ -5023,7 +5048,7 @@ msgid "Random" msgstr "Rastgele" #: templates/problem/submission-diff.html:62 -#: templates/status/language-list.html:34 templates/ticket/list.html:199 +#: templates/status/language-list.html:34 templates/ticket/list.html:200 msgid "ID" msgstr "" @@ -5035,31 +5060,31 @@ msgstr "Sonuç" msgid "Date" msgstr "Tarih" -#: templates/problem/submit.html:117 +#: templates/problem/submit.html:118 msgid "Your source code must contain at most 65536 characters." msgstr "" -#: templates/problem/submit.html:204 +#: templates/problem/submit.html:138 msgid "Warning!" msgstr "Uyarı!" -#: templates/problem/submit.html:205 +#: templates/problem/submit.html:139 #, python-format msgid "Your default language, %(language)s, is unavailable for this problem and has been deselected." msgstr "Varsayılan dilin, %(language)s, bu soru için kullanılamıyor." -#: templates/problem/submit.html:213 +#: templates/problem/submit.html:147 #, python-format msgid "You have %(left)s submission left" msgid_plural "You have %(left)s submissions left" msgstr[0] "" msgstr[1] "" -#: templates/problem/submit.html:218 +#: templates/problem/submit.html:152 msgid "You have 0 submissions left" msgstr "Geriye 0 çözümün kaldı" -#: templates/problem/submit.html:252 +#: templates/problem/submit.html:186 msgid "No judge is available for this problem." msgstr "Bu problem için herhangi bir judge mevcut değil." @@ -5267,7 +5292,7 @@ msgstr "%(site_name)s takımı" msgid "Password reset on %(site_name)s" msgstr "%(site_name)s şifre sıfırlaması" -#: templates/registration/profile_creation.html:44 +#: templates/registration/profile_creation.html:38 #: templates/registration/username_select.html:7 msgid "Continue >" msgstr "Devam et >" @@ -5280,36 +5305,36 @@ msgstr "" msgid "You have successfully been registered. An email has been sent to the email address you provided to confirm your registration." msgstr "Başarıyla kaydoldun! Girdiğin e-posta adresine kaydını onaylaman için bir e-posta gönderdik." -#: templates/registration/registration_form.html:170 +#: templates/registration/registration_form.html:166 msgid "(again, for confirmation)" msgstr "(onaylamak için lütfen tekrar gir)" -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "(select your closest major city)" msgstr "(sana en yakın büyük şehri seç)" -#: templates/registration/registration_form.html:182 +#: templates/registration/registration_form.html:178 msgid "pick from map" msgstr "haritadan seç" -#: templates/registration/registration_form.html:187 +#: templates/registration/registration_form.html:183 msgid "Default language" msgstr "Varsayılan dil" -#: templates/registration/registration_form.html:190 +#: templates/registration/registration_form.html:186 msgid "Affiliated organizations" msgstr "Organizasyon üyelikleri" -#: templates/registration/registration_form.html:199 -#: templates/user/edit-profile.html:322 +#: templates/registration/registration_form.html:195 +#: templates/user/edit-profile.html:321 msgid "Notify me about upcoming contests" msgstr "Gelecek yarışmalar hakkında beni bilgilendir" -#: templates/registration/registration_form.html:213 +#: templates/registration/registration_form.html:209 msgid "By registering, you agree to our [Terms & Conditions][0]." msgstr "" -#: templates/registration/registration_form.html:216 +#: templates/registration/registration_form.html:212 msgid "Register!" msgstr "Kaydol!" @@ -5351,17 +5376,17 @@ msgid "Enable Two Factor Authentication" msgstr "" #: templates/registration/totp_enable.html:98 -#: templates/user/edit-profile.html:374 +#: templates/user/edit-profile.html:391 msgid "Below is a list of one-time use scratch codes." msgstr "" #: templates/registration/totp_enable.html:99 -#: templates/user/edit-profile.html:375 +#: templates/user/edit-profile.html:392 msgid "These codes can only be used once and are for emergency use." msgstr "" #: templates/registration/totp_enable.html:100 -#: templates/user/edit-profile.html:376 +#: templates/user/edit-profile.html:393 msgid "You can use these codes to login to your account or disable two-factor authentication." msgstr "" @@ -5370,7 +5395,7 @@ msgid "If you ever need more scratch codes, you can regenerate them on the edit msgstr "" #: templates/registration/totp_enable.html:102 -#: templates/user/edit-profile.html:378 +#: templates/user/edit-profile.html:395 msgid "Please write these down and keep them in a secure location." msgstr "" @@ -5388,12 +5413,12 @@ msgid "If you lose your authentication device and are unable to use your scratch msgstr "" #: templates/registration/two_factor_auth.html:33 -#: templates/user/edit-profile.html:164 +#: templates/user/edit-profile.html:159 msgid "WebAuthn is not supported by your browser." msgstr "" #: templates/registration/two_factor_auth.html:54 -#: templates/user/edit-profile.html:188 +#: templates/user/edit-profile.html:183 msgid "Failed to contact server." msgstr "" @@ -5491,23 +5516,23 @@ msgstr "Hata bilgisi" msgid "Are you sure you want to rejudge?" msgstr "" -#: templates/submission/list.html:74 +#: templates/submission/list.html:75 msgid "Filter by status..." msgstr "Duruma göre filtrele..." -#: templates/submission/list.html:80 +#: templates/submission/list.html:82 msgid "Filter by language..." msgstr "Dile göre filtrele..." -#: templates/submission/list.html:304 +#: templates/submission/list.html:306 msgid "Filter submissions" msgstr "Çözümleri filtrele" -#: templates/submission/list.html:340 +#: templates/submission/list.html:342 msgid "Total:" msgstr "" -#: templates/submission/list.html:350 +#: templates/submission/list.html:352 msgid "You were disconnected. Refresh to show latest updates." msgstr "Bağlantın koptu. Son güncellemeleri görmek için sayfayı yenile." @@ -5671,33 +5696,33 @@ msgstr "Yeniden açıldı: " msgid "Closed: " msgstr "Kapatıldı: " -#: templates/ticket/list.html:156 +#: templates/ticket/list.html:157 msgid "Use desktop notification" msgstr "Masaüstü bildirimlerini kullan" -#: templates/ticket/list.html:162 +#: templates/ticket/list.html:163 msgid "Hide closed tickets" msgstr "" -#: templates/ticket/list.html:167 +#: templates/ticket/list.html:168 msgid "Show my tickets only" msgstr "Sadece benim biletlerimi göster" -#: templates/ticket/list.html:171 +#: templates/ticket/list.html:172 msgid "Filing user" msgstr "Dolduran kullanıcı" -#: templates/ticket/list.html:180 templates/ticket/ticket.html:196 +#: templates/ticket/list.html:181 templates/ticket/ticket.html:196 msgid "Assignee" msgid_plural "Assignees" msgstr[0] "" msgstr[1] "" -#: templates/ticket/list.html:200 +#: templates/ticket/list.html:201 msgid "Title" msgstr "Başlık" -#: templates/ticket/list.html:202 +#: templates/ticket/list.html:203 msgid "Assignees" msgstr "Sorumlular" @@ -5748,129 +5773,133 @@ msgstr "Sorumlu notları" msgid "Nothing here." msgstr "Burada hiçbir şey yok :(" -#: templates/user/base-users-table.html:3 +#: templates/user/base-users-table.html:4 msgid "Rank" msgstr "Sıralama" -#: templates/user/base-users.html:14 templates/user/base-users.html:57 +#: templates/user/base-users.html:15 templates/user/base-users.html:58 msgid "Search by handle..." msgstr "Kullanıcı adı ile ara..." -#: templates/user/edit-profile.html:107 +#: templates/user/edit-profile.html:102 msgid "The administrators for this site require all the staff to have Two-factor Authentication enabled, so it may not be disabled at this time." msgstr "" -#: templates/user/edit-profile.html:112 +#: templates/user/edit-profile.html:107 msgid "Are you sure you want to generate or regenerate your API token?" msgstr "" -#: templates/user/edit-profile.html:113 +#: templates/user/edit-profile.html:108 msgid "This will invalidate any previous API tokens." msgstr "" -#: templates/user/edit-profile.html:114 +#: templates/user/edit-profile.html:109 msgid "It also allows access to your account without Two-factor Authentication." msgstr "" -#: templates/user/edit-profile.html:115 +#: templates/user/edit-profile.html:110 msgid "You will not be able to view your API token after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:116 templates/user/edit-profile.html:210 +#: templates/user/edit-profile.html:111 templates/user/edit-profile.html:205 msgid "Generating..." msgstr "" -#: templates/user/edit-profile.html:130 templates/user/edit-profile.html:398 +#: templates/user/edit-profile.html:125 templates/user/edit-profile.html:355 msgid "Remove" msgstr "" -#: templates/user/edit-profile.html:140 +#: templates/user/edit-profile.html:135 msgid "Are you sure you want to remove your API token?" msgstr "" -#: templates/user/edit-profile.html:147 templates/user/edit-profile.html:370 -#: templates/user/edit-profile.html:402 +#: templates/user/edit-profile.html:142 templates/user/edit-profile.html:359 +#: templates/user/edit-profile.html:387 msgid "Generate" msgstr "" -#: templates/user/edit-profile.html:193 +#: templates/user/edit-profile.html:188 msgid "Are you sure you want to delete this security key?" msgstr "" -#: templates/user/edit-profile.html:207 +#: templates/user/edit-profile.html:202 msgid "Are you sure you want to generate or regenerate a new set of scratch codes?" msgstr "" -#: templates/user/edit-profile.html:208 +#: templates/user/edit-profile.html:203 msgid "This will invalidate any previous scratch codes you have." msgstr "" -#: templates/user/edit-profile.html:209 templates/user/edit-profile.html:379 +#: templates/user/edit-profile.html:204 templates/user/edit-profile.html:396 msgid "You will not be able to view your scratch codes after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:278 +#: templates/user/edit-profile.html:273 msgid "Self-description:" msgstr "" -#: templates/user/edit-profile.html:285 +#: templates/user/edit-profile.html:280 msgid "Select your closest major city" msgstr "En yakın büyük şehri seç" -#: templates/user/edit-profile.html:286 +#: templates/user/edit-profile.html:281 msgid "Time zone:" msgstr "Saat dilimi:" -#: templates/user/edit-profile.html:290 +#: templates/user/edit-profile.html:285 msgid "Language:" msgstr "Dil:" -#: templates/user/edit-profile.html:294 +#: templates/user/edit-profile.html:289 +msgid "Site theme:" +msgstr "" + +#: templates/user/edit-profile.html:293 msgid "Editor theme:" msgstr "Editör teması:" -#: templates/user/edit-profile.html:299 +#: templates/user/edit-profile.html:298 msgid "Math engine:" msgstr "Matematik motoru:" -#: templates/user/edit-profile.html:308 +#: templates/user/edit-profile.html:307 msgid "Affiliated organizations:" msgstr "" -#: templates/user/edit-profile.html:334 +#: templates/user/edit-profile.html:333 msgid "Change your avatar" msgstr "Profil fotoğrafı değiştir" -#: templates/user/edit-profile.html:339 +#: templates/user/edit-profile.html:338 msgid "Change your password" msgstr "Şifre değiştir" -#: templates/user/edit-profile.html:352 -msgid "Two-factor Authentication is enabled:" +#: templates/user/edit-profile.html:350 +msgid "API token:" msgstr "" -#: templates/user/edit-profile.html:360 -msgid "Refresh" +#: templates/user/edit-profile.html:356 templates/user/edit-profile.html:384 +msgid "Hidden" msgstr "" -#: templates/user/edit-profile.html:363 -msgid "Scratch codes:" +#: templates/user/edit-profile.html:369 +msgid "Two-factor authentication is enabled:" msgstr "" -#: templates/user/edit-profile.html:367 templates/user/edit-profile.html:399 -msgid "Hidden" +#: templates/user/edit-profile.html:377 +msgid "Refresh" msgstr "" -#: templates/user/edit-profile.html:377 -msgid "If you ever need more scratch codes, you can regenerate them here." +#: templates/user/edit-profile.html:380 +msgid "Scratch codes:" msgstr "" -#: templates/user/edit-profile.html:385 -msgid "Two-factor Authentication is disabled:" +#: templates/user/edit-profile.html:394 +msgid "If you ever need more scratch codes, you can regenerate them here." msgstr "" -#: templates/user/edit-profile.html:393 -msgid "API token:" +#: templates/user/edit-profile.html:402 +msgid "Two-factor Authentication is disabled:" msgstr "" #: templates/user/edit-profile.html:410 diff --git a/locale/tr/LC_MESSAGES/djangojs.po b/locale/tr/LC_MESSAGES/djangojs.po index 9d6c4360bc..90543adfe2 100644 --- a/locale/tr/LC_MESSAGES/djangojs.po +++ b/locale/tr/LC_MESSAGES/djangojs.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-20 23:43+0000\n" -"PO-Revision-Date: 2022-12-21 00:44\n" +"POT-Creation-Date: 2023-01-23 05:23+0000\n" +"PO-Revision-Date: 2023-01-24 00:52\n" "Last-Translator: \n" "Language-Team: Turkish\n" "Language: tr_TR\n" @@ -17,14 +17,14 @@ msgstr "" "X-Crowdin-File: djangojs.po\n" "X-Crowdin-File-ID: 12\n" -#: resources/common.js:195 +#: resources/common.js:194 msgctxt "time format with day" msgid "%d day %h:%m:%s" msgid_plural "%d days %h:%m:%s" msgstr[0] "%d gün, %h:%m:%s" msgstr[1] "%d gün, %h:%m:%s" -#: resources/common.js:198 +#: resources/common.js:197 msgctxt "time format without day" msgid "%h:%m:%s" msgstr "%h:%m:%s" diff --git a/locale/vi/LC_MESSAGES/django.po b/locale/vi/LC_MESSAGES/django.po index 8e86aa6c22..8f9a8c50e6 100644 --- a/locale/vi/LC_MESSAGES/django.po +++ b/locale/vi/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-20 23:04+0000\n" -"PO-Revision-Date: 2023-01-22 00:52\n" +"POT-Creation-Date: 2023-02-17 22:33+0000\n" +"PO-Revision-Date: 2023-02-18 00:50\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Language: vi_VN\n" @@ -17,91 +17,91 @@ msgstr "" "X-Crowdin-File: django.po\n" "X-Crowdin-File-ID: 10\n" -#: dmoj/settings.py:380 +#: dmoj/settings.py:392 msgid "Catalan" msgstr "Tiếng Catalan" -#: dmoj/settings.py:381 +#: dmoj/settings.py:393 msgid "German" msgstr "Tiếng Đức" -#: dmoj/settings.py:382 +#: dmoj/settings.py:394 msgid "Greek" msgstr "Tiếng Hy Lạp" -#: dmoj/settings.py:383 +#: dmoj/settings.py:395 msgid "English" msgstr "Tiếng Anh" -#: dmoj/settings.py:384 +#: dmoj/settings.py:396 msgid "Spanish" msgstr "Tiếng Tây Ban Nha" -#: dmoj/settings.py:385 +#: dmoj/settings.py:397 msgid "French" msgstr "Tiếng Pháp" -#: dmoj/settings.py:386 +#: dmoj/settings.py:398 msgid "Croatian" msgstr "Tiếng Croatia" -#: dmoj/settings.py:387 +#: dmoj/settings.py:399 msgid "Hungarian" msgstr "Tiếng Hung-ga-ri" -#: dmoj/settings.py:388 +#: dmoj/settings.py:400 msgid "Japanese" msgstr "Tiếng Nhật Bản" -#: dmoj/settings.py:389 +#: dmoj/settings.py:401 msgid "Korean" msgstr "Tiếng Hàn Quốc" -#: dmoj/settings.py:390 +#: dmoj/settings.py:402 msgid "Brazilian Portuguese" msgstr "Tiếng Braxin-Bồ Đào Nha" -#: dmoj/settings.py:391 +#: dmoj/settings.py:403 msgid "Romanian" msgstr "Tiếng Romania" -#: dmoj/settings.py:392 +#: dmoj/settings.py:404 msgid "Russian" msgstr "Tiếng Nga" -#: dmoj/settings.py:393 +#: dmoj/settings.py:405 msgid "Serbian (Latin)" msgstr "Tiếng Séc-bi (Latin)" -#: dmoj/settings.py:394 +#: dmoj/settings.py:406 msgid "Turkish" msgstr "Tiếng Thổ Nhĩ Kỳ" -#: dmoj/settings.py:395 +#: dmoj/settings.py:407 msgid "Vietnamese" msgstr "Tiếng Việt" -#: dmoj/settings.py:396 +#: dmoj/settings.py:408 msgid "Simplified Chinese" msgstr "Tiếng Trung (Giản thể)" -#: dmoj/settings.py:397 +#: dmoj/settings.py:409 msgid "Traditional Chinese" msgstr "Tiếng Trung (Phồn thể)" -#: dmoj/urls.py:32 +#: dmoj/urls.py:31 msgid "Activation Successful!" msgstr "Kích hoạt thành công!" -#: dmoj/urls.py:40 +#: dmoj/urls.py:39 msgid "Registration Completed" msgstr "Đăng ký thành công" -#: dmoj/urls.py:44 +#: dmoj/urls.py:43 msgid "Registration Not Allowed" msgstr "Không được phép đăng ký" -#: dmoj/urls.py:93 templates/base.html:183 +#: dmoj/urls.py:92 templates/base.html:193 msgid "Home" msgstr "Trang chủ" @@ -138,8 +138,8 @@ msgid "Included contests" msgstr "Các cuộc thi" #: judge/admin/contest.py:65 templates/contest/contest.html:195 -#: templates/contest/moss.html:41 templates/problem/list.html:197 -#: templates/problem/list.html:213 templates/user/user-problems.html:58 +#: templates/contest/moss.html:41 templates/problem/list.html:188 +#: templates/problem/list.html:204 templates/user/user-problems.html:58 #: templates/user/user-problems.html:102 msgid "Problem" msgstr "Đề bài" @@ -150,7 +150,7 @@ msgstr "Đề bài" msgid "Problems" msgstr "Đề bài" -#: judge/admin/contest.py:76 judge/admin/submission.py:249 +#: judge/admin/contest.py:76 judge/admin/submission.py:250 #: templates/admin/judge/submission/change_form.html:14 #: templates/admin/judge/submission/change_form.html:17 #: templates/submission/source.html:34 templates/submission/status.html:89 @@ -225,27 +225,27 @@ msgstr[0] "Mở khóa %d cuộc thi thành công." msgid "Unlock contest submissions" msgstr "Gỡ khóa nạp bài cho kỳ thi" -#: judge/admin/contest.py:280 judge/admin/submission.py:175 +#: judge/admin/contest.py:280 judge/admin/submission.py:176 #, python-format msgid "%d submission was successfully scheduled for rejudging." msgid_plural "%d submissions were successfully scheduled for rejudging." msgstr[0] "%d bài nộp đã được lên lịch để chấm lại." -#: judge/admin/contest.py:356 +#: judge/admin/contest.py:358 #, python-format msgid "%d participation recalculated." msgid_plural "%d participations recalculated." msgstr[0] "%d tham gia tính lại." -#: judge/admin/contest.py:359 +#: judge/admin/contest.py:361 msgid "Recalculate results" msgstr "Tính lại kết quả" -#: judge/admin/contest.py:363 judge/admin/organization.py:113 +#: judge/admin/contest.py:365 judge/admin/organization.py:113 msgid "username" msgstr "tên người dùng" -#: judge/admin/contest.py:368 templates/base.html:249 +#: judge/admin/contest.py:370 templates/base.html:259 msgid "virtual" msgstr "ảo" @@ -258,8 +258,8 @@ msgid "Summary" msgstr "Tổng hợp" #: judge/admin/interface.py:124 judge/models/contest.py:491 -#: judge/models/contest.py:623 judge/models/profile.py:331 -#: judge/models/profile.py:362 judge/models/submission.py:67 +#: judge/models/contest.py:623 judge/models/profile.py:347 +#: judge/models/profile.py:378 judge/models/submission.py:67 #: judge/models/ticket.py:32 msgid "user" msgstr "thành viên" @@ -290,8 +290,8 @@ msgid "Taxonomy" msgstr "Phân loại" #: judge/admin/problem.py:133 templates/contest/contest.html:196 -#: templates/problem/data.html:380 templates/problem/list.html:202 -#: templates/problem/list.html:224 templates/user/base-users-table.html:10 +#: templates/problem/data.html:381 templates/problem/list.html:193 +#: templates/problem/list.html:215 templates/user/base-users-table.html:11 #: templates/user/user-problems.html:60 msgid "Points" msgstr "Điểm" @@ -300,9 +300,9 @@ msgstr "Điểm" msgid "Limits" msgstr "Giới hạn" -#: judge/admin/problem.py:135 judge/admin/submission.py:243 +#: judge/admin/problem.py:135 judge/admin/submission.py:244 #: templates/problem/submission-diff.html:65 templates/stats/tabs.html:4 -#: templates/submission/list.html:317 +#: templates/submission/list.html:319 msgid "Language" msgstr "Ngôn ngữ" @@ -356,19 +356,19 @@ msgstr "vấn đề" msgid "timezone" msgstr "múi giờ" -#: judge/admin/profile.py:98 judge/admin/submission.py:222 +#: judge/admin/profile.py:98 judge/admin/submission.py:223 #: templates/organization/requests/log.html:9 #: templates/organization/requests/pending.html:12 -#: templates/ticket/list.html:201 +#: templates/ticket/list.html:202 msgid "User" msgstr "Thành viên" -#: judge/admin/profile.py:103 templates/registration/registration_form.html:149 +#: judge/admin/profile.py:103 templates/registration/registration_form.html:145 msgid "Email" msgstr "Hộp thư" #: judge/admin/profile.py:108 judge/views/register.py:28 -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "Timezone" msgstr "Múi giờ" @@ -386,26 +386,26 @@ msgstr[0] "%d người dùng có tính lại điểm." msgid "Recalculate scores" msgstr "Tính lại điểm" -#: judge/admin/runtime.py:50 templates/user/edit-profile.html:124 -#: templates/user/edit-profile.html:246 templates/user/edit-profile.html:366 -#: templates/user/edit-profile.html:396 +#: judge/admin/runtime.py:52 templates/user/edit-profile.html:119 +#: templates/user/edit-profile.html:241 templates/user/edit-profile.html:353 +#: templates/user/edit-profile.html:383 msgid "Regenerate" msgstr "Tạo lại" -#: judge/admin/runtime.py:64 +#: judge/admin/runtime.py:66 msgid "Description" msgstr "Mô tả" -#: judge/admin/runtime.py:65 +#: judge/admin/runtime.py:67 msgid "Information" msgstr "Thông tin" -#: judge/admin/runtime.py:66 +#: judge/admin/runtime.py:68 msgid "Capabilities" msgstr "Khả năng" #: judge/admin/submission.py:24 judge/admin/submission.py:43 -#: judge/admin/submission.py:232 +#: judge/admin/submission.py:233 msgid "None" msgstr "Không" @@ -437,56 +437,56 @@ msgctxt "contest problem" msgid "%(problem)s in %(contest)s" msgstr "%(problem)s trong %(contest)s" -#: judge/admin/submission.py:160 judge/admin/submission.py:182 +#: judge/admin/submission.py:161 judge/admin/submission.py:183 msgid "You do not have the permission to rejudge submissions." msgstr "Bạn không có quyền chấm lại bài." -#: judge/admin/submission.py:166 +#: judge/admin/submission.py:167 msgid "You do not have the permission to rejudge THAT many submissions." msgstr "Bạn không không có quyền chấm lại QUÁ NHIỀU bài nộp." -#: judge/admin/submission.py:178 +#: judge/admin/submission.py:179 msgid "Rejudge the selected submissions" msgstr "Chấm lại các bài đã chọn" -#: judge/admin/submission.py:204 judge/views/problem_manage.py:129 +#: judge/admin/submission.py:205 judge/views/problem_manage.py:129 #, python-format msgid "%d submission was successfully rescored." msgid_plural "%d submissions were successfully rescored." msgstr[0] "%d bài đã được tính điểm lại." -#: judge/admin/submission.py:207 +#: judge/admin/submission.py:208 msgid "Rescore the selected submissions" msgstr "Tính điểm lại các bài đã chọn" -#: judge/admin/submission.py:211 +#: judge/admin/submission.py:212 msgid "Problem code" msgstr "Mã bài tập" -#: judge/admin/submission.py:216 +#: judge/admin/submission.py:217 msgid "Problem name" msgstr "Tên bài" -#: judge/admin/submission.py:226 templates/organization/requests/log.html:10 +#: judge/admin/submission.py:227 templates/organization/requests/log.html:10 #: templates/organization/requests/pending.html:13 msgid "Time" msgstr "Thời gian" -#: judge/admin/submission.py:234 +#: judge/admin/submission.py:235 #, python-format msgid "%d KB" msgstr "%d KB" -#: judge/admin/submission.py:236 +#: judge/admin/submission.py:237 #, python-format msgid "%.2f MB" msgstr "%.2f MB" -#: judge/admin/submission.py:238 +#: judge/admin/submission.py:239 msgid "Memory" msgstr "Bộ nhớ" -#: judge/admin/submission.py:247 +#: judge/admin/submission.py:248 msgid "Locked" msgstr "Đã khóa" @@ -511,6 +511,7 @@ msgid "Comment body" msgstr "Bình luận" #: judge/comments.py:47 judge/views/comment.py:40 judge/views/ticket.py:46 +#: judge/views/user.py:347 msgid "Your part is silent, little toad." msgstr "Không có phần nói của ngươi, đồ cóc ghẻ." @@ -615,7 +616,7 @@ msgstr "Mã xác thực 2 yếu tố không đúng." msgid "Scratch codes must be 16 Base32 characters." msgstr "Mã dự phòng phải là 16 kí tự hệ 32." -#: judge/forms.py:39 judge/forms.py:265 +#: judge/forms.py:39 judge/forms.py:266 msgid "Invalid scratch code." msgstr "Mã dự phòng không hợp lệ." @@ -637,83 +638,83 @@ msgid "You may not be part of more than {count} public organization." msgid_plural "You may not be part of more than {count} public organizations." msgstr[0] "Bạn không thể là thành viên của nhiều hơn {count} tổ chức công khai." -#: judge/forms.py:98 +#: judge/forms.py:99 msgid "Download comments?" msgstr "Tải các bình luận về?" -#: judge/forms.py:99 +#: judge/forms.py:100 msgid "Download submissions?" msgstr "Tải xuống các bài nộp?" -#: judge/forms.py:100 +#: judge/forms.py:101 msgid "Filter by problem code glob:" msgstr "Sắp xếp theo mã bài tập:" -#: judge/forms.py:104 +#: judge/forms.py:105 msgid "Leave empty to include all submissions" msgstr "Hãy để trống để bao gồm mọi bài nộp" -#: judge/forms.py:107 templates/problem/manage_submission.html:142 +#: judge/forms.py:108 templates/problem/manage_submission.html:144 msgid "Filter by result:" msgstr "Lọc theo kết quả:" -#: judge/forms.py:113 +#: judge/forms.py:114 msgid "Please select at least one thing to download." msgstr "Vui lòng chọn ít nhất một thứ để tải về." -#: judge/forms.py:139 +#: judge/forms.py:140 msgid "Any judge" msgstr "Bất kì máy chấm nào" -#: judge/forms.py:160 judge/views/register.py:25 +#: judge/forms.py:161 judge/views/register.py:25 #: templates/problem/submission-diff.html:63 -#: templates/registration/registration_form.html:143 -#: templates/user/base-users-table.html:5 +#: templates/registration/registration_form.html:139 +#: templates/user/base-users-table.html:6 msgid "Username" msgstr "Tên người dùng" -#: judge/forms.py:161 templates/registration/registration_form.html:155 -#: templates/registration/registration_form.html:169 +#: judge/forms.py:162 templates/registration/registration_form.html:151 +#: templates/registration/registration_form.html:165 msgid "Password" msgstr "Mật khẩu" -#: judge/forms.py:193 +#: judge/forms.py:194 msgid "Invalid code length." msgstr "Độ dài của bài nộp không hợp lệ." -#: judge/forms.py:224 +#: judge/forms.py:225 msgid "Invalid WebAuthn response." msgstr "Phản hồi WebAuthn không hợp lệ." -#: judge/forms.py:227 +#: judge/forms.py:228 msgid "No WebAuthn challenge issued." msgstr "Không có xác thực web (WebAuthn) nào được sử dụng." -#: judge/forms.py:233 +#: judge/forms.py:234 msgid "Invalid WebAuthn credential ID." msgstr "Chứng chỉ xác thực web (WebAuthn) không hợp lệ." -#: judge/forms.py:263 +#: judge/forms.py:264 msgid "Invalid two-factor authentication token or scratch code." msgstr "Mã xác thực 2 yếu tố hoặc mã dự phòng không hợp lệ." -#: judge/forms.py:267 +#: judge/forms.py:268 msgid "Must specify either totp_token or webauthn_response." msgstr "Bắt buộc phải có totp_token hoặc webauthn_response." -#: judge/forms.py:271 judge/models/problem.py:118 +#: judge/forms.py:272 judge/models/problem.py:118 msgid "Problem code must be ^[a-z0-9]+$" msgstr "Mã đầu bài chỉ bao gồm ^[a-z0-9]+$" -#: judge/forms.py:276 +#: judge/forms.py:277 msgid "Problem with code already exists." msgstr "Mã bài tập đã tồn tại." -#: judge/forms.py:281 judge/models/contest.py:68 +#: judge/forms.py:282 judge/models/contest.py:68 msgid "Contest id must be ^[a-z0-9]+$" msgstr "Id cuộc thi phải bao gồm ^[a-z0-9]+$" -#: judge/forms.py:286 +#: judge/forms.py:287 msgid "Contest with key already exists." msgstr "Mã kỳ thi đã tồn tại." @@ -736,26 +737,42 @@ msgstr "vào lúc {time}" msgid "Unrated" msgstr "Chưa xếp hạng" -#: judge/models/choices.py:59 +#: judge/models/choices.py:24 +msgid "Follow site theme" +msgstr "" + +#: judge/models/choices.py:60 msgid "Leave as LaTeX" msgstr "Giữ nguyên dạng LaTeX" -#: judge/models/choices.py:60 +#: judge/models/choices.py:61 msgid "SVG only" msgstr "Chỉ dạng SVG" -#: judge/models/choices.py:61 +#: judge/models/choices.py:62 msgid "MathML only" msgstr "Chỉ dạng MathML" -#: judge/models/choices.py:62 +#: judge/models/choices.py:63 msgid "MathJax with SVG fallback" msgstr "MathJax với SVG dự phòng" -#: judge/models/choices.py:63 +#: judge/models/choices.py:64 msgid "Detect best quality" msgstr "Phát hiện chất lượng tốt nhất" +#: judge/models/choices.py:70 +msgid "Follow system default" +msgstr "Chọn theo mặc định" + +#: judge/models/choices.py:71 +msgid "Light" +msgstr "Sáng" + +#: judge/models/choices.py:72 +msgid "Dark" +msgstr "Tối" + #: judge/models/comment.py:25 msgid "Page code must be ^[pcs]:[a-z0-9]+$|^b:\\d+$" msgstr "Mã trang phải bao gồm ^[pcs]:[a-z0-9]+$|^b:\\d+$" @@ -1808,11 +1825,11 @@ msgstr "lời giải" #: judge/models/problem.py:568 msgid "proposed points" -msgstr "" +msgstr "điểm được đề xuất" #: judge/models/problem.py:569 msgid "The amount of points the voter thinks this problem deserves." -msgstr "" +msgstr "Lượng điểm được vote cho bài này" #: judge/models/problem.py:575 msgid "voter" @@ -1824,7 +1841,7 @@ msgstr "thời gian vote" #: judge/models/problem.py:578 msgid "The time this vote was cast." -msgstr "" +msgstr "Thời điểm vote" #: judge/models/problem.py:580 msgid "note" @@ -1845,7 +1862,7 @@ msgstr "" #: judge/models/problem.py:588 #, python-format msgid "Points vote by %(voter)s for %(problem)s" -msgstr "" +msgstr "Điểm được vote bởi %(voter)s cho %(problem)s" #: judge/models/problem_data.py:23 msgid "Standard" @@ -1868,8 +1885,8 @@ msgid "Non-trailing spaces" msgstr "Dấu cách liền" #: judge/models/problem_data.py:28 -msgid "Unordered" -msgstr "Không sắp xếp" +msgid "Sorted" +msgstr "Đã sắp xếp" #: judge/models/problem_data.py:29 msgid "Byte identical" @@ -1905,11 +1922,11 @@ msgstr "kiểm tra" #: judge/models/problem_data.py:45 msgid "enable unicode" -msgstr "" +msgstr "bật unicode" #: judge/models/problem_data.py:46 msgid "disable bigInteger / bigDecimal" -msgstr "" +msgstr "chặn Số nguyên lớn" #: judge/models/problem_data.py:47 judge/models/problem_data.py:95 msgid "checker arguments" @@ -2040,7 +2057,7 @@ msgid "Edit all organizations" msgstr "Sửa mọi tổ chức" #: judge/models/profile.py:98 judge/models/profile.py:103 -#: judge/models/profile.py:160 judge/models/profile.py:363 +#: judge/models/profile.py:161 judge/models/profile.py:379 msgid "organization" msgstr "tổ chức" @@ -2081,7 +2098,7 @@ msgstr "các thành viên" msgid "%(class)s in %(organization)s" msgstr "%(class)s trong %(organization)s" -#: judge/models/profile.py:142 judge/models/profile.py:371 +#: judge/models/profile.py:142 judge/models/profile.py:387 msgid "class" msgstr "lớp" @@ -2106,26 +2123,30 @@ msgid "Ace theme" msgstr "Chủ đề Ace" #: judge/models/profile.py:158 +msgid "site theme" +msgstr "Giao diện" + +#: judge/models/profile.py:159 msgid "last access time" msgstr "lần truy cập cuối cùng" -#: judge/models/profile.py:159 +#: judge/models/profile.py:160 msgid "last IP" msgstr "IP cuối cùng" -#: judge/models/profile.py:162 +#: judge/models/profile.py:163 msgid "display rank" msgstr "hiển thị xếp hạng" -#: judge/models/profile.py:164 +#: judge/models/profile.py:165 msgid "Normal User" msgstr "Người dùng bình thường" -#: judge/models/profile.py:165 +#: judge/models/profile.py:166 msgid "Problem Setter" msgstr "Người ra đề" -#: judge/models/profile.py:166 templates/base.html:211 +#: judge/models/profile.py:167 templates/base.html:221 #: templates/comments/list.html:97 templates/contest/contest-list-tabs.html:25 #: templates/contest/ranking-table.html:51 #: templates/problem/problem-list-tabs.html:6 @@ -2135,200 +2156,200 @@ msgstr "Người ra đề" msgid "Admin" msgstr "Quản trị" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "comment mute" msgstr "bình luận tắt" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "Some users are at their best when silent." msgstr "Một vài người tốt nhất là khi im lặng." -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "unlisted user" msgstr "thành viên không được liệt kê" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "User will not be ranked." msgstr "Thành viên không được xếp hạng." -#: judge/models/profile.py:172 +#: judge/models/profile.py:173 msgid "banned from voting on problem point values" msgstr "" -#: judge/models/profile.py:173 +#: judge/models/profile.py:174 msgid "User will not be able to vote on problems' point values." msgstr "" -#: judge/models/profile.py:177 +#: judge/models/profile.py:178 msgid "user script" msgstr "script tự định nghĩa" -#: judge/models/profile.py:178 +#: judge/models/profile.py:179 msgid "User-defined JavaScript for site customization." msgstr "JavaScript tự định nghĩa để tùy chỉnh trang web." -#: judge/models/profile.py:179 +#: judge/models/profile.py:180 msgid "current contest" msgstr "cuộc thi hiện tại" -#: judge/models/profile.py:181 +#: judge/models/profile.py:182 msgid "math engine" msgstr "bộ xử lý toán học" -#: judge/models/profile.py:183 +#: judge/models/profile.py:184 msgid "The rendering engine used to render math." msgstr "Công cụ được sử dụng để render toán học." -#: judge/models/profile.py:184 +#: judge/models/profile.py:185 msgid "TOTP 2FA enabled" msgstr "Xác thực 2 yếu tố TOTP được kích hoạt" -#: judge/models/profile.py:185 +#: judge/models/profile.py:186 msgid "Check to enable TOTP-based two-factor authentication." msgstr "Đánh dấu để kích hoạt xác thực 2 yếu tố TOTP-based." -#: judge/models/profile.py:186 +#: judge/models/profile.py:187 msgid "WebAuthn 2FA enabled" msgstr "WebAuthn xác thực 2 yếu tố được kích hoạt" -#: judge/models/profile.py:187 +#: judge/models/profile.py:188 msgid "Check to enable WebAuthn-based two-factor authentication." msgstr "Đánh dấu để kích hoạt xác thực 2 yếu tố dựa trên WebAuthn." -#: judge/models/profile.py:188 +#: judge/models/profile.py:189 msgid "TOTP key" msgstr "Mã TOTP" -#: judge/models/profile.py:189 +#: judge/models/profile.py:190 msgid "32-character Base32-encoded key for TOTP." msgstr "Mã 32 ký tự Base32-encoded cho TOTP." -#: judge/models/profile.py:191 +#: judge/models/profile.py:192 msgid "TOTP key must be empty or Base32." msgstr "Mã TOTP cần rỗng hoặc Base32." -#: judge/models/profile.py:192 +#: judge/models/profile.py:193 msgid "scratch codes" msgstr "mã dự phòng" -#: judge/models/profile.py:193 +#: judge/models/profile.py:194 msgid "JSON array of 16-character Base32-encoded codes for scratch codes." msgstr "Mảng JSON gồm 16 mã được mã hóa Base32 ký tự cho mã dự phòng." -#: judge/models/profile.py:197 +#: judge/models/profile.py:198 msgid "Scratch codes must be empty or a JSON array of 16-character Base32 codes." msgstr "Mã dự phòng phải để trống hoặc là một mảng JSON với 16 kí tự Base32." -#: judge/models/profile.py:199 +#: judge/models/profile.py:200 msgid "last TOTP timecode" msgstr "thời gian mật khẩu dùng một lần (TOTP) cuối cùng" -#: judge/models/profile.py:200 +#: judge/models/profile.py:201 msgid "API token" msgstr "Mã API" -#: judge/models/profile.py:201 +#: judge/models/profile.py:202 msgid "64-character hex-encoded API access token." msgstr "Mã truy cập API được mã hóa hex 64 ký tự." -#: judge/models/profile.py:203 +#: judge/models/profile.py:204 msgid "API token must be None or hexadecimal" msgstr "Mã API phải là None hoặc là số ở hệ thập lục phân" -#: judge/models/profile.py:204 +#: judge/models/profile.py:205 msgid "internal notes" msgstr "ghi chú nội bộ" -#: judge/models/profile.py:205 +#: judge/models/profile.py:206 msgid "Notes for administrators regarding this user." msgstr "Ghi chú cho quản trị viên chấm lại cho thành viên này." -#: judge/models/profile.py:206 +#: judge/models/profile.py:207 msgid "last data download time" msgstr "thời gian tải dữ liệu cuối cùng" -#: judge/models/profile.py:207 +#: judge/models/profile.py:208 msgid "display name override" msgstr "hiển thị tên ghi đè" -#: judge/models/profile.py:208 +#: judge/models/profile.py:209 msgid "Name displayed in place of username." msgstr "Tên hiển thị thay cho tên người dùng." -#: judge/models/profile.py:323 +#: judge/models/profile.py:333 msgid "Shows in-progress development stuff" msgstr "Hiển thị những thứ đang được phát triển" -#: judge/models/profile.py:324 +#: judge/models/profile.py:334 msgid "Edit TOTP settings" msgstr "Chỉnh sửa cài đặt TOTP" -#: judge/models/profile.py:326 +#: judge/models/profile.py:336 msgid "user profile" msgstr "hồ sơ người dùng" -#: judge/models/profile.py:327 +#: judge/models/profile.py:337 msgid "user profiles" msgstr "hồ sơ người dùng" -#: judge/models/profile.py:333 +#: judge/models/profile.py:349 msgid "device name" msgstr "tên thiết bị" -#: judge/models/profile.py:334 +#: judge/models/profile.py:350 msgid "credential ID" msgstr "thông tin đăng nhập" -#: judge/models/profile.py:335 +#: judge/models/profile.py:351 msgid "public key" msgstr "public key" -#: judge/models/profile.py:336 +#: judge/models/profile.py:352 msgid "sign counter" msgstr "sign counter" -#: judge/models/profile.py:354 +#: judge/models/profile.py:370 #, python-format msgid "WebAuthn credential: %(name)s" msgstr "Chứng chỉ WebAuthn: %(name)s" -#: judge/models/profile.py:357 +#: judge/models/profile.py:373 msgid "WebAuthn credential" msgstr "Chứng chỉ WebAuthn" -#: judge/models/profile.py:358 +#: judge/models/profile.py:374 msgid "WebAuthn credentials" msgstr "Nhiều chứng chỉ WebAuthn" -#: judge/models/profile.py:365 +#: judge/models/profile.py:381 msgid "request time" msgstr "thời gian yêu cầu" -#: judge/models/profile.py:366 +#: judge/models/profile.py:382 msgid "state" msgstr "trạng thái" -#: judge/models/profile.py:367 templates/organization/requests/tabs.html:4 +#: judge/models/profile.py:383 templates/organization/requests/tabs.html:4 msgid "Pending" msgstr "Đang chờ" -#: judge/models/profile.py:368 templates/organization/requests/tabs.html:10 +#: judge/models/profile.py:384 templates/organization/requests/tabs.html:10 msgid "Approved" msgstr "Phê duyệt" -#: judge/models/profile.py:369 templates/organization/requests/tabs.html:13 +#: judge/models/profile.py:385 templates/organization/requests/tabs.html:13 msgid "Rejected" msgstr "Bị từ chối" -#: judge/models/profile.py:372 +#: judge/models/profile.py:388 msgid "reason" msgstr "lý do" -#: judge/models/profile.py:381 +#: judge/models/profile.py:397 msgid "organization join request" msgstr "yêu cầu tham gia tổ chức" -#: judge/models/profile.py:382 +#: judge/models/profile.py:398 msgid "organization join requests" msgstr "yêu cầu tham gia tổ chức" @@ -2571,15 +2592,15 @@ msgstr "Lỗi nội bộ (máy chủ chấm bài lỗi)" msgid "submission time" msgstr "ngày nộp bài" -#: judge/models/submission.py:70 judge/models/submission.py:255 +#: judge/models/submission.py:70 judge/models/submission.py:265 msgid "execution time" msgstr "thời gian thực hiện tối đa" -#: judge/models/submission.py:71 judge/models/submission.py:256 +#: judge/models/submission.py:71 judge/models/submission.py:266 msgid "memory usage" msgstr "bộ nhớ sử dụng" -#: judge/models/submission.py:72 judge/models/submission.py:257 +#: judge/models/submission.py:72 judge/models/submission.py:267 msgid "points granted" msgstr "điểm được cho" @@ -2668,60 +2689,60 @@ msgstr "Chỉnh sửa trạng thái khóa của nạp bài" msgid "submissions" msgstr "nộp bài" -#: judge/models/submission.py:235 judge/models/submission.py:251 +#: judge/models/submission.py:245 judge/models/submission.py:261 msgid "associated submission" msgstr "bài nộp liên quan" -#: judge/models/submission.py:237 +#: judge/models/submission.py:247 msgid "source code" msgstr "mã nguồn" -#: judge/models/submission.py:240 +#: judge/models/submission.py:250 #, python-format msgid "Source of %(submission)s" msgstr "Nguồn %(submission)s" -#: judge/models/submission.py:243 +#: judge/models/submission.py:253 msgid "submission source" msgstr "nguồn nộp" -#: judge/models/submission.py:244 +#: judge/models/submission.py:254 msgid "submission sources" msgstr "các nguồn nộp" -#: judge/models/submission.py:253 +#: judge/models/submission.py:263 msgid "test case ID" msgstr "mã testcase" -#: judge/models/submission.py:254 +#: judge/models/submission.py:264 msgid "status flag" msgstr "cờ trạng thái" -#: judge/models/submission.py:258 +#: judge/models/submission.py:268 msgid "points possible" msgstr "khả năng điểm" -#: judge/models/submission.py:259 +#: judge/models/submission.py:269 msgid "batch number" msgstr "lô số" -#: judge/models/submission.py:260 +#: judge/models/submission.py:270 msgid "judging feedback" msgstr "phản hồi chấm thi" -#: judge/models/submission.py:261 +#: judge/models/submission.py:271 msgid "extended judging feedback" msgstr "phản hồi trình chấm mở rộng" -#: judge/models/submission.py:262 +#: judge/models/submission.py:272 msgid "program output" msgstr "lập trình đầu ra" -#: judge/models/submission.py:276 +#: judge/models/submission.py:286 msgid "submission test case" msgstr "test case của bài" -#: judge/models/submission.py:277 +#: judge/models/submission.py:287 msgid "submission test cases" msgstr "các test case của bài" @@ -2936,7 +2957,7 @@ msgctxt "hours and minutes" msgid "%h:%m" msgstr "%h:%m" -#: judge/views/blog.py:36 +#: judge/views/blog.py:37 #, python-format msgid "Page %d of Posts" msgstr "Trang %d của bài viết" @@ -3420,11 +3441,11 @@ msgstr "Nhà cung cấp email của bạn không được phép do phát tán th msgid "Register" msgstr "Đăng ký" -#: judge/views/register.py:103 +#: judge/views/register.py:101 msgid "Activation Key Invalid" msgstr "Mã kích hoạt không hợp lệ" -#: judge/views/register.py:114 +#: judge/views/register.py:112 msgid "Authentication failure" msgstr "Xác thực không thành công" @@ -3436,7 +3457,7 @@ msgstr "Khác" msgid "Language statistics" msgstr "Thống kê theo ngôn ngữ" -#: judge/views/status.py:23 templates/submission/list.html:308 +#: judge/views/status.py:23 templates/submission/list.html:310 msgid "Status" msgstr "Trạng thái" @@ -3619,41 +3640,45 @@ msgstr "j \\t\\há\\n\\g n \\nă\\m Y, G:i" msgid "Preparing your data..." msgstr "Đang chuẩn bị dữ liệu..." -#: judge/views/user.py:298 templates/user/edit-profile.html:345 +#: judge/views/user.py:298 templates/user/edit-profile.html:344 msgid "Download your data" msgstr "Đang tải xuống dữ liệu" +#: judge/views/user.py:347 +msgid "Can't edit profile" +msgstr "" + #: judge/views/user.py:354 msgid "Updated on site" msgstr "Cập nhật trên trang web" -#: judge/views/user.py:387 templates/admin/auth/user/change_form.html:14 -#: templates/admin/auth/user/change_form.html:17 templates/base.html:213 +#: judge/views/user.py:386 templates/admin/auth/user/change_form.html:14 +#: templates/admin/auth/user/change_form.html:17 templates/base.html:223 #: templates/user/user-tabs.html:16 msgid "Edit profile" msgstr "Chỉnh sửa tiểu sử" -#: judge/views/user.py:402 +#: judge/views/user.py:400 msgid "Generated API token for user" msgstr "Tạo mã API cho người dùng" -#: judge/views/user.py:414 +#: judge/views/user.py:412 msgid "Removed API token for user" msgstr "Xóa mã API cho người dùng" -#: judge/views/user.py:424 +#: judge/views/user.py:422 msgid "Generated scratch codes for user" msgstr "Tạo mã dự phòng cho người dùng" -#: judge/views/user.py:430 templates/user/user-list-tabs.html:4 +#: judge/views/user.py:428 templates/user/user-list-tabs.html:4 msgid "Leaderboard" msgstr "Bảng xếp hạng" -#: judge/views/user.py:491 +#: judge/views/user.py:489 msgid "You have been successfully logged out." msgstr "Bạn vừa đăng xuất thành công." -#: judge/views/user.py:508 +#: judge/views/user.py:506 msgid "You have sent too many password reset requests. Please try again later." msgstr "Bạn đã gửi quá nhiều yêu cầu đặt lại mật khẩu. Hãy vui lòng thử lại sau." @@ -3682,13 +3707,13 @@ msgstr "Chấm dứt" #: templates/admin/judge/judge/change_form.html:27 #: templates/admin/judge/judge/change_form.html:30 -#: templates/user/edit-profile.html:355 templates/user/edit-profile.html:358 +#: templates/user/edit-profile.html:372 templates/user/edit-profile.html:375 msgid "Disable" msgstr "Vô hiệu hóa" #: templates/admin/judge/judge/change_form.html:33 #: templates/admin/judge/judge/change_form.html:36 -#: templates/user/edit-profile.html:386 +#: templates/user/edit-profile.html:403 msgid "Enable" msgstr "Kích hoạt" @@ -3708,48 +3733,48 @@ msgstr "" msgid "Edit user" msgstr "Cập nhật người dùng" -#: templates/base.html:206 +#: templates/base.html:216 #, python-format msgid "Hello, %(username)s." msgstr "Xin chào, %(username)s." -#: templates/base.html:215 +#: templates/base.html:225 msgid "Stop impersonating" msgstr "Ngừng mạo danh" -#: templates/base.html:220 +#: templates/base.html:230 msgid "Log out" msgstr "Đăng xuất" -#: templates/base.html:229 +#: templates/base.html:239 #: templates/registration/password_reset_complete.html:4 msgid "Log in" msgstr "Đăng nhập" -#: templates/base.html:230 templates/registration/registration_form.html:181 +#: templates/base.html:240 templates/registration/registration_form.html:177 msgid "or" msgstr "hoặc" -#: templates/base.html:231 +#: templates/base.html:241 msgid "Sign up" msgstr "Đăng ký" -#: templates/base.html:243 +#: templates/base.html:253 msgid "spectating" msgstr "đang theo dõi" -#: templates/base.html:256 +#: templates/base.html:266 msgid "This site works best with JavaScript enabled." msgstr "Trang web này hoạt động tốt nhất với JavaScript được cho phép." -#: templates/base.html:283 +#: templates/base.html:293 msgid "proudly powered by **DMOJ**" msgstr "dựa trên nền tảng **DMOJ**" #: templates/blog/content.html:13 templates/comments/list.html:89 #: templates/comments/list.html:105 templates/contest/contest-tabs.html:23 #: templates/contest/tag-title.html:9 templates/flatpages/admin_link.html:3 -#: templates/license.html:10 templates/problem/data.html:423 +#: templates/license.html:10 templates/problem/data.html:424 #: templates/problem/editorial.html:14 msgid "Edit" msgstr "Soạn thảo" @@ -3950,15 +3975,15 @@ msgstr "Điểm" msgid "No votes" msgstr "Không có phiếu bầu" -#: templates/common-content.html:32 templates/user/edit-profile.html:219 +#: templates/common-content.html:32 templates/user/edit-profile.html:214 msgid "Click to copy" msgstr "Nhấn để sao chép" -#: templates/common-content.html:33 templates/user/edit-profile.html:220 +#: templates/common-content.html:33 templates/user/edit-profile.html:215 msgid "Copy" msgstr "Sao chép" -#: templates/common-content.html:44 templates/user/edit-profile.html:231 +#: templates/common-content.html:44 templates/user/edit-profile.html:226 msgid "Copied!" msgstr "Đã sao chép!" @@ -4039,7 +4064,7 @@ msgstr "Lịch" msgid "Info" msgstr "Thông tin" -#: templates/contest/contest-tabs.html:6 templates/submission/list.html:334 +#: templates/contest/contest-tabs.html:6 templates/submission/list.html:336 msgid "Statistics" msgstr "Thống kê" @@ -4251,7 +4276,7 @@ msgstr "Tỷ lệ AC" #: templates/contest/contest.html:198 templates/contest/list.html:152 #: templates/contest/list.html:194 templates/contest/list.html:271 -#: templates/problem/list.html:203 templates/problem/list.html:235 +#: templates/problem/list.html:194 templates/problem/list.html:226 msgid "Users" msgstr "Thành viên" @@ -4259,7 +4284,7 @@ msgstr "Thành viên" msgid "Editorials" msgstr "Hướng dẫn giải" -#: templates/contest/contest.html:226 templates/problem/list.html:229 +#: templates/contest/contest.html:226 templates/problem/list.html:220 msgid "Editorial" msgstr "Hướng dẫn giải" @@ -4423,19 +4448,19 @@ msgstr "Bỏ loại" msgid "Disqualify" msgstr "Loại" -#: templates/contest/ranking.html:151 +#: templates/contest/ranking.html:46 msgid "Are you sure you want to disqualify this participation?" msgstr "Liệu bạn có muốn loại bài tham gia này?" -#: templates/contest/ranking.html:156 +#: templates/contest/ranking.html:51 msgid "Are you sure you want to un-disqualify this participation?" msgstr "Liệu bạn có muốn bỏ loại bài tham gia này?" -#: templates/contest/ranking.html:228 +#: templates/contest/ranking.html:124 msgid "View user participation" msgstr "Xem thành viên tham gia" -#: templates/contest/ranking.html:232 +#: templates/contest/ranking.html:128 msgid "Show organizations" msgstr "Hiển thị các tổ chức" @@ -4622,7 +4647,7 @@ msgid "There are no requests to approve." msgstr "Không có yêu cầu để chấp nhận." #: templates/organization/requests/pending.html:17 -#: templates/problem/data.html:387 +#: templates/problem/data.html:388 msgid "Delete?" msgstr "Xoá?" @@ -4658,59 +4683,59 @@ msgstr "Xem trước cập nhật" msgid "Enter a new code for the cloned problem:" msgstr "Nhập mã mới cho bài tập đã nhân bản:" -#: templates/problem/data.html:70 +#: templates/problem/data.html:71 msgid "precision (decimal digits)" msgstr "" -#: templates/problem/data.html:339 +#: templates/problem/data.html:340 msgid "View YAML" msgstr "Xem YAML" -#: templates/problem/data.html:355 +#: templates/problem/data.html:356 msgid "Show columns:" msgstr "Hiển thị các cột:" -#: templates/problem/data.html:358 templates/problem/data.html:382 +#: templates/problem/data.html:359 templates/problem/data.html:383 msgid "Output prefix" msgstr "Tiền tố đầu ra" -#: templates/problem/data.html:362 templates/problem/data.html:383 +#: templates/problem/data.html:363 templates/problem/data.html:384 msgid "Output limit" msgstr "Giới hạn đầu ra" -#: templates/problem/data.html:366 templates/problem/data.html:384 +#: templates/problem/data.html:367 templates/problem/data.html:385 msgid "Checker" msgstr "Kiểm tra" -#: templates/problem/data.html:370 templates/problem/data.html:385 +#: templates/problem/data.html:371 templates/problem/data.html:386 msgid "Generator args" msgstr "Bộ sinh args" -#: templates/problem/data.html:377 +#: templates/problem/data.html:378 msgid "Type" msgstr "Kiểu" -#: templates/problem/data.html:378 +#: templates/problem/data.html:379 msgid "Input file" msgstr "Tập tin đầu vào" -#: templates/problem/data.html:379 +#: templates/problem/data.html:380 msgid "Output file" msgstr "Tập tin đầu ra" -#: templates/problem/data.html:381 +#: templates/problem/data.html:382 msgid "Pretest?" msgstr "Thử sơ bộ?" -#: templates/problem/data.html:433 templates/problem/submit.html:256 +#: templates/problem/data.html:434 templates/problem/submit.html:190 msgid "Submit!" msgstr "Nộp bài!" -#: templates/problem/data.html:434 +#: templates/problem/data.html:435 msgid "Add new case" msgstr "Thêm mới trường hợp" -#: templates/problem/data.html:436 +#: templates/problem/data.html:437 msgid "Save" msgstr "Lưu" @@ -4727,98 +4752,98 @@ msgid "Author:" msgid_plural "Authors:" msgstr[0] "Tác giả:" -#: templates/problem/list.html:58 +#: templates/problem/list.html:49 msgid "Filter by type..." msgstr "Lọc theo loại..." -#: templates/problem/list.html:176 +#: templates/problem/list.html:167 msgid "Hot problems" msgstr "Những bài tập nổi bật" -#: templates/problem/list.html:198 templates/problem/list.html:216 +#: templates/problem/list.html:189 templates/problem/list.html:207 #: templates/problem/search-form.html:35 templates/user/user-problems.html:59 msgid "Category" msgstr "Nhóm" -#: templates/problem/list.html:200 templates/problem/list.html:220 +#: templates/problem/list.html:191 templates/problem/list.html:211 msgid "Types" msgstr "Kiểu" -#: templates/problem/list.html:227 +#: templates/problem/list.html:218 #, python-format msgid "AC %%" msgstr "AC %%" -#: templates/problem/manage_submission.html:55 +#: templates/problem/manage_submission.html:56 msgid "Leave empty to not filter by language" msgstr "Để trống để không lọc theo ngôn ngữ" -#: templates/problem/manage_submission.html:60 +#: templates/problem/manage_submission.html:62 msgid "Leave empty to not filter by result" msgstr "Để trống để không lọc theo kết quả" -#: templates/problem/manage_submission.html:79 +#: templates/problem/manage_submission.html:81 msgid "Need valid values for both start and end IDs." msgstr "Cần giá trị hợp lệ cho cả ID bắt đầu và kết thúc." -#: templates/problem/manage_submission.html:82 +#: templates/problem/manage_submission.html:84 msgid "End ID must be after start ID." msgstr "ID kết thúc phải sau ID bắt đầu." -#: templates/problem/manage_submission.html:90 +#: templates/problem/manage_submission.html:92 #, python-brace-format msgid "You are about to rejudge {count} submissions. Are you sure you want to do this?" msgstr "Bạn chuẩn bị chấm lại {count} bài nộp. Bạn có chắc bạn muốn làm việc này?" -#: templates/problem/manage_submission.html:96 +#: templates/problem/manage_submission.html:98 msgid "You are about to rejudge a few submissions. Are you sure you want to do this?" msgstr "Bạn chuẩn bị chấm lại một vài bài nộp. Bạn có chắc bạn muốn làm việc này?" -#: templates/problem/manage_submission.html:115 +#: templates/problem/manage_submission.html:117 msgid "Rejudge Submissions" msgstr "Chấm lại bài nộp" -#: templates/problem/manage_submission.html:120 +#: templates/problem/manage_submission.html:122 msgid "Filter by ID:" msgstr "Lọc theo ID:" -#: templates/problem/manage_submission.html:123 +#: templates/problem/manage_submission.html:125 msgid "Starting ID:" msgstr "ID bắt đầu:" -#: templates/problem/manage_submission.html:127 +#: templates/problem/manage_submission.html:129 msgid "Ending ID:" msgstr "ID kết thúc:" -#: templates/problem/manage_submission.html:131 +#: templates/problem/manage_submission.html:133 msgid "This range includes both endpoints." msgstr "Khoảng này bao gồm cả 2 điểm đầu cuối." -#: templates/problem/manage_submission.html:134 +#: templates/problem/manage_submission.html:136 msgid "Filter by language:" msgstr "Lọc theo ngôn ngữ:" -#: templates/problem/manage_submission.html:150 +#: templates/problem/manage_submission.html:152 msgid "Rejudge selected submissions" msgstr "Chấm lại các bài đã chọn" -#: templates/problem/manage_submission.html:157 +#: templates/problem/manage_submission.html:159 msgid "Rescore Everything" msgstr "Tính điểm lại mọi thứ" -#: templates/problem/manage_submission.html:158 +#: templates/problem/manage_submission.html:160 #, python-format msgid "This will rescore %(count)s submission." msgid_plural "This will rescore %(count)s submissions." msgstr[0] "Việc này sẽ chấm lại %(count)s bài nộp." -#: templates/problem/manage_submission.html:166 +#: templates/problem/manage_submission.html:168 #, python-format msgid "Are you sure you want to rescore %(count)s submission?" msgid_plural "Are you sure you want to rescore %(count)s submissions?" msgstr[0] "Bạn có chắc chấm lại %(count)s bài nộp?" -#: templates/problem/manage_submission.html:171 +#: templates/problem/manage_submission.html:173 msgid "Rescore all submissions" msgstr "Chấm điểm lại mọi bài nộp" @@ -4978,8 +5003,8 @@ msgstr "Kiểu bài tập" msgid "Point range" msgstr "Tầm điểm" -#: templates/problem/search-form.html:68 templates/submission/list.html:326 -#: templates/ticket/list.html:188 +#: templates/problem/search-form.html:68 templates/submission/list.html:328 +#: templates/ticket/list.html:189 msgid "Go" msgstr "Tìm" @@ -4988,7 +5013,7 @@ msgid "Random" msgstr "Ngẫu nhiên" #: templates/problem/submission-diff.html:62 -#: templates/status/language-list.html:34 templates/ticket/list.html:199 +#: templates/status/language-list.html:34 templates/ticket/list.html:200 msgid "ID" msgstr "ID" @@ -5000,30 +5025,30 @@ msgstr "Kết quả" msgid "Date" msgstr "Ngày" -#: templates/problem/submit.html:117 +#: templates/problem/submit.html:118 msgid "Your source code must contain at most 65536 characters." msgstr "Mã nguồn của bạn chỉ được chứa tối đa 65536 kí tự." -#: templates/problem/submit.html:204 +#: templates/problem/submit.html:138 msgid "Warning!" msgstr "Cảnh báo!" -#: templates/problem/submit.html:205 +#: templates/problem/submit.html:139 #, python-format msgid "Your default language, %(language)s, is unavailable for this problem and has been deselected." msgstr "Ngôn ngữ mặc định của bạn, %(language)s, không có sẵn cho bài tập này đã bị bỏ chọn." -#: templates/problem/submit.html:213 +#: templates/problem/submit.html:147 #, python-format msgid "You have %(left)s submission left" msgid_plural "You have %(left)s submissions left" msgstr[0] "Bạn còn %(left)s lần nộp" -#: templates/problem/submit.html:218 +#: templates/problem/submit.html:152 msgid "You have 0 submissions left" msgstr "Bạn còn 0 lần nộp" -#: templates/problem/submit.html:252 +#: templates/problem/submit.html:186 msgid "No judge is available for this problem." msgstr "Bài tập này hiện không sẵn sàng để chấm." @@ -5229,7 +5254,7 @@ msgstr "Đội ngũ %(site_name)s" msgid "Password reset on %(site_name)s" msgstr "Đặt lại mật khẩu tại %(site_name)s" -#: templates/registration/profile_creation.html:44 +#: templates/registration/profile_creation.html:38 #: templates/registration/username_select.html:7 msgid "Continue >" msgstr "Tiếp tục >" @@ -5242,36 +5267,36 @@ msgstr "Việc đăng ký hiện đã đóng. Vui lòng liên hệ với quản msgid "You have successfully been registered. An email has been sent to the email address you provided to confirm your registration." msgstr "Chúc mừng bạn đã đăng ký thành công. Một Email đã được gửi đến cho bạn để xác nhận đăng ký của bạn." -#: templates/registration/registration_form.html:170 +#: templates/registration/registration_form.html:166 msgid "(again, for confirmation)" msgstr "(xác nhận mật khẩu)" -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "(select your closest major city)" msgstr "(chọn thành phố gần bạn nhất)" -#: templates/registration/registration_form.html:182 +#: templates/registration/registration_form.html:178 msgid "pick from map" msgstr "chọn từ bản đồ" -#: templates/registration/registration_form.html:187 +#: templates/registration/registration_form.html:183 msgid "Default language" msgstr "Ngôn ngữ mặc định" -#: templates/registration/registration_form.html:190 +#: templates/registration/registration_form.html:186 msgid "Affiliated organizations" msgstr "Tổ chức đại diện" -#: templates/registration/registration_form.html:199 -#: templates/user/edit-profile.html:322 +#: templates/registration/registration_form.html:195 +#: templates/user/edit-profile.html:321 msgid "Notify me about upcoming contests" msgstr "Thông báo cho tôi về các cuộc thi sắp tới" -#: templates/registration/registration_form.html:213 +#: templates/registration/registration_form.html:209 msgid "By registering, you agree to our [Terms & Conditions][0]." msgstr "" -#: templates/registration/registration_form.html:216 +#: templates/registration/registration_form.html:212 msgid "Register!" msgstr "Đăng ký!" @@ -5313,17 +5338,17 @@ msgid "Enable Two Factor Authentication" msgstr "Kích hoạt xác thực 2 yếu tố" #: templates/registration/totp_enable.html:98 -#: templates/user/edit-profile.html:374 +#: templates/user/edit-profile.html:391 msgid "Below is a list of one-time use scratch codes." msgstr "Dưới đây là các mã dự phòng sử dụng một lần." #: templates/registration/totp_enable.html:99 -#: templates/user/edit-profile.html:375 +#: templates/user/edit-profile.html:392 msgid "These codes can only be used once and are for emergency use." msgstr "Những mã này chỉ có thể được sử dụng một lần và được sử dụng trong trường hợp khẩn cấp." #: templates/registration/totp_enable.html:100 -#: templates/user/edit-profile.html:376 +#: templates/user/edit-profile.html:393 msgid "You can use these codes to login to your account or disable two-factor authentication." msgstr "Bạn có thể sử dụng những mã này để đăng nhập vào tài khoản hoặc vô hiệu hóa xác thực 2 yếu tố." @@ -5332,7 +5357,7 @@ msgid "If you ever need more scratch codes, you can regenerate them on the edit msgstr "Nếu bạn cần thêm mã dự phòng, bạn có thể tạo thêm ở trang sửa thông tin." #: templates/registration/totp_enable.html:102 -#: templates/user/edit-profile.html:378 +#: templates/user/edit-profile.html:395 msgid "Please write these down and keep them in a secure location." msgstr "Hãy ghi lại và giữ chúng ở vị trí an toàn." @@ -5350,12 +5375,12 @@ msgid "If you lose your authentication device and are unable to use your scratch msgstr "Nếu bạn đánh mất thiết bị xác minh và không thể sử dụng mã dự phòng, quản trị viên của %(site_name)s sẽ KHÔNG THỂ phục hồi tài khoản. Hãy giữ mã dự phòng an toàn!" #: templates/registration/two_factor_auth.html:33 -#: templates/user/edit-profile.html:164 +#: templates/user/edit-profile.html:159 msgid "WebAuthn is not supported by your browser." msgstr "Trình duyệt của bạn không hỗ trợ WebAuthn." #: templates/registration/two_factor_auth.html:54 -#: templates/user/edit-profile.html:188 +#: templates/user/edit-profile.html:183 msgid "Failed to contact server." msgstr "Không thể kết nối với máy chủ." @@ -5453,23 +5478,23 @@ msgstr "Thông tin về lỗi" msgid "Are you sure you want to rejudge?" msgstr "" -#: templates/submission/list.html:74 +#: templates/submission/list.html:75 msgid "Filter by status..." msgstr "Lọc theo trạng thái..." -#: templates/submission/list.html:80 +#: templates/submission/list.html:82 msgid "Filter by language..." msgstr "Lọc theo ngôn ngữ..." -#: templates/submission/list.html:304 +#: templates/submission/list.html:306 msgid "Filter submissions" msgstr "Lọc các bài nộp" -#: templates/submission/list.html:340 +#: templates/submission/list.html:342 msgid "Total:" msgstr "Tổng:" -#: templates/submission/list.html:350 +#: templates/submission/list.html:352 msgid "You were disconnected. Refresh to show latest updates." msgstr "Bạn đã bị ngắt kết nối. Tải lại trang để hiển thị thông tin cập nhật mới nhất." @@ -5633,32 +5658,32 @@ msgstr "Đã mở lại: " msgid "Closed: " msgstr "Đã đóng: " -#: templates/ticket/list.html:156 +#: templates/ticket/list.html:157 msgid "Use desktop notification" msgstr "Sử dụng thông báo trên màn hình" -#: templates/ticket/list.html:162 +#: templates/ticket/list.html:163 msgid "Hide closed tickets" msgstr "Ẩn các ticket đã đóng" -#: templates/ticket/list.html:167 +#: templates/ticket/list.html:168 msgid "Show my tickets only" msgstr "Chỉ hiện thẻ của tôi" -#: templates/ticket/list.html:171 +#: templates/ticket/list.html:172 msgid "Filing user" msgstr "Filing user" -#: templates/ticket/list.html:180 templates/ticket/ticket.html:196 +#: templates/ticket/list.html:181 templates/ticket/ticket.html:196 msgid "Assignee" msgid_plural "Assignees" msgstr[0] "Người được phân công" -#: templates/ticket/list.html:200 +#: templates/ticket/list.html:201 msgid "Title" msgstr "Tiêu đề" -#: templates/ticket/list.html:202 +#: templates/ticket/list.html:203 msgid "Assignees" msgstr "Những người được phân công" @@ -5709,131 +5734,135 @@ msgstr "Ghi chú của người được giao" msgid "Nothing here." msgstr "Không có gì ở đây." -#: templates/user/base-users-table.html:3 +#: templates/user/base-users-table.html:4 msgid "Rank" msgstr "Xếp hạng" -#: templates/user/base-users.html:14 templates/user/base-users.html:57 +#: templates/user/base-users.html:15 templates/user/base-users.html:58 msgid "Search by handle..." msgstr "Tìm kiếm theo tên..." -#: templates/user/edit-profile.html:107 +#: templates/user/edit-profile.html:102 msgid "The administrators for this site require all the staff to have Two-factor Authentication enabled, so it may not be disabled at this time." msgstr "" -#: templates/user/edit-profile.html:112 +#: templates/user/edit-profile.html:107 msgid "Are you sure you want to generate or regenerate your API token?" msgstr "Bạn có chắc chắn để tạo hoặc tạo lại mã API?" -#: templates/user/edit-profile.html:113 +#: templates/user/edit-profile.html:108 msgid "This will invalidate any previous API tokens." msgstr "Điều này sẽ làm mất hiệu lực của mọi mã thông báo API trước đó." -#: templates/user/edit-profile.html:114 +#: templates/user/edit-profile.html:109 msgid "It also allows access to your account without Two-factor Authentication." msgstr "Nó cho phép bạn truy cập tài khoản mà không có xác thực 2 yếu tố." -#: templates/user/edit-profile.html:115 +#: templates/user/edit-profile.html:110 msgid "You will not be able to view your API token after you leave this page!" msgstr "Bạn sẽ không thể xem lại mã API sau khi rời trang này!" -#: templates/user/edit-profile.html:116 templates/user/edit-profile.html:210 +#: templates/user/edit-profile.html:111 templates/user/edit-profile.html:205 msgid "Generating..." msgstr "Đang tạo..." -#: templates/user/edit-profile.html:130 templates/user/edit-profile.html:398 +#: templates/user/edit-profile.html:125 templates/user/edit-profile.html:355 msgid "Remove" msgstr "Xóa" -#: templates/user/edit-profile.html:140 +#: templates/user/edit-profile.html:135 msgid "Are you sure you want to remove your API token?" msgstr "Bạn có chắc chắn muốn xóa mã API?" -#: templates/user/edit-profile.html:147 templates/user/edit-profile.html:370 -#: templates/user/edit-profile.html:402 +#: templates/user/edit-profile.html:142 templates/user/edit-profile.html:359 +#: templates/user/edit-profile.html:387 msgid "Generate" msgstr "Tạo" -#: templates/user/edit-profile.html:193 +#: templates/user/edit-profile.html:188 msgid "Are you sure you want to delete this security key?" msgstr "Bạn có chắc chắn muốn xóa mã bảo mật này?" -#: templates/user/edit-profile.html:207 +#: templates/user/edit-profile.html:202 msgid "Are you sure you want to generate or regenerate a new set of scratch codes?" msgstr "" -#: templates/user/edit-profile.html:208 +#: templates/user/edit-profile.html:203 msgid "This will invalidate any previous scratch codes you have." msgstr "" -#: templates/user/edit-profile.html:209 templates/user/edit-profile.html:379 +#: templates/user/edit-profile.html:204 templates/user/edit-profile.html:396 msgid "You will not be able to view your scratch codes after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:278 +#: templates/user/edit-profile.html:273 msgid "Self-description:" msgstr "Mô tả bản thân:" -#: templates/user/edit-profile.html:285 +#: templates/user/edit-profile.html:280 msgid "Select your closest major city" msgstr "Chọn thành phố lớn gần bạn nhất" -#: templates/user/edit-profile.html:286 +#: templates/user/edit-profile.html:281 msgid "Time zone:" msgstr "Múi giờ:" -#: templates/user/edit-profile.html:290 +#: templates/user/edit-profile.html:285 msgid "Language:" msgstr "Ngôn ngữ:" -#: templates/user/edit-profile.html:294 +#: templates/user/edit-profile.html:289 +msgid "Site theme:" +msgstr "" + +#: templates/user/edit-profile.html:293 msgid "Editor theme:" msgstr "Giao diện khung viết code:" -#: templates/user/edit-profile.html:299 +#: templates/user/edit-profile.html:298 msgid "Math engine:" msgstr "Công cụ toán học:" -#: templates/user/edit-profile.html:308 +#: templates/user/edit-profile.html:307 msgid "Affiliated organizations:" msgstr "Tổ chức đại diện:" -#: templates/user/edit-profile.html:334 +#: templates/user/edit-profile.html:333 msgid "Change your avatar" msgstr "Đổi ảnh đại diện của bạn" -#: templates/user/edit-profile.html:339 +#: templates/user/edit-profile.html:338 msgid "Change your password" msgstr "Đổi mật khẩu của bạn" -#: templates/user/edit-profile.html:352 -msgid "Two-factor Authentication is enabled:" -msgstr "Xác thực 2 yếu tố đã được kích hoạt:" +#: templates/user/edit-profile.html:350 +msgid "API token:" +msgstr "Mã API:" + +#: templates/user/edit-profile.html:356 templates/user/edit-profile.html:384 +msgid "Hidden" +msgstr "Ẩn" + +#: templates/user/edit-profile.html:369 +msgid "Two-factor authentication is enabled:" +msgstr "" -#: templates/user/edit-profile.html:360 +#: templates/user/edit-profile.html:377 msgid "Refresh" msgstr "Làm mới" -#: templates/user/edit-profile.html:363 +#: templates/user/edit-profile.html:380 msgid "Scratch codes:" msgstr "Mã dự phòng:" -#: templates/user/edit-profile.html:367 templates/user/edit-profile.html:399 -msgid "Hidden" -msgstr "Ẩn" - -#: templates/user/edit-profile.html:377 +#: templates/user/edit-profile.html:394 msgid "If you ever need more scratch codes, you can regenerate them here." msgstr "" -#: templates/user/edit-profile.html:385 +#: templates/user/edit-profile.html:402 msgid "Two-factor Authentication is disabled:" msgstr "Xác thực 2 yếu tố đã được vô hiệu hóa:" -#: templates/user/edit-profile.html:393 -msgid "API token:" -msgstr "Mã API:" - #: templates/user/edit-profile.html:410 msgid "Security keys:" msgstr "Khóa bảo mật:" diff --git a/locale/vi/LC_MESSAGES/djangojs.po b/locale/vi/LC_MESSAGES/djangojs.po index a1a3affebc..914ca44776 100644 --- a/locale/vi/LC_MESSAGES/djangojs.po +++ b/locale/vi/LC_MESSAGES/djangojs.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-20 23:43+0000\n" -"PO-Revision-Date: 2022-12-21 00:44\n" +"POT-Creation-Date: 2023-01-23 05:23+0000\n" +"PO-Revision-Date: 2023-02-08 00:51\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Language: vi_VN\n" @@ -17,39 +17,39 @@ msgstr "" "X-Crowdin-File: djangojs.po\n" "X-Crowdin-File-ID: 12\n" -#: resources/common.js:195 +#: resources/common.js:194 msgctxt "time format with day" msgid "%d day %h:%m:%s" msgid_plural "%d days %h:%m:%s" msgstr[0] "%d ngày %h:%m:%s" -#: resources/common.js:198 +#: resources/common.js:197 msgctxt "time format without day" msgid "%h:%m:%s" msgstr "%h:%m:%s" #: resources/problem-vote.js:11 msgid "Vote on problem points" -msgstr "" +msgstr "Vote điểm điểm cho bài tập" #: resources/problem-vote.js:16 #, javascript-format msgid "Unable to delete vote: %s" -msgstr "" +msgstr "Không thể xoá vote" #: resources/problem-vote.js:28 #, javascript-format msgid "Edit points vote (%s)" -msgstr "" +msgstr "Sửa điểm vote" #: resources/problem-vote.js:34 #, javascript-format msgid "Unable to cast vote: %s" -msgstr "" +msgstr "Không thể sửa điểm " #: resources/problem-vote.js:63 msgid "Number of votes for this point value" -msgstr "" +msgstr "Số lượng vote cho điểm này" #: resources/user_profile.js:47 msgid "past year" diff --git a/locale/zh_Hans/LC_MESSAGES/django.po b/locale/zh_Hans/LC_MESSAGES/django.po index 6ed83bf773..998a78ed1c 100644 --- a/locale/zh_Hans/LC_MESSAGES/django.po +++ b/locale/zh_Hans/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-20 23:04+0000\n" -"PO-Revision-Date: 2023-01-22 00:52\n" +"POT-Creation-Date: 2023-02-17 22:33+0000\n" +"PO-Revision-Date: 2023-02-18 00:49\n" "Last-Translator: \n" "Language-Team: Chinese Simplified\n" "Language: zh_CN\n" @@ -17,91 +17,91 @@ msgstr "" "X-Crowdin-File: django.po\n" "X-Crowdin-File-ID: 10\n" -#: dmoj/settings.py:380 +#: dmoj/settings.py:392 msgid "Catalan" msgstr "加泰隆语" -#: dmoj/settings.py:381 +#: dmoj/settings.py:393 msgid "German" msgstr "德语" -#: dmoj/settings.py:382 +#: dmoj/settings.py:394 msgid "Greek" msgstr "希腊语" -#: dmoj/settings.py:383 +#: dmoj/settings.py:395 msgid "English" msgstr "英语" -#: dmoj/settings.py:384 +#: dmoj/settings.py:396 msgid "Spanish" msgstr "西班牙语" -#: dmoj/settings.py:385 +#: dmoj/settings.py:397 msgid "French" msgstr "法语" -#: dmoj/settings.py:386 +#: dmoj/settings.py:398 msgid "Croatian" msgstr "克罗地亚语" -#: dmoj/settings.py:387 +#: dmoj/settings.py:399 msgid "Hungarian" msgstr "匈牙利语" -#: dmoj/settings.py:388 +#: dmoj/settings.py:400 msgid "Japanese" msgstr "日语" -#: dmoj/settings.py:389 +#: dmoj/settings.py:401 msgid "Korean" msgstr "韩语" -#: dmoj/settings.py:390 +#: dmoj/settings.py:402 msgid "Brazilian Portuguese" msgstr "巴西葡萄牙语" -#: dmoj/settings.py:391 +#: dmoj/settings.py:403 msgid "Romanian" msgstr "罗马尼亚语" -#: dmoj/settings.py:392 +#: dmoj/settings.py:404 msgid "Russian" msgstr "俄语" -#: dmoj/settings.py:393 +#: dmoj/settings.py:405 msgid "Serbian (Latin)" msgstr "塞尔维亚文(拉丁字母)" -#: dmoj/settings.py:394 +#: dmoj/settings.py:406 msgid "Turkish" msgstr "土耳其语" -#: dmoj/settings.py:395 +#: dmoj/settings.py:407 msgid "Vietnamese" msgstr "越南语" -#: dmoj/settings.py:396 +#: dmoj/settings.py:408 msgid "Simplified Chinese" msgstr "简体中文" -#: dmoj/settings.py:397 +#: dmoj/settings.py:409 msgid "Traditional Chinese" msgstr "繁体中文" -#: dmoj/urls.py:32 +#: dmoj/urls.py:31 msgid "Activation Successful!" msgstr "激活成功!" -#: dmoj/urls.py:40 +#: dmoj/urls.py:39 msgid "Registration Completed" msgstr "注册完成" -#: dmoj/urls.py:44 +#: dmoj/urls.py:43 msgid "Registration Not Allowed" msgstr "不允许注册" -#: dmoj/urls.py:93 templates/base.html:183 +#: dmoj/urls.py:92 templates/base.html:193 msgid "Home" msgstr "首页" @@ -138,8 +138,8 @@ msgid "Included contests" msgstr "带标签的竞赛" #: judge/admin/contest.py:65 templates/contest/contest.html:195 -#: templates/contest/moss.html:41 templates/problem/list.html:197 -#: templates/problem/list.html:213 templates/user/user-problems.html:58 +#: templates/contest/moss.html:41 templates/problem/list.html:188 +#: templates/problem/list.html:204 templates/user/user-problems.html:58 #: templates/user/user-problems.html:102 msgid "Problem" msgstr "题目" @@ -150,7 +150,7 @@ msgstr "题目" msgid "Problems" msgstr "题目" -#: judge/admin/contest.py:76 judge/admin/submission.py:249 +#: judge/admin/contest.py:76 judge/admin/submission.py:250 #: templates/admin/judge/submission/change_form.html:14 #: templates/admin/judge/submission/change_form.html:17 #: templates/submission/source.html:34 templates/submission/status.html:89 @@ -225,27 +225,27 @@ msgstr[0] "%d个竞赛解锁成功。" msgid "Unlock contest submissions" msgstr "解锁竞赛提交" -#: judge/admin/contest.py:280 judge/admin/submission.py:175 +#: judge/admin/contest.py:280 judge/admin/submission.py:176 #, python-format msgid "%d submission was successfully scheduled for rejudging." msgid_plural "%d submissions were successfully scheduled for rejudging." msgstr[0] "%d个提交被计划重新评分。" -#: judge/admin/contest.py:356 +#: judge/admin/contest.py:358 #, python-format msgid "%d participation recalculated." msgid_plural "%d participations recalculated." msgstr[0] "重新计算了%d个参与。" -#: judge/admin/contest.py:359 +#: judge/admin/contest.py:361 msgid "Recalculate results" msgstr "重新计算结果" -#: judge/admin/contest.py:363 judge/admin/organization.py:113 +#: judge/admin/contest.py:365 judge/admin/organization.py:113 msgid "username" msgstr "用户名" -#: judge/admin/contest.py:368 templates/base.html:249 +#: judge/admin/contest.py:370 templates/base.html:259 msgid "virtual" msgstr "模拟竞赛" @@ -258,8 +258,8 @@ msgid "Summary" msgstr "概要" #: judge/admin/interface.py:124 judge/models/contest.py:491 -#: judge/models/contest.py:623 judge/models/profile.py:331 -#: judge/models/profile.py:362 judge/models/submission.py:67 +#: judge/models/contest.py:623 judge/models/profile.py:347 +#: judge/models/profile.py:378 judge/models/submission.py:67 #: judge/models/ticket.py:32 msgid "user" msgstr "用户" @@ -290,8 +290,8 @@ msgid "Taxonomy" msgstr "分类" #: judge/admin/problem.py:133 templates/contest/contest.html:196 -#: templates/problem/data.html:380 templates/problem/list.html:202 -#: templates/problem/list.html:224 templates/user/base-users-table.html:10 +#: templates/problem/data.html:381 templates/problem/list.html:193 +#: templates/problem/list.html:215 templates/user/base-users-table.html:11 #: templates/user/user-problems.html:60 msgid "Points" msgstr "分数" @@ -300,9 +300,9 @@ msgstr "分数" msgid "Limits" msgstr "限制" -#: judge/admin/problem.py:135 judge/admin/submission.py:243 +#: judge/admin/problem.py:135 judge/admin/submission.py:244 #: templates/problem/submission-diff.html:65 templates/stats/tabs.html:4 -#: templates/submission/list.html:317 +#: templates/submission/list.html:319 msgid "Language" msgstr "语言" @@ -356,19 +356,19 @@ msgstr "题目" msgid "timezone" msgstr "时区" -#: judge/admin/profile.py:98 judge/admin/submission.py:222 +#: judge/admin/profile.py:98 judge/admin/submission.py:223 #: templates/organization/requests/log.html:9 #: templates/organization/requests/pending.html:12 -#: templates/ticket/list.html:201 +#: templates/ticket/list.html:202 msgid "User" msgstr "用户" -#: judge/admin/profile.py:103 templates/registration/registration_form.html:149 +#: judge/admin/profile.py:103 templates/registration/registration_form.html:145 msgid "Email" msgstr "电子邮箱" #: judge/admin/profile.py:108 judge/views/register.py:28 -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "Timezone" msgstr "时区" @@ -386,26 +386,26 @@ msgstr[0] "%d个用户的总分已被重新计算。" msgid "Recalculate scores" msgstr "重新计算总分" -#: judge/admin/runtime.py:50 templates/user/edit-profile.html:124 -#: templates/user/edit-profile.html:246 templates/user/edit-profile.html:366 -#: templates/user/edit-profile.html:396 +#: judge/admin/runtime.py:52 templates/user/edit-profile.html:119 +#: templates/user/edit-profile.html:241 templates/user/edit-profile.html:353 +#: templates/user/edit-profile.html:383 msgid "Regenerate" msgstr "重新生成" -#: judge/admin/runtime.py:64 +#: judge/admin/runtime.py:66 msgid "Description" msgstr "描述" -#: judge/admin/runtime.py:65 +#: judge/admin/runtime.py:67 msgid "Information" msgstr "信息" -#: judge/admin/runtime.py:66 +#: judge/admin/runtime.py:68 msgid "Capabilities" msgstr "能力" #: judge/admin/submission.py:24 judge/admin/submission.py:43 -#: judge/admin/submission.py:232 +#: judge/admin/submission.py:233 msgid "None" msgstr "无" @@ -437,56 +437,56 @@ msgctxt "contest problem" msgid "%(problem)s in %(contest)s" msgstr "%(contest)s 中的 %(problem)s" -#: judge/admin/submission.py:160 judge/admin/submission.py:182 +#: judge/admin/submission.py:161 judge/admin/submission.py:183 msgid "You do not have the permission to rejudge submissions." msgstr "您没有为程序重新评分的权利。" -#: judge/admin/submission.py:166 +#: judge/admin/submission.py:167 msgid "You do not have the permission to rejudge THAT many submissions." msgstr "您没有为这么多程序重新评分的权利。" -#: judge/admin/submission.py:178 +#: judge/admin/submission.py:179 msgid "Rejudge the selected submissions" msgstr "重新评分选定的程序" -#: judge/admin/submission.py:204 judge/views/problem_manage.py:129 +#: judge/admin/submission.py:205 judge/views/problem_manage.py:129 #, python-format msgid "%d submission was successfully rescored." msgid_plural "%d submissions were successfully rescored." msgstr[0] "%d个程序提交的分数已被重新计算。" -#: judge/admin/submission.py:207 +#: judge/admin/submission.py:208 msgid "Rescore the selected submissions" msgstr "重新计算选定程序的分数" -#: judge/admin/submission.py:211 +#: judge/admin/submission.py:212 msgid "Problem code" msgstr "题目代码" -#: judge/admin/submission.py:216 +#: judge/admin/submission.py:217 msgid "Problem name" msgstr "题目名称" -#: judge/admin/submission.py:226 templates/organization/requests/log.html:10 +#: judge/admin/submission.py:227 templates/organization/requests/log.html:10 #: templates/organization/requests/pending.html:13 msgid "Time" msgstr "时间" -#: judge/admin/submission.py:234 +#: judge/admin/submission.py:235 #, python-format msgid "%d KB" msgstr "%d KB" -#: judge/admin/submission.py:236 +#: judge/admin/submission.py:237 #, python-format msgid "%.2f MB" msgstr "%.2f MB" -#: judge/admin/submission.py:238 +#: judge/admin/submission.py:239 msgid "Memory" msgstr "内存" -#: judge/admin/submission.py:247 +#: judge/admin/submission.py:248 msgid "Locked" msgstr "已锁定" @@ -511,6 +511,7 @@ msgid "Comment body" msgstr "评论正文" #: judge/comments.py:47 judge/views/comment.py:40 judge/views/ticket.py:46 +#: judge/views/user.py:347 msgid "Your part is silent, little toad." msgstr "你已被静音……" @@ -615,7 +616,7 @@ msgstr "无效的双重验证码。" msgid "Scratch codes must be 16 Base32 characters." msgstr "一次性双重验证码必须是16个32十进制字符。" -#: judge/forms.py:39 judge/forms.py:265 +#: judge/forms.py:39 judge/forms.py:266 msgid "Invalid scratch code." msgstr "无效的一次性代码。" @@ -637,83 +638,83 @@ msgid "You may not be part of more than {count} public organization." msgid_plural "You may not be part of more than {count} public organizations." msgstr[0] "你不能参与超过{count}个组织。" -#: judge/forms.py:98 +#: judge/forms.py:99 msgid "Download comments?" msgstr "下载评论?" -#: judge/forms.py:99 +#: judge/forms.py:100 msgid "Download submissions?" msgstr "下载提交?" -#: judge/forms.py:100 +#: judge/forms.py:101 msgid "Filter by problem code glob:" msgstr "按题目代码glob过滤:" -#: judge/forms.py:104 +#: judge/forms.py:105 msgid "Leave empty to include all submissions" msgstr "留空以包含所有提交" -#: judge/forms.py:107 templates/problem/manage_submission.html:142 +#: judge/forms.py:108 templates/problem/manage_submission.html:144 msgid "Filter by result:" msgstr "以结果过滤:" -#: judge/forms.py:113 +#: judge/forms.py:114 msgid "Please select at least one thing to download." msgstr "请选择下载至少一个东西。" -#: judge/forms.py:139 +#: judge/forms.py:140 msgid "Any judge" msgstr "任何裁判服务器" -#: judge/forms.py:160 judge/views/register.py:25 +#: judge/forms.py:161 judge/views/register.py:25 #: templates/problem/submission-diff.html:63 -#: templates/registration/registration_form.html:143 -#: templates/user/base-users-table.html:5 +#: templates/registration/registration_form.html:139 +#: templates/user/base-users-table.html:6 msgid "Username" msgstr "用户名" -#: judge/forms.py:161 templates/registration/registration_form.html:155 -#: templates/registration/registration_form.html:169 +#: judge/forms.py:162 templates/registration/registration_form.html:151 +#: templates/registration/registration_form.html:165 msgid "Password" msgstr "密码" -#: judge/forms.py:193 +#: judge/forms.py:194 msgid "Invalid code length." msgstr "无效的代码长度。" -#: judge/forms.py:224 +#: judge/forms.py:225 msgid "Invalid WebAuthn response." msgstr "WebAuthn回复无效。" -#: judge/forms.py:227 +#: judge/forms.py:228 msgid "No WebAuthn challenge issued." msgstr "未发出WebAuthn质疑。" -#: judge/forms.py:233 +#: judge/forms.py:234 msgid "Invalid WebAuthn credential ID." msgstr "无效的WebAuthn凭据ID。" -#: judge/forms.py:263 +#: judge/forms.py:264 msgid "Invalid two-factor authentication token or scratch code." msgstr "无效的双重验证码或者一次性代码。" -#: judge/forms.py:267 +#: judge/forms.py:268 msgid "Must specify either totp_token or webauthn_response." msgstr "必须指定 totp_token 或 webauthn_response。" -#: judge/forms.py:271 judge/models/problem.py:118 +#: judge/forms.py:272 judge/models/problem.py:118 msgid "Problem code must be ^[a-z0-9]+$" msgstr "题目代码必须匹配 ^[a-z0-9]+$" -#: judge/forms.py:276 +#: judge/forms.py:277 msgid "Problem with code already exists." msgstr "代码已经存在题目。" -#: judge/forms.py:281 judge/models/contest.py:68 +#: judge/forms.py:282 judge/models/contest.py:68 msgid "Contest id must be ^[a-z0-9]+$" msgstr "竞赛标识必须匹配 ^[a-z0-9]+$" -#: judge/forms.py:286 +#: judge/forms.py:287 msgid "Contest with key already exists." msgstr "有这个代码的竞赛已经存在。" @@ -736,26 +737,42 @@ msgstr "在{time}" msgid "Unrated" msgstr "未评分" -#: judge/models/choices.py:59 +#: judge/models/choices.py:24 +msgid "Follow site theme" +msgstr "" + +#: judge/models/choices.py:60 msgid "Leave as LaTeX" msgstr "显示为LaTeX" -#: judge/models/choices.py:60 +#: judge/models/choices.py:61 msgid "SVG only" msgstr "仅使用SVG" -#: judge/models/choices.py:61 +#: judge/models/choices.py:62 msgid "MathML only" msgstr "仅使用MathML" -#: judge/models/choices.py:62 +#: judge/models/choices.py:63 msgid "MathJax with SVG fallback" msgstr "MathJax,自动SVG切换" -#: judge/models/choices.py:63 +#: judge/models/choices.py:64 msgid "Detect best quality" msgstr "检测最佳质量" +#: judge/models/choices.py:70 +msgid "Follow system default" +msgstr "" + +#: judge/models/choices.py:71 +msgid "Light" +msgstr "" + +#: judge/models/choices.py:72 +msgid "Dark" +msgstr "" + #: judge/models/comment.py:25 msgid "Page code must be ^[pcs]:[a-z0-9]+$|^b:\\d+$" msgstr "页代码必须匹配 ^[pcs]:[a-z0-9]+$|^b:\\d+$" @@ -1868,8 +1885,8 @@ msgid "Non-trailing spaces" msgstr "无尾随空格" #: judge/models/problem_data.py:28 -msgid "Unordered" -msgstr "无序的" +msgid "Sorted" +msgstr "" #: judge/models/problem_data.py:29 msgid "Byte identical" @@ -2040,7 +2057,7 @@ msgid "Edit all organizations" msgstr "编辑所有组织" #: judge/models/profile.py:98 judge/models/profile.py:103 -#: judge/models/profile.py:160 judge/models/profile.py:363 +#: judge/models/profile.py:161 judge/models/profile.py:379 msgid "organization" msgstr "组织" @@ -2081,7 +2098,7 @@ msgstr "成员" msgid "%(class)s in %(organization)s" msgstr "" -#: judge/models/profile.py:142 judge/models/profile.py:371 +#: judge/models/profile.py:142 judge/models/profile.py:387 msgid "class" msgstr "类" @@ -2106,26 +2123,30 @@ msgid "Ace theme" msgstr "Ace主题" #: judge/models/profile.py:158 +msgid "site theme" +msgstr "" + +#: judge/models/profile.py:159 msgid "last access time" msgstr "上次访问时间" -#: judge/models/profile.py:159 +#: judge/models/profile.py:160 msgid "last IP" msgstr "上次访问 IP" -#: judge/models/profile.py:162 +#: judge/models/profile.py:163 msgid "display rank" msgstr "显示排名" -#: judge/models/profile.py:164 +#: judge/models/profile.py:165 msgid "Normal User" msgstr "普通用户" -#: judge/models/profile.py:165 +#: judge/models/profile.py:166 msgid "Problem Setter" msgstr "题目作家" -#: judge/models/profile.py:166 templates/base.html:211 +#: judge/models/profile.py:167 templates/base.html:221 #: templates/comments/list.html:97 templates/contest/contest-list-tabs.html:25 #: templates/contest/ranking-table.html:51 #: templates/problem/problem-list-tabs.html:6 @@ -2135,200 +2156,200 @@ msgstr "题目作家" msgid "Admin" msgstr "管理" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "comment mute" msgstr "禁止评论" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "Some users are at their best when silent." msgstr "某些用户在沉默时表现最佳。" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "unlisted user" msgstr "未列出用户" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "User will not be ranked." msgstr "用户将不被排名。" -#: judge/models/profile.py:172 +#: judge/models/profile.py:173 msgid "banned from voting on problem point values" msgstr "" -#: judge/models/profile.py:173 +#: judge/models/profile.py:174 msgid "User will not be able to vote on problems' point values." msgstr "" -#: judge/models/profile.py:177 +#: judge/models/profile.py:178 msgid "user script" msgstr "用户脚本" -#: judge/models/profile.py:178 +#: judge/models/profile.py:179 msgid "User-defined JavaScript for site customization." msgstr "用户自定义 JavaScript。" -#: judge/models/profile.py:179 +#: judge/models/profile.py:180 msgid "current contest" msgstr "当前竞赛" -#: judge/models/profile.py:181 +#: judge/models/profile.py:182 msgid "math engine" msgstr "数学引擎" -#: judge/models/profile.py:183 +#: judge/models/profile.py:184 msgid "The rendering engine used to render math." msgstr "数学渲染使用的引擎。" -#: judge/models/profile.py:184 +#: judge/models/profile.py:185 msgid "TOTP 2FA enabled" msgstr "TOTP 2FA 已启用" -#: judge/models/profile.py:185 +#: judge/models/profile.py:186 msgid "Check to enable TOTP-based two-factor authentication." msgstr "打钩以启用TOTP双重验证。" -#: judge/models/profile.py:186 +#: judge/models/profile.py:187 msgid "WebAuthn 2FA enabled" msgstr "WebAuthn 2FA 已启用" -#: judge/models/profile.py:187 +#: judge/models/profile.py:188 msgid "Check to enable WebAuthn-based two-factor authentication." msgstr "打钩以启用WebAuthn双重验证。" -#: judge/models/profile.py:188 +#: judge/models/profile.py:189 msgid "TOTP key" msgstr "TOTP 密钥" -#: judge/models/profile.py:189 +#: judge/models/profile.py:190 msgid "32-character Base32-encoded key for TOTP." msgstr "TOTP的32字符,32进制密钥。" -#: judge/models/profile.py:191 +#: judge/models/profile.py:192 msgid "TOTP key must be empty or Base32." msgstr "TOTP密钥必须为空或32进制。" -#: judge/models/profile.py:192 +#: judge/models/profile.py:193 msgid "scratch codes" msgstr "一次性代码" -#: judge/models/profile.py:193 +#: judge/models/profile.py:194 msgid "JSON array of 16-character Base32-encoded codes for scratch codes." msgstr "含有16字符的32进制代码的JSON数组。" -#: judge/models/profile.py:197 +#: judge/models/profile.py:198 msgid "Scratch codes must be empty or a JSON array of 16-character Base32 codes." msgstr "一次性代码必须是空的或者是一个含有32进制代码的JSON数组。" -#: judge/models/profile.py:199 +#: judge/models/profile.py:200 msgid "last TOTP timecode" msgstr "" -#: judge/models/profile.py:200 +#: judge/models/profile.py:201 msgid "API token" msgstr "API令牌" -#: judge/models/profile.py:201 +#: judge/models/profile.py:202 msgid "64-character hex-encoded API access token." msgstr "64个字符hex编码的API访问令牌。" -#: judge/models/profile.py:203 +#: judge/models/profile.py:204 msgid "API token must be None or hexadecimal" msgstr "API 令牌必须是莫或十六进制的" -#: judge/models/profile.py:204 +#: judge/models/profile.py:205 msgid "internal notes" msgstr "内部备注" -#: judge/models/profile.py:205 +#: judge/models/profile.py:206 msgid "Notes for administrators regarding this user." msgstr "此用户的管理员备注。" -#: judge/models/profile.py:206 +#: judge/models/profile.py:207 msgid "last data download time" msgstr "上次数据下载时间" -#: judge/models/profile.py:207 +#: judge/models/profile.py:208 msgid "display name override" msgstr "显示名覆盖" -#: judge/models/profile.py:208 +#: judge/models/profile.py:209 msgid "Name displayed in place of username." msgstr "" -#: judge/models/profile.py:323 +#: judge/models/profile.py:333 msgid "Shows in-progress development stuff" msgstr "显示正在开发的内容" -#: judge/models/profile.py:324 +#: judge/models/profile.py:334 msgid "Edit TOTP settings" msgstr "编辑 TOTP 设置" -#: judge/models/profile.py:326 +#: judge/models/profile.py:336 msgid "user profile" msgstr "用户信息" -#: judge/models/profile.py:327 +#: judge/models/profile.py:337 msgid "user profiles" msgstr "用户信息" -#: judge/models/profile.py:333 +#: judge/models/profile.py:349 msgid "device name" msgstr "设备名称" -#: judge/models/profile.py:334 +#: judge/models/profile.py:350 msgid "credential ID" msgstr "凭据ID" -#: judge/models/profile.py:335 +#: judge/models/profile.py:351 msgid "public key" msgstr "公钥" -#: judge/models/profile.py:336 +#: judge/models/profile.py:352 msgid "sign counter" msgstr "签名数量" -#: judge/models/profile.py:354 +#: judge/models/profile.py:370 #, python-format msgid "WebAuthn credential: %(name)s" msgstr "WebAuthn凭据:%(name)s" -#: judge/models/profile.py:357 +#: judge/models/profile.py:373 msgid "WebAuthn credential" msgstr "WebAuthn凭据" -#: judge/models/profile.py:358 +#: judge/models/profile.py:374 msgid "WebAuthn credentials" msgstr "WebAuthn凭据" -#: judge/models/profile.py:365 +#: judge/models/profile.py:381 msgid "request time" msgstr "请求时间" -#: judge/models/profile.py:366 +#: judge/models/profile.py:382 msgid "state" msgstr "状态" -#: judge/models/profile.py:367 templates/organization/requests/tabs.html:4 +#: judge/models/profile.py:383 templates/organization/requests/tabs.html:4 msgid "Pending" msgstr "待确认" -#: judge/models/profile.py:368 templates/organization/requests/tabs.html:10 +#: judge/models/profile.py:384 templates/organization/requests/tabs.html:10 msgid "Approved" msgstr "已批准" -#: judge/models/profile.py:369 templates/organization/requests/tabs.html:13 +#: judge/models/profile.py:385 templates/organization/requests/tabs.html:13 msgid "Rejected" msgstr "已拒绝" -#: judge/models/profile.py:372 +#: judge/models/profile.py:388 msgid "reason" msgstr "理由" -#: judge/models/profile.py:381 +#: judge/models/profile.py:397 msgid "organization join request" msgstr "组织加入请求" -#: judge/models/profile.py:382 +#: judge/models/profile.py:398 msgid "organization join requests" msgstr "组织加入请求" @@ -2571,15 +2592,15 @@ msgstr "内部错误 (裁判服务器错误)" msgid "submission time" msgstr "提交时间" -#: judge/models/submission.py:70 judge/models/submission.py:255 +#: judge/models/submission.py:70 judge/models/submission.py:265 msgid "execution time" msgstr "执行时间" -#: judge/models/submission.py:71 judge/models/submission.py:256 +#: judge/models/submission.py:71 judge/models/submission.py:266 msgid "memory usage" msgstr "内存使用" -#: judge/models/submission.py:72 judge/models/submission.py:257 +#: judge/models/submission.py:72 judge/models/submission.py:267 msgid "points granted" msgstr "获得分数" @@ -2668,60 +2689,60 @@ msgstr "更改提交锁定状态" msgid "submissions" msgstr "提交历史" -#: judge/models/submission.py:235 judge/models/submission.py:251 +#: judge/models/submission.py:245 judge/models/submission.py:261 msgid "associated submission" msgstr "相关提交" -#: judge/models/submission.py:237 +#: judge/models/submission.py:247 msgid "source code" msgstr "源码" -#: judge/models/submission.py:240 +#: judge/models/submission.py:250 #, python-format msgid "Source of %(submission)s" msgstr "%(submission)s 的源代码" -#: judge/models/submission.py:243 +#: judge/models/submission.py:253 msgid "submission source" msgstr "" -#: judge/models/submission.py:244 +#: judge/models/submission.py:254 msgid "submission sources" msgstr "" -#: judge/models/submission.py:253 +#: judge/models/submission.py:263 msgid "test case ID" msgstr "测试编号" -#: judge/models/submission.py:254 +#: judge/models/submission.py:264 msgid "status flag" msgstr "状态标志" -#: judge/models/submission.py:258 +#: judge/models/submission.py:268 msgid "points possible" msgstr "满分" -#: judge/models/submission.py:259 +#: judge/models/submission.py:269 msgid "batch number" msgstr "批号" -#: judge/models/submission.py:260 +#: judge/models/submission.py:270 msgid "judging feedback" msgstr "评测反馈" -#: judge/models/submission.py:261 +#: judge/models/submission.py:271 msgid "extended judging feedback" msgstr "延长的裁判反馈" -#: judge/models/submission.py:262 +#: judge/models/submission.py:272 msgid "program output" msgstr "程序输出" -#: judge/models/submission.py:276 +#: judge/models/submission.py:286 msgid "submission test case" msgstr "程序测试" -#: judge/models/submission.py:277 +#: judge/models/submission.py:287 msgid "submission test cases" msgstr "程序测试" @@ -2936,7 +2957,7 @@ msgctxt "hours and minutes" msgid "%h:%m" msgstr "%h:%m" -#: judge/views/blog.py:36 +#: judge/views/blog.py:37 #, python-format msgid "Page %d of Posts" msgstr "帖子第%d页" @@ -3420,11 +3441,11 @@ msgstr "由于滥用历史,我们不允许您的电子邮件提供商。请使 msgid "Register" msgstr "注册" -#: judge/views/register.py:103 +#: judge/views/register.py:101 msgid "Activation Key Invalid" msgstr "激活Key无效" -#: judge/views/register.py:114 +#: judge/views/register.py:112 msgid "Authentication failure" msgstr "身份验证失败" @@ -3436,7 +3457,7 @@ msgstr "其他" msgid "Language statistics" msgstr "语言统计信息" -#: judge/views/status.py:23 templates/submission/list.html:308 +#: judge/views/status.py:23 templates/submission/list.html:310 msgid "Status" msgstr "状态" @@ -3619,41 +3640,45 @@ msgstr "Y年n月j日 G:i" msgid "Preparing your data..." msgstr "正在准备您的数据…" -#: judge/views/user.py:298 templates/user/edit-profile.html:345 +#: judge/views/user.py:298 templates/user/edit-profile.html:344 msgid "Download your data" msgstr "下载您的数据" +#: judge/views/user.py:347 +msgid "Can't edit profile" +msgstr "" + #: judge/views/user.py:354 msgid "Updated on site" msgstr "在网站上更新" -#: judge/views/user.py:387 templates/admin/auth/user/change_form.html:14 -#: templates/admin/auth/user/change_form.html:17 templates/base.html:213 +#: judge/views/user.py:386 templates/admin/auth/user/change_form.html:14 +#: templates/admin/auth/user/change_form.html:17 templates/base.html:223 #: templates/user/user-tabs.html:16 msgid "Edit profile" msgstr "编辑个人资料" -#: judge/views/user.py:402 +#: judge/views/user.py:400 msgid "Generated API token for user" msgstr "为用户生成 API 令牌" -#: judge/views/user.py:414 +#: judge/views/user.py:412 msgid "Removed API token for user" msgstr "为用户清除API令牌" -#: judge/views/user.py:424 +#: judge/views/user.py:422 msgid "Generated scratch codes for user" msgstr "为用户生成一次性代码" -#: judge/views/user.py:430 templates/user/user-list-tabs.html:4 +#: judge/views/user.py:428 templates/user/user-list-tabs.html:4 msgid "Leaderboard" msgstr "排行榜" -#: judge/views/user.py:491 +#: judge/views/user.py:489 msgid "You have been successfully logged out." msgstr "您已成功注销。" -#: judge/views/user.py:508 +#: judge/views/user.py:506 msgid "You have sent too many password reset requests. Please try again later." msgstr "您发送了太多密码重置请求。请稍后再试。" @@ -3682,13 +3707,13 @@ msgstr "终止" #: templates/admin/judge/judge/change_form.html:27 #: templates/admin/judge/judge/change_form.html:30 -#: templates/user/edit-profile.html:355 templates/user/edit-profile.html:358 +#: templates/user/edit-profile.html:372 templates/user/edit-profile.html:375 msgid "Disable" msgstr "禁用" #: templates/admin/judge/judge/change_form.html:33 #: templates/admin/judge/judge/change_form.html:36 -#: templates/user/edit-profile.html:386 +#: templates/user/edit-profile.html:403 msgid "Enable" msgstr "启用" @@ -3708,48 +3733,48 @@ msgstr "" msgid "Edit user" msgstr "编辑用户" -#: templates/base.html:206 +#: templates/base.html:216 #, python-format msgid "Hello, %(username)s." msgstr "你好,%(username)s。" -#: templates/base.html:215 +#: templates/base.html:225 msgid "Stop impersonating" msgstr "" -#: templates/base.html:220 +#: templates/base.html:230 msgid "Log out" msgstr "登出" -#: templates/base.html:229 +#: templates/base.html:239 #: templates/registration/password_reset_complete.html:4 msgid "Log in" msgstr "登录" -#: templates/base.html:230 templates/registration/registration_form.html:181 +#: templates/base.html:240 templates/registration/registration_form.html:177 msgid "or" msgstr "或" -#: templates/base.html:231 +#: templates/base.html:241 msgid "Sign up" msgstr "注册" -#: templates/base.html:243 +#: templates/base.html:253 msgid "spectating" msgstr "旁观中" -#: templates/base.html:256 +#: templates/base.html:266 msgid "This site works best with JavaScript enabled." msgstr "本网站启用 JavaScript 效果最好。" -#: templates/base.html:283 +#: templates/base.html:293 msgid "proudly powered by **DMOJ**" msgstr "" #: templates/blog/content.html:13 templates/comments/list.html:89 #: templates/comments/list.html:105 templates/contest/contest-tabs.html:23 #: templates/contest/tag-title.html:9 templates/flatpages/admin_link.html:3 -#: templates/license.html:10 templates/problem/data.html:423 +#: templates/license.html:10 templates/problem/data.html:424 #: templates/problem/editorial.html:14 msgid "Edit" msgstr "编辑" @@ -3950,15 +3975,15 @@ msgstr "得分" msgid "No votes" msgstr "没有投票" -#: templates/common-content.html:32 templates/user/edit-profile.html:219 +#: templates/common-content.html:32 templates/user/edit-profile.html:214 msgid "Click to copy" msgstr "点击复制" -#: templates/common-content.html:33 templates/user/edit-profile.html:220 +#: templates/common-content.html:33 templates/user/edit-profile.html:215 msgid "Copy" msgstr "复制" -#: templates/common-content.html:44 templates/user/edit-profile.html:231 +#: templates/common-content.html:44 templates/user/edit-profile.html:226 msgid "Copied!" msgstr "复制成功!" @@ -4039,7 +4064,7 @@ msgstr "日历" msgid "Info" msgstr "资料和信息" -#: templates/contest/contest-tabs.html:6 templates/submission/list.html:334 +#: templates/contest/contest-tabs.html:6 templates/submission/list.html:336 msgid "Statistics" msgstr "统计数据" @@ -4251,7 +4276,7 @@ msgstr "AC率" #: templates/contest/contest.html:198 templates/contest/list.html:152 #: templates/contest/list.html:194 templates/contest/list.html:271 -#: templates/problem/list.html:203 templates/problem/list.html:235 +#: templates/problem/list.html:194 templates/problem/list.html:226 msgid "Users" msgstr "用户" @@ -4259,7 +4284,7 @@ msgstr "用户" msgid "Editorials" msgstr "题目讲解" -#: templates/contest/contest.html:226 templates/problem/list.html:229 +#: templates/contest/contest.html:226 templates/problem/list.html:220 msgid "Editorial" msgstr "题解" @@ -4423,19 +4448,19 @@ msgstr "取消取消资格" msgid "Disqualify" msgstr "取消资格" -#: templates/contest/ranking.html:151 +#: templates/contest/ranking.html:46 msgid "Are you sure you want to disqualify this participation?" msgstr "您确定要取消此参与资格吗?" -#: templates/contest/ranking.html:156 +#: templates/contest/ranking.html:51 msgid "Are you sure you want to un-disqualify this participation?" msgstr "您确定要取消取消此参与资格吗?" -#: templates/contest/ranking.html:228 +#: templates/contest/ranking.html:124 msgid "View user participation" msgstr "查看用户参与历史" -#: templates/contest/ranking.html:232 +#: templates/contest/ranking.html:128 msgid "Show organizations" msgstr "显示组织" @@ -4622,7 +4647,7 @@ msgid "There are no requests to approve." msgstr "没有请求批准。" #: templates/organization/requests/pending.html:17 -#: templates/problem/data.html:387 +#: templates/problem/data.html:388 msgid "Delete?" msgstr "删除?" @@ -4658,59 +4683,59 @@ msgstr "更新预览" msgid "Enter a new code for the cloned problem:" msgstr "输入复制题目的新代码:" -#: templates/problem/data.html:70 +#: templates/problem/data.html:71 msgid "precision (decimal digits)" msgstr "精度(十进制数)" -#: templates/problem/data.html:339 +#: templates/problem/data.html:340 msgid "View YAML" msgstr "查看 YAML" -#: templates/problem/data.html:355 +#: templates/problem/data.html:356 msgid "Show columns:" msgstr "显示列:" -#: templates/problem/data.html:358 templates/problem/data.html:382 +#: templates/problem/data.html:359 templates/problem/data.html:383 msgid "Output prefix" msgstr "输出前缀" -#: templates/problem/data.html:362 templates/problem/data.html:383 +#: templates/problem/data.html:363 templates/problem/data.html:384 msgid "Output limit" msgstr "输出限制" -#: templates/problem/data.html:366 templates/problem/data.html:384 +#: templates/problem/data.html:367 templates/problem/data.html:385 msgid "Checker" msgstr "检查器" -#: templates/problem/data.html:370 templates/problem/data.html:385 +#: templates/problem/data.html:371 templates/problem/data.html:386 msgid "Generator args" msgstr "生成器参数" -#: templates/problem/data.html:377 +#: templates/problem/data.html:378 msgid "Type" msgstr "类型" -#: templates/problem/data.html:378 +#: templates/problem/data.html:379 msgid "Input file" msgstr "输入文件" -#: templates/problem/data.html:379 +#: templates/problem/data.html:380 msgid "Output file" msgstr "输出文件" -#: templates/problem/data.html:381 +#: templates/problem/data.html:382 msgid "Pretest?" msgstr "预测试?" -#: templates/problem/data.html:433 templates/problem/submit.html:256 +#: templates/problem/data.html:434 templates/problem/submit.html:190 msgid "Submit!" msgstr "提交!" -#: templates/problem/data.html:434 +#: templates/problem/data.html:435 msgid "Add new case" msgstr "添加新的用例" -#: templates/problem/data.html:436 +#: templates/problem/data.html:437 msgid "Save" msgstr "保存" @@ -4727,98 +4752,98 @@ msgid "Author:" msgid_plural "Authors:" msgstr[0] "作者:" -#: templates/problem/list.html:58 +#: templates/problem/list.html:49 msgid "Filter by type..." msgstr "根据类型过滤…" -#: templates/problem/list.html:176 +#: templates/problem/list.html:167 msgid "Hot problems" msgstr "热门题目" -#: templates/problem/list.html:198 templates/problem/list.html:216 +#: templates/problem/list.html:189 templates/problem/list.html:207 #: templates/problem/search-form.html:35 templates/user/user-problems.html:59 msgid "Category" msgstr "分类" -#: templates/problem/list.html:200 templates/problem/list.html:220 +#: templates/problem/list.html:191 templates/problem/list.html:211 msgid "Types" msgstr "类型" -#: templates/problem/list.html:227 +#: templates/problem/list.html:218 #, python-format msgid "AC %%" msgstr "AC%%" -#: templates/problem/manage_submission.html:55 +#: templates/problem/manage_submission.html:56 msgid "Leave empty to not filter by language" msgstr "留空则不按语言过滤" -#: templates/problem/manage_submission.html:60 +#: templates/problem/manage_submission.html:62 msgid "Leave empty to not filter by result" msgstr "留空则不按结果过滤" -#: templates/problem/manage_submission.html:79 +#: templates/problem/manage_submission.html:81 msgid "Need valid values for both start and end IDs." msgstr "开始和结束ID必须有效。" -#: templates/problem/manage_submission.html:82 +#: templates/problem/manage_submission.html:84 msgid "End ID must be after start ID." msgstr "结束ID必须在开始 ID之后。" -#: templates/problem/manage_submission.html:90 +#: templates/problem/manage_submission.html:92 #, python-brace-format msgid "You are about to rejudge {count} submissions. Are you sure you want to do this?" msgstr "您将重新评分{count}提交,是否确认?" -#: templates/problem/manage_submission.html:96 +#: templates/problem/manage_submission.html:98 msgid "You are about to rejudge a few submissions. Are you sure you want to do this?" msgstr "您将重新评分一些提交,是否确认?" -#: templates/problem/manage_submission.html:115 +#: templates/problem/manage_submission.html:117 msgid "Rejudge Submissions" msgstr "重新评分所有提交" -#: templates/problem/manage_submission.html:120 +#: templates/problem/manage_submission.html:122 msgid "Filter by ID:" msgstr "通过ID过滤:" -#: templates/problem/manage_submission.html:123 +#: templates/problem/manage_submission.html:125 msgid "Starting ID:" msgstr "开始ID:" -#: templates/problem/manage_submission.html:127 +#: templates/problem/manage_submission.html:129 msgid "Ending ID:" msgstr "结束ID:" -#: templates/problem/manage_submission.html:131 +#: templates/problem/manage_submission.html:133 msgid "This range includes both endpoints." msgstr "这个范围包括两个终点。" -#: templates/problem/manage_submission.html:134 +#: templates/problem/manage_submission.html:136 msgid "Filter by language:" msgstr "按语言筛选:" -#: templates/problem/manage_submission.html:150 +#: templates/problem/manage_submission.html:152 msgid "Rejudge selected submissions" msgstr "重新评分选定的提交" -#: templates/problem/manage_submission.html:157 +#: templates/problem/manage_submission.html:159 msgid "Rescore Everything" msgstr "全部重新评分" -#: templates/problem/manage_submission.html:158 +#: templates/problem/manage_submission.html:160 #, python-format msgid "This will rescore %(count)s submission." msgid_plural "This will rescore %(count)s submissions." msgstr[0] "这将重新评分%(count)s个提交。" -#: templates/problem/manage_submission.html:166 +#: templates/problem/manage_submission.html:168 #, python-format msgid "Are you sure you want to rescore %(count)s submission?" msgid_plural "Are you sure you want to rescore %(count)s submissions?" msgstr[0] "您确定您要重新评判%(count)s个提交?" -#: templates/problem/manage_submission.html:171 +#: templates/problem/manage_submission.html:173 msgid "Rescore all submissions" msgstr "重新评分所有提交" @@ -4978,8 +5003,8 @@ msgstr "题目类型" msgid "Point range" msgstr "分数范围" -#: templates/problem/search-form.html:68 templates/submission/list.html:326 -#: templates/ticket/list.html:188 +#: templates/problem/search-form.html:68 templates/submission/list.html:328 +#: templates/ticket/list.html:189 msgid "Go" msgstr "搜索" @@ -4988,7 +5013,7 @@ msgid "Random" msgstr "随机" #: templates/problem/submission-diff.html:62 -#: templates/status/language-list.html:34 templates/ticket/list.html:199 +#: templates/status/language-list.html:34 templates/ticket/list.html:200 msgid "ID" msgstr "ID" @@ -5000,30 +5025,30 @@ msgstr "结果" msgid "Date" msgstr "日期" -#: templates/problem/submit.html:117 +#: templates/problem/submit.html:118 msgid "Your source code must contain at most 65536 characters." msgstr "您的程序必须最多包含 65536 个字符。" -#: templates/problem/submit.html:204 +#: templates/problem/submit.html:138 msgid "Warning!" msgstr "警告!" -#: templates/problem/submit.html:205 +#: templates/problem/submit.html:139 #, python-format msgid "Your default language, %(language)s, is unavailable for this problem and has been deselected." msgstr "您的默认编程语言,%(language)s,在此题目不可用,且已取消选择。" -#: templates/problem/submit.html:213 +#: templates/problem/submit.html:147 #, python-format msgid "You have %(left)s submission left" msgid_plural "You have %(left)s submissions left" msgstr[0] "你還可以提交%(left)s次" -#: templates/problem/submit.html:218 +#: templates/problem/submit.html:152 msgid "You have 0 submissions left" msgstr "你還可以提交0次" -#: templates/problem/submit.html:252 +#: templates/problem/submit.html:186 msgid "No judge is available for this problem." msgstr "此题目没有可用的裁判服务器。" @@ -5229,7 +5254,7 @@ msgstr "%(site_name)s 团队" msgid "Password reset on %(site_name)s" msgstr "在 %(site_name)s 上重置密码" -#: templates/registration/profile_creation.html:44 +#: templates/registration/profile_creation.html:38 #: templates/registration/username_select.html:7 msgid "Continue >" msgstr "继续 >" @@ -5242,36 +5267,36 @@ msgstr "注册目前已关闭。请联系管理员。" msgid "You have successfully been registered. An email has been sent to the email address you provided to confirm your registration." msgstr "您已成功注册。一封电子邮件已被发送到的您的电子邮件地址以确认您的注册。" -#: templates/registration/registration_form.html:170 +#: templates/registration/registration_form.html:166 msgid "(again, for confirmation)" msgstr "(再输一次密码以确定)" -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "(select your closest major city)" msgstr "(选择离您最近的主要城市)" -#: templates/registration/registration_form.html:182 +#: templates/registration/registration_form.html:178 msgid "pick from map" msgstr "从地图中选" -#: templates/registration/registration_form.html:187 +#: templates/registration/registration_form.html:183 msgid "Default language" msgstr "默认语言" -#: templates/registration/registration_form.html:190 +#: templates/registration/registration_form.html:186 msgid "Affiliated organizations" msgstr "关联的组织" -#: templates/registration/registration_form.html:199 -#: templates/user/edit-profile.html:322 +#: templates/registration/registration_form.html:195 +#: templates/user/edit-profile.html:321 msgid "Notify me about upcoming contests" msgstr "通过Email发送未来竞赛的通知" -#: templates/registration/registration_form.html:213 +#: templates/registration/registration_form.html:209 msgid "By registering, you agree to our [Terms & Conditions][0]." msgstr "" -#: templates/registration/registration_form.html:216 +#: templates/registration/registration_form.html:212 msgid "Register!" msgstr "注册!" @@ -5313,17 +5338,17 @@ msgid "Enable Two Factor Authentication" msgstr "启用两因素认证" #: templates/registration/totp_enable.html:98 -#: templates/user/edit-profile.html:374 +#: templates/user/edit-profile.html:391 msgid "Below is a list of one-time use scratch codes." msgstr "下面是一个一次性验证码列表。" #: templates/registration/totp_enable.html:99 -#: templates/user/edit-profile.html:375 +#: templates/user/edit-profile.html:392 msgid "These codes can only be used once and are for emergency use." msgstr "这些代码只能在紧急情况时使用一次。" #: templates/registration/totp_enable.html:100 -#: templates/user/edit-profile.html:376 +#: templates/user/edit-profile.html:393 msgid "You can use these codes to login to your account or disable two-factor authentication." msgstr "" @@ -5332,7 +5357,7 @@ msgid "If you ever need more scratch codes, you can regenerate them on the edit msgstr "" #: templates/registration/totp_enable.html:102 -#: templates/user/edit-profile.html:378 +#: templates/user/edit-profile.html:395 msgid "Please write these down and keep them in a secure location." msgstr "" @@ -5350,12 +5375,12 @@ msgid "If you lose your authentication device and are unable to use your scratch msgstr "" #: templates/registration/two_factor_auth.html:33 -#: templates/user/edit-profile.html:164 +#: templates/user/edit-profile.html:159 msgid "WebAuthn is not supported by your browser." msgstr "你的浏览器不支持 WebAuthn。" #: templates/registration/two_factor_auth.html:54 -#: templates/user/edit-profile.html:188 +#: templates/user/edit-profile.html:183 msgid "Failed to contact server." msgstr "联系服务器失败。" @@ -5453,23 +5478,23 @@ msgstr "错误信息" msgid "Are you sure you want to rejudge?" msgstr "您确定要重新评测吗?" -#: templates/submission/list.html:74 +#: templates/submission/list.html:75 msgid "Filter by status..." msgstr "按状态过滤…" -#: templates/submission/list.html:80 +#: templates/submission/list.html:82 msgid "Filter by language..." msgstr "按语言筛选…" -#: templates/submission/list.html:304 +#: templates/submission/list.html:306 msgid "Filter submissions" msgstr "提交筛选" -#: templates/submission/list.html:340 +#: templates/submission/list.html:342 msgid "Total:" msgstr "总计:" -#: templates/submission/list.html:350 +#: templates/submission/list.html:352 msgid "You were disconnected. Refresh to show latest updates." msgstr "您处于离线状态。刷新以显示最近的更新。" @@ -5633,32 +5658,32 @@ msgstr "重新打开状态:" msgid "Closed: " msgstr "已关闭:" -#: templates/ticket/list.html:156 +#: templates/ticket/list.html:157 msgid "Use desktop notification" msgstr "使用桌面通知" -#: templates/ticket/list.html:162 +#: templates/ticket/list.html:163 msgid "Hide closed tickets" msgstr "隐藏已关闭的工单" -#: templates/ticket/list.html:167 +#: templates/ticket/list.html:168 msgid "Show my tickets only" msgstr "只显示我的工单" -#: templates/ticket/list.html:171 +#: templates/ticket/list.html:172 msgid "Filing user" msgstr "归档用户" -#: templates/ticket/list.html:180 templates/ticket/ticket.html:196 +#: templates/ticket/list.html:181 templates/ticket/ticket.html:196 msgid "Assignee" msgid_plural "Assignees" msgstr[0] "处理人" -#: templates/ticket/list.html:200 +#: templates/ticket/list.html:201 msgid "Title" msgstr "标题" -#: templates/ticket/list.html:202 +#: templates/ticket/list.html:203 msgid "Assignees" msgstr "被分配的人" @@ -5709,131 +5734,135 @@ msgstr "受让人说明" msgid "Nothing here." msgstr "暂无内容!" -#: templates/user/base-users-table.html:3 +#: templates/user/base-users-table.html:4 msgid "Rank" msgstr "排名" -#: templates/user/base-users.html:14 templates/user/base-users.html:57 +#: templates/user/base-users.html:15 templates/user/base-users.html:58 msgid "Search by handle..." msgstr "用户名搜索…" -#: templates/user/edit-profile.html:107 +#: templates/user/edit-profile.html:102 msgid "The administrators for this site require all the staff to have Two-factor Authentication enabled, so it may not be disabled at this time." msgstr "" -#: templates/user/edit-profile.html:112 +#: templates/user/edit-profile.html:107 msgid "Are you sure you want to generate or regenerate your API token?" msgstr "您确定要生成或重新生成您的API令牌吗?" -#: templates/user/edit-profile.html:113 +#: templates/user/edit-profile.html:108 msgid "This will invalidate any previous API tokens." msgstr "这将使任何之前的 API 令牌无效。" -#: templates/user/edit-profile.html:114 +#: templates/user/edit-profile.html:109 msgid "It also allows access to your account without Two-factor Authentication." msgstr "它还允许不需要双重身份验证而访问您的帐户。" -#: templates/user/edit-profile.html:115 +#: templates/user/edit-profile.html:110 msgid "You will not be able to view your API token after you leave this page!" msgstr "离开此页面后,您将无法查看您的API令牌!" -#: templates/user/edit-profile.html:116 templates/user/edit-profile.html:210 +#: templates/user/edit-profile.html:111 templates/user/edit-profile.html:205 msgid "Generating..." msgstr "正在生成…" -#: templates/user/edit-profile.html:130 templates/user/edit-profile.html:398 +#: templates/user/edit-profile.html:125 templates/user/edit-profile.html:355 msgid "Remove" msgstr "删除" -#: templates/user/edit-profile.html:140 +#: templates/user/edit-profile.html:135 msgid "Are you sure you want to remove your API token?" msgstr "您确定要删除您的API令牌吗?" -#: templates/user/edit-profile.html:147 templates/user/edit-profile.html:370 -#: templates/user/edit-profile.html:402 +#: templates/user/edit-profile.html:142 templates/user/edit-profile.html:359 +#: templates/user/edit-profile.html:387 msgid "Generate" msgstr "生成" -#: templates/user/edit-profile.html:193 +#: templates/user/edit-profile.html:188 msgid "Are you sure you want to delete this security key?" msgstr "您确定要删除此安全密钥吗?" -#: templates/user/edit-profile.html:207 +#: templates/user/edit-profile.html:202 msgid "Are you sure you want to generate or regenerate a new set of scratch codes?" msgstr "" -#: templates/user/edit-profile.html:208 +#: templates/user/edit-profile.html:203 msgid "This will invalidate any previous scratch codes you have." msgstr "" -#: templates/user/edit-profile.html:209 templates/user/edit-profile.html:379 +#: templates/user/edit-profile.html:204 templates/user/edit-profile.html:396 msgid "You will not be able to view your scratch codes after you leave this page!" msgstr "离开此页面后,您将无法查看您的一次性代码!" -#: templates/user/edit-profile.html:278 +#: templates/user/edit-profile.html:273 msgid "Self-description:" msgstr "自我描述:" -#: templates/user/edit-profile.html:285 +#: templates/user/edit-profile.html:280 msgid "Select your closest major city" msgstr "选择离您最近的主要城市" -#: templates/user/edit-profile.html:286 +#: templates/user/edit-profile.html:281 msgid "Time zone:" msgstr "时区:" -#: templates/user/edit-profile.html:290 +#: templates/user/edit-profile.html:285 msgid "Language:" msgstr "默认语言:" -#: templates/user/edit-profile.html:294 +#: templates/user/edit-profile.html:289 +msgid "Site theme:" +msgstr "" + +#: templates/user/edit-profile.html:293 msgid "Editor theme:" msgstr "编辑器主题:" -#: templates/user/edit-profile.html:299 +#: templates/user/edit-profile.html:298 msgid "Math engine:" msgstr "数学引擎:" -#: templates/user/edit-profile.html:308 +#: templates/user/edit-profile.html:307 msgid "Affiliated organizations:" msgstr "关联的组织:" -#: templates/user/edit-profile.html:334 +#: templates/user/edit-profile.html:333 msgid "Change your avatar" msgstr "修改头像" -#: templates/user/edit-profile.html:339 +#: templates/user/edit-profile.html:338 msgid "Change your password" msgstr "更改密码" -#: templates/user/edit-profile.html:352 -msgid "Two-factor Authentication is enabled:" -msgstr "已激活双元素认证:" +#: templates/user/edit-profile.html:350 +msgid "API token:" +msgstr "API令牌:" + +#: templates/user/edit-profile.html:356 templates/user/edit-profile.html:384 +msgid "Hidden" +msgstr "隐藏" + +#: templates/user/edit-profile.html:369 +msgid "Two-factor authentication is enabled:" +msgstr "" -#: templates/user/edit-profile.html:360 +#: templates/user/edit-profile.html:377 msgid "Refresh" msgstr "刷新" -#: templates/user/edit-profile.html:363 +#: templates/user/edit-profile.html:380 msgid "Scratch codes:" msgstr "一次性代码:" -#: templates/user/edit-profile.html:367 templates/user/edit-profile.html:399 -msgid "Hidden" -msgstr "隐藏" - -#: templates/user/edit-profile.html:377 +#: templates/user/edit-profile.html:394 msgid "If you ever need more scratch codes, you can regenerate them here." msgstr "" -#: templates/user/edit-profile.html:385 +#: templates/user/edit-profile.html:402 msgid "Two-factor Authentication is disabled:" msgstr "已禁用双元素认证:" -#: templates/user/edit-profile.html:393 -msgid "API token:" -msgstr "API令牌:" - #: templates/user/edit-profile.html:410 msgid "Security keys:" msgstr "安全密钥:" diff --git a/locale/zh_Hans/LC_MESSAGES/djangojs.po b/locale/zh_Hans/LC_MESSAGES/djangojs.po index 4db596f2f8..58675a46b0 100644 --- a/locale/zh_Hans/LC_MESSAGES/djangojs.po +++ b/locale/zh_Hans/LC_MESSAGES/djangojs.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-20 23:43+0000\n" -"PO-Revision-Date: 2023-01-16 00:50\n" +"POT-Creation-Date: 2023-01-23 05:23+0000\n" +"PO-Revision-Date: 2023-01-24 00:51\n" "Last-Translator: \n" "Language-Team: Chinese Simplified\n" "Language: zh_CN\n" @@ -17,13 +17,13 @@ msgstr "" "X-Crowdin-File: djangojs.po\n" "X-Crowdin-File-ID: 12\n" -#: resources/common.js:195 +#: resources/common.js:194 msgctxt "time format with day" msgid "%d day %h:%m:%s" msgid_plural "%d days %h:%m:%s" msgstr[0] "%d 天 %h:%m:%s" -#: resources/common.js:198 +#: resources/common.js:197 msgctxt "time format without day" msgid "%h:%m:%s" msgstr "%h:%m:%s" diff --git a/locale/zh_Hant/LC_MESSAGES/django.po b/locale/zh_Hant/LC_MESSAGES/django.po index 67f515c127..000eb39ec9 100644 --- a/locale/zh_Hant/LC_MESSAGES/django.po +++ b/locale/zh_Hant/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-20 23:04+0000\n" -"PO-Revision-Date: 2023-01-21 00:48\n" +"POT-Creation-Date: 2023-02-17 22:33+0000\n" +"PO-Revision-Date: 2023-02-18 00:49\n" "Last-Translator: \n" "Language-Team: Chinese Traditional\n" "Language: zh_TW\n" @@ -17,91 +17,91 @@ msgstr "" "X-Crowdin-File: django.po\n" "X-Crowdin-File-ID: 10\n" -#: dmoj/settings.py:380 +#: dmoj/settings.py:392 msgid "Catalan" msgstr "加泰隆語" -#: dmoj/settings.py:381 +#: dmoj/settings.py:393 msgid "German" msgstr "德文" -#: dmoj/settings.py:382 +#: dmoj/settings.py:394 msgid "Greek" msgstr "希臘文" -#: dmoj/settings.py:383 +#: dmoj/settings.py:395 msgid "English" msgstr "英文" -#: dmoj/settings.py:384 +#: dmoj/settings.py:396 msgid "Spanish" msgstr "西班牙文" -#: dmoj/settings.py:385 +#: dmoj/settings.py:397 msgid "French" msgstr "法文" -#: dmoj/settings.py:386 +#: dmoj/settings.py:398 msgid "Croatian" msgstr "克羅地亞文" -#: dmoj/settings.py:387 +#: dmoj/settings.py:399 msgid "Hungarian" msgstr "匈牙利文" -#: dmoj/settings.py:388 +#: dmoj/settings.py:400 msgid "Japanese" msgstr "日語" -#: dmoj/settings.py:389 +#: dmoj/settings.py:401 msgid "Korean" msgstr "韓文" -#: dmoj/settings.py:390 +#: dmoj/settings.py:402 msgid "Brazilian Portuguese" msgstr "巴西葡萄牙語" -#: dmoj/settings.py:391 +#: dmoj/settings.py:403 msgid "Romanian" msgstr "羅馬尼亞文" -#: dmoj/settings.py:392 +#: dmoj/settings.py:404 msgid "Russian" msgstr "俄文" -#: dmoj/settings.py:393 +#: dmoj/settings.py:405 msgid "Serbian (Latin)" msgstr "塞爾維亞文(拉丁語系)" -#: dmoj/settings.py:394 +#: dmoj/settings.py:406 msgid "Turkish" msgstr "土耳其文" -#: dmoj/settings.py:395 +#: dmoj/settings.py:407 msgid "Vietnamese" msgstr "越南文" -#: dmoj/settings.py:396 +#: dmoj/settings.py:408 msgid "Simplified Chinese" msgstr "簡體中文" -#: dmoj/settings.py:397 +#: dmoj/settings.py:409 msgid "Traditional Chinese" msgstr "繁体中文" -#: dmoj/urls.py:32 +#: dmoj/urls.py:31 msgid "Activation Successful!" msgstr "啟動成功!" -#: dmoj/urls.py:40 +#: dmoj/urls.py:39 msgid "Registration Completed" msgstr "註冊完成" -#: dmoj/urls.py:44 +#: dmoj/urls.py:43 msgid "Registration Not Allowed" msgstr "不允許註冊" -#: dmoj/urls.py:93 templates/base.html:183 +#: dmoj/urls.py:92 templates/base.html:193 msgid "Home" msgstr "首頁" @@ -138,8 +138,8 @@ msgid "Included contests" msgstr "帶標籤的競賽" #: judge/admin/contest.py:65 templates/contest/contest.html:195 -#: templates/contest/moss.html:41 templates/problem/list.html:197 -#: templates/problem/list.html:213 templates/user/user-problems.html:58 +#: templates/contest/moss.html:41 templates/problem/list.html:188 +#: templates/problem/list.html:204 templates/user/user-problems.html:58 #: templates/user/user-problems.html:102 msgid "Problem" msgstr "題目" @@ -150,7 +150,7 @@ msgstr "題目" msgid "Problems" msgstr "題目" -#: judge/admin/contest.py:76 judge/admin/submission.py:249 +#: judge/admin/contest.py:76 judge/admin/submission.py:250 #: templates/admin/judge/submission/change_form.html:14 #: templates/admin/judge/submission/change_form.html:17 #: templates/submission/source.html:34 templates/submission/status.html:89 @@ -225,27 +225,27 @@ msgstr[0] "已成功解鎖%d場競賽。" msgid "Unlock contest submissions" msgstr "解鎖競賽提交" -#: judge/admin/contest.py:280 judge/admin/submission.py:175 +#: judge/admin/contest.py:280 judge/admin/submission.py:176 #, python-format msgid "%d submission was successfully scheduled for rejudging." msgid_plural "%d submissions were successfully scheduled for rejudging." msgstr[0] "%d筆提交紀錄已被計畫重新評分。" -#: judge/admin/contest.py:356 +#: judge/admin/contest.py:358 #, python-format msgid "%d participation recalculated." msgid_plural "%d participations recalculated." msgstr[0] "%d位選手的分數被重判了。" -#: judge/admin/contest.py:359 +#: judge/admin/contest.py:361 msgid "Recalculate results" msgstr "重新計算結果" -#: judge/admin/contest.py:363 judge/admin/organization.py:113 +#: judge/admin/contest.py:365 judge/admin/organization.py:113 msgid "username" msgstr "使用者名稱" -#: judge/admin/contest.py:368 templates/base.html:249 +#: judge/admin/contest.py:370 templates/base.html:259 msgid "virtual" msgstr "模擬競賽" @@ -258,8 +258,8 @@ msgid "Summary" msgstr "概要" #: judge/admin/interface.py:124 judge/models/contest.py:491 -#: judge/models/contest.py:623 judge/models/profile.py:331 -#: judge/models/profile.py:362 judge/models/submission.py:67 +#: judge/models/contest.py:623 judge/models/profile.py:347 +#: judge/models/profile.py:378 judge/models/submission.py:67 #: judge/models/ticket.py:32 msgid "user" msgstr "使用者" @@ -290,8 +290,8 @@ msgid "Taxonomy" msgstr "分類" #: judge/admin/problem.py:133 templates/contest/contest.html:196 -#: templates/problem/data.html:380 templates/problem/list.html:202 -#: templates/problem/list.html:224 templates/user/base-users-table.html:10 +#: templates/problem/data.html:381 templates/problem/list.html:193 +#: templates/problem/list.html:215 templates/user/base-users-table.html:11 #: templates/user/user-problems.html:60 msgid "Points" msgstr "分數" @@ -300,9 +300,9 @@ msgstr "分數" msgid "Limits" msgstr "限制" -#: judge/admin/problem.py:135 judge/admin/submission.py:243 +#: judge/admin/problem.py:135 judge/admin/submission.py:244 #: templates/problem/submission-diff.html:65 templates/stats/tabs.html:4 -#: templates/submission/list.html:317 +#: templates/submission/list.html:319 msgid "Language" msgstr "語言" @@ -356,19 +356,19 @@ msgstr "題目" msgid "timezone" msgstr "時區" -#: judge/admin/profile.py:98 judge/admin/submission.py:222 +#: judge/admin/profile.py:98 judge/admin/submission.py:223 #: templates/organization/requests/log.html:9 #: templates/organization/requests/pending.html:12 -#: templates/ticket/list.html:201 +#: templates/ticket/list.html:202 msgid "User" msgstr "使用者" -#: judge/admin/profile.py:103 templates/registration/registration_form.html:149 +#: judge/admin/profile.py:103 templates/registration/registration_form.html:145 msgid "Email" msgstr "電子郵件" #: judge/admin/profile.py:108 judge/views/register.py:28 -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "Timezone" msgstr "時區" @@ -386,26 +386,26 @@ msgstr[0] "%d個用戶的分數被重判了。" msgid "Recalculate scores" msgstr "" -#: judge/admin/runtime.py:50 templates/user/edit-profile.html:124 -#: templates/user/edit-profile.html:246 templates/user/edit-profile.html:366 -#: templates/user/edit-profile.html:396 +#: judge/admin/runtime.py:52 templates/user/edit-profile.html:119 +#: templates/user/edit-profile.html:241 templates/user/edit-profile.html:353 +#: templates/user/edit-profile.html:383 msgid "Regenerate" msgstr "" -#: judge/admin/runtime.py:64 +#: judge/admin/runtime.py:66 msgid "Description" msgstr "描述說明" -#: judge/admin/runtime.py:65 +#: judge/admin/runtime.py:67 msgid "Information" msgstr "" -#: judge/admin/runtime.py:66 +#: judge/admin/runtime.py:68 msgid "Capabilities" msgstr "" #: judge/admin/submission.py:24 judge/admin/submission.py:43 -#: judge/admin/submission.py:232 +#: judge/admin/submission.py:233 msgid "None" msgstr "無" @@ -437,56 +437,56 @@ msgctxt "contest problem" msgid "%(problem)s in %(contest)s" msgstr "" -#: judge/admin/submission.py:160 judge/admin/submission.py:182 +#: judge/admin/submission.py:161 judge/admin/submission.py:183 msgid "You do not have the permission to rejudge submissions." msgstr "您沒有對程式重新評分的權限。" -#: judge/admin/submission.py:166 +#: judge/admin/submission.py:167 msgid "You do not have the permission to rejudge THAT many submissions." msgstr "您沒有對這麼多程式重新評分的權限。" -#: judge/admin/submission.py:178 +#: judge/admin/submission.py:179 msgid "Rejudge the selected submissions" msgstr "重新評分選定的程式" -#: judge/admin/submission.py:204 judge/views/problem_manage.py:129 +#: judge/admin/submission.py:205 judge/views/problem_manage.py:129 #, python-format msgid "%d submission was successfully rescored." msgid_plural "%d submissions were successfully rescored." msgstr[0] "%d筆提交紀錄已成功重新計分。" -#: judge/admin/submission.py:207 +#: judge/admin/submission.py:208 msgid "Rescore the selected submissions" msgstr "重新計分所選取的提交紀錄" -#: judge/admin/submission.py:211 +#: judge/admin/submission.py:212 msgid "Problem code" msgstr "題目代碼" -#: judge/admin/submission.py:216 +#: judge/admin/submission.py:217 msgid "Problem name" msgstr "題目名稱" -#: judge/admin/submission.py:226 templates/organization/requests/log.html:10 +#: judge/admin/submission.py:227 templates/organization/requests/log.html:10 #: templates/organization/requests/pending.html:13 msgid "Time" msgstr "時間" -#: judge/admin/submission.py:234 +#: judge/admin/submission.py:235 #, python-format msgid "%d KB" msgstr "%d KB" -#: judge/admin/submission.py:236 +#: judge/admin/submission.py:237 #, python-format msgid "%.2f MB" msgstr "%.2f MB" -#: judge/admin/submission.py:238 +#: judge/admin/submission.py:239 msgid "Memory" msgstr "記憶體" -#: judge/admin/submission.py:247 +#: judge/admin/submission.py:248 msgid "Locked" msgstr "已锁定" @@ -511,6 +511,7 @@ msgid "Comment body" msgstr "評論主體" #: judge/comments.py:47 judge/views/comment.py:40 judge/views/ticket.py:46 +#: judge/views/user.py:347 msgid "Your part is silent, little toad." msgstr "" @@ -615,7 +616,7 @@ msgstr "" msgid "Scratch codes must be 16 Base32 characters." msgstr "" -#: judge/forms.py:39 judge/forms.py:265 +#: judge/forms.py:39 judge/forms.py:266 msgid "Invalid scratch code." msgstr "" @@ -637,83 +638,83 @@ msgid "You may not be part of more than {count} public organization." msgid_plural "You may not be part of more than {count} public organizations." msgstr[0] "您不可以同時在多餘{count}的公共組織。" -#: judge/forms.py:98 +#: judge/forms.py:99 msgid "Download comments?" msgstr "下載評論?" -#: judge/forms.py:99 +#: judge/forms.py:100 msgid "Download submissions?" msgstr "下載提交紀錄?" -#: judge/forms.py:100 +#: judge/forms.py:101 msgid "Filter by problem code glob:" msgstr "" -#: judge/forms.py:104 +#: judge/forms.py:105 msgid "Leave empty to include all submissions" msgstr "" -#: judge/forms.py:107 templates/problem/manage_submission.html:142 +#: judge/forms.py:108 templates/problem/manage_submission.html:144 msgid "Filter by result:" msgstr "" -#: judge/forms.py:113 +#: judge/forms.py:114 msgid "Please select at least one thing to download." msgstr "" -#: judge/forms.py:139 +#: judge/forms.py:140 msgid "Any judge" msgstr "任何評測伺服器" -#: judge/forms.py:160 judge/views/register.py:25 +#: judge/forms.py:161 judge/views/register.py:25 #: templates/problem/submission-diff.html:63 -#: templates/registration/registration_form.html:143 -#: templates/user/base-users-table.html:5 +#: templates/registration/registration_form.html:139 +#: templates/user/base-users-table.html:6 msgid "Username" msgstr "使用者名稱" -#: judge/forms.py:161 templates/registration/registration_form.html:155 -#: templates/registration/registration_form.html:169 +#: judge/forms.py:162 templates/registration/registration_form.html:151 +#: templates/registration/registration_form.html:165 msgid "Password" msgstr "密碼" -#: judge/forms.py:193 +#: judge/forms.py:194 msgid "Invalid code length." msgstr "" -#: judge/forms.py:224 +#: judge/forms.py:225 msgid "Invalid WebAuthn response." msgstr "" -#: judge/forms.py:227 +#: judge/forms.py:228 msgid "No WebAuthn challenge issued." msgstr "" -#: judge/forms.py:233 +#: judge/forms.py:234 msgid "Invalid WebAuthn credential ID." msgstr "" -#: judge/forms.py:263 +#: judge/forms.py:264 msgid "Invalid two-factor authentication token or scratch code." msgstr "" -#: judge/forms.py:267 +#: judge/forms.py:268 msgid "Must specify either totp_token or webauthn_response." msgstr "" -#: judge/forms.py:271 judge/models/problem.py:118 +#: judge/forms.py:272 judge/models/problem.py:118 msgid "Problem code must be ^[a-z0-9]+$" msgstr "" -#: judge/forms.py:276 +#: judge/forms.py:277 msgid "Problem with code already exists." msgstr "此題目代號已經存在。" -#: judge/forms.py:281 judge/models/contest.py:68 +#: judge/forms.py:282 judge/models/contest.py:68 msgid "Contest id must be ^[a-z0-9]+$" msgstr "" -#: judge/forms.py:286 +#: judge/forms.py:287 msgid "Contest with key already exists." msgstr "" @@ -736,26 +737,42 @@ msgstr "在{time}" msgid "Unrated" msgstr "" -#: judge/models/choices.py:59 +#: judge/models/choices.py:24 +msgid "Follow site theme" +msgstr "" + +#: judge/models/choices.py:60 msgid "Leave as LaTeX" msgstr "以LaTeX顯示" -#: judge/models/choices.py:60 +#: judge/models/choices.py:61 msgid "SVG only" msgstr "" -#: judge/models/choices.py:61 +#: judge/models/choices.py:62 msgid "MathML only" msgstr "" -#: judge/models/choices.py:62 +#: judge/models/choices.py:63 msgid "MathJax with SVG fallback" msgstr "" -#: judge/models/choices.py:63 +#: judge/models/choices.py:64 msgid "Detect best quality" msgstr "" +#: judge/models/choices.py:70 +msgid "Follow system default" +msgstr "" + +#: judge/models/choices.py:71 +msgid "Light" +msgstr "" + +#: judge/models/choices.py:72 +msgid "Dark" +msgstr "" + #: judge/models/comment.py:25 msgid "Page code must be ^[pcs]:[a-z0-9]+$|^b:\\d+$" msgstr "" @@ -1868,7 +1885,7 @@ msgid "Non-trailing spaces" msgstr "" #: judge/models/problem_data.py:28 -msgid "Unordered" +msgid "Sorted" msgstr "" #: judge/models/problem_data.py:29 @@ -2040,7 +2057,7 @@ msgid "Edit all organizations" msgstr "" #: judge/models/profile.py:98 judge/models/profile.py:103 -#: judge/models/profile.py:160 judge/models/profile.py:363 +#: judge/models/profile.py:161 judge/models/profile.py:379 msgid "organization" msgstr "組織" @@ -2081,7 +2098,7 @@ msgstr "" msgid "%(class)s in %(organization)s" msgstr "" -#: judge/models/profile.py:142 judge/models/profile.py:371 +#: judge/models/profile.py:142 judge/models/profile.py:387 msgid "class" msgstr "" @@ -2106,26 +2123,30 @@ msgid "Ace theme" msgstr "" #: judge/models/profile.py:158 -msgid "last access time" +msgid "site theme" msgstr "" #: judge/models/profile.py:159 +msgid "last access time" +msgstr "" + +#: judge/models/profile.py:160 msgid "last IP" msgstr "上一訪問 IP" -#: judge/models/profile.py:162 +#: judge/models/profile.py:163 msgid "display rank" msgstr "顯示排名" -#: judge/models/profile.py:164 +#: judge/models/profile.py:165 msgid "Normal User" msgstr "" -#: judge/models/profile.py:165 +#: judge/models/profile.py:166 msgid "Problem Setter" msgstr "" -#: judge/models/profile.py:166 templates/base.html:211 +#: judge/models/profile.py:167 templates/base.html:221 #: templates/comments/list.html:97 templates/contest/contest-list-tabs.html:25 #: templates/contest/ranking-table.html:51 #: templates/problem/problem-list-tabs.html:6 @@ -2135,200 +2156,200 @@ msgstr "" msgid "Admin" msgstr "管理員" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "comment mute" msgstr "" -#: judge/models/profile.py:167 +#: judge/models/profile.py:168 msgid "Some users are at their best when silent." msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "unlisted user" msgstr "" -#: judge/models/profile.py:169 +#: judge/models/profile.py:170 msgid "User will not be ranked." msgstr "" -#: judge/models/profile.py:172 +#: judge/models/profile.py:173 msgid "banned from voting on problem point values" msgstr "" -#: judge/models/profile.py:173 +#: judge/models/profile.py:174 msgid "User will not be able to vote on problems' point values." msgstr "" -#: judge/models/profile.py:177 +#: judge/models/profile.py:178 msgid "user script" msgstr "" -#: judge/models/profile.py:178 +#: judge/models/profile.py:179 msgid "User-defined JavaScript for site customization." msgstr "" -#: judge/models/profile.py:179 +#: judge/models/profile.py:180 msgid "current contest" msgstr "目前競賽" -#: judge/models/profile.py:181 +#: judge/models/profile.py:182 msgid "math engine" msgstr "" -#: judge/models/profile.py:183 +#: judge/models/profile.py:184 msgid "The rendering engine used to render math." msgstr "" -#: judge/models/profile.py:184 +#: judge/models/profile.py:185 msgid "TOTP 2FA enabled" msgstr "" -#: judge/models/profile.py:185 +#: judge/models/profile.py:186 msgid "Check to enable TOTP-based two-factor authentication." msgstr "" -#: judge/models/profile.py:186 +#: judge/models/profile.py:187 msgid "WebAuthn 2FA enabled" msgstr "" -#: judge/models/profile.py:187 +#: judge/models/profile.py:188 msgid "Check to enable WebAuthn-based two-factor authentication." msgstr "" -#: judge/models/profile.py:188 +#: judge/models/profile.py:189 msgid "TOTP key" msgstr "" -#: judge/models/profile.py:189 +#: judge/models/profile.py:190 msgid "32-character Base32-encoded key for TOTP." msgstr "" -#: judge/models/profile.py:191 +#: judge/models/profile.py:192 msgid "TOTP key must be empty or Base32." msgstr "" -#: judge/models/profile.py:192 +#: judge/models/profile.py:193 msgid "scratch codes" msgstr "" -#: judge/models/profile.py:193 +#: judge/models/profile.py:194 msgid "JSON array of 16-character Base32-encoded codes for scratch codes." msgstr "含有16字符的32進制代碼的JSON數組。" -#: judge/models/profile.py:197 +#: judge/models/profile.py:198 msgid "Scratch codes must be empty or a JSON array of 16-character Base32 codes." msgstr "一次性代碼必須是空的或者是一個含有32進制代碼的JSON數組。" -#: judge/models/profile.py:199 +#: judge/models/profile.py:200 msgid "last TOTP timecode" msgstr "" -#: judge/models/profile.py:200 +#: judge/models/profile.py:201 msgid "API token" msgstr "API 令牌" -#: judge/models/profile.py:201 +#: judge/models/profile.py:202 msgid "64-character hex-encoded API access token." msgstr "" -#: judge/models/profile.py:203 +#: judge/models/profile.py:204 msgid "API token must be None or hexadecimal" msgstr "" -#: judge/models/profile.py:204 +#: judge/models/profile.py:205 msgid "internal notes" msgstr "" -#: judge/models/profile.py:205 +#: judge/models/profile.py:206 msgid "Notes for administrators regarding this user." msgstr "" -#: judge/models/profile.py:206 +#: judge/models/profile.py:207 msgid "last data download time" msgstr "" -#: judge/models/profile.py:207 +#: judge/models/profile.py:208 msgid "display name override" msgstr "" -#: judge/models/profile.py:208 +#: judge/models/profile.py:209 msgid "Name displayed in place of username." msgstr "" -#: judge/models/profile.py:323 +#: judge/models/profile.py:333 msgid "Shows in-progress development stuff" msgstr "" -#: judge/models/profile.py:324 +#: judge/models/profile.py:334 msgid "Edit TOTP settings" msgstr "" -#: judge/models/profile.py:326 +#: judge/models/profile.py:336 msgid "user profile" msgstr "使用者個人檔案" -#: judge/models/profile.py:327 +#: judge/models/profile.py:337 msgid "user profiles" msgstr "使用者個人檔案" -#: judge/models/profile.py:333 +#: judge/models/profile.py:349 msgid "device name" msgstr "" -#: judge/models/profile.py:334 +#: judge/models/profile.py:350 msgid "credential ID" msgstr "" -#: judge/models/profile.py:335 +#: judge/models/profile.py:351 msgid "public key" msgstr "" -#: judge/models/profile.py:336 +#: judge/models/profile.py:352 msgid "sign counter" msgstr "" -#: judge/models/profile.py:354 +#: judge/models/profile.py:370 #, python-format msgid "WebAuthn credential: %(name)s" msgstr "" -#: judge/models/profile.py:357 +#: judge/models/profile.py:373 msgid "WebAuthn credential" msgstr "" -#: judge/models/profile.py:358 +#: judge/models/profile.py:374 msgid "WebAuthn credentials" msgstr "" -#: judge/models/profile.py:365 +#: judge/models/profile.py:381 msgid "request time" msgstr "" -#: judge/models/profile.py:366 +#: judge/models/profile.py:382 msgid "state" msgstr "狀態" -#: judge/models/profile.py:367 templates/organization/requests/tabs.html:4 +#: judge/models/profile.py:383 templates/organization/requests/tabs.html:4 msgid "Pending" msgstr "待確認" -#: judge/models/profile.py:368 templates/organization/requests/tabs.html:10 +#: judge/models/profile.py:384 templates/organization/requests/tabs.html:10 msgid "Approved" msgstr "已批准" -#: judge/models/profile.py:369 templates/organization/requests/tabs.html:13 +#: judge/models/profile.py:385 templates/organization/requests/tabs.html:13 msgid "Rejected" msgstr "已拒絕" -#: judge/models/profile.py:372 +#: judge/models/profile.py:388 msgid "reason" msgstr "原因" -#: judge/models/profile.py:381 +#: judge/models/profile.py:397 msgid "organization join request" msgstr "" -#: judge/models/profile.py:382 +#: judge/models/profile.py:398 msgid "organization join requests" msgstr "" @@ -2571,15 +2592,15 @@ msgstr "" msgid "submission time" msgstr "提交時間" -#: judge/models/submission.py:70 judge/models/submission.py:255 +#: judge/models/submission.py:70 judge/models/submission.py:265 msgid "execution time" msgstr "執行時間" -#: judge/models/submission.py:71 judge/models/submission.py:256 +#: judge/models/submission.py:71 judge/models/submission.py:266 msgid "memory usage" msgstr "記憶體使用量" -#: judge/models/submission.py:72 judge/models/submission.py:257 +#: judge/models/submission.py:72 judge/models/submission.py:267 msgid "points granted" msgstr "獲得分數" @@ -2668,60 +2689,60 @@ msgstr "" msgid "submissions" msgstr "" -#: judge/models/submission.py:235 judge/models/submission.py:251 +#: judge/models/submission.py:245 judge/models/submission.py:261 msgid "associated submission" msgstr "" -#: judge/models/submission.py:237 +#: judge/models/submission.py:247 msgid "source code" msgstr "源碼" -#: judge/models/submission.py:240 +#: judge/models/submission.py:250 #, python-format msgid "Source of %(submission)s" msgstr "" -#: judge/models/submission.py:243 +#: judge/models/submission.py:253 msgid "submission source" msgstr "" -#: judge/models/submission.py:244 +#: judge/models/submission.py:254 msgid "submission sources" msgstr "" -#: judge/models/submission.py:253 +#: judge/models/submission.py:263 msgid "test case ID" msgstr "" -#: judge/models/submission.py:254 +#: judge/models/submission.py:264 msgid "status flag" msgstr "" -#: judge/models/submission.py:258 +#: judge/models/submission.py:268 msgid "points possible" msgstr "" -#: judge/models/submission.py:259 +#: judge/models/submission.py:269 msgid "batch number" msgstr "" -#: judge/models/submission.py:260 +#: judge/models/submission.py:270 msgid "judging feedback" msgstr "" -#: judge/models/submission.py:261 +#: judge/models/submission.py:271 msgid "extended judging feedback" msgstr "" -#: judge/models/submission.py:262 +#: judge/models/submission.py:272 msgid "program output" msgstr "" -#: judge/models/submission.py:276 +#: judge/models/submission.py:286 msgid "submission test case" msgstr "" -#: judge/models/submission.py:277 +#: judge/models/submission.py:287 msgid "submission test cases" msgstr "" @@ -2936,7 +2957,7 @@ msgctxt "hours and minutes" msgid "%h:%m" msgstr "%h:%m" -#: judge/views/blog.py:36 +#: judge/views/blog.py:37 #, python-format msgid "Page %d of Posts" msgstr "" @@ -3420,11 +3441,11 @@ msgstr "由於濫用歷史,我們不允許您的電子郵件提供商。請使 msgid "Register" msgstr "註冊" -#: judge/views/register.py:103 +#: judge/views/register.py:101 msgid "Activation Key Invalid" msgstr "" -#: judge/views/register.py:114 +#: judge/views/register.py:112 msgid "Authentication failure" msgstr "" @@ -3436,7 +3457,7 @@ msgstr "" msgid "Language statistics" msgstr "" -#: judge/views/status.py:23 templates/submission/list.html:308 +#: judge/views/status.py:23 templates/submission/list.html:310 msgid "Status" msgstr "狀態" @@ -3619,41 +3640,45 @@ msgstr "" msgid "Preparing your data..." msgstr "" -#: judge/views/user.py:298 templates/user/edit-profile.html:345 +#: judge/views/user.py:298 templates/user/edit-profile.html:344 msgid "Download your data" msgstr "" +#: judge/views/user.py:347 +msgid "Can't edit profile" +msgstr "" + #: judge/views/user.py:354 msgid "Updated on site" msgstr "" -#: judge/views/user.py:387 templates/admin/auth/user/change_form.html:14 -#: templates/admin/auth/user/change_form.html:17 templates/base.html:213 +#: judge/views/user.py:386 templates/admin/auth/user/change_form.html:14 +#: templates/admin/auth/user/change_form.html:17 templates/base.html:223 #: templates/user/user-tabs.html:16 msgid "Edit profile" msgstr "" -#: judge/views/user.py:402 +#: judge/views/user.py:400 msgid "Generated API token for user" msgstr "" -#: judge/views/user.py:414 +#: judge/views/user.py:412 msgid "Removed API token for user" msgstr "" -#: judge/views/user.py:424 +#: judge/views/user.py:422 msgid "Generated scratch codes for user" msgstr "" -#: judge/views/user.py:430 templates/user/user-list-tabs.html:4 +#: judge/views/user.py:428 templates/user/user-list-tabs.html:4 msgid "Leaderboard" msgstr "" -#: judge/views/user.py:491 +#: judge/views/user.py:489 msgid "You have been successfully logged out." msgstr "您已成功登出。" -#: judge/views/user.py:508 +#: judge/views/user.py:506 msgid "You have sent too many password reset requests. Please try again later." msgstr "" @@ -3682,13 +3707,13 @@ msgstr "終止" #: templates/admin/judge/judge/change_form.html:27 #: templates/admin/judge/judge/change_form.html:30 -#: templates/user/edit-profile.html:355 templates/user/edit-profile.html:358 +#: templates/user/edit-profile.html:372 templates/user/edit-profile.html:375 msgid "Disable" msgstr "禁用" #: templates/admin/judge/judge/change_form.html:33 #: templates/admin/judge/judge/change_form.html:36 -#: templates/user/edit-profile.html:386 +#: templates/user/edit-profile.html:403 msgid "Enable" msgstr "啟用" @@ -3708,48 +3733,48 @@ msgstr "" msgid "Edit user" msgstr "" -#: templates/base.html:206 +#: templates/base.html:216 #, python-format msgid "Hello, %(username)s." msgstr "" -#: templates/base.html:215 +#: templates/base.html:225 msgid "Stop impersonating" msgstr "" -#: templates/base.html:220 +#: templates/base.html:230 msgid "Log out" msgstr "登出" -#: templates/base.html:229 +#: templates/base.html:239 #: templates/registration/password_reset_complete.html:4 msgid "Log in" msgstr "登錄" -#: templates/base.html:230 templates/registration/registration_form.html:181 +#: templates/base.html:240 templates/registration/registration_form.html:177 msgid "or" msgstr "或" -#: templates/base.html:231 +#: templates/base.html:241 msgid "Sign up" msgstr "註冊" -#: templates/base.html:243 +#: templates/base.html:253 msgid "spectating" msgstr "" -#: templates/base.html:256 +#: templates/base.html:266 msgid "This site works best with JavaScript enabled." msgstr "" -#: templates/base.html:283 +#: templates/base.html:293 msgid "proudly powered by **DMOJ**" msgstr "" #: templates/blog/content.html:13 templates/comments/list.html:89 #: templates/comments/list.html:105 templates/contest/contest-tabs.html:23 #: templates/contest/tag-title.html:9 templates/flatpages/admin_link.html:3 -#: templates/license.html:10 templates/problem/data.html:423 +#: templates/license.html:10 templates/problem/data.html:424 #: templates/problem/editorial.html:14 msgid "Edit" msgstr "編輯" @@ -3950,15 +3975,15 @@ msgstr "得分" msgid "No votes" msgstr "" -#: templates/common-content.html:32 templates/user/edit-profile.html:219 +#: templates/common-content.html:32 templates/user/edit-profile.html:214 msgid "Click to copy" msgstr "" -#: templates/common-content.html:33 templates/user/edit-profile.html:220 +#: templates/common-content.html:33 templates/user/edit-profile.html:215 msgid "Copy" msgstr "" -#: templates/common-content.html:44 templates/user/edit-profile.html:231 +#: templates/common-content.html:44 templates/user/edit-profile.html:226 msgid "Copied!" msgstr "" @@ -4039,7 +4064,7 @@ msgstr "" msgid "Info" msgstr "資訊" -#: templates/contest/contest-tabs.html:6 templates/submission/list.html:334 +#: templates/contest/contest-tabs.html:6 templates/submission/list.html:336 msgid "Statistics" msgstr "統計資料" @@ -4251,7 +4276,7 @@ msgstr "AC率" #: templates/contest/contest.html:198 templates/contest/list.html:152 #: templates/contest/list.html:194 templates/contest/list.html:271 -#: templates/problem/list.html:203 templates/problem/list.html:235 +#: templates/problem/list.html:194 templates/problem/list.html:226 msgid "Users" msgstr "用戶" @@ -4259,7 +4284,7 @@ msgstr "用戶" msgid "Editorials" msgstr "" -#: templates/contest/contest.html:226 templates/problem/list.html:229 +#: templates/contest/contest.html:226 templates/problem/list.html:220 msgid "Editorial" msgstr "" @@ -4423,19 +4448,19 @@ msgstr "" msgid "Disqualify" msgstr "" -#: templates/contest/ranking.html:151 +#: templates/contest/ranking.html:46 msgid "Are you sure you want to disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:156 +#: templates/contest/ranking.html:51 msgid "Are you sure you want to un-disqualify this participation?" msgstr "" -#: templates/contest/ranking.html:228 +#: templates/contest/ranking.html:124 msgid "View user participation" msgstr "" -#: templates/contest/ranking.html:232 +#: templates/contest/ranking.html:128 msgid "Show organizations" msgstr "" @@ -4622,7 +4647,7 @@ msgid "There are no requests to approve." msgstr "" #: templates/organization/requests/pending.html:17 -#: templates/problem/data.html:387 +#: templates/problem/data.html:388 msgid "Delete?" msgstr "刪除?" @@ -4658,59 +4683,59 @@ msgstr "" msgid "Enter a new code for the cloned problem:" msgstr "" -#: templates/problem/data.html:70 +#: templates/problem/data.html:71 msgid "precision (decimal digits)" msgstr "" -#: templates/problem/data.html:339 +#: templates/problem/data.html:340 msgid "View YAML" msgstr "" -#: templates/problem/data.html:355 +#: templates/problem/data.html:356 msgid "Show columns:" msgstr "" -#: templates/problem/data.html:358 templates/problem/data.html:382 +#: templates/problem/data.html:359 templates/problem/data.html:383 msgid "Output prefix" msgstr "" -#: templates/problem/data.html:362 templates/problem/data.html:383 +#: templates/problem/data.html:363 templates/problem/data.html:384 msgid "Output limit" msgstr "" -#: templates/problem/data.html:366 templates/problem/data.html:384 +#: templates/problem/data.html:367 templates/problem/data.html:385 msgid "Checker" msgstr "檢查器" -#: templates/problem/data.html:370 templates/problem/data.html:385 +#: templates/problem/data.html:371 templates/problem/data.html:386 msgid "Generator args" msgstr "" -#: templates/problem/data.html:377 +#: templates/problem/data.html:378 msgid "Type" msgstr "類型" -#: templates/problem/data.html:378 +#: templates/problem/data.html:379 msgid "Input file" msgstr "" -#: templates/problem/data.html:379 +#: templates/problem/data.html:380 msgid "Output file" msgstr "" -#: templates/problem/data.html:381 +#: templates/problem/data.html:382 msgid "Pretest?" msgstr "" -#: templates/problem/data.html:433 templates/problem/submit.html:256 +#: templates/problem/data.html:434 templates/problem/submit.html:190 msgid "Submit!" msgstr "提交!" -#: templates/problem/data.html:434 +#: templates/problem/data.html:435 msgid "Add new case" msgstr "" -#: templates/problem/data.html:436 +#: templates/problem/data.html:437 msgid "Save" msgstr "" @@ -4727,98 +4752,98 @@ msgid "Author:" msgid_plural "Authors:" msgstr[0] "作者:" -#: templates/problem/list.html:58 +#: templates/problem/list.html:49 msgid "Filter by type..." msgstr "" -#: templates/problem/list.html:176 +#: templates/problem/list.html:167 msgid "Hot problems" msgstr "" -#: templates/problem/list.html:198 templates/problem/list.html:216 +#: templates/problem/list.html:189 templates/problem/list.html:207 #: templates/problem/search-form.html:35 templates/user/user-problems.html:59 msgid "Category" msgstr "分類" -#: templates/problem/list.html:200 templates/problem/list.html:220 +#: templates/problem/list.html:191 templates/problem/list.html:211 msgid "Types" msgstr "類型" -#: templates/problem/list.html:227 +#: templates/problem/list.html:218 #, python-format msgid "AC %%" msgstr "AC %%" -#: templates/problem/manage_submission.html:55 +#: templates/problem/manage_submission.html:56 msgid "Leave empty to not filter by language" msgstr "" -#: templates/problem/manage_submission.html:60 +#: templates/problem/manage_submission.html:62 msgid "Leave empty to not filter by result" msgstr "" -#: templates/problem/manage_submission.html:79 +#: templates/problem/manage_submission.html:81 msgid "Need valid values for both start and end IDs." msgstr "" -#: templates/problem/manage_submission.html:82 +#: templates/problem/manage_submission.html:84 msgid "End ID must be after start ID." msgstr "" -#: templates/problem/manage_submission.html:90 +#: templates/problem/manage_submission.html:92 #, python-brace-format msgid "You are about to rejudge {count} submissions. Are you sure you want to do this?" msgstr "您將重新評分{count}提交,是否確認?" -#: templates/problem/manage_submission.html:96 +#: templates/problem/manage_submission.html:98 msgid "You are about to rejudge a few submissions. Are you sure you want to do this?" msgstr "您將重新評分一些提交,是否確認?" -#: templates/problem/manage_submission.html:115 +#: templates/problem/manage_submission.html:117 msgid "Rejudge Submissions" msgstr "重新評測提交紀錄" -#: templates/problem/manage_submission.html:120 +#: templates/problem/manage_submission.html:122 msgid "Filter by ID:" msgstr "" -#: templates/problem/manage_submission.html:123 +#: templates/problem/manage_submission.html:125 msgid "Starting ID:" msgstr "" -#: templates/problem/manage_submission.html:127 +#: templates/problem/manage_submission.html:129 msgid "Ending ID:" msgstr "" -#: templates/problem/manage_submission.html:131 +#: templates/problem/manage_submission.html:133 msgid "This range includes both endpoints." msgstr "" -#: templates/problem/manage_submission.html:134 +#: templates/problem/manage_submission.html:136 msgid "Filter by language:" msgstr "" -#: templates/problem/manage_submission.html:150 +#: templates/problem/manage_submission.html:152 msgid "Rejudge selected submissions" msgstr "重新評測選取的提交紀錄" -#: templates/problem/manage_submission.html:157 +#: templates/problem/manage_submission.html:159 msgid "Rescore Everything" msgstr "" -#: templates/problem/manage_submission.html:158 +#: templates/problem/manage_submission.html:160 #, python-format msgid "This will rescore %(count)s submission." msgid_plural "This will rescore %(count)s submissions." msgstr[0] "" -#: templates/problem/manage_submission.html:166 +#: templates/problem/manage_submission.html:168 #, python-format msgid "Are you sure you want to rescore %(count)s submission?" msgid_plural "Are you sure you want to rescore %(count)s submissions?" msgstr[0] "" -#: templates/problem/manage_submission.html:171 +#: templates/problem/manage_submission.html:173 msgid "Rescore all submissions" msgstr "" @@ -4978,8 +5003,8 @@ msgstr "題目類型" msgid "Point range" msgstr "" -#: templates/problem/search-form.html:68 templates/submission/list.html:326 -#: templates/ticket/list.html:188 +#: templates/problem/search-form.html:68 templates/submission/list.html:328 +#: templates/ticket/list.html:189 msgid "Go" msgstr "搜索" @@ -4988,7 +5013,7 @@ msgid "Random" msgstr "隨機" #: templates/problem/submission-diff.html:62 -#: templates/status/language-list.html:34 templates/ticket/list.html:199 +#: templates/status/language-list.html:34 templates/ticket/list.html:200 msgid "ID" msgstr "ID" @@ -5000,30 +5025,30 @@ msgstr "結果" msgid "Date" msgstr "日期" -#: templates/problem/submit.html:117 +#: templates/problem/submit.html:118 msgid "Your source code must contain at most 65536 characters." msgstr "" -#: templates/problem/submit.html:204 +#: templates/problem/submit.html:138 msgid "Warning!" msgstr "警告!" -#: templates/problem/submit.html:205 +#: templates/problem/submit.html:139 #, python-format msgid "Your default language, %(language)s, is unavailable for this problem and has been deselected." msgstr "您的默認編程語言,%(language)s,在此題目不可用,且已取消選擇。" -#: templates/problem/submit.html:213 +#: templates/problem/submit.html:147 #, python-format msgid "You have %(left)s submission left" msgid_plural "You have %(left)s submissions left" msgstr[0] "" -#: templates/problem/submit.html:218 +#: templates/problem/submit.html:152 msgid "You have 0 submissions left" msgstr "" -#: templates/problem/submit.html:252 +#: templates/problem/submit.html:186 msgid "No judge is available for this problem." msgstr "此題目目前沒有可用的評測伺服器。" @@ -5229,7 +5254,7 @@ msgstr "" msgid "Password reset on %(site_name)s" msgstr "" -#: templates/registration/profile_creation.html:44 +#: templates/registration/profile_creation.html:38 #: templates/registration/username_select.html:7 msgid "Continue >" msgstr "繼續 》" @@ -5242,36 +5267,36 @@ msgstr "" msgid "You have successfully been registered. An email has been sent to the email address you provided to confirm your registration." msgstr "您已成功註冊。一封電子郵件已被發送到的您的電子郵件地址以確認您的註冊。" -#: templates/registration/registration_form.html:170 +#: templates/registration/registration_form.html:166 msgid "(again, for confirmation)" msgstr "" -#: templates/registration/registration_form.html:177 +#: templates/registration/registration_form.html:173 msgid "(select your closest major city)" msgstr "" -#: templates/registration/registration_form.html:182 +#: templates/registration/registration_form.html:178 msgid "pick from map" msgstr "" -#: templates/registration/registration_form.html:187 +#: templates/registration/registration_form.html:183 msgid "Default language" msgstr "" -#: templates/registration/registration_form.html:190 +#: templates/registration/registration_form.html:186 msgid "Affiliated organizations" msgstr "" -#: templates/registration/registration_form.html:199 -#: templates/user/edit-profile.html:322 +#: templates/registration/registration_form.html:195 +#: templates/user/edit-profile.html:321 msgid "Notify me about upcoming contests" msgstr "" -#: templates/registration/registration_form.html:213 +#: templates/registration/registration_form.html:209 msgid "By registering, you agree to our [Terms & Conditions][0]." msgstr "" -#: templates/registration/registration_form.html:216 +#: templates/registration/registration_form.html:212 msgid "Register!" msgstr "" @@ -5313,17 +5338,17 @@ msgid "Enable Two Factor Authentication" msgstr "" #: templates/registration/totp_enable.html:98 -#: templates/user/edit-profile.html:374 +#: templates/user/edit-profile.html:391 msgid "Below is a list of one-time use scratch codes." msgstr "" #: templates/registration/totp_enable.html:99 -#: templates/user/edit-profile.html:375 +#: templates/user/edit-profile.html:392 msgid "These codes can only be used once and are for emergency use." msgstr "" #: templates/registration/totp_enable.html:100 -#: templates/user/edit-profile.html:376 +#: templates/user/edit-profile.html:393 msgid "You can use these codes to login to your account or disable two-factor authentication." msgstr "" @@ -5332,7 +5357,7 @@ msgid "If you ever need more scratch codes, you can regenerate them on the edit msgstr "" #: templates/registration/totp_enable.html:102 -#: templates/user/edit-profile.html:378 +#: templates/user/edit-profile.html:395 msgid "Please write these down and keep them in a secure location." msgstr "" @@ -5350,12 +5375,12 @@ msgid "If you lose your authentication device and are unable to use your scratch msgstr "" #: templates/registration/two_factor_auth.html:33 -#: templates/user/edit-profile.html:164 +#: templates/user/edit-profile.html:159 msgid "WebAuthn is not supported by your browser." msgstr "" #: templates/registration/two_factor_auth.html:54 -#: templates/user/edit-profile.html:188 +#: templates/user/edit-profile.html:183 msgid "Failed to contact server." msgstr "" @@ -5453,23 +5478,23 @@ msgstr "" msgid "Are you sure you want to rejudge?" msgstr "" -#: templates/submission/list.html:74 +#: templates/submission/list.html:75 msgid "Filter by status..." msgstr "" -#: templates/submission/list.html:80 +#: templates/submission/list.html:82 msgid "Filter by language..." msgstr "" -#: templates/submission/list.html:304 +#: templates/submission/list.html:306 msgid "Filter submissions" msgstr "" -#: templates/submission/list.html:340 +#: templates/submission/list.html:342 msgid "Total:" msgstr "總計:" -#: templates/submission/list.html:350 +#: templates/submission/list.html:352 msgid "You were disconnected. Refresh to show latest updates." msgstr "" @@ -5633,32 +5658,32 @@ msgstr "" msgid "Closed: " msgstr "" -#: templates/ticket/list.html:156 +#: templates/ticket/list.html:157 msgid "Use desktop notification" msgstr "" -#: templates/ticket/list.html:162 +#: templates/ticket/list.html:163 msgid "Hide closed tickets" msgstr "" -#: templates/ticket/list.html:167 +#: templates/ticket/list.html:168 msgid "Show my tickets only" msgstr "" -#: templates/ticket/list.html:171 +#: templates/ticket/list.html:172 msgid "Filing user" msgstr "" -#: templates/ticket/list.html:180 templates/ticket/ticket.html:196 +#: templates/ticket/list.html:181 templates/ticket/ticket.html:196 msgid "Assignee" msgid_plural "Assignees" msgstr[0] "" -#: templates/ticket/list.html:200 +#: templates/ticket/list.html:201 msgid "Title" msgstr "標題" -#: templates/ticket/list.html:202 +#: templates/ticket/list.html:203 msgid "Assignees" msgstr "" @@ -5709,131 +5734,135 @@ msgstr "" msgid "Nothing here." msgstr "" -#: templates/user/base-users-table.html:3 +#: templates/user/base-users-table.html:4 msgid "Rank" msgstr "排名" -#: templates/user/base-users.html:14 templates/user/base-users.html:57 +#: templates/user/base-users.html:15 templates/user/base-users.html:58 msgid "Search by handle..." msgstr "" -#: templates/user/edit-profile.html:107 +#: templates/user/edit-profile.html:102 msgid "The administrators for this site require all the staff to have Two-factor Authentication enabled, so it may not be disabled at this time." msgstr "" -#: templates/user/edit-profile.html:112 +#: templates/user/edit-profile.html:107 msgid "Are you sure you want to generate or regenerate your API token?" msgstr "" -#: templates/user/edit-profile.html:113 +#: templates/user/edit-profile.html:108 msgid "This will invalidate any previous API tokens." msgstr "" -#: templates/user/edit-profile.html:114 +#: templates/user/edit-profile.html:109 msgid "It also allows access to your account without Two-factor Authentication." msgstr "" -#: templates/user/edit-profile.html:115 +#: templates/user/edit-profile.html:110 msgid "You will not be able to view your API token after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:116 templates/user/edit-profile.html:210 +#: templates/user/edit-profile.html:111 templates/user/edit-profile.html:205 msgid "Generating..." msgstr "" -#: templates/user/edit-profile.html:130 templates/user/edit-profile.html:398 +#: templates/user/edit-profile.html:125 templates/user/edit-profile.html:355 msgid "Remove" msgstr "刪除" -#: templates/user/edit-profile.html:140 +#: templates/user/edit-profile.html:135 msgid "Are you sure you want to remove your API token?" msgstr "" -#: templates/user/edit-profile.html:147 templates/user/edit-profile.html:370 -#: templates/user/edit-profile.html:402 +#: templates/user/edit-profile.html:142 templates/user/edit-profile.html:359 +#: templates/user/edit-profile.html:387 msgid "Generate" msgstr "" -#: templates/user/edit-profile.html:193 +#: templates/user/edit-profile.html:188 msgid "Are you sure you want to delete this security key?" msgstr "" -#: templates/user/edit-profile.html:207 +#: templates/user/edit-profile.html:202 msgid "Are you sure you want to generate or regenerate a new set of scratch codes?" msgstr "" -#: templates/user/edit-profile.html:208 +#: templates/user/edit-profile.html:203 msgid "This will invalidate any previous scratch codes you have." msgstr "" -#: templates/user/edit-profile.html:209 templates/user/edit-profile.html:379 +#: templates/user/edit-profile.html:204 templates/user/edit-profile.html:396 msgid "You will not be able to view your scratch codes after you leave this page!" msgstr "" -#: templates/user/edit-profile.html:278 +#: templates/user/edit-profile.html:273 msgid "Self-description:" msgstr "" -#: templates/user/edit-profile.html:285 +#: templates/user/edit-profile.html:280 msgid "Select your closest major city" msgstr "" -#: templates/user/edit-profile.html:286 +#: templates/user/edit-profile.html:281 msgid "Time zone:" msgstr "時區:" -#: templates/user/edit-profile.html:290 +#: templates/user/edit-profile.html:285 msgid "Language:" msgstr "語言:" -#: templates/user/edit-profile.html:294 +#: templates/user/edit-profile.html:289 +msgid "Site theme:" +msgstr "" + +#: templates/user/edit-profile.html:293 msgid "Editor theme:" msgstr "編輯器主題:" -#: templates/user/edit-profile.html:299 +#: templates/user/edit-profile.html:298 msgid "Math engine:" msgstr "" -#: templates/user/edit-profile.html:308 +#: templates/user/edit-profile.html:307 msgid "Affiliated organizations:" msgstr "" -#: templates/user/edit-profile.html:334 +#: templates/user/edit-profile.html:333 msgid "Change your avatar" msgstr "" -#: templates/user/edit-profile.html:339 +#: templates/user/edit-profile.html:338 msgid "Change your password" msgstr "" -#: templates/user/edit-profile.html:352 -msgid "Two-factor Authentication is enabled:" +#: templates/user/edit-profile.html:350 +msgid "API token:" +msgstr "API令牌:" + +#: templates/user/edit-profile.html:356 templates/user/edit-profile.html:384 +msgid "Hidden" +msgstr "隱藏" + +#: templates/user/edit-profile.html:369 +msgid "Two-factor authentication is enabled:" msgstr "" -#: templates/user/edit-profile.html:360 +#: templates/user/edit-profile.html:377 msgid "Refresh" msgstr "" -#: templates/user/edit-profile.html:363 +#: templates/user/edit-profile.html:380 msgid "Scratch codes:" msgstr "" -#: templates/user/edit-profile.html:367 templates/user/edit-profile.html:399 -msgid "Hidden" -msgstr "隱藏" - -#: templates/user/edit-profile.html:377 +#: templates/user/edit-profile.html:394 msgid "If you ever need more scratch codes, you can regenerate them here." msgstr "" -#: templates/user/edit-profile.html:385 +#: templates/user/edit-profile.html:402 msgid "Two-factor Authentication is disabled:" msgstr "" -#: templates/user/edit-profile.html:393 -msgid "API token:" -msgstr "API令牌:" - #: templates/user/edit-profile.html:410 msgid "Security keys:" msgstr "" diff --git a/locale/zh_Hant/LC_MESSAGES/djangojs.po b/locale/zh_Hant/LC_MESSAGES/djangojs.po index 229a6274a8..780ace894e 100644 --- a/locale/zh_Hant/LC_MESSAGES/djangojs.po +++ b/locale/zh_Hant/LC_MESSAGES/djangojs.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dmoj\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-20 23:43+0000\n" -"PO-Revision-Date: 2022-12-21 00:43\n" +"POT-Creation-Date: 2023-01-23 05:23+0000\n" +"PO-Revision-Date: 2023-01-24 00:51\n" "Last-Translator: \n" "Language-Team: Chinese Traditional\n" "Language: zh_TW\n" @@ -17,13 +17,13 @@ msgstr "" "X-Crowdin-File: djangojs.po\n" "X-Crowdin-File-ID: 12\n" -#: resources/common.js:195 +#: resources/common.js:194 msgctxt "time format with day" msgid "%d day %h:%m:%s" msgid_plural "%d days %h:%m:%s" msgstr[0] "%d 天 %h:%m:%s" -#: resources/common.js:198 +#: resources/common.js:197 msgctxt "time format without day" msgid "%h:%m:%s" msgstr "%h:%m:%s"