[freeside-commits] freeside/FS/FS cust_pkg.pm, 1.204.2.12, 1.204.2.13

Ivan,,, ivan at wavetail.420.am
Tue Nov 15 17:38:34 PST 2011


Update of /home/cvs/cvsroot/freeside/FS/FS
In directory wavetail.420.am:/tmp/cvs-serv27897/FS/FS

Modified Files:
      Tag: FREESIDE_2_3_BRANCH
	cust_pkg.pm 
Log Message:
make sure not to pull up anything per-service / finish optimizing bulk service view (cust_pkg-large_pkg_size), RT#15154

Index: cust_pkg.pm
===================================================================
RCS file: /home/cvs/cvsroot/freeside/FS/FS/cust_pkg.pm,v
retrieving revision 1.204.2.12
retrieving revision 1.204.2.13
diff -u -w -d -r1.204.2.12 -r1.204.2.13
--- cust_pkg.pm	18 Oct 2011 19:25:43 -0000	1.204.2.12
+++ cust_pkg.pm	16 Nov 2011 01:38:32 -0000	1.204.2.13
@@ -1882,7 +1882,7 @@
       $self->part_pkg->pkg_svc;
 }
 
-=item part_svc
+=item part_svc [ OPTION => VALUE ... ]
 
 Returns a list of FS::part_svc objects representing provisioned and available
 services included in this package.  Each FS::part_svc object also has the
@@ -1896,15 +1896,20 @@
 
 =item cust_pkg_svc (services) - array reference containing the provisioned services, as cust_svc objects
 
-svcnum
-label -> ($cust_svc->label)[1]
-
 =back
 
+Accepts one option: summarize_size.  If specified and non-zero, will omit the
+extra cust_pkg_svc option for objects where num_cust_svc is this size or
+greater.
+
 =cut
 
+#svcnum
+#label -> ($cust_svc->label)[1]
+
 sub part_svc {
   my $self = shift;
+  my %opt = @_;
 
   #XXX some sort of sort order besides numeric by svcpart...
   my @part_svc = sort { $a->svcpart <=> $b->svcpart } map {
@@ -1915,7 +1920,9 @@
     $part_svc->{'Hash'}{'num_avail'}    =
       max( 0, $pkg_svc->quantity - $num_cust_svc );
     $part_svc->{'Hash'}{'cust_pkg_svc'} =
-      $num_cust_svc ? [ $self->cust_svc($part_svc->svcpart) ] : [];
+        $num_cust_svc ? [ $self->cust_svc($part_svc->svcpart) ] : []
+      unless exists($opt{summarize_size}) && $opt{summarize_size}
+          && $num_cust_svc >= $opt{summarize_size};
     $part_svc->{'Hash'}{'hidden'} = $pkg_svc->hidden;
     $part_svc;
   } $self->part_pkg->pkg_svc;



More information about the freeside-commits mailing list