Rob Harrington
1fcbf6b44d
Clear shipping_method_id from order when restarting checkout
...
If the order is allowed to retain a shipping_method_id, then subsequent
saves of the order will cause a new shipment to be initialised. Seems to
only happen for delivery shipping methods. This is undesirable because
fees for the new shipment will appear in the checkout summary, which is
not smart enough to recognise existing shipment fees and adjust the order
total accordingly.
2017-10-13 12:53:35 +11:00
Rob Harrington
c031b0e52b
Clear shipments and payments after failed payment at checkout
2017-10-13 12:53:35 +11:00
Rob Harrington
61feb2b27d
Rename Stripe existing_card param key to existing_card_id
2017-09-23 14:58:34 +10:00
Rob Harrington
5c58d30ca7
Create payment from user-specified payment method when using existing card
2017-09-23 14:58:33 +10:00
Rob Harrington
ae2d3d3fd9
Refactoring StripeHelper into service objects
2017-09-23 14:58:32 +10:00
Rob Harrington
64009a2c9e
CheckoutController can render payment gateway error messages as json
2017-09-23 14:58:32 +10:00
Rob Harrington
269a60b36f
Adding request specs for case when using an existing card stored by Stripe for payment
2017-09-23 14:58:32 +10:00
stveep
c4f9a5a234
Add code to CheckoutController to construct card attributes when using an existing card (via a818fbbecd/core/app/models/spree/order/checkout.rb:212)
2017-09-23 14:58:31 +10:00
Rob Harrington
131d9384c2
Use flash.notice instead of flash.success to display order confirmation message
...
This way it overwrites any message that is set from spree, rather than displaying duplicate messages
2017-09-23 14:25:55 +10:00
Pau Perez
3a9b71bd1f
Add doc to methods and classes [skip ci]
2017-09-08 23:55:50 +10:00
Enrico Stano
62c5ccf904
Address CodeClimate complains
2017-09-08 23:55:50 +10:00
Pau Perez
e087a008c2
Reduce coupling from controller
2017-09-08 23:55:50 +10:00
Pau Perez
4c4969e86b
Do not couple with controller's ivar and session
2017-09-08 23:55:50 +10:00
Pau Perez
bdfd718c51
Use service object directly from controller
2017-09-08 23:55:50 +10:00
Pau Perez
3c73282d57
Manually reset the order once completed
...
Spree does not call after_<order.state> methods any more as of
https://github.com/spree/spree/pull/2557 , so our #after_complete method
is never triggered and thus the order never reset.
This makes the condition:
```ruby
if current_order.andand.distributor == @order.distributor
```
in app/views/spree/orders/form/_update_buttons.html.haml return false
and as a result the "Back To Cart" button is not shown.
This commit resets the order (emptying the session[:order_id] and
creating a new order, aka. cart) right from the
CheckoutController#update rather than relying on infernal callbacks (of
what the Spree core team itself was unhappy about since long ago
https://github.com/spree/spree/issues/2488 ). There is the first place
where we know the order has been successfully completed.
2017-09-08 23:55:50 +10:00
enricostano
4e35c0448b
Use the state machine API to add state transition callbacks
...
See the following links for more context:
http://guides.spreecommerce.org/release_notes/spree_2_0_0.html#removal-of-checkoutcontrollerstatecallback
1d9581c884
2017-09-08 23:55:49 +10:00
enricostano
c439a23ef9
Adapt CheckoutController to new Spree changes
...
Freely inspired by ad5551bf84
2017-09-08 23:55:49 +10:00
Matt-Yorkley
113f6565be
Enable iframes for embedded shopfronts
2017-07-26 13:56:36 +10:00
Pau Perez
cee24dcca7
Use indented style for multiline method calls
...
This enables the Rubocop's Style/MultilineMethodCallIndentation cop with
indentend enforced style. Which makes you split multiline method calls like:
orders = Spree::Order
.an_scope
.another_scope
.where(id: list_of_ids)
It also autofixes the current violations and updates the
rubocop_todo.yml
2017-07-12 10:40:53 +02:00
Rob Harrington
e5340cb53a
Rubocop: Correct Lint/UselessAssignment offences, disable for /spec in main config
2017-06-23 16:49:08 +10:00
Rob Harrington
7bb58342fc
Rubocop: Auto-correct Style/EmptyLineBetweenDefs offences
2017-06-23 16:49:08 +10:00
Rob Harrington
b59a1cc232
Using true/false instead of YES/NO for address defaults and billing same as shipping
2016-10-21 10:51:36 +11:00
Bing Xie
720ca17533
Fix the mistake
2016-10-21 10:51:36 +11:00
Bing Xie
77f43e3ca7
Refactor setting default addresses
2016-10-21 10:51:36 +11:00
Bing Xie
23b8fbbbc7
Update customer's default address
2016-10-21 10:51:36 +11:00
Bing Xie
079788b4eb
Add customer preferred bill and ship address
2016-10-21 10:51:36 +11:00
Bing Xie
8d534041b2
Refactor js CurrentOrder
2016-10-21 10:51:36 +11:00
Bing Xie
e91c313f1e
Fix state_id and country_id type bug
2016-10-21 10:51:36 +11:00
Bing Xie
2f241485a2
Set default addresses for user or customer
2016-10-21 10:51:36 +11:00
Bing Xie
3e590f92ff
Set default billing address and shipping address
2016-10-21 10:51:36 +11:00
Rohan Mitchell
3dcfa810fd
Display out of stock banner when viewing cart directly
2016-04-21 09:36:23 +10:00
Rohan Mitchell
d45b525497
When there's an out of stock product in the cart, placing order returns user to the cart
2016-04-21 09:36:22 +10:00
Rohan Mitchell
243f59c87d
When there's an out of stock product in the cart, checkout returns user to cart
2016-04-21 09:36:22 +10:00
Rohan Mitchell
5579fa5e0b
Extract last used address finding into service object
2015-12-11 13:06:59 +11:00
Rohan Mitchell
4cc8eb90fc
Refactor code for brevity
2015-07-10 09:42:09 +10:00
Rohan Mitchell
8deb4ef9d4
When encountering StaleObjectError when checking out, retry
2015-07-10 09:42:09 +10:00
Rohan Mitchell
704955a185
Load active distributors where they're needed rather than in most controllers
2015-05-27 15:44:01 +10:00
Rob Harrington
24e3c9a9e1
Adding bugsnag notify block for catching naughty phantom fees
2015-04-10 16:41:10 +10:00
Rohan Mitchell
8488b8e469
When user has selected a hub that is not ready for checkout, unselect it
2014-10-31 15:02:58 +11:00
Rohan Mitchell
c297b7014a
Charge customers for their shipping fee
2014-09-10 14:01:36 +10:00
Rob H
b8fadb50ae
Special Instructions in checkout are actually wired up
2014-09-06 12:00:27 +10:00
Rohan Mitchell
50f74038b2
Fix redirect to paypal for better spree paypal express
2014-07-25 12:44:14 +10:00
Rohan Mitchell
3b28981400
Adapt cancel redirect for better spree paypal express
2014-07-25 12:44:14 +10:00
Rohan Mitchell
aa5767cd30
Remove paypal image button from checkout, fix redirect to paypal
2014-06-27 11:52:36 +10:00
Will Marshall
8bb5f75ea0
Temporary fix to get staging working
2014-06-20 13:51:21 +10:00
Rohan Mitchell
71020a14ef
Fix payments coming up as $0, credit card charges failing for the same reason
2014-06-12 11:49:54 +10:00
Will Marshall
dbf4f503a9
Restoring my clever flash refactoring
2014-06-10 11:14:52 +10:00
Rohan Mitchell
be644bdcc3
Revert "Reworking flash messages hooray"
...
This reverts commit c9d0091cd9 .
2014-06-06 16:59:47 +10:00
Will Marshall
c9d0091cd9
Reworking flash messages hooray
2014-06-06 16:41:28 +10:00
Will Marshall
cd09f70ed3
Compacting down our flash messages
2014-06-04 17:13:19 +10:00