Skip to content

Commit

Permalink
Merge pull request #12998 from kernal053/add-voucher-to-order-confirm…
Browse files Browse the repository at this point in the history
…ation-emails

Add 'Voucher:' before voucher code on order confirmation emails
  • Loading branch information
drummer83 authored Jan 3, 2025
2 parents 1b03ee1 + bad32e2 commit 35fa415
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 1 deletion.
5 changes: 4 additions & 1 deletion app/views/spree/order_mailer/_order_summary.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,10 @@
- checkout_adjustments_for(@order, exclude: [:line_item]).reverse_each do |adjustment|
%tr
%td{align: "right", colspan: "3"}
= "#{adjustment.label}:"
- if adjustment.originator_type == "Voucher"
= t(:email_order_summary_voucher_label, code: adjustment.label)
- else
= "#{adjustment.label}:"
%td{align: "right"}
= adjustment.display_amount
%tr
Expand Down
1 change: 1 addition & 0 deletions config/locales/en.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2499,6 +2499,7 @@ See the %{link} to find out more about %{sitename}'s features and to start using
email_order_summary_subtotal: "Subtotal:"
email_order_summary_total: "Total:"
email_order_summary_includes_tax: "(includes tax):"
email_order_summary_voucher_label: "Voucher (%{code}):"
email_payment_paid: PAID
email_payment_not_paid: NOT PAID
email_payment_description: Payment Description at Checkout
Expand Down
26 changes: 26 additions & 0 deletions spec/mailers/order_mailer_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -257,4 +257,30 @@
end
end
end

context "display adjustments" do
let(:order) { create(:order_with_totals_and_distribution, :completed) }
let(:voucher) { create(:voucher, enterprise: order.distributor) }

before do
voucher.create_adjustment(voucher.code, order)
OrderManagement::Order::Updater.new(order).update_voucher
end

let!(:confirmation_email_for_customer) { Spree::OrderMailer.confirm_email_for_customer(order) }
let!(:confirmation_email_for_shop) { Spree::OrderMailer.confirm_email_for_shop(order) }
let!(:cancellation_email) { Spree::OrderMailer.cancel_email(order) }

it "includes Voucher text with label" do
expect(confirmation_email_for_customer.body).to include("Voucher (#{voucher.code}):")
expect(confirmation_email_for_shop.body).to include("Voucher (#{voucher.code}):")
expect(cancellation_email.body).to include("Voucher (#{voucher.code}):")
end

it "includes Shipping label" do
expect(confirmation_email_for_customer.body).to include("Shipping:")
expect(confirmation_email_for_shop.body).to include("Shipping:")
expect(cancellation_email.body).to include("Shipping:")
end
end
end

0 comments on commit 35fa415

Please sign in to comment.