Kyoso-Team / kyoso

A web application that takes osu! tournaments beyonds spreadsheets.
http://kyoso.sh
GNU Affero General Public License v3.0
1 stars 1 forks source link

Design tournament settings page #48

Closed L-Mario564 closed 3 weeks ago

L-Mario564 commented 2 months ago

Why?

The tournament host (and anyone with the necessary permissions) must be able to update the tournament's settings.

How?

Using the tournament related procedures (lib/server/procedures.ts) the frontend has provide a UI to update different fields within the Tournament and TournamentDates tables.

Only users with host, debug or manage_tournament permissions are able to view this page.

The tournament related tRPC procedures must be carefully checked that all of the below conditions for each item is met and add any missing functionality.

Tournament

Only the host change the following:

Only the host change the following + Can only be updated while the tournament isn't public, after it's public, it shouldn't be possible to update these value. The UI must communicate this to the user:

Users with host, debug or manage_tournament permissions can update the following:

TournamentDates

The following conditions applies for every column in this table (except for other).

The other column, similarly to the link column in Tournament can be updated at any date or time, as they're just for the sake of display, not being tied to important functionality. Can be updated via UI that allows the user to create, modify and delete dates. Users with host, debug or manage_tournament permissions can update this column.

"Danger Zone"

At the bottom of the page, there should be a "Danger Zone" section that only the host is able to see, in which the following functionality is present:

Absolutely none of these settings can be changed once the tournament is concluded, which includes the inability to delete the tournament and grant host to another staff member.

L-Mario564 commented 1 month ago

Update: Danger zone functionality will be addressed in a separate issue.