diff --git a/app/controllers/spree/admin/payment_methods_controller_decorator.rb b/app/controllers/spree/admin/payment_methods_controller_decorator.rb index 11f707d9e6..90f85d2bc2 100644 --- a/app/controllers/spree/admin/payment_methods_controller_decorator.rb +++ b/app/controllers/spree/admin/payment_methods_controller_decorator.rb @@ -1,4 +1,6 @@ Spree::Admin::PaymentMethodsController.class_eval do + before_filter :load_hubs, only: [:new, :edit, :create, :update] + # Only show payment methods that user has access to and sort by distributor name # ! Redundant code copied from Spree::Admin::ResourceController with modifications marked def collection @@ -22,4 +24,9 @@ Spree::Admin::PaymentMethodsController.class_eval do collection end + + private + def load_hubs + @hubs = Enterprise.managed_by(spree_current_user).is_distributor.sort_by!{ |d| [(@payment_method.has_distributor? d) ? 0 : 1, d.name] } + end end diff --git a/app/overrides/spree/admin/payment_methods/_form/add_distributors.html.haml.deface b/app/overrides/spree/admin/payment_methods/_form/add_distributors.html.haml.deface deleted file mode 100644 index 0ed490a94a..0000000000 --- a/app/overrides/spree/admin/payment_methods/_form/add_distributors.html.haml.deface +++ /dev/null @@ -1,8 +0,0 @@ -/ insert_before '[data-hook="environment"]' - -= f.field_container :distributors do - = f.label :distributors - %br - - distributors = Enterprise.is_distributor.managed_by(spree_current_user) | f.object.distributors - = f.collection_select(:distributor_ids, distributors, :id, :name, {include_blank: false}, {class: "select2 fullwidth", multiple: true}) - = f.error_message_on :distributors diff --git a/app/overrides/spree/admin/payment_methods/edit/add_hubs_sidebar.html.haml.deface b/app/overrides/spree/admin/payment_methods/edit/add_hubs_sidebar.html.haml.deface new file mode 100644 index 0000000000..74fc957e71 --- /dev/null +++ b/app/overrides/spree/admin/payment_methods/edit/add_hubs_sidebar.html.haml.deface @@ -0,0 +1,3 @@ +/ insert_after "code[erb-loud]:contains(\"render :partial => 'form', :locals => { :f => f }\")" + += render :partial => 'spree/admin/shared/hubs_sidebar', :locals => { :f => f } \ No newline at end of file diff --git a/app/overrides/spree/admin/payment_methods/edit/remove_configuration_sidebar.deface b/app/overrides/spree/admin/payment_methods/edit/remove_configuration_sidebar.deface new file mode 100644 index 0000000000..cc3fbcdee1 --- /dev/null +++ b/app/overrides/spree/admin/payment_methods/edit/remove_configuration_sidebar.deface @@ -0,0 +1 @@ +remove "code[erb-loud]:contains(\"render :partial => 'spree/admin/shared/configuration_menu'\")" \ No newline at end of file diff --git a/app/overrides/spree/admin/payment_methods/new/add_hubs_sidebar.html.haml.deface b/app/overrides/spree/admin/payment_methods/new/add_hubs_sidebar.html.haml.deface new file mode 100644 index 0000000000..74fc957e71 --- /dev/null +++ b/app/overrides/spree/admin/payment_methods/new/add_hubs_sidebar.html.haml.deface @@ -0,0 +1,3 @@ +/ insert_after "code[erb-loud]:contains(\"render :partial => 'form', :locals => { :f => f }\")" + += render :partial => 'spree/admin/shared/hubs_sidebar', :locals => { :f => f } \ No newline at end of file diff --git a/app/overrides/spree/admin/payment_methods/new/remove_configuration_sidebar.deface b/app/overrides/spree/admin/payment_methods/new/remove_configuration_sidebar.deface new file mode 100644 index 0000000000..cc3fbcdee1 --- /dev/null +++ b/app/overrides/spree/admin/payment_methods/new/remove_configuration_sidebar.deface @@ -0,0 +1 @@ +remove "code[erb-loud]:contains(\"render :partial => 'spree/admin/shared/configuration_menu'\")" \ No newline at end of file