|
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
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
continuous-integration/drone/push Build is passing
|
2023-01-15 20:47:54 +08:00 |
|
|
d410dff7d8
|
feat(forgot_pw): add client info in email
continuous-integration/drone/push Build is passing
|
2023-01-15 20:15:52 +08:00 |
|
|
e43444e02d
|
feat: reset_password
continuous-integration/drone/push Build is passing
|
2023-01-15 20:01:37 +08:00 |
|
|
fadf722527
|
feat: mount config file instead of passing env
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
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
continuous-integration/drone/push Build is passing
|
2023-01-15 09:38:29 +08:00 |
|
|
6dcd43b914
|
feat(user): more username colors
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
continuous-integration/drone/push Build is passing
|
2023-01-14 18:45:36 +08:00 |
|
|
ad84197187
|
Merge branch 'username-color'
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
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
continuous-integration/drone/push Build is passing
|
2023-01-14 15:14:05 +08:00 |
|
|
6a4f9a370a
|
feat(web/lists): add redirect after create list
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
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
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
continuous-integration/drone/push Build is passing
|
2023-01-11 11:17:08 +08:00 |
|
|
8b2de39c5f
|
feat: add copy button
continuous-integration/drone/push Build is passing
|
2023-01-11 10:48:20 +08:00 |
|
|
17fbb2c910
|
refactor(web/html2markdown): use turndown
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
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
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"
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
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
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
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
continuous-integration/drone/push Build is passing
|
2022-12-06 16:11:25 +08:00 |
|
|
9efa58fc0b
|
feat(web/problem): submit button outside statement page
continuous-integration/drone/push Build is passing
|
2022-12-06 14:51:09 +08:00 |
|
|
a5da5022fe
|
chore(web/problem): update default problem content
continuous-integration/drone/push Build is passing
|
2022-12-06 10:53:04 +08:00 |
|
|
0b238485e4
|
chore(web/problem): update difficulty colors
continuous-integration/drone/push Build is passing
|
2022-12-05 19:00:23 +08:00 |
|
|
c47f943257
|
fix(web/problem/manage): difficulty config
continuous-integration/drone/push Build is passing
|
2022-12-05 17:49:39 +08:00 |
|
|
c0484d55a5
|
chore(web/problem): show ? when difficulty not set
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
continuous-integration/drone/push Build is passing
|
2022-12-05 16:25:14 +08:00 |
|
|
848607a87d
|
feat(web/list): problem difficulty
continuous-integration/drone/push Build is passing
|
2022-12-05 12:05:33 +08:00 |
|
|
dfb47c4b32
|
feat(web/problems): difficulty filter
continuous-integration/drone/push Build is passing
|
2022-12-05 11:54:58 +08:00 |
|
|
248a924df7
|
chore(web): disable custom test
continuous-integration/drone/push Build is passing
|
2022-12-04 21:16:48 +08:00 |
|
|
6d0a665d8e
|
refactor(web/problem): problem difficulty (#20)
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
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
continuous-integration/drone/push Build is passing
|
2022-12-04 11:23:03 +08:00 |
|
|
4959e6da45
|
feat(web): hide realname when not logged in
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
continuous-integration/drone/push Build is passing
|
2022-11-23 16:31:37 +08:00 |
|
|
44b0087356
|
fix(web/list/new): list content
continuous-integration/drone/push Build is passing
|
2022-11-22 16:30:09 +08:00 |
|
|
4de873fb2c
|
fix(web/blog): comment login check
continuous-integration/drone/push Build is passing
|
2022-11-21 20:14:47 +08:00 |
|
|
6e9254e008
|
revert: 387fdf968b
continuous-integration/drone/push Build is passing
|
2022-11-19 11:58:04 +08:00 |
|
|
df6024c99f
|
fix(web): set locale
continuous-integration/drone/push Build is passing
|
2022-11-18 13:41:17 +08:00 |
|
|
6ee92bc5ee
|
fix(web/problem/solution): UOJBlog::getSolutionProblemId()
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
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
continuous-integration/drone/push Build is passing
|
2022-11-14 07:44:00 +08:00 |
|
|
85820d5b2c
|
chore(web/super_manage): users filter update
continuous-integration/drone/push Build is passing
|
2022-11-13 08:02:41 +08:00 |
|
|
48e4c56782
|
fix(web): SyncProblemDataHandler::copy_to_prepare()
continuous-integration/drone/push Build is passing
|
2022-11-12 20:25:06 +08:00 |
|
|
ff16bfbc84
|
fix(web/problem): limits default value
continuous-integration/drone/push Build is passing
|
2022-11-12 19:09:47 +08:00 |
|
|
4347189794
|
chore(web): page_len
continuous-integration/drone/push Build is passing
|
2022-11-12 15:39:17 +08:00 |
|
|
56344b759d
|
chore: add links to docs
continuous-integration/drone/push Build is passing
|
2022-11-12 15:12:40 +08:00 |
|
|
1517d453d9
|
chore(web/faq): heading font size
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
continuous-integration/drone/push Build is passing
|
2022-11-12 12:05:24 +08:00 |
|
|
274baec200
|
fix(web/lists): tags
continuous-integration/drone/push Build is passing
|
2022-11-12 11:37:07 +08:00 |
|
|
ef01c326b2
|
feat(web/contests): upcoming contests view permission check
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
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()
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
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
continuous-integration/drone/push Build is passing
|
2022-11-08 15:27:48 +08:00 |
|
|
6b785e8bc7
|
fix(web): subtask score info
continuous-integration/drone/push Build is passing
|
2022-11-07 22:02:56 +08:00 |
|
|
62a63c4c6e
|
fix(web): ClickZans::click
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
continuous-integration/drone/push Build is passing
|
2022-11-07 19:25:45 +08:00 |
|
|
4f5bbf82a5
|
fix(web/problem): page title
continuous-integration/drone/push Build is passing
|
2022-11-07 15:44:01 +08:00 |
|
|
eecd40efd8
|
chore(web/problem): default statement
continuous-integration/drone/push Build is passing
|
2022-11-07 13:57:23 +08:00 |
|
|
c84265a0a1
|
fix(web): subtask info item width
continuous-integration/drone/push Build is passing
|
2022-11-07 07:46:13 +08:00 |
|
|
20c0ddd958
|
fix(web/contest): UOJContest::userCanView
continuous-integration/drone/push Build is passing
|
2022-11-07 07:33:11 +08:00 |
|
|
70e3fbb93e
|
fix(web): school default value
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
continuous-integration/drone/push Build is passing
|
2022-11-06 17:35:22 +08:00 |
|
|
954a870ac0
|
fix(web/contest/submissions): simplify title
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
continuous-integration/drone/push Build is passing
|
2022-11-06 16:39:55 +08:00 |
|
|
079c405277
|
fix(web/problem_set): is_hidden, my filter
continuous-integration/drone/push Build is passing
|
2022-11-06 16:23:08 +08:00 |
|
|
a83f8302dc
|
fix: 75cb0f3749
continuous-integration/drone/push Build is passing
|
2022-11-06 16:02:39 +08:00 |
|
|
75cb0f3749
|
feat(web/contest/standings): first accepted
continuous-integration/drone/push Build is passing
|
2022-11-06 15:57:38 +08:00 |
|
|
c93e5d3c46
|
fix(web/contest): manager register contest
continuous-integration/drone/push Build is passing
|
2022-11-06 15:30:15 +08:00 |
|
|
d84c21bf68
|
chore(web/contest/register): ACM 罚时
continuous-integration/drone/push Build is passing
|
2022-11-06 15:21:38 +08:00 |
|
|
f3ce28c1f7
|
fix(web/submission_list): sql for view permission
continuous-integration/drone/push Build is passing
|
2022-11-06 15:00:59 +08:00 |
|
|
e1a4c8ffa3
|
fix: ec859e1564
continuous-integration/drone/push Build is passing
|
2022-11-06 14:22:22 +08:00 |
|
|
ec859e1564
|
fix(web/submissions): table header cell min-width
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
continuous-integration/drone/push Build is passing
|
2022-11-06 13:23:30 +08:00 |
|
|
db6b0ffdb4
|
fix: 61aebec03e
continuous-integration/drone/push Build is passing
|
2022-11-06 13:21:04 +08:00 |
|
|
61aebec03e
|
refactor: sync code from uoj.ac (#14)
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
continuous-integration/drone/push Build is passing
|
2022-11-04 16:51:49 +08:00 |
|
|
ca85ba3982
|
fix(web/index): countdown diff use ceil()
continuous-integration/drone/push Build is passing
|
2022-10-28 14:06:10 +08:00 |
|
|
0689c94351
|
feat(web): disable normal user download testdata
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
continuous-integration/drone/push Build is passing
|
2022-10-27 18:34:41 +08:00 |
|
|
4868c7fdfc
|
feat(web/contest): extra_registration config
continuous-integration/drone/push Build is passing
|
2022-10-24 12:10:59 +08:00 |
|
|
26809917a1
|
fix(web/super_manage/index/links): link weight
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
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
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)
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
continuous-integration/drone/push Build is passing
|
2022-10-22 11:55:39 +08:00 |
|
|
bae26f1c16
|
fix(web): prevent warning from HTMLPurifier
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
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
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
continuous-integration/drone/push Build is passing
|
2022-10-22 08:16:39 +08:00 |
|
|
a28e34e7e9
|
refactor(web/group/assignment): more simple db query
continuous-integration/drone/push Build is passing
|
2022-10-22 08:07:41 +08:00 |
|
|
49994cdc65
|
refactor(web/group/assignment): less db queries
continuous-integration/drone/push Build is passing
|
2022-10-22 07:46:42 +08:00 |
|
|
3cab411f4d
|
fix: f044ab8ed7
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
continuous-integration/drone/push Build is passing
|
2022-10-22 06:34:12 +08:00 |
|
|
892a56a881
|
fix(web/group/assignment): db query perf
continuous-integration/drone/push Build is passing
|
2022-10-21 22:18:10 +08:00 |
|
|
b6b8efd5fb
|
refactor(web/group): group v2 (#8)
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): 文案优化
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
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
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): "修改" -> “重置”
continuous-integration/drone/push Build is passing
|
2022-10-20 11:49:20 +08:00 |
|
|
6e676bca67
|
fix(web/user): codeforces icon fill color
continuous-integration/drone/push Build is passing
|
2022-10-20 11:41:50 +08:00 |
|
|
74d1cb6eea
|
fix(web/problem/solution): confirm before remove solution
continuous-integration/drone/push Build is passing
|
2022-10-20 11:25:35 +08:00 |
|
|
6b20408fc1
|
feat(web/user/edit): edit real name
continuous-integration/drone/push Build is passing
|
2022-10-20 11:18:01 +08:00 |
|
|
a9583e605e
|
refactor(web/user): user_info v2 (#6)
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
continuous-integration/drone/push Build is passing
|
2022-10-19 18:26:09 +08:00 |
|
|
07b3388f56
|
refactor(web/user/system_msg): two-column layout
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
continuous-integration/drone/push Build is passing
|
2022-10-19 11:23:22 +08:00 |
|
|
ea4cfd8376
|
refactor(web/contest/backstage): use card
continuous-integration/drone/push Build is passing
|
2022-10-18 18:42:57 +08:00 |
|
|
8d6c000c09
|
fix(web/problem/manage/data): left col width
continuous-integration/drone/push Build is passing
|
2022-10-18 17:14:52 +08:00 |
|
|
d562f18de5
|
fix(web): add missing .form-select class
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
continuous-integration/drone/push Build is passing
|
2022-10-18 15:02:40 +08:00 |
|
|
21e67e6fb5
|
refactor(web/problem/manage/data): bootstrap5
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
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
continuous-integration/drone/push Build is passing
|
2022-10-18 09:18:09 +08:00 |
|
|
ab51b193f4
|
fix(web): f574fe0055
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
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
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
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
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
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
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
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
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
continuous-integration/drone/push Build is passing
|
2022-10-16 10:18:49 +08:00 |
|
|
d5b6da80be
|
feat(web/html2markdown): add link to docs
continuous-integration/drone/push Build is passing
|
2022-10-15 08:54:05 +08:00 |
|
|
40817e212c
|
fix: c77c40c341
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
continuous-integration/drone/push Build is passing
|
2022-10-15 07:07:45 +08:00 |
|
|
75976d9bcc
|
fix(web): style
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 - 题目管理员
continuous-integration/drone/push Build is passing
|
2022-10-14 16:09:54 +08:00 |
|
|
14f7a0b60d
|
chore(web/image_hosting): add link to docs
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
continuous-integration/drone/push Build is passing
|
2022-10-13 21:23:52 +08:00 |
|
|
2e51c20d9f
|
fix(web/image_hosting): image size calc
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
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
continuous-integration/drone/push Build is passing
|
2022-10-11 16:15:14 +08:00 |
|
|
86d4b13cd6
|
fix(web): ParsedownMath
continuous-integration/drone/push Build is passing
|
2022-10-11 14:03:18 +08:00 |
|
|
bd5babfa29
|
chore: add upgrader for #3
continuous-integration/drone/push Build is passing
|
2022-10-11 13:34:05 +08:00 |
|
nekko
|
5e30f342fd
|
refactor(web): migrate to parsedown (#3)
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
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
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
continuous-integration/drone/push Build is passing
|
2022-10-10 17:30:01 +08:00 |
|
|
4018227d8b
|
fix(web/submissions): submission_list view permission
continuous-integration/drone/push Build is passing
|
2022-10-10 17:03:57 +08:00 |
|
|
baf96542ec
|
fix(web): style
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
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
continuous-integration/drone/push Build is passing
|
2022-10-09 21:45:29 +08:00 |
|
|
e71f73d81f
|
refactor(web): add HTML::purifier_inline() function
continuous-integration/drone/push Build is passing
|
2022-10-09 21:33:13 +08:00 |
|
|
2fcc71029e
|
chore(web): move gregwar/captcha
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
continuous-integration/drone/push Build is passing
|
2022-10-08 17:16:00 +08:00 |
|
|
b6cb61d046
|
fix: edb8176f8f
continuous-integration/drone/push Build is passing
|
2022-10-08 16:25:30 +08:00 |
|
|
5c26699829
|
fix: 94ac59929e
continuous-integration/drone/push Build is passing
|
2022-10-08 15:42:30 +08:00 |
|
|
30dc0d7d70
|
fix(web/register): return 404 when disable register
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 |
|