'the customer\'s next bill date',
'type' => 'checkbox',
},
+ 'prorate_defer_change_bill' => {
+ 'name' => 'When synchronizing, defer bill for '.
+ 'package changes until the customer\'s '.
+ 'next bill date',
+ 'type' => 'checkbox',
+ },
'prorate_round_day' => {
'name' => 'When synchronizing, round the prorated '.
'period',
},
'fieldorder' => [ qw( recur_temporality
start_1st
- sync_bill_date prorate_defer_bill prorate_round_day
+ sync_bill_date prorate_defer_bill
+ prorate_defer_change_bill prorate_round_day
suspend_bill unsuspend_adjust_bill
bill_recur_on_cancel
bill_suspend_as_cancel
}
sub calc_setup {
- my($self, $cust_pkg, $sdate, $details, $param ) = @_;
+ my($self, $cust_pkg, $time, $details, $param ) = @_;
- return 0 if $self->prorate_setup($cust_pkg, $sdate);
+ return 0 if $self->prorate_setup($cust_pkg, $time);
my $i = 0;
my $count = $self->option( 'additional_count', 'quiet' ) || 0;
push @$details, $self->option( 'additional_info' . $i++ );
}
- my $charge = $self->base_setup($cust_pkg, $sdate, $details);
+ my $charge = $self->base_setup($cust_pkg, $time, $details);
my $discount = 0;
if ( $charge > 0 ) {
$param->{'setup_charge'} = $charge;
- $discount = $self->calc_discount($cust_pkg, $sdate, $details, $param);
+ $discount = $self->calc_discount($cust_pkg, \$time, $details, $param);
delete $param->{'setup_charge'};
}
}
sub base_setup {
- my($self, $cust_pkg, $sdate, $details ) = @_;
+ my($self, $cust_pkg, $time, $details ) = @_;
$self->option('setup_fee', 1) || 0;
}