Commit Graph

934 Commits

Author SHA1 Message Date
e522538d98
feat: server time in a new line
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-17 20:50:15 +08:00
7b7f01dca1
fix(problem/manage/data): data_dir
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-17 15:40:32 +08:00
dfb317211e
chore: remove card wrapping rank list
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-17 13:58:07 +08:00
581cc68616
fix(problem/solutions): 5f15f832af 2023-01-17 13:56:53 +08:00
7f97630abf
refactor(super_manage/image_hosting): uoj_form_v2 2023-01-16 22:14:43 +08:00
ac45c82f44
refactor(super_manage/judger): uoj_form_v2 2023-01-16 22:09:47 +08:00
8da485e595
refactor(super_manage/custom_test): uoj_form_v2 2023-01-16 22:06:59 +08:00
33c8b6bd4a
refactor(super_manage/users): uoj_form_v2 2023-01-16 22:03:23 +08:00
e28f8d97b4
refactor(super_manage/index): uoj_form_v2 2023-01-16 21:40:11 +08:00
e4585f90ba
refactor(submission): uoj_form_v2 2023-01-16 21:28:05 +08:00
561d3052b8
fix(user_msg): small window
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-16 18:25:19 +08:00
bfa0cf8d3d
fix(user_msg): cannot open new chat
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-16 18:03:09 +08:00
da273d1df9
fix(user): fde7fd0cb0 2023-01-16 18:02:02 +08:00
6ff2f48e88
fix(user_msg): conversations list item
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-16 17:22:47 +08:00
95b11fbbd8
fix(user_msg): clear interval before open new chat 2023-01-16 17:16:19 +08:00
c26ad98ff0
fix(user_msg): conversations list scroll bar 2023-01-16 17:12:40 +08:00
fde7fd0cb0
feat(user): display last visit date if offline too long time
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-16 17:08:15 +08:00
d6ac737a11
feat(user_msg): auto scroll to bottom after enter or send msg 2023-01-16 16:50:58 +08:00
99e9a839af
feat(user_msg): auto fetch new messages 2023-01-16 16:44:12 +08:00
7184774cff
fix(user_msg): pagination margin-top 2023-01-16 16:28:30 +08:00
da4eb28406
fix(user_msg): close button 2023-01-16 16:25:47 +08:00
b8e692447d
feat(user_msg): last msg preview in list 2023-01-16 16:24:40 +08:00
c99f4898ff
chore(user_msg): rounded avatar 2023-01-16 15:39:50 +08:00
39df125d16
refactor(user_msg): bootstrap5 2023-01-16 15:34:51 +08:00
dc3515353e
feat: bootstrap5 msg page
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-16 08:11:15 +08:00
77f22ce40c
refactor(blog/delete): uoj_form_v2 2023-01-16 07:52:38 +08:00
ffc71db799
refactor(user/system_msg): uoj_form_v2 2023-01-16 07:51:30 +08:00
e218f58521
refactor(problems/new): uoj_form_v2 2023-01-15 21:53:26 +08:00
13eeb37c19
refactor(list/manage): uoj_form_v2 2023-01-15 21:50:42 +08:00
73155e6dc1
refactor(hack): uoj_form_v2 2023-01-15 21:41:48 +08:00
9d66356566
refactor(contest): uoj_form_v2 2023-01-15 21:35:24 +08:00
e2c3a3eb4e
Merge branch 'master' into uoj_form_v2 2023-01-15 21:27:12 +08:00
6e5c15c925
feat(user): log http_x_forwarded_for in history
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-15 20:47:54 +08:00
d410dff7d8
feat(forgot_pw): add client info in email
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-15 20:15:52 +08:00
e43444e02d
feat: reset_password
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-15 20:01:37 +08:00
fadf722527
feat: mount config file instead of passing env
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-15 18:53:06 +08:00
3c2ab13e0d
fix(list/manage): remove dup problem id 2023-01-15 15:12:42 +08:00
6548c2e2b7
fix: username color in md mention
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-15 11:13:43 +08:00
be7510a6bb
feat(super_manage): allow change usergroup to temp user
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-15 09:38:29 +08:00
6dcd43b914
feat(user): more username colors
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-15 09:15:30 +08:00
d992a07e96
refactor(group/manage): uoj_form_v2 2023-01-15 08:48:08 +08:00
87013054c4
refactor(contest/manage): uoj_form_v2 2023-01-15 08:05:00 +08:00
3b1def5754
refactor(contest): start_test_form & publish_result_form 2023-01-15 08:04:25 +08:00
c0b442ece0
fix: 17fbb2c910
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-14 18:45:36 +08:00
ad84197187
Merge branch 'username-color'
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-14 18:26:43 +08:00
4e5d2dee49
feat(web/blog): username color 2023-01-14 18:24:36 +08:00
1ebcda02d6
feat(web/contest): username color 2023-01-14 18:24:03 +08:00
75edc82b28
fix(web/user/edit): username_color default_value
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-14 17:53:34 +08:00
452c2ca12b
feat(web/user): username color
Co-authored-by: Wenkuo Yu <82705676+youwike@users.noreply.github.com>
Co-authored-by: Baoshuo Ren <47095648+renbaoshuo@users.noreply.github.com>
2023-01-14 17:20:10 +08:00
bb43c78a57
chore(web/user/edit): not require email
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-14 15:14:05 +08:00
6a4f9a370a
feat(web/lists): add redirect after create list
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-14 08:51:00 +08:00
5f15f832af
feat(web/problem/solutions): add quick_add_new_solution_form 2023-01-14 08:44:59 +08:00
71ecc24d19
feat(web/problems): redirect to edit page after create problem
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-13 08:37:20 +08:00
8417f362e8
feat(web/problem/manage/statement): allow select tags to fill
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-12 10:06:12 +08:00
ee0ff210bb
fix(web/problem): answer_form->extra_validator 2023-01-12 08:56:44 +08:00
2dd91d1853
feat: allow admins to edit usertype
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-11 11:17:08 +08:00
8b2de39c5f
feat: add copy button
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-11 10:48:20 +08:00
17fbb2c910
refactor(web/html2markdown): use turndown
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-08 13:57:39 +08:00
a26a6c961f
refactor(web/groups): uoj_form_v2 2022-12-27 11:44:47 +08:00
fced0e0200
refactor(web/contest/register): uoj_form_v2 2022-12-27 11:36:39 +08:00
77608cc936
refactor(web/contest/confirm): uoj_form_v2 2022-12-27 11:33:18 +08:00
781d1183ba
chore(web/contest/problem): hide tags and difficulty in contest
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-27 11:23:44 +08:00
10ccb26815
chore(web/problem/submit): set default size limit to 100KB
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-25 09:35:52 +08:00
1ac27d40fe refactor(web/user/edit): update_profile_form 2022-12-24 12:07:06 +08:00
1ce6ddd8cb feat(web): UOJForm::addCheckboxes() 2022-12-24 12:06:39 +08:00
f945a6cfdb
refactor(web/add_contest): uoj_form_v2 2022-12-24 11:11:06 +08:00
354dd361b0
refactor(web/problem/solution): add_new_solution_form 2022-12-24 11:01:04 +08:00
aedc164801
refactor(web/contest/members): uoj_form_v2 2022-12-24 11:00:32 +08:00
4e1d7d8f1a
refactor(web/problem/manage/managers): update_uploader_form 2022-12-23 22:12:42 +08:00
0f4977727a
feat(web): UOJForm::addInput() 2022-12-23 22:10:14 +08:00
35eb4c170c
chore(web): translate more strings 2022-12-23 21:41:46 +08:00
4e149d376f
chore(web): move mathjax3 2022-12-23 21:25:05 +08:00
382fecac89
Revert "chore(web): disable custom test"
All checks were successful
continuous-integration/drone/push Build is passing
This reverts commit 248a924df7.
2022-12-09 20:27:54 +08:00
a1469a96ed
feat(web/problem): add 2600 to difficulties
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-08 13:04:44 +08:00
d72f178251
draft 2022-12-07 22:49:43 +08:00
664fca166e
fix(web/problem): flex-shrink for info card title
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-07 22:49:21 +08:00
56b2077a5a
feat(web/problems): add link to is_hidden, my tag
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-06 16:39:12 +08:00
58abb51818
feat(web/problem): display is_hidden tag in problem page 2022-12-06 16:38:50 +08:00
3ceb26a0e7
chore(wen/problem/manage): remove click_zan from manage page 2022-12-06 16:35:00 +08:00
21a24e66e7
chore(web/problem): remove info card from statistics and solutions page 2022-12-06 16:34:25 +08:00
16d20b38f4
fix(web): allow <img> width attr
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-06 16:11:25 +08:00
9efa58fc0b
feat(web/problem): submit button outside statement page
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-06 14:51:09 +08:00
a5da5022fe
chore(web/problem): update default problem content
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-06 10:53:04 +08:00
0b238485e4
chore(web/problem): update difficulty colors
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-05 19:00:23 +08:00
c47f943257
fix(web/problem/manage): difficulty config
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-05 17:49:39 +08:00
c0484d55a5
chore(web/problem): show ? when difficulty not set
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-05 17:46:40 +08:00
83ffb72577
chore(web): add upgrader for #21 2022-12-05 17:31:22 +08:00
586df479f6
refactor(web/problem): difficulty 2022-12-05 17:14:43 +08:00
edc98d5c35
fix(web/problem): tag in problem info card
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-05 16:25:14 +08:00
848607a87d
feat(web/list): problem difficulty
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-05 12:05:33 +08:00
dfb47c4b32
feat(web/problems): difficulty filter
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-05 11:54:58 +08:00
248a924df7
chore(web): disable custom test
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-04 21:16:48 +08:00
6d0a665d8e
refactor(web/problem): problem difficulty (#20)
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-04 20:45:58 +08:00
720db7727a
feat(web/problem): problem info card 2022-12-04 20:44:51 +08:00
849baef6d3
feat(web/problems): ac rate tooltip
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-04 19:00:18 +08:00
08bad49b58
fix(web): problem extra_config default value 2022-12-04 18:59:56 +08:00
dbdc49e73a
refactor(web/problem): problem difficulty 2022-12-04 17:27:16 +08:00
678582fc47
chore(web): HTML::url protocol 2022-12-04 16:53:02 +08:00
61a35c457a
fix(web/contest/problem/statistics): simplify problem title
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-04 11:23:03 +08:00
4959e6da45
feat(web): hide realname when not logged in
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-03 15:09:04 +08:00
1c2f06c253
fix(web/super_manage): input-username 2022-12-03 15:00:46 +08:00
2a63f17a14
fix(web): show_mode cookie 2022-12-03 14:58:06 +08:00
c0512e35d8
feat(web/problem): submissions button
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-23 16:31:37 +08:00
44b0087356
fix(web/list/new): list content
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-22 16:30:09 +08:00
4de873fb2c
fix(web/blog): comment login check
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-21 20:14:47 +08:00
6e9254e008
revert: 387fdf968b
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-19 11:58:04 +08:00
df6024c99f
fix(web): set locale
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-18 13:41:17 +08:00
6ee92bc5ee
fix(web/problem/solution): UOJBlog::getSolutionProblemId()
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-16 16:53:39 +08:00
2a025e9ec9
fix: d8d97b4f93 2022-11-16 16:42:02 +08:00
6d6a058b02
fix: default statement
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-16 14:25:32 +08:00
ff41b8761f
chore(web/contest/manage): move extra_registration to rule_form
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-14 07:44:00 +08:00
85820d5b2c
chore(web/super_manage): users filter update
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-13 08:02:41 +08:00
48e4c56782
fix(web): SyncProblemDataHandler::copy_to_prepare()
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-12 20:25:06 +08:00
ff16bfbc84
fix(web/problem): limits default value
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-12 19:09:47 +08:00
4347189794
chore(web): page_len
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-12 15:39:17 +08:00
56344b759d
chore: add links to docs
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-12 15:12:40 +08:00
1517d453d9
chore(web/faq): heading font size
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-12 14:30:02 +08:00
dbbaa12ac5
feat(web): tmp user 2022-11-12 14:29:11 +08:00
aeb6628314
fix(web/problem): not escape problem title
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-12 12:05:24 +08:00
274baec200
fix(web/lists): tags
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-12 11:37:07 +08:00
ef01c326b2
feat(web/contests): upcoming contests view permission check
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-12 10:29:53 +08:00
8d87fda233
refactor(web/contest): remove UOJContest::queryContestsHasProblem()
use UOJProblem::findInContests() instead.
2022-11-12 10:25:46 +08:00
738b819b5f
feat(web/submissions): hide older submissions when a registered unfinished contest has this problem 2022-11-12 10:20:28 +08:00
e2fbd6afe9
fix(web/contest/submission): problem managers cannot see final score
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-12 10:14:54 +08:00
79d6cd8a38
fix(web/contest/problem): disable testdata download during contest 2022-11-12 09:59:15 +08:00
6eca1a3c5e
fix(web/group): limit of UOJGroup::getLatestGroupmatesAcceptedSubmissionIds()
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-12 09:32:53 +08:00
dd72014a56
chore(web/super_manage): remove usertype filter 2022-11-12 09:21:55 +08:00
1bb83b452a
feat(web/user): user type display 2022-11-12 09:21:36 +08:00
bfc729f564
feat(web): add upgrader for #18 2022-11-12 09:19:25 +08:00
1c94b98efc
refactor(web): use UOJUser::getLink() 2022-11-12 07:11:49 +08:00
aeba27d701
feat(web/user/system_msg): unread bg 2022-11-12 07:10:40 +08:00
ef3f7b9e7f
feat(web): new user permissions (#10) 2022-11-12 07:10:34 +08:00
287889b60f
refactor(web/group): group_v3 2022-11-11 08:20:33 +08:00
da69cdf1b9
refactor(web/list): list_v3 2022-11-10 08:16:48 +08:00
6b85af0eeb
fix(web/problem_set): problem difficulty
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-09 21:56:39 +08:00
3c4cc702c3
chore(web): remove show-text option of click-zan block 2022-11-09 21:37:37 +08:00
33779b1758
fix(web/problem/manage/data): condition for subfolder
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-08 15:27:48 +08:00
6b785e8bc7
fix(web): subtask score info
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-07 22:02:56 +08:00
62a63c4c6e
fix(web): ClickZans::click
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-07 20:13:57 +08:00
80e8b72fb6
fix(web/contest/self_reviews): remove useless DB::escape
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-07 19:25:45 +08:00
4f5bbf82a5
fix(web/problem): page title
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-07 15:44:01 +08:00
eecd40efd8
chore(web/problem): default statement
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-07 13:57:23 +08:00
c84265a0a1
fix(web): subtask info item width
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-07 07:46:13 +08:00
20c0ddd958
fix(web/contest): UOJContest::userCanView
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-07 07:33:11 +08:00
70e3fbb93e
fix(web): school default value
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-07 06:31:09 +08:00
2a69d50d6d
fix(web/blog/write): new blog url 2022-11-07 06:30:50 +08:00
e9a4d15dd2
fix(web): HTML::relative_time_str
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-06 17:35:22 +08:00
954a870ac0
fix(web/contest/submissions): simplify title
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-06 16:58:59 +08:00
ba267c15e1
fix(web/contest/after_contest_standings): only fetch data of contestants who has participated in the contest
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-06 16:39:55 +08:00
079c405277
fix(web/problem_set): is_hidden, my filter
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-06 16:23:08 +08:00
a83f8302dc
fix: 75cb0f3749
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-06 16:02:39 +08:00
75cb0f3749
feat(web/contest/standings): first accepted
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-06 15:57:38 +08:00
c93e5d3c46
fix(web/contest): manager register contest
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-06 15:30:15 +08:00
d84c21bf68
chore(web/contest/register): ACM 罚时
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-06 15:21:38 +08:00
f3ce28c1f7
fix(web/submission_list): sql for view permission
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-06 15:00:59 +08:00
e1a4c8ffa3
fix: ec859e1564
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-06 14:22:22 +08:00
ec859e1564
fix(web/submissions): table header cell min-width
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-06 14:15:07 +08:00
9d0c70151e
fix(web/problem/manage/managers): 61aebec03e 2022-11-06 14:01:47 +08:00
018e435f31
fix(db/submissions): submission judger column 2022-11-06 14:01:11 +08:00
f025594eea
fix(web/contest/manage): 61aebec03e
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-06 13:23:30 +08:00
db6b0ffdb4
fix: 61aebec03e
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-06 13:21:04 +08:00
61aebec03e
refactor: sync code from uoj.ac (#14)
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-06 10:41:00 +08:00
610746fdf6
chore(#14): add upgrader 2022-11-06 10:26:36 +08:00
844c93da84
refactor: sync code from uoj.ac 2022-11-06 10:26:21 +08:00
20cecd34a2
fix(web/image_hosting): hash suffix
All checks were successful
continuous-integration/drone/push Build is passing
2022-11-04 16:51:49 +08:00
ca85ba3982
fix(web/index): countdown diff use ceil()
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-28 14:06:10 +08:00
0689c94351
feat(web): disable normal user download testdata
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-28 10:16:34 +08:00
512185fc10
feat(web/user/system_msg): unread msgs bg-warning
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-27 18:34:41 +08:00
4868c7fdfc
feat(web/contest): extra_registration config
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-24 12:10:59 +08:00
26809917a1
fix(web/super_manage/index/links): link weight
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-23 22:00:15 +08:00
1227acf47a
refactor(web/contest): contest manage v2 and contest confirmation
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-23 20:39:11 +08:00
71901efa5f
chore(web): use UOJTime::$time_now 2022-10-23 13:58:34 +08:00
277e69f507
feat(web): drop bs4
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-22 21:12:13 +08:00
236a152f51
chore(web): display icp 2022-10-22 19:39:15 +08:00
5758789df4
refactor(web/list): list v2 (#9)
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-22 19:30:42 +08:00
c5b3fbdd4a
refactor(web/list): list v2 2022-10-22 19:24:48 +08:00
6ef2c2c119
feat(web/contest/backstage): hash route for tabs
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-22 11:55:39 +08:00
bae26f1c16
fix(web): prevent warning from HTMLPurifier
All checks were successful
continuous-integration/drone/push Build is passing
ref: http://htmlpurifier.org/docs/enduser-customize.html#optimized
2022-10-22 10:11:36 +08:00
054cb76481
fix(web/problem/statistics): pagination
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-22 09:30:53 +08:00
ee6169f621
fix(web/group): group rank list pagination 2022-10-22 09:29:51 +08:00
bee296a1d9
fix(web/group/assignment): end time
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-22 09:18:56 +08:00
4b8f5e69b9
chore(web/group/manage/assignment): default end time 2022-10-22 09:18:37 +08:00
37843355cd
fix(db/submissions): add key for #8
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-22 08:16:39 +08:00
a28e34e7e9
refactor(web/group/assignment): more simple db query
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-22 08:07:41 +08:00
49994cdc65
refactor(web/group/assignment): less db queries
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-22 07:46:42 +08:00
3cab411f4d
fix: f044ab8ed7
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-22 06:48:04 +08:00
aed0b04cb5
fix: 892a56a881 2022-10-22 06:42:43 +08:00
f044ab8ed7
chore(web): update definition of groups_assignments
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-22 06:34:12 +08:00
892a56a881
fix(web/group/assignment): db query perf
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-21 22:18:10 +08:00
b6b8efd5fb
refactor(web/group): group v2 (#8)
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-21 22:06:26 +08:00
d05542f025
fix(web/group/assignment): page_len 2022-10-21 22:05:44 +08:00
0f0556b9ef
feat(web/group/assignment): only show submissions before end_time 2022-10-21 22:04:17 +08:00
639d09b8c3
refactor(web/group): group v2 2022-10-21 20:42:48 +08:00
26819bbe34
chore(web/super_manage): 文案优化
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-21 15:39:57 +08:00
0b385dd4f1
fix(web/user/edit): usertype - teacher 2022-10-21 15:33:08 +08:00
81520f1063
fix(web/contests): upcoming contests order
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-21 13:41:45 +08:00
c222f736fe
chore(web): returnJSONData util 2022-10-21 13:23:36 +08:00
e98978d6d8
feat(web/problem): hash route for tabs 2022-10-21 11:52:19 +08:00
92626c1193
chore(web): HTML::navListGroup 2022-10-21 11:38:19 +08:00
aeab23cc9a
feat(web/submissions_list): new search form 2022-10-21 10:39:33 +08:00
62941dbea5
feat(web/hack_list): my hacks improvement 2022-10-21 10:39:24 +08:00
47d54be437
feat(web/hack_list): new search form 2022-10-21 08:01:54 +08:00
a06707335f
refactor(web/hack): drop bootstrap4 2022-10-21 06:58:32 +08:00
6277a0c8c3
fix(web/user): sex
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-20 21:51:46 +08:00
24722a0633
fix(web): eda9df3d1a 2022-10-20 21:46:46 +08:00
65bbc99560
fix(web): style 2022-10-20 21:27:31 +08:00
5c34086522
fix(web/super_manage): custom test id color 2022-10-20 21:26:48 +08:00
4b30f75236
refactor(web/super_manage): drop old super_manage page 2022-10-20 21:24:39 +08:00
c8277ed5b9
refactor(web/super_manage): judger 2022-10-20 21:23:55 +08:00
f57ff959a9
refactor(web/super_manage): image hosting 2022-10-20 21:12:05 +08:00
fdfb0245a0
refactor(web/super_manage): submissions 2022-10-20 20:46:32 +08:00
bf179148a1
refactor(web/super_manage): users manage 2022-10-20 19:50:53 +08:00
eda9df3d1a
refactor(web/super_manage): index manage 2022-10-20 17:07:43 +08:00
6963be54f2
fix(web/user/edit/password): "修改" -> “重置”
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-20 11:49:20 +08:00
6e676bca67
fix(web/user): codeforces icon fill color
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-20 11:41:50 +08:00
74d1cb6eea
fix(web/problem/solution): confirm before remove solution
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-20 11:25:35 +08:00
6b20408fc1
feat(web/user/edit): edit real name
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-20 11:18:01 +08:00
a9583e605e
refactor(web/user): user_info v2 (#6)
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-20 10:56:02 +08:00
002827ef48
feat(web/user): display groups 2022-10-20 10:51:56 +08:00
a5e12f5c59
feat(web/faq): qq avatar 2022-10-20 10:25:01 +08:00
8977eb263d
feat(web/user/edit): set ajax submit 2022-10-20 10:21:07 +08:00
3985b97f2e
feat(web/user): qq avatar 2022-10-20 10:02:53 +08:00
6ee3ed2490
feat(web/user/edit): user privilege 2022-10-20 09:32:34 +08:00
4e9b2a748a
feat(web/user): website 2022-10-20 08:45:23 +08:00
1eb342120e
feat(web/user): show codeforces rating 2022-10-20 08:44:55 +08:00
2bea966b08
refactor(web/user): drop bootstrap4 2022-10-20 06:33:49 +08:00
4446f0653b
fix(web/user/edit): sex 2022-10-20 06:28:57 +08:00
b433a907e5
feat(web/user/edit): github 2022-10-19 22:16:10 +08:00
e33e3ef413
refactor(web/user/edit): user_edit_v2 2022-10-19 21:59:16 +08:00
bf6961f72c
fix(web): sidebar assignments sort
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-19 18:26:09 +08:00
07b3388f56
refactor(web/user/system_msg): two-column layout
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-19 11:58:26 +08:00
b21e6c3500
refactor(web/ranklist): two-column layout 2022-10-19 11:58:16 +08:00
e76c6524d4
fix(web/problem/manage/data): modal 2022-10-19 11:57:27 +08:00
318e618499
fix(web): right column width 2022-10-19 11:57:06 +08:00
54b8415cf5
fix: 8a7930e18c
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-19 11:23:22 +08:00
ea4cfd8376
refactor(web/contest/backstage): use card
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-18 18:42:57 +08:00
8d6c000c09
fix(web/problem/manage/data): left col width
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-18 17:14:52 +08:00
d562f18de5
fix(web): add missing .form-select class
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-18 17:11:55 +08:00
ec74277e8a
fix(web/problem/solution): only super user can add other users' blog
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-18 15:02:40 +08:00
21e67e6fb5
refactor(web/problem/manage/data): bootstrap5
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-18 14:47:03 +08:00
e5ea7152a1
fix(web/image_hosting/get): return 403 instead of redirect to login
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-18 10:55:24 +08:00
4cccd07a10
feat(web/problem/solution): add some hints 2022-10-18 10:31:05 +08:00
352642b06c
fix(web/blog/delete): remove solutions when delete blog 2022-10-18 10:27:11 +08:00
9b691606d1
fix(web/blog/write): blog poster
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-18 09:18:09 +08:00
ab51b193f4
fix(web): f574fe0055
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-18 09:04:31 +08:00
d90699d456
fix: 75c8481676 2022-10-18 09:03:00 +08:00
652cd00b86
fix(web): style
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-18 08:55:56 +08:00
2da9633b01
fix(web/blog/delete): succ_href 2022-10-18 08:55:37 +08:00
8a7930e18c
feat(web): mention a user in markdown 2022-10-18 08:53:57 +08:00
f574fe0055
feat(web/blog): show reply_user in system msg 2022-10-18 08:05:17 +08:00
c78032628c
refactor(web/user/system_msg): bootstrap5
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-18 07:50:08 +08:00
e38d44f0c5
feat(web/contest): send system msg after publish final standings
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-18 06:44:15 +08:00
75c8481676
feat(web/user): allow admins to edit user info and read system msgs
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-17 22:13:08 +08:00
dd730a4d6a
feat(web/blog/delete): send blog_delete system msg
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-17 21:44:50 +08:00
0568633496
refactor(web/group/assignment): use bootstrap5 and display score
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-17 20:42:32 +08:00
62010fd9e0
fix(web/blogs): table classes 2022-10-17 19:44:13 +08:00
ef7c6eb83d
feat(web/blog/write): display blog id
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-16 20:38:03 +08:00
14094a4d44
chore(web/problem/manage/statement): add help message 2022-10-16 20:37:47 +08:00
11089b6661
chore(web/blog/write): add help message 2022-10-16 20:37:31 +08:00
c31f24cbb3
feat(web/image_hosting): upload from clipboard
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-16 11:08:41 +08:00
d5a4721a20
feat(web/image_hosting): image preview 2022-10-16 10:46:59 +08:00
7807752ca4
fix(web/problem/solution): problem manager can add solution
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-16 10:18:49 +08:00
d5b6da80be
feat(web/html2markdown): add link to docs
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-15 08:54:05 +08:00
40817e212c
fix: c77c40c341
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-15 07:15:22 +08:00
726fb44108
fix: b532a5d319 2022-10-15 07:13:39 +08:00
db1500110a
feat(web): add html2markdown
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-15 07:07:45 +08:00
75976d9bcc
fix(web): style
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-14 16:24:26 +08:00
c77c40c341
feat(web/ranklist): drop bs4 2022-10-14 16:21:50 +08:00
b532a5d319
feat(web/problem/statistics): drop bs4 2022-10-14 16:19:59 +08:00
c484c6888a
fix(web): zh-cn - 题目管理员
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-14 16:09:54 +08:00
14f7a0b60d
chore(web/image_hosting): add link to docs
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-14 14:59:47 +08:00
24acc89709
feat(web/super_manage/image_hosting): change user images total size limit 2022-10-14 14:59:26 +08:00
d8d97b4f93
fix(web/image_hosting): watermark scale 2022-10-14 10:31:58 +08:00
d490de8bd4
refactor(web/image_hosting): use php-imagick
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-13 21:23:52 +08:00
2e51c20d9f
fix(web/image_hosting): image size calc
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-13 20:54:47 +08:00
b548dd071c
fix(web/image_hosting): check file size after converting to png format 2022-10-13 20:33:02 +08:00
f21ee00a87
fix(web): style 2022-10-13 20:29:44 +08:00
838a492852
fix(web/image_hosting): is_empty hint 2022-10-13 20:28:24 +08:00
e41832cca7
fix(web/image_hosting): watermark hash suffix 2022-10-13 20:23:34 +08:00
8ec306e09d
feat(web/super_manage): add image_hosting manage 2022-10-13 20:20:51 +08:00
c88a178d45
feat(web/image_hosting): images list 2022-10-13 19:56:58 +08:00
755199a32a
feat(web/image_hosting): drag and drop images 2022-10-13 16:13:36 +08:00
65864dd1d2
fix(web/image_hosting): margin of upload button 2022-10-13 15:50:05 +08:00
cafa5b61f2
feat(web/image_hosting): show usage statistics 2022-10-13 14:10:17 +08:00
0a7a6cbe9e
feat(web/image_hosting): image upload 2022-10-13 13:34:55 +08:00
2d9d99e1a6
feat(web/image_hosting): get_image 2022-10-12 21:10:07 +08:00
7c631ea72e
fix: style 2022-10-12 20:38:43 +08:00
ec80c669d1
feat(web): add image_hosting 2022-10-12 20:35:23 +08:00
0d0b8b0ba7
feat(web/contest/self_reviews): markdown support
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-12 19:19:54 +08:00
60ba1a5829
feat(web/user_info/motto): markdown support 2022-10-12 19:13:33 +08:00
f77f8a0a03
fix: bd5babfa29
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-11 16:15:14 +08:00
86d4b13cd6
fix(web): ParsedownMath
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-11 14:03:18 +08:00
bd5babfa29
chore: add upgrader for #3
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-11 13:34:05 +08:00
nekko
5e30f342fd
refactor(web): migrate to parsedown (#3)
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-11 12:29:55 +08:00
b94dabceb6
feat(web/problem_set): my problem & hidden problem filter
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-11 10:31:54 +08:00
4d68b2237f
fix(web): use hljs in bs5 pages 2022-10-11 07:50:58 +08:00
cfaa862e99
fix(web): style
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-10 18:43:05 +08:00
17c400d15c
feat(web): display assignments in sidebar 2022-10-10 18:42:49 +08:00
be876d2a1d
fix(web/contest/self_review): self_review limit
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-10 17:30:01 +08:00
4018227d8b
fix(web/submissions): submission_list view permission
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-10 17:03:57 +08:00
baf96542ec
fix(web): style
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-10 13:58:54 +08:00
224dc3b271
refactor(web/faq): bootstrap5 2022-10-10 13:57:27 +08:00
dd341c6e22
fix(web): remove background in blog-preview 2022-10-10 09:26:48 +08:00
fcb1162be5
fix(web/user/msg): item position
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-10 08:24:07 +08:00
7e8db47f93
chore(web/problem_set): drop bootstrap4 2022-10-10 08:18:55 +08:00
1279ccf711
refactor(web): fix table classes in backend 2022-10-10 07:52:30 +08:00
4e4e45160d
refactor(web): migrate to parsedown 2022-10-10 07:35:48 +08:00
63bce3f253
chore(web): use composer
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-09 21:45:29 +08:00
e71f73d81f
refactor(web): add HTML::purifier_inline() function
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-09 21:33:13 +08:00
2fcc71029e
chore(web): move gregwar/captcha
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-08 19:58:22 +08:00
b6e83e1535
refactor(web/contest/self_reviews): drop DOMPurify 2022-10-08 19:46:52 +08:00
df7d7639b1
refactor(web/ranklist): drop DOMPurify 2022-10-08 19:42:04 +08:00
1740cc8265
refactor(web/group/announcement): drop DOMPurify 2022-10-08 19:40:34 +08:00
8b97bdf55e
refactor(web/user/info): drop DOMPurify 2022-10-08 19:38:50 +08:00
bbcd51e7c6
fix(web/blog/slide): replace state
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-08 17:16:00 +08:00
b6cb61d046
fix: edb8176f8f
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-08 16:25:30 +08:00
5c26699829
fix: 94ac59929e
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-08 15:42:30 +08:00
30dc0d7d70
fix(web/register): return 404 when disable register
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-08 14:38:14 +08:00
833c8c2c80
refactor(web/blog/delete): bootstrap5 2022-10-08 14:28:02 +08:00
4779cb3bcc
fix(web/blog): ban contest_only user 2022-10-08 14:10:14 +08:00
edb8176f8f
refactor(web/blog/self_reviews): bootstrap5
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-08 14:05:30 +08:00
94ac59929e
fix(web): responsible table 2022-10-08 14:04:26 +08:00
8ad7d5cb00
fix: df519e2d4a
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-08 13:45:02 +08:00
23ff07e9e1
fix: a90815b20c
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-08 12:47:46 +08:00
6582722f50
feat(web/problems/solution): is_hidden badge icon
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-08 12:10:41 +08:00
d614b8ddcb
fix(web/blog/archive): is_hidden text 2022-10-08 12:09:23 +08:00
a674a54e8b
feat(web/problems): my_problem badge 2022-10-08 12:07:49 +08:00
a90815b20c
feat(web/problems): is_hidden badge 2022-10-08 12:04:54 +08:00
b97d606b07
fix: f0974dbe82
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-08 10:25:54 +08:00
f0974dbe82
feat(web/problem/solution): hidden solutions
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-08 10:06:44 +08:00
a97a05553b
chore: remove table-striped class
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-08 08:50:23 +08:00
a7da66b04f
fix(web/problem/statistics): margin-top of titles
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-07 21:51:27 +08:00
df519e2d4a
fix: 922b5bbeb1
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-07 18:32:25 +08:00
2cfed336f1
refactor: announcements page with bs5
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-07 18:24:11 +08:00
922b5bbeb1
feat: contest progress text in standings page 2022-10-07 18:16:17 +08:00
5f24f88392
fix: style
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-07 17:31:09 +08:00
63b7768f78
feat: force-login and open-register config
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-07 17:29:26 +08:00
b737505f3f
refactor: login page with bs5 2022-10-07 16:47:52 +08:00
cad5bb9a44
refactor: blog_write page with bs5 2022-10-07 13:17:33 +08:00
8ca3b7b2b5
fix: contest registrants button color 2022-10-07 13:09:56 +08:00
6a91c0521c
feat: contest navigator in problem page
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-07 09:31:31 +08:00
911263eed3
refactor: problem_statistics page with bs5
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-07 09:13:49 +08:00
d1374e99eb
feat: move problem sidebar items 2022-10-07 09:13:35 +08:00
c5bb4a1a67
feat: redirect to login instead of return 403
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-06 20:28:43 +08:00
c2c569da31
fix: 比赛资料
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-06 20:22:31 +08:00
ebd4ee92f3
fix(web/contest): table-success
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-06 11:57:24 +08:00
a2a2a559fc
fix: margin-right of status icon 2022-10-06 11:38:10 +08:00
236c338a68
fix: post_question button
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-06 10:07:55 +08:00
3fb14ca50d
feat(judger): uoj_judger_v2 (#2)
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-06 07:30:42 +08:00
1daf709df8
fix: user_info admin card
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-05 18:53:51 +08:00