From: ivan Date: Tue, 12 Jul 2005 09:22:18 +0000 (+0000) Subject: This patch is part of my continuing effort to avoid using SQL and qsearch... X-Git-Tag: BEFORE_FINAL_MASONIZE~440 X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=commitdiff_plain;h=1c7f3b811c8ab9c7ebe89ff080c333cbdf99d78a This patch is part of my continuing effort to avoid using SQL and qsearch from templates to find the pkg_svc records for a package. --- diff --git a/httemplate/edit/part_pkg.cgi b/httemplate/edit/part_pkg.cgi index 128775619..e6e10e73f 100755 --- a/httemplate/edit/part_pkg.cgi +++ b/httemplate/edit/part_pkg.cgi @@ -187,22 +187,20 @@ if ( $pkgpart ) { )"; } my @part_svc = qsearch('part_svc', {}, '', $where); +my %pkg_svc = map { $_->svcpart => $_ } $part_pkg->pkg_svc; my @fixups = (); my $count = 0; my $columns = 3; foreach my $part_svc ( @part_svc ) { my $svcpart = $part_svc->svcpart; - my $pkg_svc = $pkgpart && qsearchs( 'pkg_svc', { - 'pkgpart' => $pkgpart, - 'svcpart' => $svcpart, - } ) || new FS::pkg_svc ( { - 'pkgpart' => $pkgpart, - 'svcpart' => $svcpart, - 'quantity' => 0, - 'primary_svc' => '', - }); - #? #next unless $pkg_svc; + my $pkg_svc = $pkg_svc{$svcpart} + || new FS::pkg_svc ( { + 'pkgpart' => $pkgpart, + 'svcpart' => $svcpart, + 'quantity' => 0, + 'primary_svc' => '', + } ); push @fixups, "pkg_svc$svcpart";