summaryrefslogtreecommitdiff
path: root/FS/FS/cust_credit.pm
diff options
context:
space:
mode:
authorivan <ivan>2010-06-05 17:31:33 +0000
committerivan <ivan>2010-06-05 17:31:33 +0000
commit6e778966db565553915bdcf35499128421f6a260 (patch)
tree9f3a6c8d43cf15df9ccf005c123b191e46016ca5 /FS/FS/cust_credit.pm
parent4317635c55495a4c89413e59bd55f64aa001e38c (diff)
ignore misapplied credits when just trying upgrade the otaker, RT#8580
Diffstat (limited to 'FS/FS/cust_credit.pm')
-rw-r--r--FS/FS/cust_credit.pm7
1 files changed, 5 insertions, 2 deletions
diff --git a/FS/FS/cust_credit.pm b/FS/FS/cust_credit.pm
index 674bc1047..1ddcb8b9f 100644
--- a/FS/FS/cust_credit.pm
+++ b/FS/FS/cust_credit.pm
@@ -2,7 +2,7 @@ package FS::cust_credit;
use strict;
use base qw( FS::otaker_Mixin FS::cust_main_Mixin FS::Record );
-use vars qw( $conf $unsuspendauto $me $DEBUG );
+use vars qw( $conf $unsuspendauto $me $DEBUG $otaker_upgrade_kludge );
use Date::Format;
use FS::UID qw( dbh getotaker );
use FS::Misc qw(send_email);
@@ -19,6 +19,8 @@ use FS::cust_event;
$me = '[ FS::cust_credit ]';
$DEBUG = 0;
+$otaker_upgrade_kludge = 0;
+
#ask FS::UID to run this stuff for us later
$FS::UID::callback{'FS::cust_credit'} = sub {
@@ -308,7 +310,7 @@ sub check {
return "amount must be > 0 " if $self->amount <= 0;
return "amount must be greater or equal to amount applied"
- if $self->unapplied < 0;
+ if $self->unapplied < 0 && ! $otaker_upgrade_kludge;
return "Unknown customer"
unless qsearchs( 'cust_main', { 'custnum' => $self->custnum } );
@@ -548,6 +550,7 @@ sub _upgrade_data { # class method
}
}
+ local($otaker_upgrade_kludge) = 1;
$class->_upgrade_otaker(%opts);
}