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
Enrico Stano
2f3f20e433
Remove html_safe and add spec
2017-09-08 23:55:50 +10:00
Pau Perez
85fefcd946
Replace helper with service object
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
f6c8a11b7b
Move ResetOrderService to new app/services
2017-09-08 23:55:50 +10:00
Pau Perez
1ef4bf5da0
Refactor tests and remove duplicated ones
2017-09-08 23:55:50 +10:00
Pau Perez
a18bf4b666
Add unit tests for service object
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
Enrico Stano
d09e0cd44a
Deal with both JS and JSON format
2017-09-08 23:55:50 +10:00
Enrico Stano
d581fc4863
Fix specs to contemplate XHR requests and more coverage
2017-09-08 23:55:50 +10:00
Enrico Stano
790bc5b187
Use JS format for #update
2017-09-08 23:55:50 +10:00
Pau Perez
f0e2d426c3
Fix getting HTML when deleting line item in admin
...
In the step 6 of the spree upgrade, when deleting an order's line item
from /admin we get an HTML response (the whole edit form) that gets
inserted into the flash error.
It's not 100% clear why we added a respond_to block for JSON but since
juery-rails sends ajax requests with application/javascript, */* in
the ACCEPTS request header, Rails falls back to the first specified respond_to
block, which is HTML. We don't hit the JSON block.
In order for this to work, this commit replaces the JSON respond_to
block with one for JS with the exact same behaviour; returning a 204.
This is also the format the spree controller action we duplicated originally
has besides HTML.
2017-09-08 23:55:50 +10:00
Pau Perez
8c56bd23fc
Add missing translation
2017-09-08 23:55:50 +10:00
Enrico Stano
6254dfde11
Backport Spree commit to fix PaymentMethodsController #create
2017-09-08 23:55:50 +10:00
Enrico Stano
49d96206e1
Add missing email i18n key
2017-09-08 23:55:50 +10:00
Enrico Stano
ce562889a9
Update js and css assets
2017-09-08 23:55:50 +10:00
Enrico Stano
5a2c3f5c5c
Set Spree configuration related to locales before the promo environment gets initialized
2017-09-08 23:55:50 +10:00
Enrico Stano
7874d96003
Set MailMethod for test environment when needed
2017-09-08 23:55:50 +10:00
Enrico Stano
8e5b94b5ca
Fixing orders controller issue by setting data up correctly
2017-09-08 23:55:49 +10:00
Enrico Stano
4a989f705b
No more order.payment
2017-09-08 23:55:49 +10:00
Rob Harrington
3e6e3173ee
Fixing line item controller issue by setting data up correctly
2017-09-08 23:55:49 +10:00
Enrico Stano
72292b1dd3
Use new state API instead of locked
...
be554fde9f
2017-09-08 23:55:49 +10:00
enricostano
6816061915
Fix confirmation email subject
...
c38537173f
2017-09-08 23:55:49 +10:00
enricostano
23585e6ea8
Initialize custom calculators using Spree API
...
Freely inspired by https://github.com/coopdevs/spree/blob/2-0-stable/core/lib/spree/core/engine.rb#L78
2017-09-08 23:55:49 +10:00
enricostano
cf4bd8d755
WIP Preparing to get rid of MailMethod model
...
Please give a look at the following links:
- http://guides.spreecommerce.org/release_notes/spree_2_0_0.html#mailmethod-model-no-longer-exists
- https://github.com/spree/spree/pull/2643
2017-09-08 23:55:49 +10:00
enricostano
22b5431279
Start spree upgrade step 6
2017-09-08 23:55:49 +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
fd259e0a63
Use cherry-picked commit in spree fork from the future 🚀
...
2aee282d6d
2017-09-08 23:55:49 +10:00
enricostano
e7ecdcc251
Import schema migration for spree gem upgrade step 5
2017-09-08 23:55:49 +10:00
Em-AK
a70cdaadb6
Start spree upgrade step 5
2017-09-08 23:55:49 +10:00
enricostano
d8c227c43f
Import data migration from latest spree_paypal_express gem
2017-09-08 23:55:49 +10:00
enricostano
a87c89c83d
Require authentication for API endpoints
...
Authentication and authorization layers (cancan) should not be mixed
c594d6111b
2017-09-08 23:55:49 +10:00
Em-AK
6817ac0d79
Regenerate knapsack report on my slow machine
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
enricostano
a80d75e7e2
Fix Spree taxons route reference
2017-09-08 23:55:49 +10:00
enricostano
d2b6a47ae4
Use new #available_to_order API
2017-09-08 23:55:49 +10:00
enricostano
5ad0f8bb2e
Fix module namespace
2017-09-08 23:55:49 +10:00
enricostano
a9966f48af
Use new product_search method
2017-09-08 23:55:49 +10:00
Em-AK
b5bac722ca
Fix: make rspec run
2017-09-08 23:55:49 +10:00
Em-AK
8a42b606eb
Start spree upgrade step 4
2017-09-08 23:55:49 +10:00
Em-AK
31f2551116
Update the JS unit spec to the new endpoint
2017-09-08 23:55:49 +10:00
enricostano
c992095959
Use new /clone JSON endpoint
2017-09-08 23:55:49 +10:00
enricostano
513330cfff
Add JSON api for products clone
2017-09-08 23:55:49 +10:00
Em-AK
1136cb40a9
Revert to OFN spree fork
...
This reverts commit 92f50d96803f9d0f302be51aad085c9a68ec4c32.
And bundle update to the last commit of openfoodfoundation/spree, branch: spree-upgrade-step-3
2017-09-08 23:55:49 +10:00
Em-AK
e73330d597
Fix removal of product properties
...
Prevent spree to make a post request on deletion of a property
The data should be updated on the server by clicking on the Update
button
2017-09-08 23:55:49 +10:00
Em-AK
f22a12d657
Revert later: depend on our spree fork
2017-09-08 23:55:49 +10:00
Em-AK
d68104cecb
Update a dependency to run the specs
2017-09-08 23:55:49 +10:00