optimize package list with lots of packages, RT#28526
authorIvan Kohler <ivan@freeside.biz>
Tue, 6 May 2014 12:35:48 +0000 (05:35 -0700)
committerIvan Kohler <ivan@freeside.biz>
Tue, 6 May 2014 12:35:48 +0000 (05:35 -0700)
httemplate/view/cust_main/packages.html
httemplate/view/cust_main/packages/package.html
httemplate/view/cust_main/packages/status.html

index 746e0c7..a05142f 100755 (executable)
@@ -313,4 +313,9 @@ $num_old_packages -= scalar(@packages);
 # (as will change-target packages)
 @packages = grep !$_->main_pkgnum, @packages;
 
+foreach my $cust_pkg ( @packages ) {
+  $cust_pkg->{'_cust_pkg_discount_active'} =
+   [ $cust_pkg->cust_pkg_discount_active ];
+}
+
 </%init>
index ab7bad2..6a0c7f7 100644 (file)
@@ -49,7 +49,7 @@
 %
 %             if ( $curuser->access_right('Discount customer package')
 %                  && $part_pkg->can_discount
-%                  && ! scalar($cust_pkg->cust_pkg_discount_active)
+%                  && ! scalar( @{ $cust_pkg->{_cust_pkg_discount_active} } )
 %                  && ! scalar($cust_pkg->part_pkg->part_pkg_discount)
 %                )
 %             {
index 689ee45..dbf3698 100644 (file)
@@ -494,7 +494,7 @@ sub pkg_status_row_discount {
 
   my $html;
 
-  foreach my $cust_pkg_discount ( $cust_pkg->cust_pkg_discount_active ) {
+  foreach my $cust_pkg_discount (@{ $cust_pkg->{_cust_pkg_discount_active} }) {
 
     my $discount = $cust_pkg_discount->discount;