diff options
Diffstat (limited to 'web/templates.templ')
| -rw-r--r-- | web/templates.templ | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/web/templates.templ b/web/templates.templ index 9be2daf..d1719b8 100644 --- a/web/templates.templ +++ b/web/templates.templ @@ -180,6 +180,49 @@ templ RideDetailContent(data RideDetailView) { <div><dt>Elevation</dt><dd>{ formatElevation(data.Ride.TotalElevationGainM) }</dd></div> </dl> </section> + <section class="panel categories-panel"> + <div class="categories-layout"> + <div class="categories-heading"> + <p class="eyebrow">Curation</p> + <h2>Categories</h2> + </div> + <form method="post" action={ templ.URL(rideCategoriesUpdateURL(data.Ride.ID)) } class="category-form"> + <label for="ride-bike-type">Bike type + <select id="ride-bike-type" name="bike_type" required> + if data.Ride.BikeType == "" { + <option value="" selected>—</option> + } else { + <option value="">—</option> + } + for _, opt := range bikeTypeOptions { + if data.Ride.BikeType == opt { + <option value={ string(opt) } selected>{ bikeTypeLabels[opt] }</option> + } else { + <option value={ string(opt) }>{ bikeTypeLabels[opt] }</option> + } + } + </select> + </label> + <label for="ride-ride-type">Ride type + <select id="ride-ride-type" name="ride_type" required> + if data.Ride.RideType == "" { + <option value="" selected>—</option> + } else { + <option value="">—</option> + } + for _, opt := range rideTypeOptions { + if data.Ride.RideType == opt { + <option value={ string(opt) } selected>{ rideTypeLabels[opt] }</option> + } else { + <option value={ string(opt) }>{ rideTypeLabels[opt] }</option> + } + } + </select> + </label> + <button class="button" type="submit">Save</button> + </form> + </div> + </section> if data.HasRoute { if len(data.Profile.OfficialClimbs()) > 0 { <section class="panel official-climbs-panel"> |
