X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fgeocode_Mixin.pm;h=4f8d1e85c94a7b4f2a98cf71e6705bd0955269a4;hb=0b81782a6257456e04fb8a5a7faf0dbfbf7bc166;hp=08e7b86197a9e6e923cd6c375b10a5dd23216a7d;hpb=c58774a70c3326ad2ba5a7a38b174dfbd76a9f78;p=freeside.git diff --git a/FS/FS/geocode_Mixin.pm b/FS/FS/geocode_Mixin.pm index 08e7b8619..4f8d1e85c 100644 --- a/FS/FS/geocode_Mixin.pm +++ b/FS/FS/geocode_Mixin.pm @@ -38,7 +38,8 @@ and other location fields. =item location_hash Returns a list of key/value pairs, with the following keys: address1, address2, -city, county, state, zip, country. The shipping address is used if present. +city, county, state, zip, country, geocode, location_type, location_number, +location_kind. The shipping address is used if present. =cut @@ -88,12 +89,32 @@ sub location_label { my $prefix = $self->has_ship_address ? 'ship_' : ''; my $notfirst = 0; - foreach (qw ( address1 address2 location_type location_number ) ) { + foreach (qw ( address1 address2 ) ) { my $method = "$prefix$_"; $line .= ($notfirst ? $separator : ''). &$escape($self->$method) if $self->$method; $notfirst++; } + + my $lt = $self->get($prefix.'location_type'); + if ( $lt ) { + my %location_type; + if ( 1 ) { #ikano, switch on via config + { no warnings 'void'; + eval { 'use FS::part_export::ikano;' }; + die $@ if $@; + } + %location_type = FS::part_export::ikano->location_types; + } else { + %location_type = (); #? + } + + $line .= ' '.&$escape( $location_type{$lt} || $lt ); + } + + $line .= ' '. &$escape($self->get($prefix.'location_number')) + if $self->get($prefix.'location_number'); + $notfirst = 0; foreach (qw ( city county state zip ) ) { my $method = "$prefix$_";