Maikel
a43d31a9d5
Merge pull request #9711 from dacook/translation-cleanup
...
Translation cleanup
2022-10-06 09:51:28 +11:00
Rachel Arnould
611475c48a
Merge pull request #9448 from binarygit/cancel-orders-in-bulk
...
Cancel Orders in Bulk
2022-10-04 19:48:59 +02:00
David Cook
0fc8c719fe
Scope Enterprise side menu translations
...
And removed some now-unused global translations, yay! I searched for these in the codebase, eg with regex:
/\bt[\( ]["':]shop_preferences/
2022-10-04 19:39:29 +02:00
David Cook
4c3e20d25a
Scope Enterprise form legend translations
2022-10-04 19:39:29 +02:00
David Cook
13d95ecf1d
Scope Enterprise Group side menu translations
...
With it's own lazy scope, we no longer need to define labels separately.
2022-10-04 19:39:29 +02:00
David Cook
7803e5d4ff
Scope Enterprise Group form legend translations
...
Using lazy-lookup builtin scopes, instead of sharing the global translations, as per our guidelines.
2022-10-04 19:39:29 +02:00
David Cook
2e2ff25ef7
DRY up code
...
Slightly. If we upgrade to Ruby 3.1 with hash value omission, this would be neater.
If we could set a scope in the controller (https://stackoverflow.com/questions/6137960/rails-i18n-default-scope ) it would be even neater.
2022-10-04 19:39:29 +02:00
binarygit
25ae10dbe8
Create bulk orders cancellation feature
2022-10-04 16:57:31 +02:00
binarygit
930721bea6
Redirect to shop front when OC closes during checkout
2022-10-03 20:51:41 +02:00
jibees
0c64720a9e
Merge pull request #9710 from mkllnk/9002-customer-association-updates
...
Associate and update customer records when ordering
2022-09-30 16:36:01 +02:00
Filipe
4b279d28dd
Merge pull request #9262 from cillian/order-cycle-shipping-methods
...
Let people customise which shipping methods are available to customers on order cycles
2022-09-30 14:36:37 +01:00
Filipe
f7d21406a1
Merge pull request #9702 from ashwini-seshadri/master
...
Fix for new subscription dialog
2022-09-30 13:32:42 +01:00
Cillian O'Ruanaidh
def87485c0
Don't delete schedules on the order_cycles#update action just because the :schedule_ids was not specified in the parameters
...
Before this schedules were being deleted when the Checkout Options step of editing order cycles was saved because this step wasn't sending the :schedule_ids parameter. It's more awkard for API users if they always need to explicity send the :schedule_ids parameter even if they don't want to add/remove any of the schedules, for example if they just want to update an order cycle name.
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
db92e9d91c
Fix error from OrderCycle#distributor_shipping methods return ActiveRecord::Relation sometimes and Array other times
...
Now it will return ActiveRecord::Relation consistently.
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
5207dbf8c6
OrderCycle#distributor_shipping_methods should return all attachable ones by default per distributor, not per all distributors
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
7e40ad39cb
Bring back select all checkboxes on order cycle checkout options form.
2022-09-30 13:13:39 +01:00
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
65ee9e1486
Implement new design with shipping and payment methods on different rows instead of same one, the select all checkboxes still need to be added back later
...
This is the new design from https://github.com/openfoodfoundation/openfoodnetwork/pull/9262#issuecomment-1206673689
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
a73b608f8a
Remove 'shared' shipping method sections from order cycle checkout options form, any shared shipping methods are to be displayed for each distributor e.g. if they belong to multiple distributors they will be displayed multiple times
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
4b0b4ad991
Revert "Use a more simple layout on the order cycle checkout options form"
...
This reverts commit 0dddaa6c2b9f1925adca6ff8deac8181691ae119.
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
8e47949260
Check 'Select all' checkboxes on page load if all its checkboxes are checked
...
This means the code to set the initial value in the view template isn't needed.
2022-09-30 13:13:39 +01:00
Maikel Linke
195f1e1237
Make "Select all" translatable
2022-09-30 13:13:39 +01:00
Maikel Linke
26d5ea6cdc
Remove unused input name
2022-09-30 13:13:39 +01:00
Maikel Linke
c5bb2f52e1
Check "Select all" to start with
...
Reflect the state of the shipping method checkboxes.
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
87431c188e
Use ShippingMethod :frontend method and drop :backend to avoid ClassLength Rubocop error
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
0673f9a5ae
Use a more simple layout on the order cycle checkout options form
...
Before there was a row for each distributor and a 'shared' row for shipping methods which were shared among more than one distributor. This layout displays a single list of shipping methods with the distributor or distributors it belongs to beside it as suggested by @lin-d-hop
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
8cb2767f9a
The no shipping/payment method warnings on order cycle checkout options looks better left aligned
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
1a70cc0c4c
Don't display no shipping/payment method warnings on order cycle checkout options if the distributor has some that are shared with other distributors
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
464a9b95a4
On order cycle checkout options shipping methods shared between distributors should be checked by default too
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
472bd150bb
For consistency with other '<em>' don't strip whitespace.
...
Although both '%em' and '%em>' are rendering the same markup, perhaps because the tag is on it's own new line.
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
da3eea6005
Fetch shared shipping/payment methods for order cycle checkout options in single query
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
6453bbcc1c
Fix :selected_shipping_method_ids param for shared shipping methods.
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
541a340dcf
If an OrderCycle or Spree::ShippingMethod is destroyed then remove it's associated OrderCycleShippingMethod records too
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
593da4996f
A shop won't be shown as open if it doesn't have useable shipping method so these shipping method validations are really necessary
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
ed13ee6cbc
Fix association alignment in OrderCycle
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
564e4d802c
Don't use :html_safe with payment method name in checkout options in case it contains something malicious
...
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
f4a4f7c9ff
Remove validations checking order cycle has shipping methods
...
Instead we will make sure the order cycle is not available on the shopfront if it is doesn't have valid shipping methods. This will preven the issue where if one distributor deletes their shipping method, we don't want to invalidate the order cycle for all other distributors.
Co-authored-by: Maikel <maikel@email.org.au >
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
81730f725d
Enterprises shouldn't be considered ready for checkout if it only has backend shipping methods
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
7bd56007bd
Don't use :html_safe in case shipping method name contains something malicious in app/views/admin/order_cycles/checkout_options.html.haml
...
Co-authored-by: Maikel <maikel@email.org.au >
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
d9de35799d
Array difference operator is neater than reject in app/views/admin/order_cycles/checkout_options.html.haml
...
Co-authored-by: Maikel <maikel@email.org.au >
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
f25de984d2
Use .empty? instead of !exists? in app/models/order_cycle_shipping_method.rb
...
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
9296686384
Make backend, frontend scopes on Spree::ShippingMethod neater
...
Co-authored-by: Co-authored-by: Maikel <maikel@email.org.au >
2022-09-30 13:13:39 +01:00
Cillian O'Ruanaidh
f6c754839b
Make OrderCycleShippingMethod inherit from ApplicationRecord
2022-09-30 13:13:39 +01:00