Uh, oh!
+Something has failed. Below are some details for debugging.
++ {{.errorMsg}} ++
diff --git a/src/frontend/handlers.go b/src/frontend/handlers.go index a03be31..7e84bac 100644 --- a/src/frontend/handlers.go +++ b/src/frontend/handlers.go @@ -288,14 +288,24 @@ func (fe *frontendServer) placeOrderHandler(w http.ResponseWriter, r *http.Reque order.GetOrder().GetItems() recommendations, _ := fe.getRecommendations(r.Context(), sessionID(r), nil) + totalPaid := *order.GetOrder().GetShippingCost() + for _, v := range order.GetOrder().GetItems() { + totalPaid = money.Must(money.Sum(totalPaid, *v.GetCost())) + } + if err := templates.ExecuteTemplate(w, "order", map[string]interface{}{ "session_id": sessionID(r), "user_currency": currentCurrency(r), "order": order.GetOrder(), + "total_paid": &totalPaid, "recommendations": recommendations, }); err != nil { log.Println(err) } + + if err := fe.emptyCart(r.Context(), sessionID(r)); err != nil { + log.Printf("WARN: failed to empty user (%s) cart after checkout: %+v", sessionID(r), err) + } } func (fe *frontendServer) prepareCheckoutHandler(w http.ResponseWriter, r *http.Request) { diff --git a/src/frontend/templates/cart.html b/src/frontend/templates/cart.html index 790e710..64b5842 100644 --- a/src/frontend/templates/cart.html +++ b/src/frontend/templates/cart.html @@ -123,7 +123,11 @@
Something has failed. Below are some details for debugging.
++ {{.errorMsg}} ++
- Order Confirmation ID: {{ $.order }} -
+
+ Order Confirmation ID: {{.order.OrderId}}
+
+ Shipping Tracking ID: {{.order.ShippingTrackingId}}
+
+ Shipping Cost: {{renderMoney .order.ShippingCost}}
+
+ Total Paid: {{renderMoney .total_paid}}
+