From 9d3b0fec6dacf79cc091c4dff8ad182b833b4faa Mon Sep 17 00:00:00 2001 From: Ruidy Date: Fri, 9 Feb 2024 12:05:15 +0100 Subject: [PATCH] use htmx to add line items eliminates a db round trip --- internal/server/handlers.go | 9 ++- internal/views/base.templ | 1 + internal/views/base_templ.go | 25 +++++-- internal/views/booking_by_id.templ | 18 ++--- internal/views/booking_by_id_templ.go | 101 +++++++++++--------------- internal/views/line_item.templ | 17 +++++ internal/views/line_item_templ.go | 85 ++++++++++++++++++++++ 7 files changed, 174 insertions(+), 82 deletions(-) create mode 100644 internal/views/line_item.templ create mode 100644 internal/views/line_item_templ.go diff --git a/internal/server/handlers.go b/internal/server/handlers.go index 2b6af85..6af8624 100644 --- a/internal/server/handlers.go +++ b/internal/server/handlers.go @@ -1,8 +1,11 @@ package server import ( + "bytes" + "encoding/json" "fmt" "net/http" + "os" "strconv" "time" @@ -47,9 +50,9 @@ func (s Server) handleCreateBooking() echo.HandlerFunc { return err } - ts, err := parseTime(c.FormValue("from")) + ts, _ := parseTime(c.FormValue("from")) nb.From = ts - ts, err = parseTime(c.FormValue("to")) + ts, _ = parseTime(c.FormValue("to")) nb.To = ts b := &booking.Booking{ @@ -111,7 +114,7 @@ func (s Server) handleCreateItem() echo.HandlerFunc { PaymentMethod: ni.PaymentMethod, } _ = s.db.Create(i) - return c.Redirect(http.StatusSeeOther, fmt.Sprintf("%s/%d", constants.RouteBooking, bid)) + return s.renderTempl(c, http.StatusCreated, views.LineItem(i)) } } diff --git a/internal/views/base.templ b/internal/views/base.templ index 42cd6e7..f100b55 100644 --- a/internal/views/base.templ +++ b/internal/views/base.templ @@ -11,6 +11,7 @@ templ BaseLayout() { +