Commit Graph

2768 Commits

Author SHA1 Message Date
Andy Brett
759c5d6bdd don't override existing addresses on order with AddressFinder 2021-08-25 13:11:48 -07:00
Andy Brett
d86148420a improve shipping_method_id handling 2021-08-24 12:29:48 -07:00
Andy Brett
7dd2c09641 ensure terms are accepted before order is placed 2021-08-24 12:29:23 -07:00
Andy Brett
3414d9f057 clear errors on ship address as well 2021-08-24 12:15:20 -07:00
Andy Brett
71076d36a1 favor dig to protect against nils 2021-08-24 11:54:02 -07:00
Andy Brett
874e1d7f02 only advance order to payment if no payment exists 2021-08-24 11:23:08 -07:00
Andy Brett
417770e716 guard against nil when populating ship address 2021-08-24 11:22:20 -07:00
Andy Brett
ea695105b5 populate ship address with bill address if no ship address 2021-08-24 10:57:36 -07:00
Jean-Baptiste Bellet
9fd126ca0f The ship address is filled from bill address for some attributes
firstname, lastname and phone are the same between those two address. Fill it automatically.
2021-08-23 15:42:29 +02:00
Jean-Baptiste Bellet
1ecfeca88c Populate view with both shipping_method_id & ship_address_same_as_billing
... and then handle correctly the display of the form
2021-08-23 15:23:53 +02:00
Jean-Baptiste Bellet
fe65359d71 Display no shipping method selected error 2021-08-23 10:16:53 +02:00
Andy Brett
3bee30ac60 clear error messages on order and bill address on first load 2021-08-20 09:18:08 -07:00
Jean-Baptiste Bellet
26c5361b0a set shipping method only if param is present 2021-08-20 09:18:08 -07:00
Andy Brett
138b7824ba remove ship address if shipping method does not require it 2021-08-19 10:18:11 -07:00
Andy Brett
dd00c30503 fill ship address with bill address if checkbox is checked 2021-08-19 10:17:51 -07:00
Andy Brett
c07046e2f6 return an error if no shipping method is selected 2021-08-19 10:16:46 -07:00
Matt-Yorkley
63dc188d5e Merge pull request #8032 from Matt-Yorkley/order-confirm
Split checkout backend
2021-08-16 23:12:06 +02:00
Matt-Yorkley
b94c586bc5 Merge pull request #7992 from jibees/7959-populate-hub-for-packing-report
Add appropriate distributors and suppliers to the packing report
2021-08-14 12:38:35 +02:00
Matt-Yorkley
fb6ee65865 Remove more (currently) unused code 2021-08-12 17:24:20 +01:00
Matt-Yorkley
1d074c2151 Extract callbacks to a concern 2021-08-12 13:06:50 +01:00
Matt-Yorkley
1147c5b2ca Update saved address loading 2021-08-12 12:53:45 +01:00
Matt-Yorkley
026e51081c Clear invalid payments
When going back and changing the payment option, the previous payment gets invalidated.
2021-08-12 12:53:45 +01:00
Matt-Yorkley
41c62b97d5 Use flash.now unless redirecting 2021-08-12 12:53:45 +01:00
Matt-Yorkley
dbefd95b5e Improve order workflow shipping method selection 2021-08-12 12:53:45 +01:00
Matt-Yorkley
5d9c4315d8 Remove dead code 2021-08-12 12:53:45 +01:00
Matt-Yorkley
99f0672f9d Set order amount when creating payment object 2021-08-12 12:53:45 +01:00
Matt-Yorkley
598e81ed32 Progress order to address at start of checkout 2021-08-12 12:53:45 +01:00
Matt-Yorkley
7e8daea233 Reduce data loading on steps 2021-08-12 12:53:45 +01:00
Matt-Yorkley
4916f823aa Handle order confirmation 2021-08-12 12:53:45 +01:00
Matt-Yorkley
41ffffe170 Tidy up use of @checkout_step 2021-08-12 12:53:45 +01:00
Matt-Yorkley
070cb1abc1 Improve checkout flow logic 2021-08-11 15:54:21 +01:00
Matt-Yorkley
d113f2a5fc Merge pull request #8004 from jibees/split-checkout-step-3
Split checkout step 3
2021-08-11 16:41:23 +02:00
Matt-Yorkley
a631d057f1 Update payment methods form 2021-08-11 15:22:28 +01:00
Jean-Baptiste Bellet
b66b1fcdae Add step 3 2021-08-11 15:22:26 +01:00
Matt-Yorkley
85e83807cf Merge pull request #7989 from Matt-Yorkley/invoice-display
Invoice display
2021-08-10 14:14:41 +02:00
Matt-Yorkley
2a5675c526 Merge pull request #7746 from Matt-Yorkley/puma
Puma
2021-08-05 11:55:05 +02:00
Matt-Yorkley
05dcf75ff9 Merge pull request #7990 from Matt-Yorkley/void-transactions
Cancel payments on stock shortages
2021-08-05 00:38:33 +02:00
Matt-Yorkley
b15ae89944 Merge pull request #7840 from jibees/new-checkout-first-step
New checkout first + second step
2021-08-03 12:00:26 +02:00
Matt-Yorkley
6f2035febe Update (provisional) checkout actions boilerplate 2021-08-03 11:24:13 +02:00
Matt-Yorkley
2207aae679 Add strong params for checkout
We'll need to add more as we go
2021-08-03 11:24:08 +02:00
Matt-Yorkley
a32ca23ca5 Simplify routes and partials 2021-08-03 11:24:03 +02:00
Matt-Yorkley
1b112961d1 Handle request timeouts explicitly with rack-timeout
Puma doesn't terminate execution of long-running requests by default.
2021-07-31 13:11:10 +01:00
Matt-Yorkley
e1393c96ca Correctly void transactions when payments are cancelled due to stock issues 2021-07-27 23:24:00 +01:00
Matt-Yorkley
83f6132b6a Fix shipping tax display in regular invoice template 2021-07-27 22:01:24 +01:00
Jean-Baptiste Bellet
4acc942100 Add appropriate distributors and suppliers to the packing report
ie. the ones that are distributing/supplying products the current user is distributing/supplying

 - As the orders_and_fullfillment reports already had the right filled distributors and suppliers, use the same method: add_appropriate_distributors_and_suppliers
2021-07-27 18:06:30 +02:00
Matt-Yorkley
886e03af2f Merge pull request #7805 from Matt-Yorkley/adjustments-admin
[Adjustments] Admin adjustments
2021-07-27 12:23:29 +02:00
Andy Brett
3d77ba49ac pseudocode flow for steps 2021-07-26 15:47:36 +02:00
Andy Brett
939169c504 remove unused advance_to_state param 2021-07-26 15:47:36 +02:00
Jean-Baptiste Bellet
91c4beea0f No need to add flash error for error
as we render error on each input with error
2021-07-26 15:47:36 +02:00
Jean-Baptiste Bellet
151a6fd16b Add first stimulus controllers to display elements
1. Introduce a stimulus toggle_controller

 - controller: { "data-controller": "toggle" }
 - action: { "data-action": "toggle#toggle" }
 - show or not: { "data-toggle-show":  true || false  }
- targets: { "data-toggle-target": "content", style: "display: none" }
Display payment method price

2. States are populated via a new dependant_select_controller by stimulus.
Usage:

 - controller : { "data-controller": "dependant-select", "data-dependant-select-options-value": [ [1: ["option", "for", "1"], [2: ["option", "for", "2"] ] }
 - target (on the populating target):  { "data-dependant-select-target": "select" }
 - source and action (on the input that leads the dependant select): {"data-dependant-select-target": "source", "data-action": "dependant-select#handleSelectChange"}
Some improvements on readability

3. Populate ShippingMethod description thanks to "shippingmethod_controller"


+
 - Add countries and states
2021-07-26 15:47:36 +02:00