fix: restore Sep+Oct adult merge and stop auto-truncating period selector
All checks were successful
Deploy to K8s / deploy (push) Successful in 9s
All checks were successful
Deploy to K8s / deploy (push) Successful in 9s
Two regressions made older periods invisible on the adults dashboard: -1257f0d(Mar 9) commented out ADULT_MERGED_MONTHS, removing the Sep+Oct 2025 merged label. Restored only the 2025-09 → 2025-10 mapping (Dec and Jan are billed separately for adults; the Dec → Jan mapping stays disabled per product decision). Mirrored on the Go side. Test fixtures in sources_test.go now assert Sep dates land in merged 2025-10 instead of 2025-09. -7774301(Apr 9) added a JS onload default that set the From selector to maxMonthIdx − 4 and immediately filtered the table, hiding everything older than 5 months on first load. Dropped that default in templates/adults.html and templates/juniors.html so the From-selector starts at the oldest available month. Future months are still removed from the dropdowns and hidden in the table — only the past-month truncation is gone. Note: the live adults attendance sheet had also been pruned to start at 02.12.2025; restoring Sep/Oct/Nov 2025 columns from Sheets version history is required to actually see those periods. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -27,7 +27,9 @@ const (
|
||||
|
||||
// AdultMergedMonths mirrors ADULT_MERGED_MONTHS in scripts/attendance.py.
|
||||
// Source month → target month (source attendance accumulated into target).
|
||||
var AdultMergedMonths = map[string]string{}
|
||||
var AdultMergedMonths = map[string]string{
|
||||
"2025-09": "2025-10",
|
||||
}
|
||||
|
||||
// JuniorMergedMonths mirrors JUNIOR_MERGED_MONTHS in scripts/attendance.py.
|
||||
var JuniorMergedMonths = map[string]string{
|
||||
|
||||
@@ -46,8 +46,8 @@ func TestLoadAdults(t *testing.T) {
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
// adultMergedMonths is empty so 2025-09 stays as-is
|
||||
if len(months) != 1 || months[0] != "2025-09" {
|
||||
// AdultMergedMonths sends 2025-09 → 2025-10
|
||||
if len(months) != 1 || months[0] != "2025-10" {
|
||||
t.Errorf("unexpected months: %v", months)
|
||||
}
|
||||
if len(members) != 2 {
|
||||
@@ -55,7 +55,7 @@ func TestLoadAdults(t *testing.T) {
|
||||
}
|
||||
byName := map[string]int{}
|
||||
for _, m := range members {
|
||||
byName[m.Name] = m.Fees["2025-09"].Attendance
|
||||
byName[m.Name] = m.Fees["2025-10"].Attendance
|
||||
}
|
||||
if byName["Alice"] != 2 {
|
||||
t.Errorf("Alice: want 2 sessions, got %d", byName["Alice"])
|
||||
@@ -73,9 +73,9 @@ func TestLoadAdults_Fee(t *testing.T) {
|
||||
}
|
||||
byName := map[string]int{}
|
||||
for _, m := range members {
|
||||
byName[m.Name] = m.Fees["2025-09"].Expected
|
||||
byName[m.Name] = m.Fees["2025-10"].Expected
|
||||
}
|
||||
// 2 sessions in 2025-09 → AdultFeeMonthlyRate["2025-09"] = 750
|
||||
// 2 sessions land in merged 2025-10 → AdultFeeMonthlyRate["2025-10"] = 750
|
||||
if byName["Alice"] != 750 {
|
||||
t.Errorf("Alice fee: want 750, got %d", byName["Alice"])
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user