Commit Graph

627 Commits

Author SHA1 Message Date
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