Commit Graph

150 Commits

Author SHA1 Message Date
Gaetan Craig-Riou
b80274f49d Per review comment, Use named value on voucher submit button to distinguish between submission types
The voucher apply button is inside form that has another a submit button,
it leads to a weird situation where either one will submit the whole
payments page form. Adding a named parameter on the voucher apply button
means we can distinguish between the two by checking for the presence
of params[:apply_voucher].
2023-05-15 13:42:39 +10:00
Gaetan Craig-Riou
92bcd937dc Per review comment, remove form object from the partial
This partial is rendered inside another <form> element, nested form
don't work.
2023-05-15 13:42:39 +10:00
Gaetan Craig-Riou
0a249d7722 Fix ButtonEnableToggleController to remove hacky button disable
As per review comment, use data-disable-with="false" do prevent Rails
from automatically enabling the "Apply" button. We can then remove
the timeout hack.
2023-05-15 13:42:39 +10:00
Gaetan Craig-Riou
236f6926d9 Cleaning up left over TODOs 2023-05-15 13:42:39 +10:00
Gaetan Craig-Riou
aa526a639c Checkout payment page, enable voucher "apply" button when code entered
The "apply" button is disabled by default. If left enabled, a customer
could try to apply an empty voucher, which results in system trying
to move to the order summary step, an unexpected behaviour!
We only enable the button when something is entered in the input.
2023-05-15 13:42:39 +10:00
Gaetan Craig-Riou
815dcbcefe Fix translations 2023-05-15 13:42:39 +10:00
Gaetan Craig-Riou
3f37554ff9 Add VoucherAdjustmentsController and specs
Refactor split checkout to use the new controller. But unfortunately
we can't have nested form, so adding a voucher is still handled by
SplitCheckoutController.
2023-05-15 13:42:39 +10:00
Gaetan Craig-Riou
fe9b94a80e Fix cart disappearing bug after adding a voucher
The split checkout page uses `mrujs` and `CableCar` to set the form as
a remote one and perform `CableCar` operation if any : https://mrujs.com/how-tos/integrate-cablecar
The previous solution broke the cart handled by angularJS, it looks like
`morpdom` (https://mrujs.com/references/remote-forms-and-links Navigation Adapter section )
was doing something that angularJS didn't like when redirecting to
the current page.
With the power of `CableCar`, we now replace the #voucher-section on the
split checkout page instead of doing a redirect.
2023-05-15 13:42:39 +10:00
Gaetan Craig-Riou
d157d91054 When voucher cover more than order total, use only amount needed
The checkout payment step will also show a warning.
The amount used is stored in the adjustment created, so we will be able
to track how much has been used down the line.
2023-05-15 13:42:38 +10:00
Gaetan Craig-Riou
74a8730f04 Highlight voucher on order summary step 2023-05-15 13:42:38 +10:00
Gaetan Craig-Riou
e487ed0532 Add link to remove voucher when a voucher has been applied
Improve styling to match the design
2023-05-15 13:42:37 +10:00
Gaetan Craig-Riou
a9d9b33f7d First take at adding a voucher to an order
Use voucher.create_adjustment to add an adjustment to the order
Currently doesn't take into account tax part
2023-05-15 13:42:37 +10:00
Gaetan Craig-Riou
f7ee01b9f8 Add voucher input on checkout payment's step
Voucher input is displayed  only if the distributor has any voucher
2023-05-15 13:42:37 +10:00
David Cook
ef607da2c1 Revert "Fix: Customers can checkout with non-matching shipping and product categories" 2023-03-17 10:40:53 +11:00
Rachel Arnould
d7047bb4cc Merge pull request #10513 from jibees/10505-add-shopper-comment-to-order-detail-summary
SplitCheckout: Display special_instructions of the order as emphasized text if present on summary page
2023-03-08 10:30:40 +01:00
Rachel Arnould
1ce029d8e4 Merge pull request #10497 from jibees/10495-split-checkout-label-of-checkbox-save-card-for-future-use-is-clickable-but-not-active
SplitCheckout: Make label clickable to check/uncheck checkbox on step 2
2023-03-08 10:20:00 +01:00
Jean-Baptiste Bellet
c34942dbf0 Display special_instructions of order as emphasized text if present
+ update spec as well
2023-03-03 11:12:11 +01:00
Mohamed ABDELLANI
348f806bbe remove load_shipping_methods 2023-03-01 10:53:03 +01:00
Mohamed ABDELLANI
eab8e2be6c load exclusively the shipping methods that support all the shipping categories of the line items 2023-03-01 10:51:27 +01:00
Jean-Baptiste Bellet
08e23023b3 Make label clickable to check/uncheck checkbox 2023-03-01 08:46:33 +01:00
Jean-Baptiste Bellet
64b7ccc2ba Do not display payment method description if not present
This avoid an empty section with `Instructions` title empty
2023-01-24 15:06:46 +01:00
Filipe
f917027cb1 Merge pull request #10249 from jibees/10228-split-checkout-error-422-on-step-2-payment-update-highlighted-fields
SplitCheckout: Fix an issue that was sending unintentionally bad params for payment
2023-01-24 10:31:49 +00:00
Jean-Baptiste Bellet
3247c32191 Be consistant and use data-paymentmethod-id attribute
as already used on other element
2023-01-23 17:48:54 +01:00
Jean-Baptiste Bellet
251ab2ac9a Payment method id attribute don't need to start with paymentmethod 2023-01-23 17:46:26 +01:00
Jean-Baptiste Bellet
c99ec38c85 By default, we reject all adjustements with amount equal to 0 2023-01-20 11:20:35 +01:00
Jean-Baptiste Bellet
37f359542e Remove bold on firstname+lastname 2023-01-20 11:20:35 +01:00
Jean-Baptiste Bellet
21b74386f9 Introduce mobile view for summary step 2023-01-20 11:20:35 +01:00
Jean-Baptiste Bellet
ef572668d5 Let's keep fees next to the payment or shipping method 2023-01-20 11:20:35 +01:00
Jean-Baptiste Bellet
1ea9c15bb8 Put total on the summary box on the right 2023-01-20 11:20:34 +01:00
Jean-Baptiste Bellet
cc838d2c88 Remove sentence 2023-01-20 11:20:34 +01:00
Jean-Baptiste Bellet
99fcbad0f0 On split checkout, do not display footer on order summary
introduced via `display_footer` which is by default `true`
2023-01-20 11:20:34 +01:00
Jean-Baptiste Bellet
52959a913f New step3: two columns, more condensed 2023-01-20 11:20:34 +01:00
Jean-Baptiste Bellet
7320a1714c Instead of selecting the controller, send an event handled by stripe-cards
Using a query selector to find controller in order to call method could be dangerous as the DOM can change. Using an event should be more robust.
2023-01-18 17:40:17 +01:00
Jean-Baptiste Bellet
1e1ec95a5a Include payment form right after the payment description
which is right after the radio input that select the payment description
2022-12-28 15:24:46 +01:00
Jean-Baptiste Bellet
2d86e8857a Put payment method description just above the
+ update spec by adding `data-paymentmethod-id` attribute
2022-12-28 15:21:29 +01:00
Jean-Baptiste Bellet
f1bb4fdf38 Same display css rules for price of payment and shipping method
+ update spec since parenthesis are added by css
2022-12-28 15:21:29 +01:00
Jean-Baptiste Bellet
ca1a850d4a Show shipping method description just bellow the radio input 2022-12-28 15:21:29 +01:00
Jean-Baptiste Bellet
93e736fdf6 Use label as a placeholder that move above the input when focused
Couldn't make a pure CSS version because of the way rails generates its errors (it add `<span />` over the element, either `input` or `label`, itself)
2022-12-27 10:47:18 +01:00
Jean-Baptiste Bellet
988dcc6081 Use two columns for contact info and first/last name
For small screen, it's a one column
2022-12-27 10:46:59 +01:00
Jean-Baptiste Bellet
d43f0331ac Contact information section for email + phone number
+ add first name and last name to the billing address section
2022-12-27 10:46:38 +01:00
Jean-Baptiste Bellet
151e71b4d9 Actually controller is named dependEnt-select 2022-10-26 11:21:44 +02:00
Maikel Linke
4a0ed99919 Replace Paperclip on Enterprise model
We configured Paperclip to convert images to JPG in some cases but I
omitted that here because we don't need it. If an image is better
represented as PNG or another format then the user should be able to
choose that.

Some specs were also testing the generated URL but the Active Storage
URL doesn't contain a style name anymore and it's not helpful to test
the URL.
2022-06-01 17:16:55 +10:00
Jean-Baptiste Bellet
d942adcdd0 Change i18n key on first step
Delivery address --> shipping info
2022-05-11 10:11:51 +02:00
Jean-Baptiste Bellet
89aa76dbbc Handle long payment description with no space 2022-04-29 10:15:50 +02:00
Jean-Baptiste Bellet
99c0416cc7 Handle long shipping method description with no spaces 2022-04-28 10:40:28 +02:00
Filipe
f29dc3f978 Merge pull request #9009 from jibees/9007-already-opened-cart
SplitCheckout: add already opened cart message on summary step when distributor allow order changes
2022-04-01 13:29:34 +01:00
Filipe
c4fc8e9396 Merge pull request #8988 from jibees/8963-sc-display-save-shipping-address-as-default-checkbox
SplitCheckout: Display checkbox that "save as default address" on the /details page
2022-03-31 16:43:52 +01:00
filipefurtad0
843f57ad4f Removes checkbox attributes 2022-03-29 22:29:43 +01:00
filipefurtad0
95b1911f38 Hides the default address checkbox for guest customers 2022-03-29 22:09:39 +01:00
jibees
9a5318965c Use as an helper
Co-Authored-By: Maikel <maikel@email.org.au>
2022-03-24 09:11:58 +01:00