diff options
author | Mark Wells <mark@freeside.biz> | 2015-11-24 12:23:14 -0800 |
---|---|---|
committer | Mark Wells <mark@freeside.biz> | 2015-11-24 12:23:14 -0800 |
commit | d5f8aa5cf1787238224add1a836f0d7577f3b9b7 (patch) | |
tree | f7fea708486a5eb8c6736bc4942d5ba18968429f /rt/lib | |
parent | 9f480e19adb21d793cff899bae5dc80be4746092 (diff) |
add billing address fields to RT ticket search, #19154
Diffstat (limited to 'rt/lib')
-rw-r--r-- | rt/lib/RT/URI/freeside/Internal.pm | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/rt/lib/RT/URI/freeside/Internal.pm b/rt/lib/RT/URI/freeside/Internal.pm index d1479b5f9..33831bcac 100644 --- a/rt/lib/RT/URI/freeside/Internal.pm +++ b/rt/lib/RT/URI/freeside/Internal.pm @@ -211,6 +211,8 @@ sub CustomerResolver { sub CustomerInfo { my $self = shift; $self = $self->CustomerResolver; + return $self->{CustomerInfo} if $self->{CustomerInfo}; + my $rec = $self->_FreesideGetRecord() if $self; if (!$rec) { # AsStringLong will report an error; @@ -232,7 +234,11 @@ sub CustomerInfo { my $referral = qsearchs('part_referral', { refnum => $cust_main->refnum }); my @part_tags = $cust_main->part_tag; - return $self->{CustomerInfo} ||= { + my @lf = $cust_main->location_fields; + my $bill_location = $cust_main->bill_location; + my $ship_location = $cust_main->ship_location; + + my $info = { %$rec, AgentName => ($agent ? ($agent->agentnum.': '.$agent->agent) : ''), @@ -246,7 +252,17 @@ sub CustomerInfo { Referral => ($referral ? $referral->referral : ''), InvoiceEmail => $cust_main->invoicing_list_emailonly_scalar, BillingType => FS::payby->longname($cust_main->payby), + }; + + foreach my $field (@lf) { + $info->{"bill_$field"} = $bill_location->get($field); + $info->{"ship_$field"} = $ship_location->get($field); } + $info->{"bill_location"} = $bill_location->location_label(no_prefix => 1); + $info->{"ship_location"} = $ship_location->location_label(no_prefix => 1); + + + return $self->{CustomerInfo} = $info; } sub ServiceInfo { |