Skip to content

Conversation

@tobiichi3227
Copy link
Collaborator

This PR includes a series of minor fixes and UI improvements across multiple pages, focusing on improving usability, consistency, and preventing unexpected behaviors.

The changes address layout issues, filtering behavior, scroll stability, permission checks, and several edge cases that could lead to confusing or broken user experiences.

UI / UX Improvements

  • Align TopCoder avatar, name, and motto vertically for a cleaner layout
  • Prevent textarea from jumping to the bottom when editing large content
  • Unify testdata IDs to start from 1 across challenge and management pages

Data Consistency

  • Fix missing user rate cache refresh
  • Ensure user total rate calculation follows TOJ specification
  • Exclude contest challenges from user total rate calculation

Bug Fixes

  • Fix responsive images not being visible on mobile devices
  • Fix testdata file download issue caused by escaped query parameters
  • Resolve f-string syntax conflict with JavaScript template literals
  • Fix runtime error in challenge list state filter
  • Prevent non-member accounts from viewing contest pages
  • Remove expensive folder size calculation from the system info page to avoid blocking the service
  • Disable account link interaction when the user is not logged in
  • Hide manage buttons from non-admin users
  • Preserve existing filter parameters when clicking Your ID
  • Prevent Your ID filter from overriding other active filters

… page

This should run in a separate thread; otherwise, when the folder size is
too large, the calculation can take a long time and block the service.We
will reintroduce this feature in the future.
When state = NotStart/Challenging, challist should not be empty.
Otherwise, it would result in an out-of-bounds array access.
Resetting the textarea height to `auto` on every input caused layout
reflow and scroll position resets when editing large contents.

This change updates the height only when `scrollHeight` exceeds
`offsetHeight`, preventing unnecessary resizing and scroll jumps.
In chal page, testdata id start from 1, but in manage testdata page,
testdata id start from 0.
This inconsistency could confuse administrators.
Manual modify original css style is not good idea.
@tobiichi3227 tobiichi3227 merged commit 26f08d8 into TFcis:v2.0 Jan 14, 2026
8 of 12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants