From e83fd5bd83e20c9b6e25d66000cca83f125c9b68 Mon Sep 17 00:00:00 2001 From: binarygit Date: Sat, 9 Dec 2023 15:28:16 +0545 Subject: [PATCH] Create ShipOrder component --- app/components/ship_order_component.html.haml | 7 +++++++ app/components/ship_order_component.rb | 7 +++++++ app/views/spree/admin/orders/_shipment.html.haml | 8 +------- app/views/spree/admin/orders/_table_row.html.haml | 9 +-------- 4 files changed, 16 insertions(+), 15 deletions(-) create mode 100644 app/components/ship_order_component.html.haml create mode 100644 app/components/ship_order_component.rb diff --git a/app/components/ship_order_component.html.haml b/app/components/ship_order_component.html.haml new file mode 100644 index 0000000000..47dbb70d8c --- /dev/null +++ b/app/components/ship_order_component.html.haml @@ -0,0 +1,7 @@ += render ConfirmModalComponent.new(id: "ship_order", confirm_reflexes: "click->Admin::OrdersReflex#ship", controller: "orders", reflex: "Admin::Orders#ship") do + %div{class: "margin-bottom-30"} + %p= t('spree.admin.orders.shipment.mark_as_shipped_message') + %div{class: "margin-bottom-30"} + = hidden_field_tag :id, @order.id + = check_box_tag :send_shipment_email, "1", true + = label_tag :send_shipment_email, t('spree.admin.orders.shipment.mark_as_shipped_label_message') diff --git a/app/components/ship_order_component.rb b/app/components/ship_order_component.rb new file mode 100644 index 0000000000..89f500afcb --- /dev/null +++ b/app/components/ship_order_component.rb @@ -0,0 +1,7 @@ +# frozen_string_literal: true + +class ShipOrderComponent < ViewComponent::Base + def initialize(order:) + @order = order + end +end diff --git a/app/views/spree/admin/orders/_shipment.html.haml b/app/views/spree/admin/orders/_shipment.html.haml index 30b478222a..5dc8b6b902 100644 --- a/app/views/spree/admin/orders/_shipment.html.haml +++ b/app/views/spree/admin/orders/_shipment.html.haml @@ -11,13 +11,7 @@ %button{"class": "ship button icon-arrow-right","data-controller": "modal-link", "data-action": "click->modal-link#open", "data-modal-link-target-value": "ship_order" }= t(:ship) %form - = render ConfirmModalComponent.new(id: "ship_order", confirm_reflexes: "click->Admin::OrdersReflex#ship", controller: "orders", reflex: "Admin::Orders#ship") do - %div{class: "margin-bottom-30"} - %p= t('.mark_as_shipped_message') - %div{class: "margin-bottom-30"} - = hidden_field_tag :id, order.id - = check_box_tag :send_shipment_email - = label_tag :send_shipment_email, t('.mark_as_shipped_label_message') + = render ShipOrderComponent.new(order: order) %table.stock-contents.index %colgroup diff --git a/app/views/spree/admin/orders/_table_row.html.haml b/app/views/spree/admin/orders/_table_row.html.haml index 9c89e1ac5f..cb0b579391 100644 --- a/app/views/spree/admin/orders/_table_row.html.haml +++ b/app/views/spree/admin/orders/_table_row.html.haml @@ -48,14 +48,7 @@ = render partial: 'admin/shared/tooltip', locals: {link_class: "icon_link with-tip icon-edit no-text" ,link: edit_admin_order_path(order), link_text: "", tooltip_text: t('spree.admin.orders.index.edit')} - if order.ready_to_ship? %form - = render ConfirmModalComponent.new(id: "ship_order", confirm_reflexes: "click->Admin::OrdersReflex#ship", controller: "orders", reflex: "Admin::Orders#ship") do - %div{class: "margin-bottom-30"} - %p= t('spree.admin.orders.shipment.mark_as_shipped_message') - %div{class: "margin-bottom-30"} - = hidden_field_tag :id, order.id - = check_box_tag :send_shipment_email, "1", true - = label_tag :send_shipment_email, t('spree.admin.orders.shipment.mark_as_shipped_label_message') - + = render ShipOrderComponent.new(order: order) = render partial: 'admin/shared/tooltip_button', locals: {button_class: "icon-road icon_link with-tip no-text", reflex_data_id: order.id.to_s, tooltip_text: t('spree.admin.orders.index.ship'), shipment: true} - if order.payment_required? && order.pending_payments.reject(&:requires_authorization?).any?