summaryrefslogtreecommitdiff
path: root/FS
diff options
context:
space:
mode:
authorivan <ivan>2010-05-14 02:16:30 +0000
committerivan <ivan>2010-05-14 02:16:30 +0000
commitb4f0a47a6893de5f6b11f32307a0195f43a359fb (patch)
tree749102ae050bed9f9da83a7f4949e661b6c6efac /FS
parent0bdb687a64bc8340f9835bc0659be93166cbeb09 (diff)
fix losing rates when renaming a rate plan, RT#8173
Diffstat (limited to 'FS')
-rw-r--r--FS/FS/rate.pm15
1 files changed, 11 insertions, 4 deletions
diff --git a/FS/FS/rate.pm b/FS/FS/rate.pm
index 347bb2743..793846a7f 100644
--- a/FS/FS/rate.pm
+++ b/FS/FS/rate.pm
@@ -364,6 +364,7 @@ sub process {
'dest_regionnum' => $regionnum,
map { $_ => $param->{"$_$regionnum"} }
qw( min_included min_charge sec_granularity )
+ #qw( min_included conn_charge conn_sec min_charge sec_granularity )
};
} else {
@@ -371,6 +372,9 @@ sub process {
new FS::rate_detail {
'dest_regionnum' => $regionnum,
'min_included' => 0,
+ 'conn_charge' => 0,
+ 'conn_sec' => 0,
+ 'conn_charge' => 0,
'min_charge' => 0,
'sec_granularity' => '60'
};
@@ -387,10 +391,13 @@ sub process {
my $error = '';
if ( $param->{'ratenum'} ) {
warn "$rate replacing $old (". $param->{'ratenum'}. ")\n" if $DEBUG;
- $error = $rate->replace( $old,
- 'rate_detail' => \@rate_detail,
- 'job' => $job,
- );
+
+ my @param = ( 'job'=>$job );
+ push @param, 'rate_detail'=>\@rate_detail
+ unless $param->{'preserve_rate_detail'};
+
+ $error = $rate->replace( $old, @param );
+
} else {
warn "inserting $rate\n" if $DEBUG;
$error = $rate->insert( 'rate_detail' => \@rate_detail,