feat(display): limit /adults and /juniors to last N months by default #38

Merged
kacerr merged 5 commits from feat/months-to-show into main 2026-06-08 11:31:46 +02:00
Owner

Show only the last MONTHS_TO_SHOW months (default 5) in the fee table columns so the page fits on screen. Reconciliation still runs over full history so balances/credits/debts are unaffected. Set MONTHS_TO_SHOW=0 to show all months. Implemented in both Python and Go.

Show only the last `MONTHS_TO_SHOW` months (default 5) in the fee table columns so the page fits on screen. Reconciliation still runs over full history so balances/credits/debts are unaffected. Set `MONTHS_TO_SHOW=0` to show all months. Implemented in both Python and Go.
kacerr added 4 commits 2026-06-08 11:19:09 +02:00
chore(changelog): add entry for fee rate update 2026-05 through 2026-08
All checks were successful
Build and Push / build (push) Successful in 11s
Build and Push / build-go (push) Successful in 1m24s
72e29b1882
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Juniors with exactly 1 session get expected='?' (manual-review marker
from attendance.py). The fill-first allocation block summed and cast
expected values numerically without guarding against this, causing a
TypeError: unsupported operand type(s) for +: 'int' and 'str' on the
/juniors route whenever any matched payment landed on such a month.

Add _expected_amount() helper that coerces non-numeric markers to 0
(same convention the final-balance calculation at line 512 already used)
and apply it in the two failing spots plus the existing isinstance check.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
feat(display): limit /adults and /juniors to last N months by default
All checks were successful
Deploy to K8s / deploy (push) Successful in 17s
c0487e3af0
Show only the last MONTHS_TO_SHOW months (default 5) in the fee table columns
so the page fits on screen without horizontal scrolling. Reconciliation still
runs over the full month history so balances, credits, and debts are unaffected.
Set MONTHS_TO_SHOW=0 to show all months. Implemented in both Python and Go.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
kacerr added 1 commit 2026-06-08 11:28:44 +02:00
fix(display): default from-selector to last N months; keep all months selectable
All checks were successful
Deploy to K8s / deploy (push) Successful in 12s
c2a381bb63
Instead of hiding older months entirely, show all months in the from/to
selectors but default the from-select to the last MONTHS_TO_SHOW months
on page load. The "All" button resets to full history as before.

Python: passes months_to_show to render_template, IIFE sets fromSelect.value.
Go: adds MonthsToShow to response structs, data-months-to-show attr in
templates, filters.js reads it and defaults fromSelect after hideFutureMonths.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
kacerr merged commit 6f2994b8ad into main 2026-06-08 11:31:46 +02:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: kacerr/fuj-management#38