package web
templ Layout(title string, content templ.Component) {
{ title } ยท biking_home
@content
}
templ RidesPage(items []RideView, headers []RideSortHeader) {
@Layout("Rides", RidesContent(items, headers))
}
templ RidesContent(items []RideView, headers []RideSortHeader) {
Ride library
if len(items) == 0 {
} else {
for _, header := range headers {
| { header.Label }{ header.Indicator } |
}
for _, item := range items {
{ item.Name } { item.Type } | { formatRideDate(item.StartDate) } | { formatDistance(item.DistanceM) } | { formatDuration(item.MovingTimeS) } | { formatElevation(item.TotalElevationGainM) } | { item.Cotacol } | { item.CotacolPer100Km } |
}
}
}
templ SyncPage(data SyncPageData) {
@Layout("Sync Strava", SyncContent(data))
}
templ SyncContent(data SyncPageData) {
Data import
Sync Strava rides
Choose a date range. New rides are downloaded as GPX files and recorded in the local library.
if data.Notice != "" {
{ data.Notice }
}
if data.Error != "" {
{ data.Error }
}
if !data.HasAuth {
Strava authorization is required before the first sync.
Authorize Strava
} else {
}
}