package teamsview import "git.haelnorr.com/h/oslstats/internal/db" import "fmt" import "sort" templ TeamDetailPlayerStats(playerStats []*db.TeamAllTimePlayerStats) { if len(playerStats) == 0 {

No player stats yet.

Player statistics will appear here once games are played.

} else {
@playerStatsTable(playerStats, "goals")
@playerStatsTable(playerStats, "assists")
@playerStatsTable(playerStats, "saves")
} } templ playerStatsTable(playerStats []*db.TeamAllTimePlayerStats, statType string) { {{ // Make a copy so sorting doesn't affect other views sorted := make([]*db.TeamAllTimePlayerStats, len(playerStats)) copy(sorted, playerStats) switch statType { case "goals": sort.Slice(sorted, func(i, j int) bool { return sorted[i].Goals > sorted[j].Goals }) case "assists": sort.Slice(sorted, func(i, j int) bool { return sorted[i].Assists > sorted[j].Assists }) case "saves": sort.Slice(sorted, func(i, j int) bool { return sorted[i].Saves > sorted[j].Saves }) } statLabel := "Goals" statShort := "G" if statType == "assists" { statLabel = "Assists" statShort = "A" } else if statType == "saves" { statLabel = "Saves" statShort = "SV" } _ = statLabel }}
for i, ps := range sorted { if statType == "goals" { } else if statType == "assists" { } else { } }
# Player SZN PP { statShort }
{ fmt.Sprint(i + 1) } { ps.PlayerName } { fmt.Sprint(ps.SeasonsPlayed) } { fmt.Sprint(ps.PeriodsPlayed) }{ fmt.Sprint(ps.Goals) }{ fmt.Sprint(ps.Assists) }{ fmt.Sprint(ps.Saves) }
}