Design refresh + a bunch of stuff (#2864)

Co-authored-by: hfcRed <hfcred@gmx.net>
This commit is contained in:
Kalle
2026-03-19 17:51:42 +02:00
committed by GitHub
parent fcc5c5f273
commit fef1ffc955
830 changed files with 35854 additions and 16836 deletions

View File

@@ -175,6 +175,31 @@ erDiagram
The database structure is mimicking the `brackets-manager.js` library. See this issue for a schema: [https://github.com/Drarig29/brackets-manager.js/issues/111#issuecomment-997417423](https://github.com/Drarig29/brackets-manager.js/issues/111#issuecomment-997417423)
## Tournament Teams
```mermaid
erDiagram
Tournament ||--o{ TournamentTeam : has
TournamentTeam ||--|{ TournamentTeamMember : has
User ||--o{ TournamentTeamMember : member_of
TournamentTeam }o--o| AllTeam : team
```
### Notes
- `isPlaceholder` - temporary team created automatically when an unregistered user joins the LFG queue
- `isLooking` - team is visible in the LFG page
- `teamId` - optional link to a sendou.ink team (for avatar/name)
#### Placeholder team lifecycle
- Unregistered user joins LFG -> placeholder team created (`isPlaceholder: 1`)
- Registered user joins LFG -> existing team reused, only `isLooking` flag toggled
- Placeholder user registers for tournament -> placeholder team deleted, new regular team created
- Placeholder + placeholder merge -> surviving team set to `isPlaceholder: 0`
- Placeholder + registered team merge -> registered team always survives
- On merge, each member's `isStayAsSub` preference is preserved
## Tournament organizations
```mermaid