Commit Graph

151 Commits

Author SHA1 Message Date
8cfa371af5
Merge branch 'master' into remotejudge-prepare 2023-01-19 12:40:52 +08:00
73f5298911
feat(problem): display remote problem url 2023-01-19 11:49:15 +08:00
4523109085
fix(problem/remote): difficulty 2023-01-19 11:47:35 +08:00
fbed1162c0
fix(problems/new_remote): codeforces sample 2023-01-19 11:05:16 +08:00
8041b49bd8
feat(problem): import remote problem 2023-01-18 16:20:12 +08:00
d6997b8475
feat(web): prepare remote judge 2023-01-18 10:21:53 +08:00
469fc99ca7
refactor(contest): not rejudge submissions after contest 2023-01-18 09:29:43 +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
dc3515353e
feat: bootstrap5 msg page
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-16 08:11:15 +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
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
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
1ebcda02d6
feat(web/contest): username color 2023-01-14 18:24:03 +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
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
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
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
1ce6ddd8cb feat(web): UOJForm::addCheckboxes() 2022-12-24 12:06:39 +08:00
0f4977727a
feat(web): UOJForm::addInput() 2022-12-23 22:10:14 +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
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
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
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
586df479f6
refactor(web/problem): difficulty 2022-12-05 17:14:43 +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
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
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
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
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
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
1c94b98efc
refactor(web): use UOJUser::getLink() 2022-11-12 07:11:49 +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
3c4cc702c3
chore(web): remove show-text option of click-zan block 2022-11-09 21:37:37 +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
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
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
844c93da84
refactor: sync code from uoj.ac 2022-11-06 10:26:21 +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
ee6169f621
fix(web/group): group rank list pagination 2022-10-22 09:29:51 +08:00
92626c1193
chore(web): HTML::navListGroup 2022-10-21 11:38:19 +08:00
3985b97f2e
feat(web/user): qq avatar 2022-10-20 10:02:53 +08:00
1eb342120e
feat(web/user): show codeforces rating 2022-10-20 08:44:55 +08:00
e33e3ef413
refactor(web/user/edit): user_edit_v2 2022-10-19 21:59:16 +08:00
54b8415cf5
fix: 8a7930e18c
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-19 11:23:22 +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
8a7930e18c
feat(web): mention a user in markdown 2022-10-18 08:53:57 +08:00
60ba1a5829
feat(web/user_info/motto): markdown support 2022-10-12 19:13:33 +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
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
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
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
354c417737
fix: c30374732e
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-04 16:44:14 +08:00
2af4a869f3
fix: style 2022-10-04 16:35:07 +08:00
8703631db8
fix: c30374732e
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-04 16:33:24 +08:00
8a288ceff5
feat: last active at
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-04 16:31:08 +08:00
c30374732e
feat: re-login every week 2022-10-04 14:58:46 +08:00
dec731f86f
fix: problem page items
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-03 14:28:33 +08:00
0704b85065
refactor: blog_index and blog_archive with bs5
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-02 17:02:17 +08:00
327c61a251
refactor: problem_statement_manage with bs5 2022-10-02 14:25:22 +08:00
83488ad7cf
feat: add sidebar
All checks were successful
continuous-integration/drone/push Build is passing
2022-09-25 14:16:36 +08:00
bd79eebb44
refactor: submissions_list with bs5 2022-09-24 08:13:39 +08:00
0ab54aac78
fix: 6926a6f912
All checks were successful
continuous-integration/drone/push Build is passing
2022-09-20 18:25:48 +08:00
52dfec62cd
fix: 387fdf968b
All checks were successful
continuous-integration/drone/push Build is passing
2022-09-20 18:11:10 +08:00
6926a6f912
fix: pagination count table 2022-09-20 17:19:11 +08:00
387fdf968b
fix: HTML::url
All checks were successful
continuous-integration/drone/push Build is passing
2022-09-20 16:50:29 +08:00
08624f88e0
fix: style
All checks were successful
continuous-integration/drone/push Build is passing
2022-09-20 15:49:26 +08:00
bd09e2aae6
fix: path == '/'
All checks were successful
continuous-integration/drone/push Build is passing
2022-09-20 15:44:04 +08:00
29371d550e
fix: blog url
All checks were successful
continuous-integration/drone/push Build is passing
2022-09-20 15:30:23 +08:00
919c1aa21f
Fix
All checks were successful
continuous-integration/drone/push Build is passing
2022-09-20 14:02:23 +08:00
bbe8110120
feat: paginator first_page and last_page 2022-09-18 21:17:52 +08:00
d2a07c5265
feat: new markdown style 2022-09-18 20:47:21 +08:00
410631075e
fix: style 2022-09-18 12:58:35 +08:00
71214c0631
fix(web): 8703281ab3 2022-03-20 18:23:40 +08:00
4957f3aaea
feat(web): db port 2022-03-20 12:55:01 +08:00
8cf76566cb
chore(web): use gravatar.loli.net as gravatar mirror 2022-03-20 08:15:03 +08:00
1bc7762be6
feat(web/blog): remove draft 2022-03-17 16:38:39 +08:00
e1631c09b5
fix(web): blog & phpv8 2022-03-17 16:19:43 +08:00
2f4ed55d9d
feat(*): remove rating 2022-03-17 11:02:44 +08:00
Leo Lu
b8f82be3dc Reformated with php-cs-fixer 2020-07-02 23:12:06 +08:00
Masco Skray
c49b69aa86 style(web): upgrade to Bootstrap 4 view with new artworks
Let's welcome brand new look made by Bootstrap 4!
Not only website but also our logo is being flat now.
The new logo uses blue as main color, to be different from original.
For us, it also shows the project has up to a new stage.
We hope that the project will get better and better.

BREAKING CHANGE: The path for users to place their images is renamed.
Logos are saved as new names too. Users should move "pictures" to "images".
Any modifications should suit the Bootstrap 4's standard.
2019-09-10 10:25:07 +08:00
Masco Skray
2156cdffef feat(web): add a new way to access blog
We add a new way to access blog page. Now there are 3.
The switch now uses number to choose the way.
1 is for subdomain and 3 is for subfolder.
2 is for separated blog domain with its subfolder.
For example, mike's link is blog.xxx.xxx/mike.
Blog list page link on navbar will change by domain mode.
2019-07-12 14:30:00 +08:00
Masco Skray
0854940fe0 style(web): change link location of blog functions
When using sub-directory blog, the 'blogof' not looks so good.
And, there are duplicate 'blog' characters, which making people uncomfortable.
So, for sub-directory blog, use 'blog' instead of 'blogof'.
'blog' is not as a sub folder or type anymore, use 'post' instead.

BREAKING CHANGE: Due to the conflict of 'blog' sub-directory, when go to blog post,
now should use 'blogs/{id}'; but when subdomain mode is on, you can still use 'blog'
to access these blog posts. 'blogof' is no longer used, and you need to inform users
that blog link is changed, to avoid the inaccessbility.
2019-07-12 12:13:30 +08:00