package seasonsview import "git.haelnorr.com/h/oslstats/internal/db" import "git.haelnorr.com/h/oslstats/internal/contexts" import "git.haelnorr.com/h/oslstats/internal/permissions" templ LeaguesSection(season *db.Season, allLeagues []*db.League) { {{ permCache := contexts.Permissions(ctx) canAddLeague := permCache.HasPermission(permissions.SeasonsAddLeague) canRemoveLeague := permCache.HasPermission(permissions.SeasonsRemoveLeague) // Create a map of assigned league IDs for quick lookup assignedLeagueIDs := make(map[int]bool) for _, league := range season.Leagues { assignedLeagueIDs[league.ID] = true } }} if canAddLeague || canRemoveLeague {

Leagues

if len(season.Leagues) > 0 {

Currently Assigned

for _, league := range season.Leagues {
{ league.Name } ({ league.ShortName }) if canRemoveLeague { }
}
} if canAddLeague && len(allLeagues) > 0 { {{ // Filter out already assigned leagues availableLeagues := []*db.League{} for _, league := range allLeagues { if !assignedLeagueIDs[league.ID] { availableLeagues = append(availableLeagues, league) } } }} if len(availableLeagues) > 0 {

Add League

for _, league := range availableLeagues { }
} }
} }