Add division filter to admin draft board #130

Closed
opened 2026-03-28 16:45:19 +00:00 by forgejo_admin · 1 comment

Type

Feature

Lineage

Discovered during girls roster validation 2026-03-28. Related to westside-app#129.

Repo

forgejo_admin/westside-app

User Story

As an admin, I want to assign players to teams via draft board so that placement is transparent and trackable (WS-S6).

Context

Draft board at /admin/teams shows all players (boys + girls) in one flat list with no way to filter. During roster meetings, coaches need to see only girls or only boys. A simple dropdown/toggle filter by division would make the board usable per-division.

File Targets

Files the agent should modify:

  • src/routes/(app)/admin/teams/+page.svelte -- add division filter dropdown, filter unassigned player list
  • src/routes/(app)/admin/teams/+page.ts -- may need to pass division options

Files the agent should NOT touch:

  • Backend API endpoints (no changes needed, data already includes division)
  • Any other routes

Acceptance Criteria

  • Division filter dropdown (All / Boys / Girls) visible on draft board
  • Selecting "Girls" shows only girls division players
  • Selecting "Boys" shows only boys division players
  • "All" shows everyone (default)
  • Team list also filters to show only teams matching selected division
  • Filter state persists during the session

Test Expectations

  • Visual validation via browser on desktop and mobile viewports
  • Filter correctly hides/shows players by division
  • Run command: npm run dev then browser validation

Constraints

  • Match existing UI style (dark theme, red accents)
  • Mobile-first -- filter must work on 390px screens
  • No new dependencies

Checklist

  • PR opened
  • Tested on mobile viewport
  • No unrelated changes
  • project-westside-basketball -- project this affects
  • westside-app#129 -- parent validation ticket
### Type Feature ### Lineage Discovered during girls roster validation 2026-03-28. Related to westside-app#129. ### Repo `forgejo_admin/westside-app` ### User Story As an admin, I want to assign players to teams via draft board so that placement is transparent and trackable (WS-S6). ### Context Draft board at `/admin/teams` shows all players (boys + girls) in one flat list with no way to filter. During roster meetings, coaches need to see only girls or only boys. A simple dropdown/toggle filter by division would make the board usable per-division. ### File Targets Files the agent should modify: - `src/routes/(app)/admin/teams/+page.svelte` -- add division filter dropdown, filter unassigned player list - `src/routes/(app)/admin/teams/+page.ts` -- may need to pass division options Files the agent should NOT touch: - Backend API endpoints (no changes needed, data already includes division) - Any other routes ### Acceptance Criteria - [ ] Division filter dropdown (All / Boys / Girls) visible on draft board - [ ] Selecting "Girls" shows only girls division players - [ ] Selecting "Boys" shows only boys division players - [ ] "All" shows everyone (default) - [ ] Team list also filters to show only teams matching selected division - [ ] Filter state persists during the session ### Test Expectations - [ ] Visual validation via browser on desktop and mobile viewports - [ ] Filter correctly hides/shows players by division - Run command: `npm run dev` then browser validation ### Constraints - Match existing UI style (dark theme, red accents) - Mobile-first -- filter must work on 390px screens - No new dependencies ### Checklist - [ ] PR opened - [ ] Tested on mobile viewport - [ ] No unrelated changes ### Related - `project-westside-basketball` -- project this affects - `westside-app#129` -- parent validation ticket
Author
Owner

Covered by PR #132 (which addresses both #130 and #131 in one PR). Division filter + admin role guard shipped together.

Covered by PR #132 (which addresses both #130 and #131 in one PR). Division filter + admin role guard shipped together.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
forgejo_admin/westside-landing#130
No description provided.