book closing schema changes
[freeside.git] / FS / FS / cust_credit.pm
index 54c201a..0ce5ac6 100644 (file)
@@ -58,6 +58,8 @@ L<Time::Local> and L<Date::Parse> for conversion functions.
 
 =item reason - text
 
+=item closed - books closed flag, empty or `Y'
+
 =back
 
 =head1 METHODS
@@ -126,7 +128,9 @@ Currently unimplemented.
 =cut
 
 sub delete {
-  return "Can't remove credit!"
+  my $self = shift;
+  return "Can't delete closed credit" if $self->closed =~ /^Y/i;
+  $self->SUPER::delete(@_);
 }
 
 =item replace OLD_RECORD
@@ -156,10 +160,13 @@ sub check {
     || $self->ut_number('custnum')
     || $self->ut_numbern('_date')
     || $self->ut_money('amount')
-    || $self->ut_textn('reason');
+    || $self->ut_textn('reason')
+    || $self->ut_enum('closed', [ '', 'Y' ])
   ;
   return $error if $error;
 
+  return "amount must be > 0 " if $self->amount <= 0;
+
   return "Unknown customer"
     unless qsearchs( 'cust_main', { 'custnum' => $self->custnum } );
 
@@ -235,7 +242,7 @@ sub credited {
 
 =head1 VERSION
 
-$Id: cust_credit.pm,v 1.12 2001-10-09 23:10:16 ivan Exp $
+$Id: cust_credit.pm,v 1.15 2002-01-28 06:57:23 ivan Exp $
 
 =head1 BUGS