diff --git a/controllers/cartItemController.go b/controllers/cartItemController.go index f86909b..e5dc767 100644 --- a/controllers/cartItemController.go +++ b/controllers/cartItemController.go @@ -20,6 +20,7 @@ type CartItemController interface { AddItemHandler(*gin.Context) DeleteItemHandler(*gin.Context) EditItemHandler(*gin.Context) + CheckoutView(*gin.Context) } type cartItemController struct {} @@ -134,10 +135,16 @@ func (rc *cartItemController) CartItemView(c *gin.Context) { c.HTML(http.StatusBadRequest, "cart.html", gin.H{ "data": gin.H{ "error": err } }) } - fmt.Printf("CARTITEMS: %v\n", cartItems) + priceTotal := 0.0 + for _, cartItem := range cartItems { + priceTotal += (float64(cartItem.Quantity) * cartItem.ShopItem.Price) + } + + fmt.Println("PRICE TOTAL", priceTotal) data := CreateSessionData(c, gin.H{ "cartItems": cartItems, + "priceTotal": fmt.Sprintf("%.2f", priceTotal), //round 2 decimals }) c.HTML(http.StatusOK, "cart.html", data) @@ -187,7 +194,6 @@ func (rc *cartItemController) EditItemHandler(c *gin.Context) { cartItem, err := repositories.CartItems.GetById(cartItemId) if err != nil { - fmt.Println("BLAA") fmt.Println(err) rc.CartItemView(c) return @@ -210,9 +216,12 @@ func (rc *cartItemController) EditItemHandler(c *gin.Context) { _, err = repositories.CartItems.Update(cartItem) if err != nil { - fmt.Println("BLUB") fmt.Println(err) } rc.CartItemView(c) } + +func (rc *cartItemController) CheckoutView(c *gin.Context) { + c.HTML(http.StatusOK, "checkout.html", gin.H{}) +} diff --git a/main.go b/main.go index a9baab7..74e7a25 100644 --- a/main.go +++ b/main.go @@ -89,6 +89,7 @@ func main() { viewRoutes.POST("/cart", cartItemController.AddItemHandler) viewRoutes.POST("/cart/delete", cartItemController.DeleteItemHandler) viewRoutes.POST("/cart/edit", cartItemController.EditItemHandler) + viewRoutes.GET("/checkout", cartItemController.CheckoutView) //write middleware that redirects to homescreen on register/login/reset for logged in users viewRoutes.GET("/login", userController.LoginView) diff --git a/static/output.css b/static/output.css index 31de76b..86dfbdc 100644 --- a/static/output.css +++ b/static/output.css @@ -847,10 +847,6 @@ video { margin-bottom: calc(1.5rem * var(--tw-space-y-reverse)); } -.whitespace-nowrap { - white-space: nowrap; -} - .rounded { border-radius: 0.25rem; } @@ -946,11 +942,6 @@ video { background-color: rgb(22 163 74 / var(--tw-bg-opacity, 1)); } -.bg-indigo-50 { - --tw-bg-opacity: 1; - background-color: rgb(238 242 255 / var(--tw-bg-opacity, 1)); -} - .bg-indigo-600 { --tw-bg-opacity: 1; background-color: rgb(79 70 229 / var(--tw-bg-opacity, 1)); @@ -1040,11 +1031,6 @@ video { padding-bottom: 0.5rem; } -.py-2\.5 { - padding-top: 0.625rem; - padding-bottom: 0.625rem; -} - .py-24 { padding-top: 6rem; padding-bottom: 6rem; @@ -1339,11 +1325,6 @@ video { background-color: rgb(21 128 61 / var(--tw-bg-opacity, 1)); } -.hover\:bg-indigo-100:hover { - --tw-bg-opacity: 1; - background-color: rgb(224 231 255 / var(--tw-bg-opacity, 1)); -} - .hover\:bg-indigo-500:hover { --tw-bg-opacity: 1; background-color: rgb(99 102 241 / var(--tw-bg-opacity, 1)); diff --git a/views/cart.html b/views/cart.html index b4f5a0e..ed582a3 100644 --- a/views/cart.html +++ b/views/cart.html @@ -31,9 +31,9 @@
{{ .ShopItem.Abstract }}
+ {{ end }} @@ -69,18 +69,13 @@Shipping taxes, and discounts - calculated - at checkout
- +Shipping calculated at checkout
+ Checkout
+ + {{ .data.error }} +
++ {{ .data.success }} +
+ + +