From 3728ec2a121bb5e8fe7e1f50c9a12bc935e8d4bd Mon Sep 17 00:00:00 2001 From: Rick Barrette Date: Sun, 1 Mar 2026 00:40:11 -0500 Subject: [PATCH] Refactor: Improve address formatting in CustomersController and enhance HTML rendering for billing and shipping addresses --- app/controllers/customers_controller.rb | 29 ++++++++++++++++--------- app/views/customers/_details.html.erb | 4 ++-- 2 files changed, 21 insertions(+), 12 deletions(-) diff --git a/app/controllers/customers_controller.rb b/app/controllers/customers_controller.rb index ac4f540..9e88b93 100644 --- a/app/controllers/customers_controller.rb +++ b/app/controllers/customers_controller.rb @@ -200,17 +200,26 @@ class CustomersController < ApplicationController end # format a quickbooks address to a human readable string - def address_to_s (address) + def address_to_s(address) return if address.nil? - string = address.line1 if address.line1 - string << "\n" + address.line2 if address.line2 - string << "\n" + address.line3 if address.line3 - string << "\n" + address.line4 if address.line4 - string << "\n" + address.line5 if address.line5 - string << " " + address.city if address.city - string << ", " + address.country_sub_division_code if address.country_sub_division_code - string << " " + address.postal_code if address.postal_code - return string + + lines = [ + address.line1, + address.line2, + address.line3, + address.line4, + address.line5 + ].compact_blank + + city_line = [ + address.city, + address.country_sub_division_code, + address.postal_code + ].compact_blank.join(" ") + + lines << city_line unless city_line.blank? + + lines.join("\n") end def log(msg) diff --git a/app/views/customers/_details.html.erb b/app/views/customers/_details.html.erb index 5f76281..33b6b05 100644 --- a/app/views/customers/_details.html.erb +++ b/app/views/customers/_details.html.erb @@ -23,12 +23,12 @@ <%=t(:label_billing_address)%> - <%= @billing_address %> +
<%= @billing_address %>
<%=t(:label_shipping_address)%> - <%= @shipping_address %> +
<%= @shipping_address %>