From ceee89fad0bdfb407b15b7963b9dbc51784eb72e Mon Sep 17 00:00:00 2001 From: Luis Ramos Date: Mon, 28 Sep 2020 14:44:41 +0100 Subject: [PATCH] Make Checkout form submit read terms_and_conditions_accepted from the checkout form checkbox --- .../javascripts/darkswarm/services/checkout.js.coffee | 9 ++++++++- .../unit/darkswarm/services/checkout_spec.js.coffee | 1 + 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/app/assets/javascripts/darkswarm/services/checkout.js.coffee b/app/assets/javascripts/darkswarm/services/checkout.js.coffee index 265588cd41..ef865012c2 100644 --- a/app/assets/javascripts/darkswarm/services/checkout.js.coffee +++ b/app/assets/javascripts/darkswarm/services/checkout.js.coffee @@ -46,7 +46,6 @@ Darkswarm.factory 'Checkout', ($injector, CurrentOrder, ShippingMethods, StripeE munged_order = default_bill_address: !!@default_bill_address default_ship_address: !!@default_ship_address - terms_and_conditions_accepted: true for name, value of @order # Clone all data from the order JSON object switch name @@ -96,6 +95,10 @@ Darkswarm.factory 'Checkout', ($injector, CurrentOrder, ShippingMethods, StripeE last_name: @order.bill_address.lastname save_requested_by_customer: @secrets.save_requested_by_customer } + + if @terms_and_conditions_accepted() + munged_order["terms_and_conditions_accepted"] = true + munged_order shippingMethod: -> @@ -115,3 +118,7 @@ Darkswarm.factory 'Checkout', ($injector, CurrentOrder, ShippingMethods, StripeE cartTotal: -> @order.display_total + @shippingPrice() + @paymentPrice() + + terms_and_conditions_accepted: -> + terms_and_conditions_checkbox = angular.element("#accept_terms")[0] + terms_and_conditions_checkbox? && terms_and_conditions_checkbox.checked diff --git a/spec/javascripts/unit/darkswarm/services/checkout_spec.js.coffee b/spec/javascripts/unit/darkswarm/services/checkout_spec.js.coffee index 8caacdc531..8c5d49633b 100644 --- a/spec/javascripts/unit/darkswarm/services/checkout_spec.js.coffee +++ b/spec/javascripts/unit/darkswarm/services/checkout_spec.js.coffee @@ -65,6 +65,7 @@ describe 'Checkout service', -> inject ($injector, _$httpBackend_, $rootScope)-> $httpBackend = _$httpBackend_ Checkout = $injector.get("Checkout") + spyOn(Checkout, "terms_and_conditions_accepted") scope = $rootScope.$new() scope.Checkout = Checkout Navigation = $injector.get("Navigation")