diff options
author | ivan <ivan> | 2009-04-01 04:27:25 +0000 |
---|---|---|
committer | ivan <ivan> | 2009-04-01 04:27:25 +0000 |
commit | 9483773ebd5056d28ca55fa0895492dd255c2542 (patch) | |
tree | c1217b3752383314c9388e3241a3895627abd58c | |
parent | af49b2c54c13b14189e23765a9a7102bcf59cb06 (diff) |
show post-granularity duration if available for all export formats
-rw-r--r-- | FS/FS/cdr.pm | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/FS/FS/cdr.pm b/FS/FS/cdr.pm index 2d9200143..35bb71cf6 100644 --- a/FS/FS/cdr.pm +++ b/FS/FS/cdr.pm @@ -470,6 +470,15 @@ my %export_names = ( }, ); +my $duration_sub = sub { + my($cdr, %opt) = @_; + if ( $opt{minutes} ) { + $opt{minutes}. ( $opt{granularity} ? 'm' : ' call' ); + } else { + sprintf('%.2fm', $cdr->billsec / 60 ); + } +}; + my %export_formats = ( 'convergent' => [ 'carriername', #CARRIER @@ -491,7 +500,7 @@ my %export_formats = ( sub { time2str('%r', shift->calldate_unix ) }, #TIME 'userfield', #USER 'dst', #NUMBER_DIALED - sub { sprintf('%.2fm', shift->billsec / 60 ) }, #DURATION + $duration_sub, #DURATION #sub { sprintf('%.3f', shift->upstream_price ) }, #PRICE sub { my($cdr, %opt) = @_; $opt{money_char}. $opt{charge}; }, #PRICE ], @@ -501,7 +510,7 @@ my %export_formats = ( #'userfield', #USER 'dst', #NUMBER_DIALED 'src', #called from - sub { sprintf('%.2fm', shift->billsec / 60 ) }, #DURATION + $duration_sub, #DURATION #sub { sprintf('%.3f', shift->upstream_price ) }, #PRICE sub { my($cdr, %opt) = @_; $opt{money_char}. $opt{charge}; }, #PRICE ], @@ -522,9 +531,7 @@ my %export_formats = ( sub { my($cdr, %opt) = @_; $opt{dst_regionname}; }, #DURATION - sub { my($cdr, %opt) = @_; - $opt{minutes}. ( $opt{granularity} ? 'm' : ' call' ); - }, + $duration_sub, #PRICE sub { my($cdr, %opt) = @_; $opt{money_char}. $opt{charge}; }, |