show first payment amount on quotations, #36997
authorMark Wells <mark@freeside.biz>
Tue, 30 Jun 2015 23:48:58 +0000 (19:48 -0400)
committerMark Wells <mark@freeside.biz>
Tue, 30 Jun 2015 23:48:58 +0000 (19:48 -0400)
FS/FS/quotation.pm

index fef69ed..0e6b4e7 100644 (file)
@@ -342,6 +342,27 @@ sub _items_total {
       'total_amount' => sprintf('%.2f',$total_recur),
       'break_after'  => 1,
     };
+    # show 'first payment' line (setup + recur) if there are no prorated 
+    # packages included
+    my $disable_total = 0;
+    foreach my $quotation_pkg ($self->quotation_pkg) {
+      my $part_pkg = $quotation_pkg->part_pkg;
+      if (   $part_pkg->plan =~ /^prorate/
+          or $part_pkg->plan eq 'agent'
+          or $part_pkg->plan =~ /^torrus/
+          or $part_pkg->option('sync_bill_date')
+          or $part_pkg->option('recur_method') eq 'prorate' ) {
+        $disable_total = 1;
+        last;
+      }
+    }
+    if (!$disable_total) {
+      push @items, {
+        'total_item'   => $self->mt('First payment'),
+        'total_amount' => sprintf('%.2f', $total_setup + $total_recur),
+        'break_after'  => 1,
+      };
+    }
   }
 
   return @items;