diff --git a/src/storefront/cart.py b/src/storefront/cart.py index 0cb41b8..b2eb9f0 100644 --- a/src/storefront/cart.py +++ b/src/storefront/cart.py @@ -16,7 +16,8 @@ from core import ( OrderStatus, ShippingMethodType, ShippingService, - ShippingContainer + ShippingContainer, + CoffeeGrind ) from .payments import CreateOrder @@ -172,14 +173,18 @@ class Cart: return response def build_bulk_list(self, order): - bulk_list = [OrderLine( - order=order, - product=item['product'], - customer_note=f"{item['variations']}", - unit_price=item['price'], - quantity=item['quantity'], - tax_rate=2, - ) for item in self] + bulk_list = [] + + for item in self: + for key, value in item['variations'].items(): + bulk_list.append(OrderLine( + order=order, + product=item['product'], + customer_note=next((v[1] for i, v in enumerate(CoffeeGrind.GRIND_CHOICES) if v[0] == key), None), + unit_price=item['price'], + quantity=value['quantity'], + tax_rate=2, + )) return bulk_list diff --git a/src/storefront/views.py b/src/storefront/views.py index 1a47477..f3a9b76 100644 --- a/src/storefront/views.py +++ b/src/storefront/views.py @@ -234,6 +234,8 @@ class OrderCreateView(CreateView): return JsonResponse(data) +@csrf_exempt +@require_POST def paypal_order_transaction_capture(request, transaction_id): if request.method =="POST": data = CaptureOrder().capture_order(transaction_id) diff --git a/src/templates/base.html b/src/templates/base.html index 492562d..0dec078 100644 --- a/src/templates/base.html +++ b/src/templates/base.html @@ -7,7 +7,7 @@ -