[freeside-commits] branch FREESIDE_3_BRANCH updated. a38771cb202d6b98b34c3a4346ca144a7be03780

Ivan ivan at 420.am
Fri Feb 24 13:58:21 PST 2017


The branch, FREESIDE_3_BRANCH has been updated
       via  a38771cb202d6b98b34c3a4346ca144a7be03780 (commit)
      from  f77e374df4ab10b25cb265e260bc71751d3ec52e (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit a38771cb202d6b98b34c3a4346ca144a7be03780
Author: Ivan Kohler <ivan at freeside.biz>
Date:   Fri Feb 24 13:58:19 2017 -0800

    fix quotations w/ packages w/ add-on packages in v3, RT#74045

diff --git a/FS/FS/quotation_pkg.pm b/FS/FS/quotation_pkg.pm
index f4d5d5d..5607b9c 100644
--- a/FS/FS/quotation_pkg.pm
+++ b/FS/FS/quotation_pkg.pm
@@ -258,25 +258,20 @@ on failure.
 
 sub estimate {
   my $self = shift;
-  my $part_pkg = $self->part_pkg;
-  my $quantity = $self->quantity || 1;
-  my ($unitsetup, $unitrecur);
-  # calculate base fees
-  if ( $self->waive_setup eq 'Y' || $self->{'_NO_SETUP_KLUDGE'} ) {
-    $unitsetup = '0.00';
-  } else {
-    $unitsetup = $part_pkg->option('setup_fee',1) || '0.00'; # XXX 3.x only
-  }
-  if ( $self->{'_NO_RECUR_KLUDGE'} ) {
-    $unitrecur = '0.00';
-  } else {
-    $unitrecur = $part_pkg->base_recur;
-  }
 
-  #XXX add-on packages
+  my( $unitsetup, $unitrecur ) = (0, 0);
+  foreach my $part_pkg ( $self->part_pkg->self_and_bill_linked ) {
+
+    $unitsetup += $part_pkg->option('setup_fee',1) || '0' # 3.x only
+      unless $self->waive_setup eq 'Y' || $self->{'_NO_SETUP_KLUDGE'};
+
+    $unitrecur += $part_pkg->base_recur
+      unless $self->{'_NO_RECUR_KLUDGE'};
+
+  }
 
-  $self->set('unitsetup', $unitsetup);
-  $self->set('unitrecur', $unitrecur);
+  $self->set('unitsetup', sprintf('%.2f', $unitsetup) );
+  $self->set('unitrecur', sprintf('%.2f', $unitrecur) );
   my $error = $self->replace;
   return $error if $error;
 

-----------------------------------------------------------------------

Summary of changes:
 FS/FS/quotation_pkg.pm |   29 ++++++++++++-----------------
 1 file changed, 12 insertions(+), 17 deletions(-)




More information about the freeside-commits mailing list