fix display of duration on inbound packages with use_duraiton, RT#14370
[freeside.git] / FS / FS / part_pkg / voip_inbound.pm
index da4ce87..425d86b 100644 (file)
@@ -267,17 +267,21 @@ sub calc_usage {
          $included_min = 0;
       }
       
-      $charge = sprintf('%.2f', ( $self->option('min_charge') * $charge_min )
+      $charge = sprintf('%.4f', ( $self->option('min_charge') * $charge_min )
                                 + 0.00000001 ); #so 1.00005 rounds to 1.0001
 
       if ( $charge > 0 ) {
         $charges += $charge;
-        my @call_details = ($cdr->downstream_csv( 'format' => $output_format,
-                                            'charge'  => $charge,
-                                            'minutes' => $minutes,
-                                            'granularity' => $granularity,
-                                          )
-                                );
+        my @call_details = (
+          $cdr->downstream_csv( 'format'      => $output_format,
+                                'charge'      => $charge,
+                                'seconds'     => ($use_duration
+                                                   ? $cdr->duration
+                                                   : $cdr->billsec
+                                                 ),
+                                'granularity' => $granularity,
+                              )
+        );
         push @$details,
           { format      => 'C',
             detail      => $call_details[0],