Skip to content

exclude inactive records from default volunteer and opportunity views - #929

Open
ivannissimrch wants to merge 3 commits into
developfrom
ivannissimrch/637-hide-inactive-by-default
Open

exclude inactive records from default volunteer and opportunity views#929
ivannissimrch wants to merge 3 commits into
developfrom
ivannissimrch/637-hide-inactive-by-default

Conversation

@ivannissimrch

@ivannissimrch ivannissimrch commented Aug 13, 2026

Copy link
Copy Markdown
Collaborator

Description

Inactive volunteers and inactive opportunities no longer show up in the dashboard by default, and are not counted in the results number at the top. Ticking "Inactive" in the filters brings them back.

The reason nothing was filtered before: the query only got a status (or engagement) param for boxes the user had ticked. On a fresh page load, nothing is ticked, so no param was sent at all, so the server had nothing to filter by and returned everything.

The fix supplies a default set when the user has selected nothing, and it does that at the API call site rather than inside the shared serializer.

Both default lists are derived from the SDK enums rather than written by hand, so a new status added later shows up by default instead of silently disappearing.

The counts needed no work. count comes back from the server with the filtered list, so filtering the query filters the count.

useCopyEmails gets a snapshot of the filter taken before the defaults are applied, so copy-all still includes inactive volunteers

Also open: the issue only mentions inactive, so past opportunities are still visible by default. I was on the fence about including opp-past too and went with what the issue says. Happy to add it, it is one line.

Related Issues

Closes #637

Changes

  • Restored the Inactive option to the opportunity status filter. It was added by fix: add Inactive option to opportunity status filter #435 on 4 May and removed by 🐛 fix: resolve TypeScript errors from SDK drift #734 (834888b4) on 24 June, when the SDK had temporarily dropped OpportunityStatusType.INACTIVE. The SDK has the value back, and the opp-inactive translation keys were still in both locale files, so this is a one-line revert.
  • DEFAULT_OPPORTUNITY_STATUSES and DEFAULT_VOLUNTEER_ENGAGEMENTS, both derived from the SDK enums
  • Both list controllers supply those defaults when no filter is selected
  • The volunteer side strips the vol- prefix the same way the existing serializer does, since the backend re-adds it

Screenshots / Demos

Screencast.from.2026-08-13.06-52-45.mp4

Checklist

  • WITHIN THE SCOPE OF AN ISSUE; No unnecessary files included
  • Tests added/updated
  • Documentation updated
  • CI passes

@ivannissimrch ivannissimrch self-assigned this Aug 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat: exclude inactive records from default view — volunteers, opportunities, and summary counts

1 participant