sub replace {
my $self = shift;
- return "Can't modify closed refund" if $self->closed =~ /^Y/i;
+ return "Can't modify closed refund"
+ if $self->closed =~ /^Y/i && !$FS::payinfo_Mixin::allow_closed_replace;
$self->SUPER::replace(@_);
}
$class->_upgrade_otaker(%opts);
local $ignore_empty_reasonnum = 1;
- $class->upgrade_set_cardtype;
+
+ # don't set paycardtype until 4.x
+ #$class->upgrade_set_cardtype;
}
=back