feat: Rename Families CRM to Players CRM — player-centric view #30

Closed
opened 2026-03-16 23:04:00 +00:00 by forgejo_admin · 0 comments

Lineage

plan-wkq → Phase 10 (Playground)

Repo

forgejo_admin/westside-playground

User Story

As Marcus, I manage players not families. The CRM should organize by player with parent contact as a detail column.

Context

admin-families.html (created in PR #22) organizes by family/parent. But Marcus thinks in players — who showed up, who's on a team, who's paying. A parent with 2 kids = 2 player rows. The parent is just the billing contact for under-18 players.

Changes:

  1. Rename admin-families.htmladmin-players.html (create new file, we'll delete the old one later)
  2. Change page title: "Families" → "Players"
  3. Restructure each row: Player name is primary, then age group, team assignment, contact (parent name + phone if under 18, player's own if 18+), payment status, email
  4. Filter tabs: All | Leads | Active | Overdue (same filters, just organized by player)
  5. Update admin.html stat card links: change admin-families.html references to admin-players.html

File Targets

  • Create admin-players.html — player-centric CRM page (based on admin-families.html but reorganized)
  • admin.html — update stat card links from admin-families.html to admin-players.html

Acceptance Criteria

  • admin-players.html exists with title "Players"
  • Each row shows: Player name (primary), Age group (15U/16U/17U), Team, Contact (parent or self), Payment status badge, Email
  • Filter tabs: All | Leads | Active | Overdue
  • Search filters by player name (not parent name)
  • Tap-to-call on contact phone numbers
  • Player name links to player-profile.html
  • 10-15 placeholder player rows with mix of statuses and age groups
  • Include some 18+ players who have their own email (no parent listed)
  • admin.html stat cards link to admin-players.html instead of admin-families.html
  • Bottom nav: Dashboard | Teams | Sign Out

Test Expectations

  • No automated tests (static HTML). Visual verification only.

Constraints

  • HTML + CSS + minimal JS (reuse tab/search/filter patterns from admin-families.html)
  • Use existing CSS from shared/app.css
  • Keep admin-families.html in place for now (don't delete — just create the new file)

Checklist

  • PR opened
  • No unrelated changes
  • project-westside-basketball
### Lineage `plan-wkq` → Phase 10 (Playground) ### Repo `forgejo_admin/westside-playground` ### User Story As Marcus, I manage players not families. The CRM should organize by player with parent contact as a detail column. ### Context `admin-families.html` (created in PR #22) organizes by family/parent. But Marcus thinks in players — who showed up, who's on a team, who's paying. A parent with 2 kids = 2 player rows. The parent is just the billing contact for under-18 players. Changes: 1. Rename `admin-families.html` → `admin-players.html` (create new file, we'll delete the old one later) 2. Change page title: "Families" → "Players" 3. Restructure each row: **Player name** is primary, then age group, team assignment, contact (parent name + phone if under 18, player's own if 18+), payment status, email 4. Filter tabs: All | Leads | Active | Overdue (same filters, just organized by player) 5. Update `admin.html` stat card links: change `admin-families.html` references to `admin-players.html` ### File Targets - Create `admin-players.html` — player-centric CRM page (based on admin-families.html but reorganized) - `admin.html` — update stat card links from `admin-families.html` to `admin-players.html` ### Acceptance Criteria - [ ] `admin-players.html` exists with title "Players" - [ ] Each row shows: Player name (primary), Age group (15U/16U/17U), Team, Contact (parent or self), Payment status badge, Email - [ ] Filter tabs: All | Leads | Active | Overdue - [ ] Search filters by player name (not parent name) - [ ] Tap-to-call on contact phone numbers - [ ] Player name links to `player-profile.html` - [ ] 10-15 placeholder player rows with mix of statuses and age groups - [ ] Include some 18+ players who have their own email (no parent listed) - [ ] `admin.html` stat cards link to `admin-players.html` instead of `admin-families.html` - [ ] Bottom nav: Dashboard | Teams | Sign Out ### Test Expectations - No automated tests (static HTML). Visual verification only. ### Constraints - HTML + CSS + minimal JS (reuse tab/search/filter patterns from admin-families.html) - Use existing CSS from `shared/app.css` - Keep admin-families.html in place for now (don't delete — just create the new file) ### Checklist - [ ] PR opened - [ ] No unrelated changes ### Related - `project-westside-basketball`
Sign in to join this conversation.
No labels
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-playground#30
No description provided.