From: ivan Date: Sun, 29 Mar 2009 10:34:20 +0000 (+0000) Subject: avoid looking up package details redundantly in the pkg loop, RT#5083 X-Git-Tag: root_of_svc_elec_features~1338 X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=commitdiff_plain;h=3a1f501e679daa106fa4fe826ad70608bb033f54 avoid looking up package details redundantly in the pkg loop, RT#5083 --- diff --git a/httemplate/view/cust_main/packages/package.html b/httemplate/view/cust_main/packages/package.html index b07e1af94..c56fa0bdc 100644 --- a/httemplate/view/cust_main/packages/package.html +++ b/httemplate/view/cust_main/packages/package.html @@ -58,18 +58,18 @@ % my $editi = $curuser->access_right('Edit customer package invoice details'); % my $editc = $curuser->access_right('Edit customer package comments'); +% my @cust_pkg_detail = $cust_pkg->cust_pkg_detail; +% my @invoice_detail = grep { $_->detailtype eq 'I' } @cust_pkg_detail; +% my @comments = grep { $_->detailtype eq 'C' } @cust_pkg_detail; % -% if ( $cust_pkg->cust_pkg_detail('I') -% || $cust_pkg->cust_pkg_detail('C') -% || $editi -% || $editc ) { +% if ( scalar(@invoice_detail) || scalar(@comments) || $editi || $editc ) { % % my $editlink = $p. 'edit/cust_pkg_detail?pkgnum='. $cust_pkg->pkgnum. % ';detailtype='; -% if ( $cust_pkg->cust_pkg_detail('I') ) { +% if ( @invoice_detail ) { <% include('/elements/table-grid.html') %> @@ -89,7 +89,7 @@ -% foreach my $cust_pkg_detail ( $cust_pkg->cust_pkg_detail('I') ) { +% foreach my $cust_pkg_detail ( @invoice_detail ) {  - <% $cust_pkg_detail->detail |h %> @@ -113,7 +113,7 @@ % } -% if ( $cust_pkg->cust_pkg_detail('C') ) { +% if ( @comments ) { <% include('/elements/table-grid.html') %> @@ -133,7 +133,7 @@ -% foreach my $cust_pkg_detail ( $cust_pkg->cust_pkg_detail('C') ) { +% foreach my $cust_pkg_detail ( @comments ) {  - <% $cust_pkg_detail->detail |h %>