- my %pkgpart;
- #foreach ( @pkg_svc ) {
- foreach ( qsearch( 'pkg_svc', {} ) ) {
- my $part_svc = qsearchs ( 'part_svc', { 'svcpart' => $_->svcpart } );
- $pkgpart{ $_->pkgpart } = -1 # never will == 1 below
- if ( $part_svc->svcdb ne 'svc_acct' );
- if ( $pkgpart{ $_->pkgpart } ) {
- $pkgpart{ $_->pkgpart } = '-1';
- } else {
- $pkgpart{ $_->pkgpart } = $_->svcpart;
- }
- }
-
- my @part_pkg =
- #grep { $pkgpart{ $_->pkgpart } == 1 } qsearch( 'part_pkg', {} );
- grep {
- #( $pkgpart{ $_->pkgpart } || 0 ) == 1
- $pkgpart{ $_->pkgpart }
- && $pkgpart{ $_->pkgpart } != -1
- && $part_pkg{ $_->pkgpart }
- ;
- } qsearch( 'part_pkg', {} );
+ my @part_pkg = grep { $_->svcpart('svc_acct') && $pkgpart->{ $_->pkgpart } }
+ qsearch( 'part_pkg', {} );