diff options
-rw-r--r-- | FS/FS/cdr.pm | 4 | ||||
-rw-r--r-- | FS/FS/detail_format.pm | 1 |
2 files changed, 3 insertions, 2 deletions
diff --git a/FS/FS/cdr.pm b/FS/FS/cdr.pm index 1769fe9..3a6b01b 100644 --- a/FS/FS/cdr.pm +++ b/FS/FS/cdr.pm @@ -152,7 +152,7 @@ following fields are currently supported: =item svcnum - Link to customer service (see L<FS::cust_svc>) -=item freesidestatus - NULL, processing-tiered, rated, done +=item freesidestatus - NULL, processing-tiered, rated, done, skipped, no-charge, failed =item freesiderewritestatus - NULL, done, skipped @@ -545,7 +545,7 @@ sub rate_prefix { ); if ( $reason ) { warn "not charging for CDR ($reason)\n" if $DEBUG; - return $self->set_status_and_rated_price( 'rated', + return $self->set_status_and_rated_price( 'skipped', 0, $opt{'svcnum'}, ); diff --git a/FS/FS/detail_format.pm b/FS/FS/detail_format.pm index f70acc6..88cc02f 100644 --- a/FS/FS/detail_format.pm +++ b/FS/FS/detail_format.pm @@ -235,6 +235,7 @@ sub duration { my $cdr = shift; my $object = $self->{inbound} ? $cdr->cdr_termination(1) : $cdr; my $sec = $object->rated_seconds if $object; + $sec ||= 0; # XXX termination objects don't have rated_granularity so this may # result in inbound CDRs being displayed as min/sec when they shouldn't. # Should probably fix this. |