package seasonsview
import "git.haelnorr.com/h/oslstats/internal/db"
import "git.haelnorr.com/h/oslstats/internal/view/baseview"
import "git.haelnorr.com/h/oslstats/internal/view/pagination"
import "git.haelnorr.com/h/oslstats/internal/view/sort"
import "fmt"
import "time"
import "github.com/uptrace/bun"
import "git.haelnorr.com/h/oslstats/internal/contexts"
import "git.haelnorr.com/h/oslstats/internal/permissions"
templ ListPage(seasons *db.List[db.Season]) {
@baseview.Layout("Seasons") {
@SeasonsList(seasons)
}
}
templ SeasonsList(seasons *db.List[db.Season]) {
{{
permCache := contexts.Permissions(ctx)
canAddSeason := permCache.HasPermission(permissions.SeasonsCreate)
sortOpts := []db.OrderOpts{
{
Order: bun.OrderDesc,
OrderBy: "start_date",
Label: "Start Date (Newest First)",
},
{
Order: bun.OrderAsc,
OrderBy: "start_date",
Label: "Start Date (Oldest First)",
},
{
Order: bun.OrderAsc,
OrderBy: "name",
Label: "Name (A-Z)",
},
{
Order: bun.OrderDesc,
OrderBy: "name",
Label: "Name (Z-A)",
},
}
}}
}
func formatDate(t time.Time) string {
return t.Format("02/01/2006") // DD/MM/YYYY
}