Jean-Baptiste Bellet
6842cbfda4
Force content type to "text/html"
...
- Force the content type to be `text/html` (instead of `application/json`)
2021-05-25 15:30:21 +02:00
Matt-Yorkley
74f27544f7
Merge pull request #7647 from andrewpbrett/default-country-codes
...
Use correct default country code
2021-05-25 11:21:34 +02:00
Andy Brett
b367001b95
Merge pull request #7641 from luisramos0/order_path
...
[Rails 6.1] Fix view specs
2021-05-24 14:41:32 -07:00
Pau Pérez Fabregat
8c81c14c8d
Merge pull request #7580 from apricot12/Remove-LineItems-N+1
...
Removed N+1 queries while counting line_items
2021-05-20 11:42:14 +02:00
Andy Brett
70ac719725
Merge pull request #7649 from andrewpbrett/payments-when-out-of-stock
...
Check stock before doing anything related to admin payments
2021-05-19 14:45:38 -07:00
Luis Ramos
b2e97fe1d2
Rename order.update! to order.update_order! and adjustment.update! to adjustment.update_adjustment!
2021-05-19 09:54:22 -07:00
Andy Brett
4b352da402
Merge pull request #7630 from apricot12/persistent_flash_after_reload
...
Persistent flash after reload
2021-05-18 12:55:37 -07:00
Andy Brett
7df2915fbd
add DefaultCountry service
2021-05-18 12:44:53 -07:00
Andy Brett
5169ee91ea
add comment for before_action
2021-05-18 10:42:19 -07:00
Andy Brett
5917accdd2
refactor using Extract Method
2021-05-18 10:38:35 -07:00
Pau Pérez Fabregat
5f9679655c
Merge pull request #7645 from Matt-Yorkley/stripe-payment-processing
...
Stripe payment processing
2021-05-17 16:17:21 +02:00
Matt-Yorkley
2b9f9fce86
Fix flash session memory-effect when showing errors after payment processing
...
We're not doing a redirect after setting this flash message, so we need to ensure it's discarded after the current page load.
2021-05-16 20:11:45 +01:00
Matt-Yorkley
5805104d13
Tidy up controller and add explanatory comment
2021-05-16 12:19:04 +01:00
Andy Brett
c7f80d86a8
Merge pull request #7638 from Matt-Yorkley/dead-code-order-distribution
...
Delete dead code in OrdersController#update_distribution
2021-05-15 12:40:25 -07:00
Andy Brett
0a880a2bf3
flip conditional order for performance
2021-05-15 07:08:07 -07:00
Andy Brett
ca38948e21
check stock before doing anything related to admin payments
2021-05-14 17:42:37 -07:00
Luis Ramos
b1896733ca
Fix routes
2021-05-14 00:08:20 +01:00
Matt-Yorkley
2e248744c0
Merge pull request #7520 from Matt-Yorkley/shipment-controller
...
Shipment controller: test coverage and improvements
2021-05-13 20:26:51 +02:00
Matt-Yorkley
82a6befce7
Delete dead code in OrdersController#update_distribution
...
I can't see any evidence that these params ever get sent to this action...
2021-05-13 15:29:53 +01:00
Nihal Mohammed
c930b2ee60
Fix persistet flash after /cart page reload
2021-05-13 05:57:25 +05:30
Nihal Mohammed
367cee593f
Move eager loading line_items to controller
2021-05-13 01:12:13 +05:30
Pau Perez
9a63f38790
I18n-ize error messages.
2021-05-06 16:34:29 +02:00
Pau Perez
2147584daf
Validate intents against Stripe and display errors
...
Now the existing validation is redundant. It's Stripe's API who does
that now. It's up to them to decide what's a valid intent.
2021-05-06 16:19:01 +02:00
Pau Perez
b723ed4a98
Skip Stripe logic when no payment data is passed
2021-05-06 16:19:01 +02:00
Andy Brett
a7331efd67
Merge pull request #7477 from luisramos0/require_dependency
...
Remove require_dependency or use require
2021-05-05 13:24:19 -07:00
Andy Brett
002420304d
Merge pull request #7526 from Matt-Yorkley/dead-currency
...
Remove currency from OrderContents
2021-05-05 08:06:53 -07:00
Matt-Yorkley
e2a411c23c
Add map helper to RegistrationController
...
Fixes 3 errors including:
Registration Terms of Service agreement if accepting Terms of Service is not required allows registration as normal
Failure/Error: super
ActionView::Template::Error:
undefined method `using_google_maps?' for #<#<Class:0x00007fd4949c4558>:0x00007fd499dd0ae8>
# ./app/helpers/application_helper.rb:20:in `method_missing'
# ./app/views/registration/steps/_details.html.haml:60:in `_app_views_registration_steps__details_html_haml___1911121144363058234_70275472163280'
# ./app/views/registration/index.html.haml:12:in `block in _app_views_registration_index_html_haml__993897347679518865_70275545598940'
# ./app/views/registration/index.html.haml:11:in `each'
# ./app/views/registration/index.html.haml:11:in `_app_views_registration_index_html_haml__993897347679518865_70275545598940'
# ./lib/open_food_network/rack_request_blocker.rb:36:in `call'
# ------------------
# --- Caused by: ---
# NoMethodError:
# undefined method `using_google_maps?' for #<#<Class:0x00007fd4949c4558>:0x00007fd499dd0ae8>
# ./app/helpers/application_helper.rb:20:in `method_missing'
2021-05-03 14:17:54 +01:00
Matt-Yorkley
aa013ef76a
Update redirect_back syntax for Rails 5
...
Introduced in 5.0, the old syntax is removed in 5.2
2021-05-03 14:17:54 +01:00
Matt-Yorkley
31fc6201fc
Include payment method helper in ApplicationController
2021-05-03 14:17:54 +01:00
Matt-Yorkley
26688dda36
Add angular_form helper
...
Fixes:
Failure/Error: super
ActionView::Template::Error:
undefined method `ng_options_for_select' for #<#<Class:0x00007fbf8e43e310>:0x000055783fbebec0>
Did you mean? options_for_select
# ./app/helpers/application_helper.rb:20:in `method_missing'
# ./app/helpers/angular_form_builder.rb:26:in `ng_select'
# ./app/views/admin/enterprise_fees/index.html.haml:34:in `block (2 levels) in _app_views_admin_enterprise_fees_index_html_haml__800455454875182851_46987476952700'
# ./app/helpers/angular_form_builder.rb:6:in `ng_fields_for'
# ./app/views/admin/enterprise_fees/index.html.haml:28:in `block in _app_views_admin_enterprise_fees_index_html_haml__800455454875182851_46987476952700'
# ./app/helpers/application_helper.rb:11:in `ng_form_for'
# ./app/views/admin/enterprise_fees/index.html.haml:4:in `_app_views_admin_enterprise_fees_index_html_haml__800455454875182851_46987476952700'
# ./lib/open_food_network/rack_request_blocker.rb:36:in `call'
# ------------------
# --- Caused by: ---
# NoMethodError:
# undefined method `ng_options_for_select' for #<#<Class:0x00007fbf8e43e310>:0x000055783fbebec0>
# Did you mean? options_for_select
# ./app/helpers/application_helper.rb:20:in `method_missing'
2021-05-03 14:17:54 +01:00
Matt-Yorkley
b7aeceaf67
Add enterprise_fees helper
...
Fixes:
Failure/Error: super
ActionView::Template::Error:
undefined method `angular_id' for #<#<Class:0x00007f57c7126670>:0x00007f57c55754f8>
# ./app/helpers/application_helper.rb:20:in `method_missing'
# ./app/views/admin/enterprise_fees/index.html.haml:32:in `block (2 levels) in _app_views_admin_enterprise_fees_index_html_haml__3854507252304647884_70007474860840'
# ./app/helpers/angular_form_builder.rb:6:in `ng_fields_for'
# ./app/views/admin/enterprise_fees/index.html.haml:28:in `block in _app_views_admin_enterprise_fees_index_html_haml__3854507252304647884_70007474860840'
# ./app/helpers/application_helper.rb:11:in `ng_form_for'
# ./app/views/admin/enterprise_fees/index.html.haml:4:in `_app_views_admin_enterprise_fees_index_html_haml__3854507252304647884_70007474860840'
# ./lib/open_food_network/rack_request_blocker.rb:36:in `call'
# ------------------
# --- Caused by: ---
# NoMethodError:
# undefined method `angular_id' for #<#<Class:0x00007f57c7126670>:0x00007f57c55754f8>
# ./app/helpers/application_helper.rb:20:in `method_missing'
2021-05-03 14:17:54 +01:00
Matt-Yorkley
e6a3041f45
Add admin/enterprises helper
...
Fixes:
Failure/Error: super
ActionView::Template::Error:
undefined method `add_check_if_single' for #<#<Class:0x0000564501a3c838>:0x00007f446cdd68e8>
# ./app/helpers/application_helper.rb:20:in `method_missing'
# ./app/views/spree/admin/shared/_hubs_sidebar.html.haml:16:in `block in _app_views_spree_admin_shared__hubs_sidebar_html_haml___1973426344114200431_69965928779540'
# ./app/views/spree/admin/shared/_hubs_sidebar.html.haml:11:in `each'
# ./app/views/spree/admin/shared/_hubs_sidebar.html.haml:11:in `_app_views_spree_admin_shared__hubs_sidebar_html_haml___1973426344114200431_69965928779540'
# ./app/views/spree/admin/payment_methods/edit.html.haml:15:in `block in _app_views_spree_admin_payment_methods_edit_html_haml__571217921761730685_69965930474120'
# ./app/views/spree/admin/payment_methods/edit.html.haml:11:in `_app_views_spree_admin_payment_methods_edit_html_haml__571217921761730685_69965930474120'
# ./app/controllers/admin/resource_controller.rb:23:in `block (2 levels) in edit'
# ./lib/spree/core/controller_helpers/respond_with.rb:24:in `respond_with'
# ./app/controllers/admin/resource_controller.rb:22:in `edit'
# ./lib/open_food_network/rack_request_blocker.rb:36:in `call'
# ------------------
# --- Caused by: ---
# NoMethodError:
# undefined method `add_check_if_single' for #<#<Class:0x0000564501a3c838>:0x00007f446cdd68e8>
# ./app/helpers/application_helper.rb:20:in `method_missing'
2021-05-03 14:17:54 +01:00
Matt-Yorkley
b0787e83b2
Add checkout helper
...
Fixes:
Failure/Error: super
ActionView::Template::Error:
undefined method `checkout_adjustments_for' for #<#<Class:0x000055f4bd847a30>:0x000055f4bd845c30>
# ./app/helpers/application_helper.rb:20:in `method_missing'
# ./app/views/spree/admin/orders/_invoice_table.html.haml:26:in `_app_views_spree_admin_orders__invoice_table_html_haml___3617932924646213210_47254819384740'
# ./app/views/spree/admin/orders/invoice.html.haml:67:in `_app_views_spree_admin_orders_invoice_html_haml__1476001169744481148_47254819971700'
# ./app/services/invoice_renderer.rb:8:in `render_to_string'
# ./app/controllers/spree/admin/orders_controller.rb:81:in `invoice'
# ./spec/support/controller_requests_helper.rb:49:in `process_action_with_route'
# ./spec/support/controller_requests_helper.rb:23:in `spree_get'
# ./spec/controllers/spree/admin/orders/invoices_spec.rb:58:in `block (6 levels) in <top (required)>'
# ------------------
# --- Caused by: ---
# NoMethodError:
# undefined method `checkout_adjustments_for' for #<#<Class:0x000055f4bd847a30>:0x000055f4bd845c30>
# ./app/helpers/application_helper.rb:20:in `method_missing'
2021-05-03 14:17:54 +01:00
Matt-Yorkley
943c00c924
WIP - Update loading of helpers in controllers
...
Rails has changed the way helpers are loaded. It's a bit weird. It was throwing lots of errors, and recommended using this setting, but now requires that all helpers are loaded explicitly. I'm not sure about this.
2021-05-03 14:17:54 +01:00
Matt-Yorkley
2eb17dbbd1
Remove currency from OrderContents
...
The currency argument here is not actually used anywhere. The related conditional logic is also not covered in any tests.
2021-05-01 11:10:51 +01:00
Matt-Yorkley
e290c128bf
Fix error in Api::ShipmentController#update with :unlock parameter
...
This is a generic issue caused by a clash between state machines trying to define (or failing to define) the #open method on adjustments as part of their state changes interface. This method is already defined in Object. For more details, see: bb42e33bf7/lib/state_machines/machine.rb (L323-L350)
2021-04-30 14:13:22 +01:00
Matt-Yorkley
b843b871f6
Ensure order totals and payment/shipment states are correct when changing shipping method on a completed order.
...
This used to happen via an after_save callback in Shipment, which called `order.update!`. That has recently been removed. After changing a shipment's selected shipping rate (shipping method), we need to ensure the order's totals and states are updated. We don't need to update all of the order's adjustments though (see previous commit).
FYI Spree handled this issue like this: 24388485ed , but there are lots of things about that commit that are clearly awful, like: params handling in a model, duplication of Order::Updater logic across the codebase, the Shipment class having responsiblity for knowing which things need to be updated on the order, etc. The result is ultimately the same as what we're doing here though.
2021-04-30 12:57:01 +01:00
Matt-Yorkley
045ce73c83
Simplify shipment controller params
2021-04-30 12:20:47 +01:00
Andy Brett
8ba139c6fb
Merge pull request #6825 from julesemmac/6584-map-location-confirm
...
6584 map location confirm
2021-04-29 14:04:06 -07:00
Andy Brett
6f20a23d47
Merge pull request #7436 from coopdevs/remove-duplicate-method
...
Replace duplicate #unauthorized method with module inclusion
2021-04-25 11:26:12 -07:00
Luis Ramos
f357c3ff30
Remove require_dependency or use require
...
See here https://edgeguides.rubyonrails.org/upgrading_ruby_on_rails.html#require-dependency
2021-04-23 19:20:25 +01:00
Pau Perez
e5eb68dffc
Replace duplicate method with module inclusion
...
No reason to risk diverging their implementations. They are exact
copies.
Likewise, there's no need to have to I18n keys with almost the same
content.
2021-04-23 12:03:11 +02:00
Cillian O'Ruanaidh
12704af143
Use after_action calls for geocoding instead of old update.after, create.after calls
2021-04-22 22:13:28 +01:00
Cillian O'Ruanaidh
c41476423b
Merge latest master into julesemmac/6584-map-location-confirm and resolve conflict in api/enterprises_controller.rb
2021-04-22 19:43:49 +01:00
Pau Pérez Fabregat
c1da97527a
Merge pull request #7420 from Matt-Yorkley/adjustments-controller
...
Adjustments controller index
2021-04-22 19:15:28 +02:00
Matt-Yorkley
123e96eb1e
Merge pull request #7284 from jibees/styleguide
...
Implements our StyleGuide
2021-04-22 18:14:40 +02:00
Jean-Baptiste Bellet
9a670c7821
Print order needs render_with_wicked_pdf
...
and call WickedPdf::PdfHelper explicitly
2021-04-22 15:18:27 +02:00
Jean-Baptiste Bellet
259e758d6e
When suppress_error_msg is present do no validate order and redirect
...
- When creating a new order, it's not necessary to display the "Line items can't be blank" as the order has just been created and the user is rightly doing configuration about line items
2021-04-22 10:03:36 +02:00
Andy Brett
479897fcbd
Merge pull request #7315 from Matt-Yorkley/double-checkout
...
Double checkout
2021-04-20 10:44:32 -07:00
Pau Perez
5bca7d1f8f
Remove the old balance's code branch
...
This keeps the `OrderBalance` abstraction but removes the old code now
that the feature is enabled for all users in all instances and there are
no bugs reported. It's become dead code.
2021-04-19 11:52:41 +02:00