-sub calc_setup {
- my($self, $cust_pkg, $time ) = @_;
-
- my $d = $cust_pkg->bill || $time;
- $d += 86400 * $self->option('free_days');
- $cust_pkg->bill($d);
-
- $self->option('setup_fee');
-}
-
-sub calc_remain {
- my ($self, $cust_pkg, %options) = @_;
- my $next_bill = $cust_pkg->getfield('bill') || 0;
- my $last_bill = $cust_pkg->last_bill || 0;
- my $free_days = $self->option('free_days');
-
- return 0 if $last_bill + (86400 * $free_days) == $next_bill
- && $last_bill == $cust_pkg->setup;
-
- return 0 if ! $self->base_recur
- || ! $self->option('unused_credit', 1)
- || ! $last_bill
- || ! $next_bill;
-
- return $self->SUPER::calc_remain($cust_pkg, %options);
-}
-