From c47d0e6b1010bf64fbe52ec7aff2d95d98976335 Mon Sep 17 00:00:00 2001 From: Dustin Pianalto Date: Fri, 7 Mar 2025 00:05:59 -0900 Subject: [PATCH] fix bug --- web/server.go | 2 +- web/templates/heats.templ | 23 ++++++++------------- web/templates/heats_templ.go | 39 ++++++++++++------------------------ 3 files changed, 22 insertions(+), 42 deletions(-) diff --git a/web/server.go b/web/server.go index 021f440..579babe 100644 --- a/web/server.go +++ b/web/server.go @@ -823,7 +823,7 @@ func (s *Server) handleHeatsContent() http.HandlerFunc { } // Render template - component := templates.HeatsContent(heats, racers) + component := templates.HeatsContent(heats, racers, groupID) if err := component.Render(r.Context(), w); err != nil { s.logger.Error("Failed to render heats content", "error", err) http.Error(w, "Failed to render content", http.StatusInternalServerError) diff --git a/web/templates/heats.templ b/web/templates/heats.templ index 11c45f9..d76559d 100644 --- a/web/templates/heats.templ +++ b/web/templates/heats.templ @@ -39,7 +39,7 @@ templ Heats(groups []models.Group, selectedGroupID int64, db *db.DB) {
if selectedGroupID > 0 { - @HeatsContent([]models.Heat{}, []models.Racer{}) + @HeatsContent([]models.Heat{}, []models.Racer{}, selectedGroupID) }
@@ -50,7 +50,7 @@ templ Heats(groups []models.Group, selectedGroupID int64, db *db.DB) { } } -templ HeatsContent(heats []models.Heat, racers []models.Racer) { +templ HeatsContent(heats []models.Heat, racers []models.Racer, groupID int64) { if len(racers) == 0 {
No racers in this group yet.
} else { @@ -69,10 +69,10 @@ templ HeatsContent(heats []models.Heat, racers []models.Racer) { for i, heat := range heats { { strconv.Itoa(i + 1) } - { getRacerName(racers, *heat.Lane1ID) } - { getRacerName(racers, *heat.Lane2ID) } - { getRacerName(racers, *heat.Lane3ID) } - { getRacerName(racers, *heat.Lane4ID) } + { getRacerName(racers, heat.Lane1ID) } + { getRacerName(racers, heat.Lane2ID) } + { getRacerName(racers, heat.Lane3ID) } + { getRacerName(racers, heat.Lane4ID) } } @@ -87,21 +87,14 @@ templ HeatsContent(heats []models.Heat, racers []models.Racer) { > Regenerate Heats - } } -func getRacerName(racers []models.Racer, id int64) string { +func getRacerName(racers []models.Racer, id *int64) string { for _, r := range racers { - if r.ID == id { + if id != nil && r.ID == *id { return r.FirstName + " " + r.LastName } } diff --git a/web/templates/heats_templ.go b/web/templates/heats_templ.go index f5bbd46..7e02bf5 100644 --- a/web/templates/heats_templ.go +++ b/web/templates/heats_templ.go @@ -98,7 +98,7 @@ func Heats(groups []models.Group, selectedGroupID int64, db *db.DB) templ.Compon return templ_7745c5c3_Err } if selectedGroupID > 0 { - templ_7745c5c3_Err = HeatsContent([]models.Heat{}, []models.Racer{}).Render(ctx, templ_7745c5c3_Buffer) + templ_7745c5c3_Err = HeatsContent([]models.Heat{}, []models.Racer{}, selectedGroupID).Render(ctx, templ_7745c5c3_Buffer) if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -117,7 +117,7 @@ func Heats(groups []models.Group, selectedGroupID int64, db *db.DB) templ.Compon }) } -func HeatsContent(heats []models.Heat, racers []models.Racer) templ.Component { +func HeatsContent(heats []models.Heat, racers []models.Racer, groupID int64) templ.Component { return templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context if templ_7745c5c3_CtxErr := ctx.Err(); templ_7745c5c3_CtxErr != nil { @@ -167,9 +167,9 @@ func HeatsContent(heats []models.Heat, racers []models.Racer) templ.Component { return templ_7745c5c3_Err } var templ_7745c5c3_Var7 string - templ_7745c5c3_Var7, templ_7745c5c3_Err = templ.JoinStringErrs(getRacerName(racers, *heat.Lane1ID)) + templ_7745c5c3_Var7, templ_7745c5c3_Err = templ.JoinStringErrs(getRacerName(racers, heat.Lane1ID)) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `web/templates/heats.templ`, Line: 72, Col: 48} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `web/templates/heats.templ`, Line: 72, Col: 47} } _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var7)) if templ_7745c5c3_Err != nil { @@ -180,9 +180,9 @@ func HeatsContent(heats []models.Heat, racers []models.Racer) templ.Component { return templ_7745c5c3_Err } var templ_7745c5c3_Var8 string - templ_7745c5c3_Var8, templ_7745c5c3_Err = templ.JoinStringErrs(getRacerName(racers, *heat.Lane2ID)) + templ_7745c5c3_Var8, templ_7745c5c3_Err = templ.JoinStringErrs(getRacerName(racers, heat.Lane2ID)) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `web/templates/heats.templ`, Line: 73, Col: 48} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `web/templates/heats.templ`, Line: 73, Col: 47} } _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var8)) if templ_7745c5c3_Err != nil { @@ -193,9 +193,9 @@ func HeatsContent(heats []models.Heat, racers []models.Racer) templ.Component { return templ_7745c5c3_Err } var templ_7745c5c3_Var9 string - templ_7745c5c3_Var9, templ_7745c5c3_Err = templ.JoinStringErrs(getRacerName(racers, *heat.Lane3ID)) + templ_7745c5c3_Var9, templ_7745c5c3_Err = templ.JoinStringErrs(getRacerName(racers, heat.Lane3ID)) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `web/templates/heats.templ`, Line: 74, Col: 48} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `web/templates/heats.templ`, Line: 74, Col: 47} } _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var9)) if templ_7745c5c3_Err != nil { @@ -206,9 +206,9 @@ func HeatsContent(heats []models.Heat, racers []models.Racer) templ.Component { return templ_7745c5c3_Err } var templ_7745c5c3_Var10 string - templ_7745c5c3_Var10, templ_7745c5c3_Err = templ.JoinStringErrs(getRacerName(racers, *heat.Lane4ID)) + templ_7745c5c3_Var10, templ_7745c5c3_Err = templ.JoinStringErrs(getRacerName(racers, heat.Lane4ID)) if templ_7745c5c3_Err != nil { - return templ.Error{Err: templ_7745c5c3_Err, FileName: `web/templates/heats.templ`, Line: 75, Col: 48} + return templ.Error{Err: templ_7745c5c3_Err, FileName: `web/templates/heats.templ`, Line: 75, Col: 47} } _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var10)) if templ_7745c5c3_Err != nil { @@ -232,20 +232,7 @@ func HeatsContent(heats []models.Heat, racers []models.Racer) templ.Component { if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } - templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 18, "\" hx-target=\"#heats-list\" hx-swap=\"innerHTML\">Regenerate Heats ") + templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 18, "\" hx-target=\"#heats-list\" hx-swap=\"innerHTML\">Regenerate Heats") if templ_7745c5c3_Err != nil { return templ_7745c5c3_Err } @@ -254,9 +241,9 @@ func HeatsContent(heats []models.Heat, racers []models.Racer) templ.Component { }) } -func getRacerName(racers []models.Racer, id int64) string { +func getRacerName(racers []models.Racer, id *int64) string { for _, r := range racers { - if r.ID == id { + if id != nil && r.ID == *id { return r.FirstName + " " + r.LastName } }