Some css
This commit is contained in:
parent
7a05ad1c3b
commit
fcbf74ca97
6 changed files with 70 additions and 55 deletions
|
@ -2,7 +2,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: lqdoj2\n"
|
"Project-Id-Version: lqdoj2\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2023-10-28 04:45+0700\n"
|
"POT-Creation-Date: 2023-11-01 13:59+0700\n"
|
||||||
"PO-Revision-Date: 2021-07-20 03:44\n"
|
"PO-Revision-Date: 2021-07-20 03:44\n"
|
||||||
"Last-Translator: Icyene\n"
|
"Last-Translator: Icyene\n"
|
||||||
"Language-Team: Vietnamese\n"
|
"Language-Team: Vietnamese\n"
|
||||||
|
@ -2605,59 +2605,59 @@ msgstr "Chỉnh sửa bài nộp"
|
||||||
msgid "Recalculating user points"
|
msgid "Recalculating user points"
|
||||||
msgstr "Tính lại điểm người dùng"
|
msgstr "Tính lại điểm người dùng"
|
||||||
|
|
||||||
#: judge/utils/problem_data.py:71
|
#: judge/utils/problem_data.py:73
|
||||||
msgid "Empty batches not allowed."
|
msgid "Empty batches not allowed."
|
||||||
msgstr "Nhóm test trống là không hợp lệ."
|
msgstr "Nhóm test trống là không hợp lệ."
|
||||||
|
|
||||||
#: judge/utils/problem_data.py:79 judge/utils/problem_data.py:87
|
#: judge/utils/problem_data.py:81 judge/utils/problem_data.py:89
|
||||||
#: judge/utils/problem_data.py:102
|
#: judge/utils/problem_data.py:104
|
||||||
msgid "How did you corrupt the custom checker path?"
|
msgid "How did you corrupt the custom checker path?"
|
||||||
msgstr "How did you corrupt the custom checker path?"
|
msgstr "How did you corrupt the custom checker path?"
|
||||||
|
|
||||||
#: judge/utils/problem_data.py:130
|
#: judge/utils/problem_data.py:132
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Points must be defined for non-batch case #%d."
|
msgid "Points must be defined for non-batch case #%d."
|
||||||
msgstr "Ô điểm số cho test #%d phải được điền."
|
msgstr "Ô điểm số cho test #%d phải được điền."
|
||||||
|
|
||||||
#: judge/utils/problem_data.py:137
|
#: judge/utils/problem_data.py:139
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Input file for case %d does not exist: %s"
|
msgid "Input file for case %d does not exist: %s"
|
||||||
msgstr "File input cho test %d không tồn tại: %s"
|
msgstr "File input cho test %d không tồn tại: %s"
|
||||||
|
|
||||||
#: judge/utils/problem_data.py:142
|
#: judge/utils/problem_data.py:144
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Output file for case %d does not exist: %s"
|
msgid "Output file for case %d does not exist: %s"
|
||||||
msgstr "File output cho test %d không tồn tại: %s"
|
msgstr "File output cho test %d không tồn tại: %s"
|
||||||
|
|
||||||
#: judge/utils/problem_data.py:169
|
#: judge/utils/problem_data.py:171
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Batch start case #%d requires points."
|
msgid "Batch start case #%d requires points."
|
||||||
msgstr "Nhóm test #%d cần được điền điểm số."
|
msgstr "Nhóm test #%d cần được điền điểm số."
|
||||||
|
|
||||||
#: judge/utils/problem_data.py:192
|
#: judge/utils/problem_data.py:194
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Attempt to end batch outside of one in case #%d"
|
msgid "Attempt to end batch outside of one in case #%d"
|
||||||
msgstr "Nhóm test #%d kết thúc không hợp lệ"
|
msgstr "Nhóm test #%d kết thúc không hợp lệ"
|
||||||
|
|
||||||
#: judge/utils/problem_data.py:211
|
#: judge/utils/problem_data.py:213
|
||||||
msgid "How did you corrupt the zip path?"
|
msgid "How did you corrupt the zip path?"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: judge/utils/problem_data.py:217
|
#: judge/utils/problem_data.py:219
|
||||||
msgid "How did you corrupt the generator path?"
|
msgid "How did you corrupt the generator path?"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: judge/utils/problem_data.py:235
|
#: judge/utils/problem_data.py:237
|
||||||
msgid "Invalid interactor judge"
|
msgid "Invalid interactor judge"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: judge/utils/problem_data.py:259
|
#: judge/utils/problem_data.py:261
|
||||||
#, fuzzy
|
#, fuzzy
|
||||||
#| msgid "Invalid Return"
|
#| msgid "Invalid Return"
|
||||||
msgid "Invalid signature handler"
|
msgid "Invalid signature handler"
|
||||||
msgstr "Invalid Return"
|
msgstr "Invalid Return"
|
||||||
|
|
||||||
#: judge/utils/problem_data.py:262
|
#: judge/utils/problem_data.py:264
|
||||||
msgid "Invalid signature header"
|
msgid "Invalid signature header"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -2759,7 +2759,7 @@ msgid "Editing comment"
|
||||||
msgstr "Chỉnh sửa bình luận"
|
msgstr "Chỉnh sửa bình luận"
|
||||||
|
|
||||||
#: judge/views/contests.py:123 judge/views/contests.py:386
|
#: judge/views/contests.py:123 judge/views/contests.py:386
|
||||||
#: judge/views/contests.py:391 judge/views/contests.py:683
|
#: judge/views/contests.py:391 judge/views/contests.py:685
|
||||||
msgid "No such contest"
|
msgid "No such contest"
|
||||||
msgstr "Không có contest nào như vậy"
|
msgstr "Không có contest nào như vậy"
|
||||||
|
|
||||||
|
@ -2785,118 +2785,118 @@ msgstr "Không tìm thấy kỳ thi nào như vậy."
|
||||||
msgid "Access to contest \"%s\" denied"
|
msgid "Access to contest \"%s\" denied"
|
||||||
msgstr "Truy cập tới kỳ thi \"%s\" bị từ chối"
|
msgstr "Truy cập tới kỳ thi \"%s\" bị từ chối"
|
||||||
|
|
||||||
#: judge/views/contests.py:466
|
#: judge/views/contests.py:468
|
||||||
msgid "Clone Contest"
|
msgid "Clone Contest"
|
||||||
msgstr "Nhân bản kỳ thi"
|
msgstr "Nhân bản kỳ thi"
|
||||||
|
|
||||||
#: judge/views/contests.py:557
|
#: judge/views/contests.py:559
|
||||||
msgid "Contest not ongoing"
|
msgid "Contest not ongoing"
|
||||||
msgstr "Kỳ thi đang không diễn ra"
|
msgstr "Kỳ thi đang không diễn ra"
|
||||||
|
|
||||||
#: judge/views/contests.py:558
|
#: judge/views/contests.py:560
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "\"%s\" is not currently ongoing."
|
msgid "\"%s\" is not currently ongoing."
|
||||||
msgstr "\"%s\" kỳ thi đang không diễn ra."
|
msgstr "\"%s\" kỳ thi đang không diễn ra."
|
||||||
|
|
||||||
#: judge/views/contests.py:565
|
#: judge/views/contests.py:567
|
||||||
msgid "Already in contest"
|
msgid "Already in contest"
|
||||||
msgstr "Đã ở trong kỳ thi"
|
msgstr "Đã ở trong kỳ thi"
|
||||||
|
|
||||||
#: judge/views/contests.py:566
|
#: judge/views/contests.py:568
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "You are already in a contest: \"%s\"."
|
msgid "You are already in a contest: \"%s\"."
|
||||||
msgstr "Bạn đã ở trong kỳ thi: \"%s\"."
|
msgstr "Bạn đã ở trong kỳ thi: \"%s\"."
|
||||||
|
|
||||||
#: judge/views/contests.py:576
|
#: judge/views/contests.py:578
|
||||||
msgid "Banned from joining"
|
msgid "Banned from joining"
|
||||||
msgstr "Bị cấm tham gia"
|
msgstr "Bị cấm tham gia"
|
||||||
|
|
||||||
#: judge/views/contests.py:578
|
#: judge/views/contests.py:580
|
||||||
msgid ""
|
msgid ""
|
||||||
"You have been declared persona non grata for this contest. You are "
|
"You have been declared persona non grata for this contest. You are "
|
||||||
"permanently barred from joining this contest."
|
"permanently barred from joining this contest."
|
||||||
msgstr "Bạn không được phép tham gia kỳ thi này."
|
msgstr "Bạn không được phép tham gia kỳ thi này."
|
||||||
|
|
||||||
#: judge/views/contests.py:667
|
#: judge/views/contests.py:669
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Enter access code for \"%s\""
|
msgid "Enter access code for \"%s\""
|
||||||
msgstr "Nhập mật khẩu truy cập cho \"%s\""
|
msgstr "Nhập mật khẩu truy cập cho \"%s\""
|
||||||
|
|
||||||
#: judge/views/contests.py:684
|
#: judge/views/contests.py:686
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "You are not in contest \"%s\"."
|
msgid "You are not in contest \"%s\"."
|
||||||
msgstr "Bạn không ở trong kỳ thi \"%s\"."
|
msgstr "Bạn không ở trong kỳ thi \"%s\"."
|
||||||
|
|
||||||
#: judge/views/contests.py:707
|
#: judge/views/contests.py:709
|
||||||
msgid "ContestCalendar requires integer year and month"
|
msgid "ContestCalendar requires integer year and month"
|
||||||
msgstr "Lịch thi yêu cầu giá trị cho năm và tháng là số nguyên"
|
msgstr "Lịch thi yêu cầu giá trị cho năm và tháng là số nguyên"
|
||||||
|
|
||||||
#: judge/views/contests.py:765
|
#: judge/views/contests.py:767
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Contests in %(month)s"
|
msgid "Contests in %(month)s"
|
||||||
msgstr "Các kỳ thi trong %(month)s"
|
msgstr "Các kỳ thi trong %(month)s"
|
||||||
|
|
||||||
#: judge/views/contests.py:766
|
#: judge/views/contests.py:768
|
||||||
msgid "F Y"
|
msgid "F Y"
|
||||||
msgstr "F Y"
|
msgstr "F Y"
|
||||||
|
|
||||||
#: judge/views/contests.py:826
|
#: judge/views/contests.py:828
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "%s Statistics"
|
msgid "%s Statistics"
|
||||||
msgstr "%s Thống kê"
|
msgstr "%s Thống kê"
|
||||||
|
|
||||||
#: judge/views/contests.py:1122
|
#: judge/views/contests.py:1124
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "%s Rankings"
|
msgid "%s Rankings"
|
||||||
msgstr "%s Bảng điểm"
|
msgstr "%s Bảng điểm"
|
||||||
|
|
||||||
#: judge/views/contests.py:1133
|
#: judge/views/contests.py:1135
|
||||||
msgid "???"
|
msgid "???"
|
||||||
msgstr "???"
|
msgstr "???"
|
||||||
|
|
||||||
#: judge/views/contests.py:1160
|
#: judge/views/contests.py:1162
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Your participation in %s"
|
msgid "Your participation in %s"
|
||||||
msgstr "Lần tham gia trong %s"
|
msgstr "Lần tham gia trong %s"
|
||||||
|
|
||||||
#: judge/views/contests.py:1161
|
#: judge/views/contests.py:1163
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "%s's participation in %s"
|
msgid "%s's participation in %s"
|
||||||
msgstr "Lần tham gia của %s trong %s"
|
msgstr "Lần tham gia của %s trong %s"
|
||||||
|
|
||||||
#: judge/views/contests.py:1175
|
#: judge/views/contests.py:1177
|
||||||
msgid "Live"
|
msgid "Live"
|
||||||
msgstr "Trực tiếp"
|
msgstr "Trực tiếp"
|
||||||
|
|
||||||
#: judge/views/contests.py:1194 templates/contest/contest-tabs.html:21
|
#: judge/views/contests.py:1196 templates/contest/contest-tabs.html:21
|
||||||
msgid "Participation"
|
msgid "Participation"
|
||||||
msgstr "Lần tham gia"
|
msgstr "Lần tham gia"
|
||||||
|
|
||||||
#: judge/views/contests.py:1243
|
#: judge/views/contests.py:1245
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "%s MOSS Results"
|
msgid "%s MOSS Results"
|
||||||
msgstr "%s Kết quả MOSS"
|
msgstr "%s Kết quả MOSS"
|
||||||
|
|
||||||
#: judge/views/contests.py:1279
|
#: judge/views/contests.py:1281
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Running MOSS for %s..."
|
msgid "Running MOSS for %s..."
|
||||||
msgstr "Đang chạy MOSS cho %s..."
|
msgstr "Đang chạy MOSS cho %s..."
|
||||||
|
|
||||||
#: judge/views/contests.py:1302
|
#: judge/views/contests.py:1304
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Contest tag: %s"
|
msgid "Contest tag: %s"
|
||||||
msgstr "Nhãn kỳ thi: %s"
|
msgstr "Nhãn kỳ thi: %s"
|
||||||
|
|
||||||
#: judge/views/contests.py:1317 judge/views/ticket.py:67
|
#: judge/views/contests.py:1319 judge/views/ticket.py:67
|
||||||
msgid "Issue description"
|
msgid "Issue description"
|
||||||
msgstr "Mô tả vấn đề"
|
msgstr "Mô tả vấn đề"
|
||||||
|
|
||||||
#: judge/views/contests.py:1360
|
#: judge/views/contests.py:1362
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "New clarification for %s"
|
msgid "New clarification for %s"
|
||||||
msgstr "Thông báo mới cho %s"
|
msgstr "Thông báo mới cho %s"
|
||||||
|
|
||||||
#: judge/views/contests.py:1466
|
#: judge/views/contests.py:1468
|
||||||
#, fuzzy
|
#, fuzzy
|
||||||
#| msgid "contest summary"
|
#| msgid "contest summary"
|
||||||
msgid "Contests Summary"
|
msgid "Contests Summary"
|
||||||
|
@ -3251,39 +3251,39 @@ msgstr "Nộp bài cho %(problem)s"
|
||||||
msgid "Clone Problem"
|
msgid "Clone Problem"
|
||||||
msgstr "Nhân bản bài tập"
|
msgstr "Nhân bản bài tập"
|
||||||
|
|
||||||
#: judge/views/problem_data.py:70
|
#: judge/views/problem_data.py:71
|
||||||
msgid "Checker arguments must be a JSON object"
|
msgid "Checker arguments must be a JSON object"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: judge/views/problem_data.py:72
|
#: judge/views/problem_data.py:73
|
||||||
msgid "Checker arguments is invalid JSON"
|
msgid "Checker arguments is invalid JSON"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: judge/views/problem_data.py:79
|
#: judge/views/problem_data.py:80
|
||||||
msgid "Your zip file is invalid!"
|
msgid "Your zip file is invalid!"
|
||||||
msgstr "File Zip không hợp lệ!"
|
msgstr "File Zip không hợp lệ!"
|
||||||
|
|
||||||
#: judge/views/problem_data.py:169
|
#: judge/views/problem_data.py:170
|
||||||
#, python-brace-format
|
#, python-brace-format
|
||||||
msgid "Comparing submissions for {0}"
|
msgid "Comparing submissions for {0}"
|
||||||
msgstr "So sánh các bài nộp cho {0}"
|
msgstr "So sánh các bài nộp cho {0}"
|
||||||
|
|
||||||
#: judge/views/problem_data.py:173
|
#: judge/views/problem_data.py:174
|
||||||
#, python-brace-format
|
#, python-brace-format
|
||||||
msgid "Comparing submissions for <a href=\"{1}\">{0}</a>"
|
msgid "Comparing submissions for <a href=\"{1}\">{0}</a>"
|
||||||
msgstr "So sánh các bài nộp cho <a href=\"{1}\">{0}</a>"
|
msgstr "So sánh các bài nộp cho <a href=\"{1}\">{0}</a>"
|
||||||
|
|
||||||
#: judge/views/problem_data.py:210
|
#: judge/views/problem_data.py:211
|
||||||
#, python-brace-format
|
#, python-brace-format
|
||||||
msgid "Editing data for {0}"
|
msgid "Editing data for {0}"
|
||||||
msgstr "Chỉnh sửa dữ liệu cho {0}"
|
msgstr "Chỉnh sửa dữ liệu cho {0}"
|
||||||
|
|
||||||
#: judge/views/problem_data.py:214
|
#: judge/views/problem_data.py:215
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Editing data for %s"
|
msgid "Editing data for %s"
|
||||||
msgstr "Chỉnh sửa dữ liệu cho %s"
|
msgstr "Chỉnh sửa dữ liệu cho %s"
|
||||||
|
|
||||||
#: judge/views/problem_data.py:344 judge/views/problem_data.py:346
|
#: judge/views/problem_data.py:348 judge/views/problem_data.py:350
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Generated init.yml for %s"
|
msgid "Generated init.yml for %s"
|
||||||
msgstr "File init.yml cho %s"
|
msgstr "File init.yml cho %s"
|
||||||
|
@ -3596,6 +3596,10 @@ msgstr "Chia sẻ"
|
||||||
msgid "Report"
|
msgid "Report"
|
||||||
msgstr "Báo cáo"
|
msgstr "Báo cáo"
|
||||||
|
|
||||||
|
#: templates/actionbar/media-js.html:116
|
||||||
|
msgid "Copied link"
|
||||||
|
msgstr "Đã sao chép link"
|
||||||
|
|
||||||
#: templates/admin/judge/contest/change_form.html:9
|
#: templates/admin/judge/contest/change_form.html:9
|
||||||
msgid "Are you sure you want to rejudge ALL the submissions?"
|
msgid "Are you sure you want to rejudge ALL the submissions?"
|
||||||
msgstr "Bạn có muốn chấm lại tất cả bài nộp?"
|
msgstr "Bạn có muốn chấm lại tất cả bài nộp?"
|
||||||
|
|
|
@ -147,8 +147,9 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.blog-box:hover {
|
.blog-box:hover, .blog-box:not(.pre-expand-blog) {
|
||||||
border-color: #8a8a8a;
|
border-color: #8a8a8a;
|
||||||
|
box-shadow: 0 0 2px rgba(0, 0, 0, 0.1);
|
||||||
}
|
}
|
||||||
|
|
||||||
.blog-description {
|
.blog-description {
|
||||||
|
|
|
@ -269,10 +269,10 @@ a {
|
||||||
.actionbar-button {
|
.actionbar-button {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
padding: 0.8em;
|
padding: 0.8em;
|
||||||
border: 0.2px solid lightgray;
|
|
||||||
border-radius: 5em;
|
border-radius: 5em;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
display: inherit;
|
display: inherit;
|
||||||
|
background: lightgray;
|
||||||
}
|
}
|
||||||
.actionbar-block {
|
.actionbar-block {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
@ -287,7 +287,7 @@ a {
|
||||||
border-radius: 5em 0 0 5em;
|
border-radius: 5em 0 0 5em;
|
||||||
}
|
}
|
||||||
.actionbar-button:hover {
|
.actionbar-button:hover {
|
||||||
background: lightgray;
|
background: darkgray;
|
||||||
}
|
}
|
||||||
.dislike-button {
|
.dislike-button {
|
||||||
padding-left: 0.5em;
|
padding-left: 0.5em;
|
||||||
|
|
|
@ -113,7 +113,7 @@
|
||||||
navigator.clipboard
|
navigator.clipboard
|
||||||
.writeText(link)
|
.writeText(link)
|
||||||
.then(() => {
|
.then(() => {
|
||||||
showTooltip(element, "Copied link", 'n');
|
showTooltip(element, "{{_('Copied link')}}", 'n');
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -10,7 +10,15 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
::-webkit-scrollbar {
|
::-webkit-scrollbar {
|
||||||
width: 20px;
|
width: 16px;
|
||||||
|
background-color: transparent !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#chat-input::-webkit-scrollbar {
|
||||||
|
width: 22px;
|
||||||
|
}
|
||||||
|
#chat-input::-webkit-scrollbar-thumb {
|
||||||
|
border: 10px solid transparent;
|
||||||
}
|
}
|
||||||
|
|
||||||
::-webkit-scrollbar-track {
|
::-webkit-scrollbar-track {
|
||||||
|
@ -144,9 +152,11 @@
|
||||||
transition: box-shadow 0.3s ease-in-out;
|
transition: box-shadow 0.3s ease-in-out;
|
||||||
width: 80%;
|
width: 80%;
|
||||||
resize: none;
|
resize: none;
|
||||||
height: 80%;
|
height: 70%;
|
||||||
max-height: 200px;
|
max-height: 200px;
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
|
margin-top: auto;
|
||||||
|
margin-bottom: 6px;
|
||||||
}
|
}
|
||||||
#chat-input:focus {
|
#chat-input:focus {
|
||||||
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
|
||||||
|
|
|
@ -561,7 +561,7 @@
|
||||||
this.style.height = (this.scrollHeight) + 'px';
|
this.style.height = (this.scrollHeight) + 'px';
|
||||||
$(this).css('border-radius', '30px');
|
$(this).css('border-radius', '30px');
|
||||||
} else {
|
} else {
|
||||||
$(this).css('height', '80%');
|
$(this).css('height', '70%');
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue