mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-02-27 01:43:22 +00:00
Refactor OrderHelper.order_links: extract some logic from order_links to make it more simple and pass rubocop tests
This commit is contained in:
@@ -68,7 +68,6 @@ Metrics/LineLength:
|
||||
- app/helpers/shop_helper.rb
|
||||
- app/helpers/spree/admin/base_helper_decorator.rb
|
||||
- app/helpers/spree/admin/navigation_helper_decorator.rb
|
||||
- app/helpers/spree/admin/orders_helper_decorator.rb
|
||||
- app/helpers/spree/orders_helper.rb
|
||||
- app/jobs/subscription_confirm_job.rb
|
||||
- app/mailers/subscription_mailer.rb
|
||||
@@ -429,7 +428,6 @@ Metrics/AbcSize:
|
||||
- app/helpers/checkout_helper.rb
|
||||
- app/helpers/i18n_helper.rb
|
||||
- app/helpers/order_cycles_helper.rb
|
||||
- app/helpers/spree/admin/orders_helper_decorator.rb
|
||||
- app/helpers/spree/orders_helper.rb
|
||||
- app/jobs/subscription_placement_job.rb
|
||||
- app/mailers/producer_mailer.rb
|
||||
@@ -570,7 +568,6 @@ Metrics/CyclomaticComplexity:
|
||||
- app/helpers/checkout_helper.rb
|
||||
- app/helpers/i18n_helper.rb
|
||||
- app/helpers/order_cycles_helper.rb
|
||||
- app/helpers/spree/admin/orders_helper_decorator.rb
|
||||
- app/models/enterprise.rb
|
||||
- app/models/enterprise_relationship.rb
|
||||
- app/models/product_import/entry_processor.rb
|
||||
@@ -600,7 +597,6 @@ Metrics/PerceivedComplexity:
|
||||
- app/helpers/checkout_helper.rb
|
||||
- app/helpers/i18n_helper.rb
|
||||
- app/helpers/order_cycles_helper.rb
|
||||
- app/helpers/spree/admin/orders_helper_decorator.rb
|
||||
- app/models/enterprise_relationship.rb
|
||||
- app/models/product_import/entry_processor.rb
|
||||
- app/models/product_import/entry_validator.rb
|
||||
@@ -646,7 +642,6 @@ Metrics/MethodLength:
|
||||
- app/controllers/user_registrations_controller.rb
|
||||
- app/helpers/checkout_helper.rb
|
||||
- app/helpers/order_cycles_helper.rb
|
||||
- app/helpers/spree/admin/orders_helper_decorator.rb
|
||||
- app/jobs/subscription_placement_job.rb
|
||||
- app/mailers/producer_mailer.rb
|
||||
- app/models/column_preference.rb
|
||||
|
||||
@@ -5,28 +5,38 @@ module Spree
|
||||
@order ||= order
|
||||
links = []
|
||||
links << edit_order_link unless action_name == "edit"
|
||||
if @order.complete?
|
||||
links << resend_confirmation_link
|
||||
if @order.distributor.can_invoice?
|
||||
links << send_invoice_link_with_url
|
||||
else
|
||||
links << send_invoice_link_without_url
|
||||
end
|
||||
links << print_invoice_link
|
||||
if Spree::Config.enable_receipt_printing?
|
||||
links << print_ticket_link
|
||||
links << select_ticket_printer_link
|
||||
end
|
||||
end
|
||||
if @order.ready_to_ship?
|
||||
links << ship_order_link
|
||||
end
|
||||
links << complete_order_links if @order.complete?
|
||||
links << ship_order_link if @order.ready_to_ship?
|
||||
links << cancel_order_link if @order.can_cancel?
|
||||
links
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def complete_order_links
|
||||
complete_order_links = []
|
||||
complete_order_links << resend_confirmation_link
|
||||
complete_order_links << invoice_links
|
||||
complete_order_links << ticket_links
|
||||
complete_order_links
|
||||
end
|
||||
|
||||
def invoice_links
|
||||
invoice_links = []
|
||||
invoice_links << if @order.distributor.can_invoice?
|
||||
send_invoice_link_with_url
|
||||
else
|
||||
send_invoice_link_without_url
|
||||
end
|
||||
invoice_links << print_invoice_link
|
||||
invoice_links
|
||||
end
|
||||
|
||||
def ticket_links
|
||||
return [] unless Spree::Config.enable_receipt_printing?
|
||||
[print_ticket_link, select_ticket_printer_link]
|
||||
end
|
||||
|
||||
def edit_order_link
|
||||
{ name: t(:edit_order),
|
||||
url: edit_admin_order_path(@order),
|
||||
|
||||
Reference in New Issue
Block a user