From 8e5cfdeb975935c79abfa5315cf3ab0aaf971d2a Mon Sep 17 00:00:00 2001 From: Steve Roberts Date: Wed, 1 Jul 2020 10:56:52 +1000 Subject: [PATCH 01/10] Add more details on payments to invoice. --- app/assets/stylesheets/mail/email.scss | 42 +++++++++++++++++++ app/views/spree/admin/orders/_list.html.haml | 16 +++++++ .../spree/order_mailer/_payment.html.haml | 17 ++++---- 3 files changed, 68 insertions(+), 7 deletions(-) create mode 100644 app/views/spree/admin/orders/_list.html.haml diff --git a/app/assets/stylesheets/mail/email.scss b/app/assets/stylesheets/mail/email.scss index dee2738ead..83e1156baa 100644 --- a/app/assets/stylesheets/mail/email.scss +++ b/app/assets/stylesheets/mail/email.scss @@ -107,6 +107,48 @@ table.order-summary { } } +// put in separate order invoice scss file? +table.payment-list { + width:100%; + border-collapse: separate; + border-spacing: 0px; + font-size:12px; + + tbody tr td { + padding: 5px; + border-bottom: 1px solid #666; + + .payment-method-name{ + display:block; + font-weight:bold; + } + .payment-method-description{ + display:block; + } + } + + thead tr th { + border-bottom: 1px solid #666; + padding: 10px 5px 5px; + text-transform: uppercase; + text-align: left; + } + + th.amount, td.amount{ + text-align: right; + padding-right:15px; + } + + th.payment-state{ + text-align: right; + } + + td.payment-state{ + text-align: right; + text-transform: uppercase; + } +} + .text-right { text-align: right; } diff --git a/app/views/spree/admin/orders/_list.html.haml b/app/views/spree/admin/orders/_list.html.haml new file mode 100644 index 0000000000..898c3d5288 --- /dev/null +++ b/app/views/spree/admin/orders/_list.html.haml @@ -0,0 +1,16 @@ +%table.payment-list + %thead + %tr + %th= "#{Spree.t('date')}/#{Spree.t('time')}" + %th.amount= t(:amount) + %th= t(:payment_method) + %th.payment-state= t(:payment_state) + %tbody + - payments.each do |payment| + %tr + %td= pretty_time(payment.created_at) + %td.amount= payment.display_amount.to_html + %td + %span.payment-method-name= payment_method_name(payment) + %span.payment-method-description= payment.payment_method.description + %td.payment-state= t(payment.state, scope: :payment_states, default: payment.state.capitalize) \ No newline at end of file diff --git a/app/views/spree/order_mailer/_payment.html.haml b/app/views/spree/order_mailer/_payment.html.haml index 85ad234cda..1f5ef0375a 100644 --- a/app/views/spree/order_mailer/_payment.html.haml +++ b/app/views/spree/order_mailer/_payment.html.haml @@ -3,12 +3,15 @@ - if @order.paid? = t :email_payment_paid - else - = t :email_payment_not_paid + - if @order.outstanding_balance? + = @order.outstanding_balance < 0 ? t(:credit_owed) : t(:balance_due) + \: + %strong= @order.display_outstanding_balance + - else + = t :email_payment_not_paid %strong = t :email_payment_summary -%h4 - = t :email_payment_method - %strong= last_payment_method(@order)&.name -%p - %em= last_payment_method(@order)&.description -%p   +- if @order.payments.any? + = render partial: 'list', locals: { payments: @order.payments } +- else + .alpha.twelve.columns.no-objects-found= t(:order_has_no_payments) From a00e964eb69a0654f2f37d5dc9bc40abb3403b56 Mon Sep 17 00:00:00 2001 From: Steve Roberts Date: Wed, 1 Jul 2020 12:24:18 +1000 Subject: [PATCH 02/10] Clean up scss - picked up by codeclimate --- app/assets/stylesheets/mail/email.scss | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/app/assets/stylesheets/mail/email.scss b/app/assets/stylesheets/mail/email.scss index 83e1156baa..ca3b7b5ed7 100644 --- a/app/assets/stylesheets/mail/email.scss +++ b/app/assets/stylesheets/mail/email.scss @@ -109,21 +109,22 @@ table.order-summary { // put in separate order invoice scss file? table.payment-list { - width:100%; + width: 100%; border-collapse: separate; border-spacing: 0px; - font-size:12px; + font-size: 12px; tbody tr td { padding: 5px; border-bottom: 1px solid #666; - - .payment-method-name{ - display:block; - font-weight:bold; + + .payment-method-name { + display: block; + font-weight: bold; } - .payment-method-description{ - display:block; + + .payment-method-description { + display: block; } } @@ -134,16 +135,16 @@ table.payment-list { text-align: left; } - th.amount, td.amount{ + th.amount, td.amount { text-align: right; - padding-right:15px; + padding-right: 15px; } - th.payment-state{ + th.payment-state { text-align: right; } - td.payment-state{ + td.payment-state { text-align: right; text-transform: uppercase; } From 1f470830c8f81b68ba5464662eb1547e44a7b62f Mon Sep 17 00:00:00 2001 From: Steve Roberts Date: Wed, 1 Jul 2020 12:47:03 +1000 Subject: [PATCH 03/10] add vars to email.scss --- app/assets/stylesheets/mail/email.scss | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/assets/stylesheets/mail/email.scss b/app/assets/stylesheets/mail/email.scss index ca3b7b5ed7..7c632ed913 100644 --- a/app/assets/stylesheets/mail/email.scss +++ b/app/assets/stylesheets/mail/email.scss @@ -1,3 +1,5 @@ +@import '../admin/variables'; + /* ------------------------------------- * GLOBAL *------------------------------------- */ @@ -116,7 +118,7 @@ table.payment-list { tbody tr td { padding: 5px; - border-bottom: 1px solid #666; + border-bottom: 1px solid $medium-grey; .payment-method-name { display: block; @@ -129,7 +131,7 @@ table.payment-list { } thead tr th { - border-bottom: 1px solid #666; + border-bottom: 1px solid $medium-grey; padding: 10px 5px 5px; text-transform: uppercase; text-align: left; From debbf9b361cb81c611e5b0abd830f31ea7bfc9bc Mon Sep 17 00:00:00 2001 From: Steve Roberts Date: Tue, 7 Jul 2020 22:05:27 +1000 Subject: [PATCH 04/10] Modify payment_list partial to be shared - Partial is used by both the invoice pdf and the order confirmation email - separate scss file for new payment list table - extracted outstanding balance logic (also changed in payments view.. admin/orders/RXXX/payments) - translations in shared.payments_list and lazy loaded --- app/assets/stylesheets/mail/email.scss | 43 ----------------- app/assets/stylesheets/mail/payment_list.scss | 47 +++++++++++++++++++ app/helpers/order_helper.rb | 4 ++ app/mailers/spree/order_mailer.rb | 1 + app/views/spree/admin/orders/_list.html.haml | 16 ------- .../spree/admin/orders/invoice.html.haml | 2 +- .../spree/admin/payments/index.html.haml | 2 +- .../confirm_email_for_customer.html.haml | 2 +- .../_payment.html.haml | 6 +-- .../spree/shared/_payments_list.html.haml | 14 ++++++ config/locales/en.yml | 5 ++ 11 files changed, 76 insertions(+), 66 deletions(-) create mode 100644 app/assets/stylesheets/mail/payment_list.scss delete mode 100644 app/views/spree/admin/orders/_list.html.haml rename app/views/spree/{order_mailer => shared}/_payment.html.haml (59%) create mode 100644 app/views/spree/shared/_payments_list.html.haml diff --git a/app/assets/stylesheets/mail/email.scss b/app/assets/stylesheets/mail/email.scss index 7c632ed913..a82ea6c9f9 100644 --- a/app/assets/stylesheets/mail/email.scss +++ b/app/assets/stylesheets/mail/email.scss @@ -109,49 +109,6 @@ table.order-summary { } } -// put in separate order invoice scss file? -table.payment-list { - width: 100%; - border-collapse: separate; - border-spacing: 0px; - font-size: 12px; - - tbody tr td { - padding: 5px; - border-bottom: 1px solid $medium-grey; - - .payment-method-name { - display: block; - font-weight: bold; - } - - .payment-method-description { - display: block; - } - } - - thead tr th { - border-bottom: 1px solid $medium-grey; - padding: 10px 5px 5px; - text-transform: uppercase; - text-align: left; - } - - th.amount, td.amount { - text-align: right; - padding-right: 15px; - } - - th.payment-state { - text-align: right; - } - - td.payment-state { - text-align: right; - text-transform: uppercase; - } -} - .text-right { text-align: right; } diff --git a/app/assets/stylesheets/mail/payment_list.scss b/app/assets/stylesheets/mail/payment_list.scss new file mode 100644 index 0000000000..7cf6b3ba8e --- /dev/null +++ b/app/assets/stylesheets/mail/payment_list.scss @@ -0,0 +1,47 @@ +@import '../admin/variables'; + +// payment list, used in both invoice pdfs and order confirmation emails + +table.payment-list { + width: 100%; + border-collapse: separate; + border-spacing: 0px; + font-size: 12px; + margin-bottom: 20px; + + tbody tr td { + padding: 5px; + border-bottom: 1px solid $medium-grey; + + .payment-method-name { + display: block; + font-weight: bold; + } + + .payment-method-description { + display: block; + } + } + + thead tr th { + border-bottom: 1px solid $medium-grey; + padding: 10px 5px 5px; + text-transform: uppercase; + text-align: left; + } + + th.amount, td.amount { + text-align: right; + padding-right: 15px; + } + + th.payment-state { + text-align: right; + } + + td.payment-state { + text-align: right; + text-transform: uppercase; + } + } + \ No newline at end of file diff --git a/app/helpers/order_helper.rb b/app/helpers/order_helper.rb index 157ee212bb..ba47bcdd25 100644 --- a/app/helpers/order_helper.rb +++ b/app/helpers/order_helper.rb @@ -4,4 +4,8 @@ module OrderHelper def last_payment_method(order) OrderPaymentFinder.new(order).last_payment&.payment_method end + + def outstanding_balance_label(order) + order.outstanding_balance < 0 ? t(:credit_owed) : t(:balance_due) + end end diff --git a/app/mailers/spree/order_mailer.rb b/app/mailers/spree/order_mailer.rb index ce9b79874e..844a3fac41 100644 --- a/app/mailers/spree/order_mailer.rb +++ b/app/mailers/spree/order_mailer.rb @@ -5,6 +5,7 @@ module Spree helper HtmlHelper helper ::CheckoutHelper helper SpreeCurrencyHelper + helper Spree::Admin::PaymentsHelper helper OrderHelper include I18nHelper diff --git a/app/views/spree/admin/orders/_list.html.haml b/app/views/spree/admin/orders/_list.html.haml deleted file mode 100644 index 898c3d5288..0000000000 --- a/app/views/spree/admin/orders/_list.html.haml +++ /dev/null @@ -1,16 +0,0 @@ -%table.payment-list - %thead - %tr - %th= "#{Spree.t('date')}/#{Spree.t('time')}" - %th.amount= t(:amount) - %th= t(:payment_method) - %th.payment-state= t(:payment_state) - %tbody - - payments.each do |payment| - %tr - %td= pretty_time(payment.created_at) - %td.amount= payment.display_amount.to_html - %td - %span.payment-method-name= payment_method_name(payment) - %span.payment-method-description= payment.payment_method.description - %td.payment-state= t(payment.state, scope: :payment_states, default: payment.state.capitalize) \ No newline at end of file diff --git a/app/views/spree/admin/orders/invoice.html.haml b/app/views/spree/admin/orders/invoice.html.haml index ff4a930e5a..d4c20a02e1 100644 --- a/app/views/spree/admin/orders/invoice.html.haml +++ b/app/views/spree/admin/orders/invoice.html.haml @@ -70,4 +70,4 @@ %p = @order.distributor.invoice_text -= render 'spree/order_mailer/payment' += render 'spree/shared/payment' diff --git a/app/views/spree/admin/payments/index.html.haml b/app/views/spree/admin/payments/index.html.haml index 7fbe76429f..a3df9f1c80 100644 --- a/app/views/spree/admin/payments/index.html.haml +++ b/app/views/spree/admin/payments/index.html.haml @@ -13,7 +13,7 @@ - if @order.outstanding_balance? %h5.outstanding-balance - = @order.outstanding_balance < 0 ? t(:credit_owed) : t(:balance_due) + = outstanding_balance_label(@order) \: %strong= @order.display_outstanding_balance diff --git a/app/views/spree/order_mailer/confirm_email_for_customer.html.haml b/app/views/spree/order_mailer/confirm_email_for_customer.html.haml index cfad3c42b5..13ce27a8ee 100644 --- a/app/views/spree/order_mailer/confirm_email_for_customer.html.haml +++ b/app/views/spree/order_mailer/confirm_email_for_customer.html.haml @@ -21,7 +21,7 @@ = t :email_confirm_customer_details_html, distributor: @order.distributor.name = render 'order_summary' -= render 'payment' += render 'spree/shared/payment' = render 'shipping' = render 'special_instructions' = render 'signoff' diff --git a/app/views/spree/order_mailer/_payment.html.haml b/app/views/spree/shared/_payment.html.haml similarity index 59% rename from app/views/spree/order_mailer/_payment.html.haml rename to app/views/spree/shared/_payment.html.haml index 1f5ef0375a..8b7b26b074 100644 --- a/app/views/spree/order_mailer/_payment.html.haml +++ b/app/views/spree/shared/_payment.html.haml @@ -4,7 +4,7 @@ = t :email_payment_paid - else - if @order.outstanding_balance? - = @order.outstanding_balance < 0 ? t(:credit_owed) : t(:balance_due) + = outstanding_balance_label(@order) \: %strong= @order.display_outstanding_balance - else @@ -12,6 +12,4 @@ %strong = t :email_payment_summary - if @order.payments.any? - = render partial: 'list', locals: { payments: @order.payments } -- else - .alpha.twelve.columns.no-objects-found= t(:order_has_no_payments) + = render partial: 'spree/shared/payments_list', locals: { payments: @order.payments } diff --git a/app/views/spree/shared/_payments_list.html.haml b/app/views/spree/shared/_payments_list.html.haml new file mode 100644 index 0000000000..32bec2e1b1 --- /dev/null +++ b/app/views/spree/shared/_payments_list.html.haml @@ -0,0 +1,14 @@ +%table.payment-list + %thead + %tr + %th= t('.date_time') + %th= t('.payment_method') + %th.payment-state= t('.payment_state') + %th.amount= t('.amount') + %tbody + - payments.each do |payment| + %tr + %td= l(payment.created_at, format: "%b %d, %Y %H:%M") + %td.payment-method-name= payment_method_name(payment) + %td.payment-state= t(payment.state, scope: :payment_states, default: payment.state.capitalize) + %td.amount= payment.display_amount.to_html diff --git a/config/locales/en.yml b/config/locales/en.yml index 6177ff03e6..f05dad652b 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -3134,6 +3134,11 @@ See the %{link} to find out more about %{sitename}'s features and to start using one: "1 error prohibited this record from being saved:" other: "%{count} errors prohibited this record from being saved:" there_were_problems_with_the_following_fields: "There were problems with the following fields" + payments_list: + date_time: "Date/time" + amount: "Amount" + payment_method: "Payment Method" + payment_state: "Payment State" errors: messages: blank: "can't be blank" From ac69bef459ca0bdfa63bb0fda03677daee9388e6 Mon Sep 17 00:00:00 2001 From: Steve Roberts Date: Tue, 7 Jul 2020 22:25:11 +1000 Subject: [PATCH 05/10] Fix issues raised by linter --- app/assets/stylesheets/mail/payment_list.scss | 47 ------------------- .../stylesheets/mail/payments_list.scss | 45 ++++++++++++++++++ app/helpers/order_helper.rb | 2 +- .../spree/shared/_payments_list.html.haml | 4 +- 4 files changed, 48 insertions(+), 50 deletions(-) delete mode 100644 app/assets/stylesheets/mail/payment_list.scss create mode 100644 app/assets/stylesheets/mail/payments_list.scss diff --git a/app/assets/stylesheets/mail/payment_list.scss b/app/assets/stylesheets/mail/payment_list.scss deleted file mode 100644 index 7cf6b3ba8e..0000000000 --- a/app/assets/stylesheets/mail/payment_list.scss +++ /dev/null @@ -1,47 +0,0 @@ -@import '../admin/variables'; - -// payment list, used in both invoice pdfs and order confirmation emails - -table.payment-list { - width: 100%; - border-collapse: separate; - border-spacing: 0px; - font-size: 12px; - margin-bottom: 20px; - - tbody tr td { - padding: 5px; - border-bottom: 1px solid $medium-grey; - - .payment-method-name { - display: block; - font-weight: bold; - } - - .payment-method-description { - display: block; - } - } - - thead tr th { - border-bottom: 1px solid $medium-grey; - padding: 10px 5px 5px; - text-transform: uppercase; - text-align: left; - } - - th.amount, td.amount { - text-align: right; - padding-right: 15px; - } - - th.payment-state { - text-align: right; - } - - td.payment-state { - text-align: right; - text-transform: uppercase; - } - } - \ No newline at end of file diff --git a/app/assets/stylesheets/mail/payments_list.scss b/app/assets/stylesheets/mail/payments_list.scss new file mode 100644 index 0000000000..1ddd89def8 --- /dev/null +++ b/app/assets/stylesheets/mail/payments_list.scss @@ -0,0 +1,45 @@ +@import "../admin/variables"; + +// payment list, used in both invoice pdfs and order confirmation emails + +.payments-list { + width: 100%; + border-collapse: separate; + border-spacing: 0px; + font-size: 12px; + margin-bottom: 20px; + + tbody tr td { + padding: 5px; + border-bottom: 1px solid $medium-grey; + + .payment-method-name { + display: block; + font-weight: bold; + } + + .payment-method-description { + display: block; + } + } + + thead tr th { + border-bottom: 1px solid $medium-grey; + padding: 10px 5px 5px; + text-transform: uppercase; + text-align: left; + } + + .amount { + text-align: right; + padding-right: 15px; + } + + .payment-state { + text-align: right; + } + + .payment-state-value { + text-transform: uppercase; + } +} diff --git a/app/helpers/order_helper.rb b/app/helpers/order_helper.rb index ba47bcdd25..c6ab5807bb 100644 --- a/app/helpers/order_helper.rb +++ b/app/helpers/order_helper.rb @@ -6,6 +6,6 @@ module OrderHelper end def outstanding_balance_label(order) - order.outstanding_balance < 0 ? t(:credit_owed) : t(:balance_due) + order.outstanding_balance.negative? ? t(:credit_owed) : t(:balance_due) end end diff --git a/app/views/spree/shared/_payments_list.html.haml b/app/views/spree/shared/_payments_list.html.haml index 32bec2e1b1..ca475aff2b 100644 --- a/app/views/spree/shared/_payments_list.html.haml +++ b/app/views/spree/shared/_payments_list.html.haml @@ -1,4 +1,4 @@ -%table.payment-list +%table.payments-list %thead %tr %th= t('.date_time') @@ -10,5 +10,5 @@ %tr %td= l(payment.created_at, format: "%b %d, %Y %H:%M") %td.payment-method-name= payment_method_name(payment) - %td.payment-state= t(payment.state, scope: :payment_states, default: payment.state.capitalize) + %td.payment-state.payment-state-value= t(payment.state, scope: :payment_states, default: payment.state.capitalize) %td.amount= payment.display_amount.to_html From c79f2326fcaf588c47b3159e66bc386b54802564 Mon Sep 17 00:00:00 2001 From: Steve Roberts Date: Tue, 7 Jul 2020 22:30:33 +1000 Subject: [PATCH 06/10] Fix some more issues raised by semaphore --- app/assets/stylesheets/mail/payments_list.scss | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/assets/stylesheets/mail/payments_list.scss b/app/assets/stylesheets/mail/payments_list.scss index 1ddd89def8..406c403e2d 100644 --- a/app/assets/stylesheets/mail/payments_list.scss +++ b/app/assets/stylesheets/mail/payments_list.scss @@ -5,11 +5,11 @@ .payments-list { width: 100%; border-collapse: separate; - border-spacing: 0px; + border-spacing: 0; font-size: 12px; margin-bottom: 20px; - tbody tr td { + td { padding: 5px; border-bottom: 1px solid $medium-grey; @@ -23,7 +23,7 @@ } } - thead tr th { + thead th { border-bottom: 1px solid $medium-grey; padding: 10px 5px 5px; text-transform: uppercase; From 4243ff293f6dabe1f0bc515005a0bfc4750dc268 Mon Sep 17 00:00:00 2001 From: Steve Roberts Date: Tue, 7 Jul 2020 22:46:15 +1000 Subject: [PATCH 07/10] Update invoice2 to also use the shared payment partial --- app/views/spree/admin/orders/invoice2.html.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/spree/admin/orders/invoice2.html.haml b/app/views/spree/admin/orders/invoice2.html.haml index b9715c2770..7344f7ead5 100644 --- a/app/views/spree/admin/orders/invoice2.html.haml +++ b/app/views/spree/admin/orders/invoice2.html.haml @@ -71,4 +71,4 @@ %p = @order.distributor.invoice_text -= render 'spree/order_mailer/payment' += render 'spree/shared/payment' From 50fd3656efae1c0689e147679b6a6b1538494964 Mon Sep 17 00:00:00 2001 From: Steve Roberts Date: Wed, 8 Jul 2020 10:46:38 +1000 Subject: [PATCH 08/10] Fix tests - the move of payments to shared has wider impact than first thought (yay tests) --- app/mailers/subscription_mailer.rb | 1 + app/views/spree/order_mailer/confirm_email_for_shop.html.haml | 2 +- app/views/subscription_mailer/confirmation_email.html.haml | 2 +- app/views/subscription_mailer/placement_email.html.haml | 2 +- 4 files changed, 4 insertions(+), 3 deletions(-) diff --git a/app/mailers/subscription_mailer.rb b/app/mailers/subscription_mailer.rb index 0267e24ef4..18d68cb504 100644 --- a/app/mailers/subscription_mailer.rb +++ b/app/mailers/subscription_mailer.rb @@ -2,6 +2,7 @@ class SubscriptionMailer < Spree::BaseMailer helper CheckoutHelper helper ShopMailHelper helper OrderHelper + helper Spree::Admin::PaymentsHelper include I18nHelper def confirmation_email(order) diff --git a/app/views/spree/order_mailer/confirm_email_for_shop.html.haml b/app/views/spree/order_mailer/confirm_email_for_shop.html.haml index 3a0df14697..90ec5386d1 100644 --- a/app/views/spree/order_mailer/confirm_email_for_shop.html.haml +++ b/app/views/spree/order_mailer/confirm_email_for_shop.html.haml @@ -23,7 +23,7 @@ = @order.bill_address.phone if @order.bill_address.phone = render 'order_summary' -= render 'payment' += render 'spree/shared/payment' = render 'shipping' = render 'special_instructions' diff --git a/app/views/subscription_mailer/confirmation_email.html.haml b/app/views/subscription_mailer/confirmation_email.html.haml index b2adb88f9a..3af1ef2d21 100644 --- a/app/views/subscription_mailer/confirmation_email.html.haml +++ b/app/views/subscription_mailer/confirmation_email.html.haml @@ -17,7 +17,7 @@ = render 'spree/order_mailer/order_summary' -= render 'spree/order_mailer/payment' += render 'spree/shared/payment' = render 'spree/order_mailer/shipping' = render 'spree/order_mailer/special_instructions' diff --git a/app/views/subscription_mailer/placement_email.html.haml b/app/views/subscription_mailer/placement_email.html.haml index 31f13b6513..9acb8aa7a1 100644 --- a/app/views/subscription_mailer/placement_email.html.haml +++ b/app/views/subscription_mailer/placement_email.html.haml @@ -28,7 +28,7 @@ = render 'spree/order_mailer/order_summary' -= render 'spree/order_mailer/payment' += render 'spree/shared/payment' = render 'spree/order_mailer/shipping' = render 'spree/order_mailer/special_instructions' From 07b819ab4bbd3025e9511abc5fcac50c8dadc647 Mon Sep 17 00:00:00 2001 From: Matt-Yorkley <9029026+Matt-Yorkley@users.noreply.github.com> Date: Thu, 20 Aug 2020 09:41:53 +0100 Subject: [PATCH 09/10] Adjust payment state conditional The `Spree::Order#paid?` method actually includes orders with `payment_state == "credit_owed"`, which was breaking the desired display logic here. --- app/views/spree/shared/_payment.html.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/spree/shared/_payment.html.haml b/app/views/spree/shared/_payment.html.haml index 8b7b26b074..0100100876 100644 --- a/app/views/spree/shared/_payment.html.haml +++ b/app/views/spree/shared/_payment.html.haml @@ -1,6 +1,6 @@ %p.callout %span{:style => "float:right;"} - - if @order.paid? + - if @order.paid? && !@order.outstanding_balance? = t :email_payment_paid - else - if @order.outstanding_balance? From 2f1fdc585201c57031b4033259b8b22c3e7f0386 Mon Sep 17 00:00:00 2001 From: Matt-Yorkley <9029026+Matt-Yorkley@users.noreply.github.com> Date: Fri, 21 Aug 2020 12:12:30 +0100 Subject: [PATCH 10/10] Simplify conditional statement --- app/views/spree/shared/_payment.html.haml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/app/views/spree/shared/_payment.html.haml b/app/views/spree/shared/_payment.html.haml index 0100100876..f13e9b7892 100644 --- a/app/views/spree/shared/_payment.html.haml +++ b/app/views/spree/shared/_payment.html.haml @@ -1,12 +1,12 @@ %p.callout %span{:style => "float:right;"} - - if @order.paid? && !@order.outstanding_balance? - = t :email_payment_paid + - if @order.outstanding_balance? + = outstanding_balance_label(@order) + \: + %strong= @order.display_outstanding_balance - else - - if @order.outstanding_balance? - = outstanding_balance_label(@order) - \: - %strong= @order.display_outstanding_balance + - if @order.paid? + = t :email_payment_paid - else = t :email_payment_not_paid %strong