pass cust_bill_pkg_detail as hash, not a long ordered list. duh.
[freeside.git] / FS / FS / part_pkg / voip_inbound.pm
index 15faf5b..da4ce87 100644 (file)
@@ -60,14 +60,14 @@ tie my %granularity, 'Tie::IxHash', FS::rate_detail::granularities();
                             'type' => 'checkbox',
                           },
 
-    'use_amaflags' => { 'name' => 'Do not charge for CDRs where the amaflags field is not set to "2" ("BILL"/"BILLING").',
+    'use_amaflags' => { 'name' => 'Only charge for CDRs where the amaflags field is set to "2" ("BILL"/"BILLING").',
                         'type' => 'checkbox',
                       },
 
-    'use_carrierid' => { 'name' => 'Do not charge for CDRs where the Carrier ID is not set to: ',
+    'use_carrierid' => { 'name' => 'Only charge for CDRs where the Carrier ID is set to: ',
                          },
 
-    'use_cdrtypenum' => { 'name' => 'Do not charge for CDRs where the CDR Type is not set to: ',
+    'use_cdrtypenum' => { 'name' => 'Only charge for CDRs where the CDR Type is set to: ',
                          },
     
     'ignore_cdrtypenum' => { 'name' => 'Do not charge for CDRs where the CDR Type is set to: ',
@@ -76,7 +76,7 @@ tie my %granularity, 'Tie::IxHash', FS::rate_detail::granularities();
     'ignore_disposition' => { 'name' => 'Do not charge for CDRs where the Disposition is set to any of these (comma-separated) values: ',
                          },
     
-    'disposition_in' => { 'name' => 'Do not charge for CDRs where the Disposition is not set to any of these (comma-separated) values: ',
+    'disposition_in' => { 'name' => 'Only charge for CDRs where the Disposition is set to any of these (comma-separated) values: ',
                          },
 
     'skip_dcontext' => { 'name' => 'Do not charge for CDRs where the dcontext is set to any of these (comma-separated) values:',
@@ -279,16 +279,16 @@ sub calc_usage {
                                           )
                                 );
         push @$details,
-            [ 'C',
-              $call_details[0],
-              $charge,
-              $cdr->calltypenum, #classnum
-              $self->phonenum,
-              $cdr->accountcode,
-              $cdr->startdate,
-              $seconds,
-              '', #regionname, not set for inbound calls
-            ];
+          { format      => 'C',
+            detail      => $call_details[0],
+            amount      => $charge,
+            classnum    => $cdr->calltypenum, #classnum
+            phonenum    => $self->phonenum,
+            accountcode => $cdr->accountcode,
+            startdate   => $cdr->startdate,
+            duration    => $seconds,
+            # regionname?? => '', #regionname, not set for inbound calls
+          };
      }
 
      my $error = $cdr->set_status_and_rated_price( 'done',
@@ -299,14 +299,9 @@ sub calc_usage {
 
     } #$cdr
   } # $cust_svc
-  unshift @$details, [ 'C',
-                       FS::cdr::invoice_header($output_format),
-                       '',
-                       '',
-                       '',
-                       '',
-                       '',
-                     ]
+  unshift @$details, { format => 'C',
+                       detail => FS::cdr::invoice_header($output_format),
+                     }
     if @$details;
 
   $charges;