feat(teams): add opt-in /teamsync reposition to tidy existing team roles
Creation-time placement only positions NEW team roles. Team roles made before divider placement existed (sitting at the bottom of the role list) stayed put. Add `reposition_team_roles(guild)` and expose it via `/teamsync reposition:true` (off by default, so the hourly task never reorders roles on its own). It moves each EXISTING team role under its game's divider, sheet-driven: - a role's game/divider comes from sheets.get_game_for_team; - roles whose team is no longer in the sheet (or game unknown) are left alone; - idempotent: a role already within its section band (below its own divider, above the next divider down) is skipped, so re-runs move nothing. Adds RepositionSummary, TEAMSYNC_UI/OPT strings, and tests. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01R6JZkyszyDFuFtk25WBbcR
This commit is contained in:
@@ -82,6 +82,7 @@ CMD: dict[str, str] = {
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
OPT: dict[str, str] = {
|
||||
"teamsync_reposition": "Paiguta ka olemasolevad tiimirollid nende mängu jaotise alla",
|
||||
"admin_kasutaja": "Kasutaja",
|
||||
"admin_põhjus": "Põhjus (saadetakse kasutajale DM kaudu)",
|
||||
"admincoins_kogus": "Positiivne = anna, negatiivne = võta",
|
||||
|
||||
Reference in New Issue
Block a user