X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fpart_pkg%2Fvoip_cdr.pm;h=3e2082ba0d08c1197f95487b87b5cc98b75f2fc1;hb=8748f0a8de7737a49be807f689325360c76ace2f;hp=522e4aa6f2ddf237212dee2cfeb5f9fbbed98b8d;hpb=b7f3e1493aeb4061c65a5ba52dd8318f4662eb2e;p=freeside.git diff --git a/FS/FS/part_pkg/voip_cdr.pm b/FS/FS/part_pkg/voip_cdr.pm index 522e4aa6f..3e2082ba0 100644 --- a/FS/FS/part_pkg/voip_cdr.pm +++ b/FS/FS/part_pkg/voip_cdr.pm @@ -26,8 +26,8 @@ tie my %cdr_svc_method, 'Tie::IxHash', tie my %rating_method, 'Tie::IxHash', 'prefix' => 'Rate calls by using destination prefix to look up a region and rate according to the internal prefix and rate tables', # 'upstream' => 'Rate calls based on upstream data: If the call type is "1", map the upstream rate ID directly to an internal rate (rate_detail), otherwise, pass the upstream price through directly.', - 'upstream_simple' => 'Simply pass through and charge the "upstream_price" amount.', - 'single_price' => 'A single price per minute for all calls.', + 'upstream_simple' => 'Simply pass through and charge the "upstream_price" amount (ignoring all options to skip calls).', + 'single_price' => 'A single price per minute for all calls (ignoring all options to skip calls).', ; tie my %rounding, 'Tie::IxHash', @@ -166,9 +166,13 @@ tie my %accountcode_tollfree_field, 'Tie::IxHash', }, 'use_cdrtypenum' => { 'name' => 'Only charge for CDRs where the CDR Type is set to this cdrtypenum: ', + 'validate' => \&FS::part_pkg::validate_number_blank, + 'js_validate' => 'digits: true', }, 'ignore_cdrtypenum' => { 'name' => 'Do not charge for CDRs where the CDR Type is set to this cdrtypenum: ', + 'validate' => \&FS::part_pkg::validate_number_blank, + 'js_validate' => 'digits: true', }, 'use_calltypenum' => { 'name' => 'Only charge for CDRs where the CDR Call Type is set to this calltypenum: ', @@ -674,9 +678,9 @@ sub check_chargable { and length($cdr->max_callers) and $cdr->max_callers <= $self->option_cacheable('skip_max_callers'); - return "calldate < ". str2time($self->option_cacheable('skip_old')) - if $self->option_cacheable('skip_old') - && $self->calldate_unix < str2time($self->option_cacheable('skip_old')); + return "calldate < ". $self->option_cacheable('skip_old') + if length($self->option_cacheable('skip_old')) + && $cdr->calldate_unix < str2time($self->option_cacheable('skip_old')); #all right then, rate it '';