in rated CDR packages, multiply included minutes by package quantity, #71003
[freeside.git] / FS / FS / part_pkg / voip_inbound.pm
index 525db80..5bce1e1 100644 (file)
@@ -179,7 +179,7 @@ sub calc_recur {
   my $charges = 0;
 
   $charges += $self->calc_usage(@_);
-  $charges += $self->calc_recur_Common(@_);
+  $charges += ($cust_pkg->quantity || 1) * $self->calc_recur_Common(@_);
 
   $charges;
 
@@ -214,11 +214,16 @@ sub calc_usage {
 #  my $downstream_cdr = '';
 
   my $included_min  = $self->option('min_included', 1) || 0;
+  $included_min *= ($cust_pkg->quantity || 1);
   my $use_duration  = $self->option('use_duration');
   my $output_format = $self->option('output_format', 1) || 'default';
 
   my $formatter = 
-    FS::detail_format->new($output_format, buffer => $details, inbound => 1);
+    FS::detail_format->new($output_format,
+      buffer => $details,
+      inbound => 1,
+      locale => $cust_pkg->cust_main->locale
+    );
 
   my $granularity   = length($self->option('sec_granularity'))
                         ? $self->option('sec_granularity')
@@ -399,6 +404,7 @@ sub is_free {
 
 #  This equates svc_phone records; perhaps svc_phone should have a field
 #  to indicate it represents a line
+#  #XXX no count_available_phones?
 sub calc_units {    
   my($self, $cust_pkg ) = @_;
   my $count =