Cillian O'Ruanaidh
a53a3259a8
Connect DistributorShippingMethods to OrderCycles instead of Spree::ShippingMethods
...
Before if a shipping method was shared between multiple distributors it could only be disabled/enabled on that order cycle for all the distributors which have that shipping method e.g. you couldn't select that shipping method for one distributor but disable it for another.
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
8b59b7a796
Use if exclude instead of if !include in OrderCycleForm
...
Co-authored-by: Maikel <maikel@email.org.au >
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
af87943fd0
Change 'if !' to 'unless' in OrderCyclesList
...
Co-authored-by: Maikel <maikel@email.org.au >
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
80b7a5d39a
Remove OrderCycleShippingMethod model and use a :has_and_belongs_to_many association instead
...
Before the OrderCycleShippingMethod had a validation which checked the shipping method belonged to the order cycle distributor. Instead of this validation this just ignores shipping methods which don't belong to one of the order cycle's distributors when they are being attached in the OrderCycleForm service. This pattern is already being used in the OrderCycleForm service for ignoring Schedules that the person doesn't own.
Co-authored-by: Maikel <maikel@email.org.au >
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
61bbf0714e
Remove flag argument anti-pattern from Shop::OrderCyclesList
...
Co-authored-by: Maikel <maikel@email.org.au >
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
747c88fb35
Update the Shop::OrderCyclesList service so it's clearer what kind of order cycles are being fetched
...
Before the Shop::OrderCyclesList service would return order cycles even if they are not ready for checkout and we had a check before calling the service in BaseController which would return OrderCycle.where('false'). It seems like this check should be part of the service too.
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
67d4c38550
Rename :preferred_shipping_methods to :selected_shipping_methods on OrderCycle
...
It's a clearer name because 'preferred' implies there could be other unpreferred shipping methods available as well.
Co-authored-by: Maikel <maikel@email.org.au >
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
9a511e9e94
Rubocop adjustments
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
fc4f951a1a
Only require OrderCycleShippingMethod records if people want to override the default shipping methods
...
It makes things much simpler if we return all shipping methods by default without needing OrderCycleShippingMethod records to be added to the database.
Co-authored-by: Maikel <maikel@email.org.au >
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
855ec1a708
Add new 'Checkout options' step to the edit order cycle form so people can attach shipping methods
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
48c2e48b24
Update the OrderCycleForm service so it supports attaching shipping methods
2022-09-30 13:13:39 +01:00
Jean-Baptiste Bellet
4452ad2c51
Use BigDecimal to avoir multiplication/division floating errors
...
Like 28.35 * 12 / 12 = 28.350000000000005
+ in js, use parseFloat() to format `12.00` as `12`
2022-09-07 09:17:46 +02:00
Filipe
c11b7ed268
Merge pull request #9407 from Philwi/handle-for-invalid-referer-for-embedded-page-service
...
Handle for invalid referer for embedded page service
2022-08-17 18:40:43 +01:00
Nihal Mohammed
53ee5c32eb
Add order note at the end of both invoices following current UI patterns
...
Add translation for note title in invoice
Update invoice spec to also test for order note
2022-08-10 23:02:13 +05:30
Philipp Winkler
6291e3c587
Handle invalid referer for embedded page service
2022-07-11 22:07:00 +02:00
Filipe
3834724d45
Merge pull request #9236 from AgriculturaFamiliar/add-map-whatsapp-link
...
Show whatsapp link on contact modal on map
2022-07-08 12:10:18 +01:00
Jean-Baptiste Bellet
f71c84cea5
Handle save method as it should be: return false if any errors occurs
2022-07-07 09:56:14 +02:00
Jean-Baptiste Bellet
c39b00b6c2
do not set on_demand and on_hand if variant has errors
...
+ update specs
Co-Authored-By: Maikel <maikel@email.org.au >
2022-07-06 10:46:54 +02:00
Arthur Vieira
77360f41af
Show WhatsApp link on contact modal on map
...
Strips '+' and ' ' characters from the phone number for the generated
link, but doesn't guarantee the link is valid because the number
registered isn't validated for now.
2022-06-30 19:19:10 -03:00
Arthur Vieira
b565b6ba4d
Add whatsapp_phone to permitted attributes
...
Allows creating and updating the enterprise's WhatsApp phone number in
the registration form and contact edit views.
2022-06-30 19:19:10 -03:00
François Turbelin
76ea7089d9
Implement suggestions
2022-06-21 10:08:12 +02:00
François Turbelin
39a6b5d20f
Add disabled_at logic on spree users
2022-06-21 10:08:12 +02:00
Maikel Linke
b7efa1b018
Replace Paperclip on Spree::Image
2022-06-01 17:16:55 +10: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
Nihal Mohammed
15e7a5a4df
Rename product_stock_display to product_low_stock_display
...
Rename product_stock_display to product_low_stock_display in enterprise_serializer and shop_variant_controller
2022-04-15 10:59:42 +10:00
Nihal M. Kelanthodika
f7a767988c
Add preferred_product_stock_display to Enterprise model, serializer and permitted attributes. (Fixed alignment of guest orders radio button as well)
2022-04-15 10:53:28 +10:00
Maikel
a4bffc61f1
Merge pull request #8997 from apricot12/8968-Group-products-by-supplier-P1
...
Sort products by supplier in invoice
2022-04-13 11:54:12 +10:00
Nihal Mohammed
992cb9d920
Add invoice_order_by_supplier attribute to enterprise
2022-03-21 20:29:19 +05:30
Jean-Baptiste Bellet
440e5aaf97
Default checked/unchecked values for checkbox is 0/1
2022-03-07 17:41:05 +01:00
Jean-Baptiste Bellet
405b7e6e17
Handle tax rates for ShippingMethod
...
Co-Authored-By: Matt-Yorkley <9029026+Matt-Yorkley@users.noreply.github.com >
2022-02-15 15:16:58 +01:00
Filipe
75395f6f29
Merge pull request #8648 from Matt-Yorkley/csp
...
Configure CSP
2022-01-26 19:55:11 +00:00
Filipe
374c05116b
Merge pull request #8726 from Matt-Yorkley/stringex-machina
...
Reduce impact of stringex gem
2022-01-26 19:02:41 +00:00
Matt-Yorkley
b5a1d9ebef
Allow using saved cards at checkout
2022-01-24 23:06:43 +00:00
Matt-Yorkley
8552da2377
Extract and stub PaymentMethodFetcher
2022-01-24 20:28:59 +00:00
Matt-Yorkley
2b960a04c6
Move Order callback entirely into service
2022-01-19 13:40:33 +00:00
Matt-Yorkley
8a944e3e78
Tidy up Order#save_default_addresses
2022-01-19 13:40:33 +00:00
Matt-Yorkley
8f37aa71f2
Save default addresses when requested during checkout
2022-01-19 13:40:33 +00:00
Matt-Yorkley
fb00a51ae8
Merge pull request #8653 from Matt-Yorkley/split-checkout-t-and-c
...
Split checkout T&Cs
2022-01-19 13:39:15 +00:00
Matt-Yorkley
dfbd384c95
Refactor embedding to a Concern
2022-01-18 12:22:06 +00:00
Matt-Yorkley
4649698fc4
Remove #set_response_headers
2022-01-18 12:19:54 +00:00
Matt-Yorkley
0ef35b319c
Create UrlGenerator service
2022-01-15 13:21:09 +00:00
Matt-Yorkley
3f3bfadb59
Simplify StripeScaPaymentAuthorize and clarify both return URL types (checkout and off-session)
2022-01-14 19:41:08 +00:00
Matt-Yorkley
76647863e8
Add new Stripe controller
2022-01-14 19:41:08 +00:00
Matt-Yorkley
02995530e2
Pull apart OrderCompletionReset service
2022-01-14 19:41:08 +00:00
Matt-Yorkley
67b8a55273
Separate OrderCompletionReset from Checkout::PostCheckoutActions and don't pass controller objects to Checkout::PostCheckoutActions
...
We need to separate some of these bits to make them easier to call in different contexts. Also there's some weird stuff happening here with the controller being passed in to the service, and it seems like a code smell to me...
2022-01-14 19:41:08 +00:00
Matt-Yorkley
18cdf98aa1
Set terms and conditions accepted when completing checkout
2022-01-12 22:17:22 +00:00
Matt-Yorkley
58d3ad412a
Rename method for clarity
2022-01-12 17:52:10 +00:00
Matt-Yorkley
cb5dd6eed9
Move T&C checks to service
2022-01-12 17:52:10 +00:00
Filipe
da703b2d95
Merge pull request #8615 from jibees/8559-enable-sort-orders-by-order-full-name
...
Enable sorting orders by order full name
2022-01-11 11:27:36 +00:00
Filipe
750411fd15
Merge pull request #8592 from openfoodfoundation/gateway-redirects
...
Refactor payment gateway redirects handling
2021-12-23 21:35:45 +00:00