sub check {
my $self = shift;
+ $self->otaker(getotaker) unless ($self->otaker);
+
my $error =
$self->ut_numbern('crednum')
|| $self->ut_number('custnum')
|| $self->ut_numbern('_date')
|| $self->ut_money('amount')
+ || $self->ut_alpha('otaker')
|| $self->ut_textn('reason')
|| $self->ut_foreign_key('reasonnum', 'reason', 'reasonnum')
|| $self->ut_enum('closed', [ '', 'Y' ])
$self->_date(time) unless $self->_date;
- $self->otaker(getotaker) unless ($self->otaker);
-
$self->SUPER::check;
}
;
}
-=item credited
+=item unapplied
-Returns the amount of this credit that is still outstanding; which is
+Returns the amount of this credit that is still unapplied/outstanding;
amount minus all refund applications (see L<FS::cust_credit_refund>) and
applications to invoices (see L<FS::cust_credit_bill>).
=cut
-sub credited {
+sub unapplied {
my $self = shift;
my $amount = $self->amount;
$amount -= $_->amount foreach ( $self->cust_credit_refund );
sprintf( "%.2f", $amount );
}
+=item credited
+
+Deprecated name for the unapplied method.
+
+=cut
+
+sub credited {
+ my $self = shift;
+ #carp "cust_credit->credited deprecated; use ->unapplied";
+ $self->unapplied(@_);
+}
+
=item cust_main
Returns the customer (see L<FS::cust_main>) for this credit.
warn "$me Checking for unmigrated reasons\n" if $DEBUG;
- my @cust_credits = qsearch({ 'table' => $class->table,
- 'hashref' => {},
- 'extrasql' => 'WHERE reason IS NOT NULL',
+ my @cust_credits = qsearch({ 'table' => $class->table,
+ 'hashref' => {},
+ 'extra_sql' => 'WHERE reason IS NOT NULL',
});
if (scalar(grep { $_->getfield('reason') =~ /\S/ } @cust_credits)) {
die "$class had error inserting FS::reason_type into database: $error\n"
if $error;
}
- # or clause for 1.7.x
- $conf->set($_, $reason_type->typenum) or die "failed setting config";
+ $conf->set($_, $reason_type->typenum);
}
}
=over 4
-=item credited_sql
+=item unapplied_sql
Returns an SQL fragment to retreive the unapplied amount.
=cut
-sub credited_sql {
+sub unapplied_sql {
#my $class = shift;
"amount
}
+=item credited_sql
+
+Deprecated name for the unapplied_sql method.
+
+=cut
+
+sub credited_sql {
+ #my $class = shift;
+
+ #carp "cust_credit->credited_sql deprecated; use ->unapplied_sql";
+
+ #$class->unapplied_sql(@_);
+ unapplied_sql();
+}
+
=back
=head1 BUGS
The delete method. The replace method.
-B<credited> and B<credited_sql> should probably be called B<unapplied> and
-B<unapplied_sql>.
+B<credited> and B<credited_sql> are now called B<unapplied> and
+B<unapplied_sql>. The old method names should start to give warnings.
=head1 SEE ALSO