RT# 77964 - Placed waive setup fee check back to billing.pm, and added check for...
[freeside.git] / FS / FS / cust_main / Billing.pm
index 44a4dbb..a5a38fd 100644 (file)
@@ -1027,9 +1027,10 @@ sub _make_lines {
              || $cust_pkg->expire > $cmp_time )
      )
   {
-    
+
     warn "    bill setup\n" if $DEBUG > 1;
 
+    unless ($cust_pkg->waive_setup) {
         $lineitems++;
 
         $setup = eval { $cust_pkg->calc_setup( $time, \@details, \%setup_param ) };
@@ -1049,6 +1050,12 @@ sub _make_lines {
           $setup_billed_currency = delete $setup_param{'billed_currency'};
           $setup_billed_amount   = delete $setup_param{'billed_amount'};
         }
+    }
+
+    if ($cust_pkg->waive_setup && $part_pkg->plan eq "prorate") {
+      $lineitems++;
+      $setup = 0 if $part_pkg->prorate_setup($cust_pkg, $time);
+    }
 
     if ( $cust_pkg->get('setup') ) {
       # don't change it