diff options
| -rw-r--r-- | FS/FS/cust_main/Search.pm | 12 | 
1 files changed, 8 insertions, 4 deletions
| diff --git a/FS/FS/cust_main/Search.pm b/FS/FS/cust_main/Search.pm index a7f876fcc..b9a30a552 100644 --- a/FS/FS/cust_main/Search.pm +++ b/FS/FS/cust_main/Search.pm @@ -672,7 +672,7 @@ sub search {    my $count_query = "SELECT COUNT(*) FROM cust_main $extra_sql"; -  my $select = join(', ',  +  my @select = (                   'cust_main.custnum',                   FS::UI::Web::cust_sql_fields($params->{'cust_fields'}),                 ); @@ -684,10 +684,10 @@ sub search {      if ($dbh->{Driver}->{Name} eq 'Pg') { -      $select .= ", array_to_string(array(select pkg from cust_pkg left join part_pkg using ( pkgpart ) where cust_main.custnum = cust_pkg.custnum $pkgwhere),'|') as magic"; +      push @select, "array_to_string(array(select pkg from cust_pkg left join part_pkg using ( pkgpart ) where cust_main.custnum = cust_pkg.custnum $pkgwhere),'|') as magic";      }elsif ($dbh->{Driver}->{Name} =~ /^mysql/i) { -      $select .= ", GROUP_CONCAT(pkg SEPARATOR '|') as magic"; +      push @select, "GROUP_CONCAT(pkg SEPARATOR '|') as magic";        $addl_from .= " LEFT JOIN part_pkg using ( pkgpart )";      }else{        warn "warning: unknown database type ". $dbh->{Driver}->{Name}.  @@ -719,9 +719,13 @@ sub search {                                   $c->set('geocode', '');                                   $c->geocode('cch'); #XXX only cch right now                                 }; - +    push @select, 'geocode'; +    push @select, 'zip' unless grep { $_ eq 'zip' } @select; +    push @select, 'ship_zip' unless grep { $_ eq 'ship_zip' } @select;    } +  my $select = join(', ', @select); +    my $sql_query = {      'table'         => 'cust_main',      'select'        => $select, | 
